0001628280-24-008149.txt : 20240301 0001628280-24-008149.hdr.sgml : 20240301 20240301120226 ACCESSION NUMBER: 0001628280-24-008149 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 69 CONFORMED PERIOD OF REPORT: 20240131 FILED AS OF DATE: 20240301 DATE AS OF CHANGE: 20240301 FILER: COMPANY DATA: COMPANY CONFORMED NAME: AMERICAN SOFTWARE INC CENTRAL INDEX KEY: 0000713425 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-PREPACKAGED SOFTWARE [7372] ORGANIZATION NAME: 06 Technology IRS NUMBER: 581098795 STATE OF INCORPORATION: GA FISCAL YEAR END: 0430 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-12456 FILM NUMBER: 24708203 BUSINESS ADDRESS: STREET 1: 470 E PACES FERRY RD NE CITY: ATLANTA STATE: GA ZIP: 30305 BUSINESS PHONE: 4042614381 MAIL ADDRESS: STREET 1: 470 EAST PACES FERRY ROAD NE CITY: ATLANTA STATE: GA ZIP: 30305 10-Q 1 amswa-20240131.htm 10-Q amswa-20240131
false2024Q300007134254/30P1Y00007134252023-05-012024-01-310000713425us-gaap:CommonClassAMember2024-02-28xbrli:shares0000713425us-gaap:CommonClassBMember2024-02-2800007134252024-01-31iso4217:USD00007134252023-04-300000713425us-gaap:CommonClassAMember2023-04-30iso4217:USDxbrli:shares0000713425us-gaap:CommonClassAMember2024-01-310000713425us-gaap:CommonClassBMember2023-04-300000713425us-gaap:CommonClassBMember2024-01-3100007134252022-05-012023-04-30xbrli:pure0000713425us-gaap:SubscriptionAndCirculationMember2023-11-012024-01-310000713425us-gaap:SubscriptionAndCirculationMember2022-11-012023-01-310000713425us-gaap:SubscriptionAndCirculationMember2023-05-012024-01-310000713425us-gaap:SubscriptionAndCirculationMember2022-05-012023-01-310000713425us-gaap:LicenseMember2023-11-012024-01-310000713425us-gaap:LicenseMember2022-11-012023-01-310000713425us-gaap:LicenseMember2023-05-012024-01-310000713425us-gaap:LicenseMember2022-05-012023-01-310000713425amswa:ProfessionalServicesAndOtherMember2023-11-012024-01-310000713425amswa:ProfessionalServicesAndOtherMember2022-11-012023-01-310000713425amswa:ProfessionalServicesAndOtherMember2023-05-012024-01-310000713425amswa:ProfessionalServicesAndOtherMember2022-05-012023-01-310000713425us-gaap:MaintenanceMember2023-11-012024-01-310000713425us-gaap:MaintenanceMember2022-11-012023-01-310000713425us-gaap:MaintenanceMember2023-05-012024-01-310000713425us-gaap:MaintenanceMember2022-05-012023-01-3100007134252023-11-012024-01-3100007134252022-11-012023-01-3100007134252022-05-012023-01-310000713425us-gaap:CommonClassBMember2023-11-012024-01-310000713425us-gaap:CommonClassBMember2022-11-012023-01-310000713425us-gaap:CommonClassBMember2023-05-012024-01-310000713425us-gaap:CommonClassBMember2022-05-012023-01-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2022-10-310000713425us-gaap:CommonClassBMemberus-gaap:CommonStockMember2022-10-310000713425us-gaap:AdditionalPaidInCapitalMember2022-10-310000713425us-gaap:RetainedEarningsMember2022-10-310000713425us-gaap:TreasuryStockCommonMember2022-10-3100007134252022-10-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2022-11-012023-01-310000713425us-gaap:AdditionalPaidInCapitalMember2022-11-012023-01-310000713425us-gaap:RetainedEarningsMember2022-11-012023-01-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-01-310000713425us-gaap:CommonClassBMemberus-gaap:CommonStockMember2023-01-310000713425us-gaap:AdditionalPaidInCapitalMember2023-01-310000713425us-gaap:RetainedEarningsMember2023-01-310000713425us-gaap:TreasuryStockCommonMember2023-01-3100007134252023-01-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-10-310000713425us-gaap:CommonClassBMemberus-gaap:CommonStockMember2023-10-310000713425us-gaap:AdditionalPaidInCapitalMember2023-10-310000713425us-gaap:RetainedEarningsMember2023-10-310000713425us-gaap:TreasuryStockCommonMember2023-10-3100007134252023-10-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-11-012024-01-310000713425us-gaap:AdditionalPaidInCapitalMember2023-11-012024-01-310000713425us-gaap:TreasuryStockCommonMember2023-11-012024-01-310000713425us-gaap:RetainedEarningsMember2023-11-012024-01-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2024-01-310000713425us-gaap:CommonClassBMemberus-gaap:CommonStockMember2024-01-310000713425us-gaap:AdditionalPaidInCapitalMember2024-01-310000713425us-gaap:RetainedEarningsMember2024-01-310000713425us-gaap:TreasuryStockCommonMember2024-01-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2022-04-300000713425us-gaap:CommonClassBMemberus-gaap:CommonStockMember2022-04-300000713425us-gaap:AdditionalPaidInCapitalMember2022-04-300000713425us-gaap:RetainedEarningsMember2022-04-300000713425us-gaap:TreasuryStockCommonMember2022-04-3000007134252022-04-300000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2022-05-012023-01-310000713425us-gaap:AdditionalPaidInCapitalMember2022-05-012023-01-310000713425us-gaap:RetainedEarningsMember2022-05-012023-01-310000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-04-300000713425us-gaap:CommonClassBMemberus-gaap:CommonStockMember2023-04-300000713425us-gaap:AdditionalPaidInCapitalMember2023-04-300000713425us-gaap:RetainedEarningsMember2023-04-300000713425us-gaap:TreasuryStockCommonMember2023-04-300000713425us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-05-012024-01-310000713425us-gaap:AdditionalPaidInCapitalMember2023-05-012024-01-310000713425us-gaap:TreasuryStockCommonMember2023-05-012024-01-310000713425us-gaap:RetainedEarningsMember2023-05-012024-01-310000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-09-300000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-09-012023-09-300000713425srt:MinimumMember2023-05-012024-01-310000713425srt:MaximumMember2023-05-012024-01-3100007134252024-02-012024-01-310000713425amswa:DomesticMember2023-11-012024-01-310000713425amswa:DomesticMember2022-11-012023-01-310000713425amswa:DomesticMember2023-05-012024-01-310000713425amswa:DomesticMember2022-05-012023-01-310000713425amswa:ForeignMember2023-11-012024-01-310000713425amswa:ForeignMember2022-11-012023-01-310000713425amswa:ForeignMember2023-05-012024-01-310000713425amswa:ForeignMember2022-05-012023-01-3100007134252025-02-012024-01-310000713425amswa:ClassAAndClassBMember2023-11-202023-11-200000713425us-gaap:CommonClassAMember2023-05-012024-01-310000713425us-gaap:CommonClassAMember2023-11-012024-01-310000713425us-gaap:CommonClassAMember2022-11-012023-01-310000713425us-gaap:CommonClassAMember2022-05-012023-01-310000713425amswa:GarvisAILimitedMember2023-09-050000713425amswa:GarvisAILimitedMember2023-09-052023-09-050000713425amswa:GarvisAILimitedMember2023-11-012024-01-310000713425amswa:GarvisAILimitedMember2023-05-012024-01-310000713425amswa:GarvisAILimitedMember2024-01-310000713425us-gaap:NoncompeteAgreementsMemberamswa:GarvisAILimitedMember2023-09-050000713425us-gaap:TechnologyBasedIntangibleAssetsMemberamswa:GarvisAILimitedMember2023-09-050000713425amswa:StarboardSolutionsCorpMember2022-06-282022-06-280000713425amswa:StarboardSolutionsCorpMember2022-06-280000713425amswa:StarboardSolutionsCorpMember2024-01-310000713425amswa:StarboardSolutionsCorpMember2023-11-012024-01-310000713425amswa:StarboardSolutionsCorpMember2023-05-012024-01-310000713425amswa:StarboardSolutionsCorpMember2022-11-012023-01-310000713425amswa:StarboardSolutionsCorpMember2022-05-012023-01-310000713425us-gaap:NoncompeteAgreementsMemberamswa:StarboardSolutionsCorpMember2022-06-280000713425amswa:StarboardSolutionsCorpMemberus-gaap:TechnologyBasedIntangibleAssetsMember2022-06-280000713425amswa:StarboardSolutionsCorpMemberus-gaap:CustomerRelationshipsMember2022-06-280000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-09-180000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-09-182023-09-180000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2024-01-310000713425srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember2022-11-012023-01-310000713425srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember2022-05-012023-01-310000713425srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember2023-05-010000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-11-012024-01-310000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2022-11-012023-01-310000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-05-012024-01-310000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2022-05-012023-01-310000713425amswa:ThePovenMethodMemberus-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-04-300000713425amswa:TransportationRatingSolutionsMemberus-gaap:DisposalGroupNotDiscontinuedOperationsMember2023-11-150000713425amswa:TransportationRatingSolutionsMemberus-gaap:DisposalGroupNotDiscontinuedOperationsMember2023-11-152023-11-150000713425amswa:TransportationRatingSolutionsMemberus-gaap:DisposalGroupNotDiscontinuedOperationsMember2023-11-012024-01-310000713425amswa:TransportationRatingSolutionsMemberus-gaap:DisposalGroupNotDiscontinuedOperationsMember2023-05-012024-01-310000713425us-gaap:EmployeeStockOptionMember2023-05-012024-01-310000713425us-gaap:EmployeeStockOptionMember2022-05-012023-01-310000713425us-gaap:RestrictedStockUnitsRSUMember2023-05-012024-01-310000713425us-gaap:RestrictedStockUnitsRSUMember2022-05-012023-01-310000713425us-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-11-012024-01-310000713425us-gaap:DiscontinuedOperationsDisposedOfBySaleMember2022-11-012023-01-310000713425us-gaap:DiscontinuedOperationsDisposedOfBySaleMember2023-05-012024-01-310000713425us-gaap:DiscontinuedOperationsDisposedOfBySaleMember2022-05-012023-01-310000713425us-gaap:FairValueInputsLevel1Member2024-01-310000713425us-gaap:FairValueInputsLevel2Member2024-01-310000713425us-gaap:FairValueInputsLevel3Member2024-01-310000713425us-gaap:FairValueInputsLevel1Memberus-gaap:USTreasurySecuritiesMember2024-01-310000713425us-gaap:USTreasurySecuritiesMemberus-gaap:FairValueInputsLevel2Member2024-01-310000713425us-gaap:FairValueInputsLevel3Memberus-gaap:USTreasurySecuritiesMember2024-01-310000713425us-gaap:USTreasurySecuritiesMember2024-01-310000713425us-gaap:FairValueInputsLevel1Member2023-04-300000713425us-gaap:FairValueInputsLevel2Member2023-04-300000713425us-gaap:FairValueInputsLevel3Member2023-04-300000713425us-gaap:FairValueInputsLevel1Memberus-gaap:USTreasurySecuritiesMember2023-04-300000713425us-gaap:USTreasurySecuritiesMemberus-gaap:FairValueInputsLevel2Member2023-04-300000713425us-gaap:FairValueInputsLevel3Memberus-gaap:USTreasurySecuritiesMember2023-04-300000713425us-gaap:USTreasurySecuritiesMember2023-04-300000713425amswa:StockRepurchasePlanAugustNineteenTwentyZeroTwoMemberus-gaap:CommonClassAMember2002-08-190000713425amswa:StockRepurchasePlanAugustNineteenTwentyZeroTwoMemberus-gaap:CommonClassAMember2002-08-192024-01-310000713425amswa:StockRepurchasePlanAugustNineteenTwentyZeroTwoMemberus-gaap:CommonClassAMember2023-05-012024-01-31amswa:segmentamswa:supplyChain0000713425amswa:SupplyChainManagementSegmentMember2023-11-012024-01-310000713425amswa:SupplyChainManagementSegmentMember2022-11-012023-01-310000713425amswa:SupplyChainManagementSegmentMember2023-05-012024-01-310000713425amswa:SupplyChainManagementSegmentMember2022-05-012023-01-310000713425us-gaap:AllOtherSegmentsMember2023-11-012024-01-310000713425us-gaap:AllOtherSegmentsMember2022-11-012023-01-310000713425us-gaap:AllOtherSegmentsMember2023-05-012024-01-310000713425us-gaap:AllOtherSegmentsMember2022-05-012023-01-310000713425us-gaap:SubsequentEventMemberamswa:ClassAAndClassBMember2024-02-212024-02-21

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 January 31, 2024
OR
TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the transition period from _________ to _________
Commission File Number: 000-12456
_________________
AMERICAN SOFTWARE, INC.
(Exact name of registrant as specified in its charter)
_________________
Georgia 58-1098795
(State or other jurisdiction of
incorporation or organization)
 (IRS Employer
Identification Number)
470 East Paces Ferry Road, N.E.AtlantaGeorgia 30305
(Address of principal executive offices) (Zip Code)
(404) 261-4381
(Registrant’s telephone number, including area code)



Securities registered pursuant to Section 12(b) of the Act:
 
Title of each classTrading SymbolName of each exchange on which registered
Common Stock AMSWANASDAQ Global Select Market 




_________________
Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.    Yes  ☒    No  ☐
Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    Yes  ☒    No  ☐
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, an emerging growth company or a smaller reporting company. See the definitions of “large accelerated filer,” “accelerated filer,” “emerging growth company” and “smaller reporting 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  
Indicate the number of shares outstanding of each of the issuer’s classes of common stock, as of the latest practicable date.
Classes  Outstanding at February 28, 2024
Class A Common Stock, $.10 par value  
31,398,542 Shares
Class B Common Stock, $.10 par value  1,821,587 Shares



AMERICAN SOFTWARE, INC. AND SUBSIDIARIES
Form 10-Q
Quarter ended January 31, 2024
Index
Page No
2

PART I—FINANCIAL INFORMATION
Item 1.     Financial Statements
American Software, Inc. and Subsidiaries
Condensed Consolidated Balance Sheets (Unaudited)
(in thousands, except share data)
As ofAs of
January 31,
2024
April 30,
2023
ASSETS
Current assets:
Cash and cash equivalents$55,854 $90,059 
Investments22,454 23,451 
Trade accounts receivable, less allowance for doubtful accounts of $220 at January 31, 2024 and $418 at April 30, 2023:
Billed22,796 23,476 
Unbilled1,343 1,569 
Prepaid expenses and other current assets6,973 7,831 
Current assets of discontinued operations 3,603 
Total current assets109,420 149,989 
Investments—noncurrent 486 
Property and equipment, net of accumulated depreciation of $32,454 at January 31, 2024 and $32,371 at April 30, 2023
5,897 6,444 
Capitalized software, net of accumulated amortization of $43,534 at January 31, 2024 and $43,202 at April 30, 2023
59 391 
Goodwill46,393 29,558 
Other intangibles, net of accumulated amortization of $16,258 at January 31, 2024 and $14,062 at April 30, 2023
10,948 2,143 
Other assets6,311 6,609 
Total assets$179,028 $195,620 
LIABILITIES AND SHAREHOLDERS’ EQUITY
Current liabilities:
Accounts payable$1,086 $2,131 
Accrued compensation and related costs2,516 4,077 
Dividends payable3,654 3,756 
Other current liabilities3,275 3,638 
Deferred revenue37,154 43,124 
Current liabilities of discontinued operations 318 
Total current liabilities47,685 57,044 
Other long-term liabilities249 288 
Total liabilities47,934 57,332 
Shareholders’ equity:
Common stock:
Class A, $.10 par value. Authorized 50,000,000 shares: 36,933,495 (31,398,542, net) shares issued and outstanding at January 31, 2024 and 36,907,242 (32,318,610, net) shares issued and outstanding at April 30, 2023
3,693 3,691 
Class B, $.10 par value. Authorized 10,000,000 shares: 1,821,587 shares issued and outstanding at January 31, 2024 and April 30, 2023; convertible into Class A Common Shares on a one-for-one basis
182 182 
Additional paid-in capital187,731 182,722 
Retained deficit(24,718)(22,748)
Class A treasury stock, 5,534,953 shares at January 31, 2024 and 4,588,632 shares at April 30, 2023, at cost
(35,794)(25,559)
Total shareholders’ equity131,094 138,288 
Commitments and contingencies
Total liabilities and shareholders’ equity$179,028 $195,620 
See accompanying notes to condensed consolidated financial statements—unaudited.
3

American Software, Inc. and Subsidiaries
Condensed Consolidated Statements of Operations (Unaudited)
(in thousands, except per share data)
 Three Months Ended January 31,Nine Months Ended January 31,
2024202320242023
Revenues:
Subscription fees$14,114 $13,003 $41,235 $37,391 
License277 1,017 795 2,025 
Professional services and other3,418 4,758 11,107 15,687 
Maintenance7,727 8,649 23,990 26,384 
Total revenues25,536 27,427 77,127 81,487 
Cost of revenues:
Subscription fees4,944 4,005 13,768 11,682 
License3 358 168 541 
Professional services and other2,694 3,498 8,610 10,682 
Maintenance1,449 1,607 4,877 4,757 
Total cost of revenues9,090 9,468 27,423 27,662 
Gross margin16,446 17,959 49,704 53,825 
Research and development4,546 4,402 13,064 13,220 
Sales and marketing5,039 4,904 16,083 15,537 
General and administrative5,853 5,883 16,775 17,350 
Amortization of acquisition-related intangibles193 25 346 81 
Total operating expenses15,631 15,214 46,268 46,188 
Operating income815 2,745 3,436 7,637 
Other income:
Interest income777 701 2,938 1,274 
Other, net3,640 633 2,788 34 
Earnings before income taxes5,232 4,079 9,162 8,945 
Income tax expense1,080 907 1,775 1,882 
Net earnings from continuing operations$4,152 $3,172 $7,387 $7,063 
Discontinued operations (Note F)
Earnings from operations of discontinued operations 88 255 475 
Gain on disposal of discontinued operations  2,124  
Income tax expense64 43 567 152 
Earnings (loss) from discontinued operations, net of income taxes(64)45 1,812 323 
Net earnings$4,088 $3,217 $9,199 $7,386 
Earnings per common share from continuing operations (a):
Basic$0.12 $0.09 $0.22 $0.21 
Diluted$0.12 $0.09 $0.22 $0.21 
Earnings per common share from discontinued operations (a):
Basic$ $ $0.05 $0.01 
Diluted$ $ $0.05 $0.01 
Earnings per common share: (a)
Basic$0.12 $0.09 $0.27 $0.22 
Diluted$0.12 $0.09 $0.27 $0.22 
Cash dividends declared per common share$0.11 $0.11 $0.33 $0.33 
Shares used in the calculation of earnings per common share:
Basic33,292 33,759 33,842 33,711 
Diluted33,337 33,965 33,866 34,006 
______________
(a)Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements.
See accompanying notes to condensed consolidated financial statements—unaudited.
4

American Software, Inc. and Subsidiaries
Condensed Consolidated Statements of Shareholders’ Equity (Unaudited)
(in thousands, except share data)
 Common stockAdditional
paid-in
capital
Retained deficitTreasury
stock
Total
shareholders’
equity
 Class AClass B
For the Three Months Ended January 31, 2023
SharesAmountSharesAmount
Balance at October 31, 202236,503,495 $3,650 1,821,587 $182 $175,733 $(21,418)$(25,559)$132,588 
Proceeds from stock options exercised43,000 5— — 505— — 510 
Stock-based compensation— — — — 1,294 — — 1,294 
Net earnings— — — — — 3,217 — 3,217 
Dividends declared*— — — — — (3,716)— (3,716)
Balance at January 31, 2023
36,546,495 $3,655 1,821,587 $182 $177,532 $(21,917)$(25,559)$133,893 
For the Three Months Ended January 31, 2024
Balance at October 31, 202336,929,495 $3,693 1,821,587 $182 $186,100 $(25,152)$(30,373)$134,450 
Proceeds from stock options exercised*4,000 — — — 45 — — 45 
Stock-based compensation— — — — 1,586 — — 1,586 
Purchases of common stock— — — — — — (5,421)(5,421)
Net earnings— — — — — 4,088 — 4,088 
Dividends declared— — — — — (3,654)— (3,654)
Balance at January 31, 2024
36,933,495 $3,693 1,821,587 $182 $187,731 $(24,718)$(35,794)$131,094 
Common stockAdditional
paid-in
capital
Retained deficitTreasury
stock
Total
shareholders’
equity
Nine Months Ended January 31, 2023Class AClass B
SharesAmountSharesAmount
Balance at April 30, 202236,405,695 $3,641 1,821,587 $182 $171,948 $(18,171)$(25,559)$132,041 
Proceeds from stock options exercised*140,800 14— — 1,640— — 1,654 
Stock-based compensation— — — — 3,944— — 3,944 
Net earnings— — — — — 7,386— 7,386 
Dividends declared*— — — — — (11,132)— (11,132)
Balance at January 31, 202336,546,495 $3,655 1,821,587 $182 $177,532 $(21,917)$(25,559)$133,893 
Nine Months Ended January 31, 2024
Balance at April 30, 202336,907,242 $3,691 1,821,587 $182 $182,722 $(22,748)$(25,559)$138,288 
Proceeds from stock options exercised*26,253 2— — 289— — 291 
Stock-based compensation— — — — 4,720— — 4,720 
Purchases of common stock— — — — — — (10,235)(10,235)
Net earnings— — — — — 9,199— 9,199 
Dividends declared*— — — — — (11,169)— (11,169)
Balance at January 31, 202436,933,495 $3,693 1,821,587 $182 $187,731 $(24,718)$(35,794)$131,094 
*Amounts adjusted for rounding

See accompanying notes to condensed consolidated financial statements
5

American Software, Inc. and Subsidiaries
Condensed Consolidated Statements of Cash Flows (Unaudited)
(in thousands)
 Nine Months Ended January 31,
 20242023
Cash flows from operating activities:
Net earnings$9,199 $7,386 
Earnings from discontinued operations, net of tax(1,812)(323)
Adjustments to reconcile net earnings to net cash provided by operating activities:
Depreciation and amortization3,641 2,389 
Stock-based compensation expense4,720 3,919 
Net gain on investments(1,331)(92)
Deferred income taxes282 (3,377)
Gain on sale of business(1,438) 
Gain on sale of discontinued operations(2,124) 
Changes in operating assets and liabilities:
Purchases of trading securities(3,958)(8,284)
Proceeds from maturities and sales of trading securities6,772 870 
Accounts receivable, net4,267 (11,816)
Prepaid expenses and other assets(1,150)579 
Accounts payable and other liabilities(3,854)(1,578)
Deferred revenue(5,298)(1,247)
Net cash provided by (used in) operating activities of continuing operations7,916 (11,574)
Net cash provided by operating activities of discontinued operations1,554 1,108 
Net cash provided by (used in) operating activities9,470 (10,466)
Cash flows from investing activities:
Purchases of property and equipment, net of disposals(539)(3,655)
Purchase of business, net of cash acquired(25,041)(6,500)
Proceeds from sale of business660  
Net cash used in investing activities of continuing operations(24,920)(10,155)
Net cash provided by investing activities of discontinued operations1,825  
Net cash used in investing activities(23,095)(10,155)
Cash flows from financing activities:
Proceeds from exercise of stock options290 1,654 
Purchases of common stock(10,235) 
Dividends paid(11,272)(11,117)
Net cash used in financing activities of continuing operations(21,217)(9,463)
Net change in cash and cash equivalents(34,842)(30,084)
Cash and cash equivalents at beginning of period90,696 110,690 
Cash and cash equivalents at end of period$55,854 $80,606 
Supplemental disclosure of cash flow information:
Cash paid during the period for:
Income taxes, net of refunds$4,345 $5,441 
Supplemental disclosures of noncash operating, investing and financing activities:
Accrual of dividends payable$3,654 $3,716 

See accompanying notes to condensed consolidated financial statements—unaudited.
6

AMERICAN SOFTWARE, INC. AND SUBSIDIARIES
Notes to Condensed Consolidated Financial Statements—Unaudited
January 31, 2024
A. Presentation and Summary of Significant Accounting Policies
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements ("condensed consolidated financial statements") have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these condensed consolidated financial statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at January 31, 2024, results of operations for the three and nine months ended January 31, 2024 and 2023, consolidated statements of shareholders’ equity for the three and nine months ended January 31, 2024 and 2023, and cash flows for the nine months ended January 31, 2024 and 2023. The Company’s results for the three months ended January 31, 2024 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2023. The terms “fiscal 2024” and “fiscal 2023” refer to our fiscal years ending April 30, 2024 and 2023, respectively.
The preparation of these condensed consolidated financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosures of contingent assets and liabilities, at the date of the condensed consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Note 1 in the Notes to Consolidated Financial Statements contained in the Annual Report describes the significant accounting policies that we have used in preparing our consolidated financial statements. On an ongoing basis, we evaluate our estimates, including, but not limited to, those related to revenue reserves and allowances. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Our actual results could differ materially from these estimates under different assumptions or conditions.
Principles of Consolidation
The accompanying condensed consolidated financial statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation.
In September 2023, we disposed of our 100% equity interest in our information technology staffing firm, The Proven Method ("TPM") for approximately $2.1 million in cash. For further information regarding the transaction, see Note F to the accompanying condensed consolidated financial statements.
Recent Accounting Pronouncements
Accounting Standards Update ("ASU") 2021-08 In October 2021, the Financial Accounting Standards Board ("FASB") issued ASU 2021-08, "Business Combinations (Topic 805): Accounting for Contract Assets and Contract Liabilities from Contracts with Customers." Under current GAAP, an acquirer generally recognizes assets acquired and liabilities assumed in a business combination, including contract assets and contract liabilities arising from revenue contracts with customers and other similar contracts that are accounted for in accordance with Accounting Standards Codification ("ASC") Topic 606, Revenue from Contracts with Customers ("Topic 606"), at fair value on the acquisition date. ASU 2021-08 requires that an entity recognize and measure contract assets and contract liabilities acquired in a business combination in accordance with Topic 606. At the acquisition date, an acquirer should account for the related revenue contracts in accordance with Topic 606 as if it had originated the contracts, which should generally result in an acquirer recognizing and measuring the acquired contract assets and contract liabilities consistent with how they were recognized and measured in the acquiree’s financial statements. This update also provides certain practical expedients for acquirers when recognizing and measuring acquired contract assets and contract liabilities from revenue contracts in a business combination. The amendments in this update are effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years and should be applied prospectively to business combinations occurring on or after the effective date of the amendments. The Company adopted this update prospectively on May 1, 2023 and it did not have a material impact to our condensed consolidated financial statements.
B. Revenue Recognition
    In accordance with ASU 2014-09, Revenue from Contracts with Customers (Topic 606), we recognize revenue when we transfer control of the promised goods or services to our clients, in an amount that reflects the consideration we expect to
7

receive, in exchange for those goods or services. We derive our revenue from software licenses, maintenance services, consulting, implementation and training services, and Software-as-a-Service (“SaaS”), which includes a subscription to our software, as well as support, hosting and managed services.
The Company recognizes revenue in accordance with the following steps:
Step 1 - Identification of the Contract with the Client
Step 2 - Identification of Promised Goods and Services and Evaluation of Whether the Promised Goods and Services are Distinct Performance Obligations
Step 3 - Determination of the Transaction Price
Step 4 - Allocation of the Transaction Price to Distinct Performance Obligations
Step 5 - Attribution of Revenue for Each Distinct Performance Obligation
Nature of Products and Services
    Subscription. Subscription fees include SaaS revenue for the right to use the software for a limited period of time in an environment hosted by the Company or by a third-party. The client accesses and uses the software on an as-needed basis over the Internet or via a dedicated line; however, the client has no right to take delivery of the software. The underlying arrangements typically include a single fee for the service that is billed monthly, quarterly or annually. The Company’s SaaS solutions represent a series of distinct services that are substantially the same and have the same pattern of transfer to the client. Revenue from a SaaS solution is generally recognized ratably over the term of the arrangement.
    License. Our perpetual software licenses provide the client with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the client. Our perpetual software licenses are sold with maintenance under which we provide clients with telephone consulting, product updates on a when available basis, and releases of new versions of products previously purchased by the client, as well as error reporting and correction services.
    Professional Services and Other. Our services revenue consists of fees generated from consulting, implementation and training services, including reimbursements of out-pocket expenses in connection with our services. Services are typically optional to our clients, and are distinct from our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. We believe the output method of hours worked provides the best depiction of the transfer of our services since the client is receiving the benefit from our services as the work is performed. The total amount of expense reimbursement included in professional services and other revenue was immaterial for the three and nine months ended January 31, 2024 and 2023.
    Maintenance. Revenue is derived from maintenance under which we provide clients with telephone consulting, product updates and releases of new versions of products previously purchased by the client on a when and-if-available basis, as well as error reporting and correction services. Maintenance for perpetual licenses is renewable, generally on an annual basis, at the option of the client. Maintenance terms typically range from one to three years. Revenue related to maintenance is generally paid in advance and recognized ratably over the term of the agreement since the Company is standing ready to provide a series of maintenance services that are substantially the same each period over the term; therefore, time is the best measure of progress. Support services for subscriptions are included in the subscription fees and are recognized as a component of such fees.
    Indirect Channel Revenue. We record revenue from sales made through the indirect sales channels on a gross basis, because we control the goods or services and act as the principal in the transaction. In reaching this determination, we evaluated sales through our indirect channel on a case-by-case basis and considered a number of factors including indicators of control such as the party having the primary responsibility to provide specified goods or services and the party having discretion in establishing prices.
    Sales Taxes. We account for sales taxes collected from clients on a net basis.
Contract Balances. Timing of invoicing to clients may differ from timing of revenue recognition and these timing differences result in unbilled accounts receivables or contract liabilities (deferred revenue) on the Company’s Condensed Consolidated Balance Sheets. Fees for our software licenses are generally due within 30 days of contract execution. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our clients. SaaS solutions and maintenance are typically billed in advance on a monthly, quarterly, or annual basis. Services are typically billed as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we
8

have determined that our contracts generally do not include significant financing component. The primary purpose of our invoicing terms is to provide clients with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude any financing component from consideration for any contracts with payment terms of one year or less since we rarely offer terms extending beyond one year. The consideration in our client contracts is fixed.
We have an unconditional right to consideration for all goods and services transferred to our clients. That unconditional right to consideration is reflected in billed and unbilled accounts receivable in the accompanying Condensed Consolidated Balance Sheets in accordance with Topic 606.
Deferred revenue consists of amounts collected prior to having completed the performance of maintenance, SaaS, hosting, and managed services. We typically invoice clients for cloud subscription and support fees in advance on a monthly, quarterly or annual basis, with payment due at the start of the cloud subscription or support term. During the nine months ended January 31, 2024, we recognized $38.1 million of revenue that was included in the deferred revenue balance as of April 30, 2023.
January 31,
2024
April 30,
2023
(in thousands)
Deferred revenue$37,154 $43,124 

    Remaining Performance Obligations. A performance obligation is a promise in a contract to transfer a distinct good or service to the client and is the unit of account under Topic 606. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied by transferring the promised good or service to the client. The Company identifies and tracks the performance obligations at contract inception so that the Company can monitor and account for the performance obligations over the life of the contract. Remaining performance obligations represent the transaction price of orders for which products have not been delivered or services have not been performed. As of January 31, 2024, the aggregate amount of the transaction price allocated to remaining performance obligations was approximately $119.5 million. The Company expects to recognize revenue on approximately 51% of the remaining performance obligations over the next 12 months, with the remainder recognized thereafter.
    Disaggregated Revenue. The Company disaggregates revenue from contracts with clients by geography, as it believes it best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors.
The Company’s revenue by geography is as follows:
    
 Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
(in thousands)(in thousands)
Revenues:
Domestic$20,040 $21,078 $60,646 $63,633 
International5,496 6,349 16,481 17,854 
$25,536 $27,427 $77,127 $81,487 
    Contract Costs. The Company capitalizes the incremental costs of obtaining a contract with a client if the Company expects to recover those costs. The incremental costs of obtaining a contract are those that the Company incurs to obtain a contract with a client that it would not have incurred if the contract had not been obtained (for example, a sales commission). The Company capitalizes the costs incurred to fulfill a contract only if those costs meet all of the following criteria:
The costs relate directly to a contract or to an anticipated contract that the Company can specifically identify.
The costs generate or enhance resources of the Company that will be used in satisfying (or in continuing to satisfy) performance obligations in the future.
The costs are expected to be recovered.
9

    Certain sales commissions incurred by the Company were determined to be incremental costs to obtain the related contracts, which are deferred and amortized ratably over the economic benefit period. These deferred commission costs are classified as current or non-current based on the timing of when the Company expects to recognize the expense. The current and non-current portions of deferred commissions are included in prepaid expenses and other current assets and other assets, respectively, in the Company’s Condensed Consolidated Balance Sheets. Total deferred commissions at January 31, 2024 and April 30, 2023 were $2.6 million and $3.0 million, respectively. Amortization of sales commissions was $0.4 million and $1.2 million for the three and nine months ended January 31, 2024 and $0.4 million and $1.2 million for the three and nine months ended January 31, 2023, which is included in "Sales and marketing" expense in the accompanying Condensed Consolidated Statements of Operations. No impairment losses were recognized during the periods.
C. Declaration of Dividend Payable
On November 20, 2023, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend was payable on February 16, 2024 to Class A and Class B shareholders of record at the close of business on February 2, 2024.
D. Earnings Per Common Share
The Company has two classes of common stock. Class B common shares are convertible into Class A common shares at any time, on a one-for-one basis. Under the Company’s Articles of Incorporation, if dividends are declared, holders of Class A common shares shall receive a $0.05 dividend per share prior to the Class B common shares receiving any dividend and holders of Class A common shares shall receive a dividend at least equal to Class B common shares dividends on a per share basis. As a result, the Company has computed the earnings per share in compliance with the Earnings Per Share Topic of the FASB ASC 260, Earnings Per Share, which requires companies that have multiple classes of equity securities to use the “two-class” method in computing earnings per share.
For the Company’s basic earnings per share calculation, the Company uses the “two-class” method. Basic earnings per share are calculated by dividing net earnings attributable to each class of common stock by the weighted average number of shares outstanding. All undistributed earnings are allocated evenly between Class A and B common shares in the earnings per share calculation to the extent that earnings equal or exceed $0.05 per share. If Class B shares convert to Class A shares during the period, the distributed net earnings for Class B shares is calculated using the weighted average common shares outstanding during the period.
Diluted earnings per share is calculated similarly to basic earnings per share, except that the calculation is adjusted to give effect to dilutive elements including stock options and restricted stock units ("RSUs") issuable under the Company's stock incentive plans, to the extent these are dilutive. For the Company’s diluted earnings per share calculation for Class A shares, the Company uses the “if-converted” method. This calculation assumes that all Class B common shares are converted into Class A common shares and, as a result, assumes there are no holders of Class B common shares to participate in undistributed earnings.
For the Company’s diluted earnings per share calculation for Class B shares, the Company uses the “two-class” method. This calculation does not assume that all Class B common shares are converted into Class A common shares. In addition, this method assumes the dilutive effect of Class A stock options and RSUs were converted to Class A shares and the undistributed earnings are allocated evenly to both Class A and B shares including Class A shares issued pursuant to those converted stock options. This allocation is based on management’s judgment after considering the dividend rights of the two-classes of common stock, the control of the Class B shareholders and the convertibility rights of the Class B shares into Class A shares.
The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts):








10

Basic earnings per common share:
Three Months Ended January 31, 2024Nine Months Ended January 31, 2024
Class A
Common
Shares
Class B
Common
Shares
Class A
Common
Shares
Class B
Common
Shares
Distributed earnings$0.11 $0.11 $0.33 $0.33 
Undistributed losses0.01 0.01 (0.06)(0.06)
Total from continuing operations$0.12 $0.12 $0.22 $0.27 
Total from discontinued operations  0.05  
Total$0.12 $0.12 $0.27 $0.27 
Distributed earnings$3,454 $200 $10,568 $601 
Undistributed losses410 24 (1,864)(106)
Total from continuing operations$3,864 $224 $6,892 $495 
Total from discontinued operations  1,812  
Total$3,864 $224 $8,704 $495 
Basic weighted average common shares outstanding31,470 1,822 32,020 1,822 
Three Months Ended January 31, 2023Nine Months Ended January 31, 2023
Class A
Common
Shares
Class B
Common
Shares
Class A
Common
Shares
Class B
Common
Shares
Distributed earnings$0.11 $0.11 $0.33 $0.33 
Undistributed losses*(0.02)(0.02)(0.11)(0.11)
Total from continuing operations$0.09 $0.09 $0.21 $0.22 
Total from discontinued operations$ $ $0.01 $ 
Total$0.09 $0.09 $0.22 $0.22 
Distributed earnings$3,515 $201 $10,532 $601 
Undistributed losses(472)(27)(3,545)(202)
Total from continuing operations$2,998 $174 $6,664 $399 
Total from discontinued operations45  323  
Total$3,043 $174 $6,987 $399 
Basic weighted average common shares outstanding31,937 1,822 31,890 1,822 
`


Diluted EPS for Class A Common Shares Using the If-Converted Method
Three Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$3,864 31,470 $0.12 
Common Stock Equivalents— 44 — 
3,864 31,514 0.12 
Class B Common Share Conversion*224 1,822 — 
Diluted EPS for Class A Common Shares$4,088 33,336 $0.12 
11


Nine Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$8,704 32,020 $0.27 
Common Stock Equivalents— 24 — 
8,704 32,044 0.27 
Class B Common Share Conversion*495 1,822 — 
Diluted EPS for Class A Common Shares$9,199 33,866 $0.27 

Three Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$3,043 31,937 $0.09 
Common Stock Equivalents— 206 — 
3,043 32,143 0.09 
Class B Common Share Conversion174 1,822 — 
Diluted EPS for Class A Common Shares$3,217 33,965 $0.09 

Nine Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$6,987 31,890 $0.22 
Common Stock Equivalents— 294 — 
6,987 32,184 0.22 
Class B Common Share Conversion*399 1,822 — 
Diluted EPS for Class A Common Shares$7,386 34,006 $0.22 


Diluted EPS for Class B Common Shares Using the Two-Class Method
Three Months Ended January 31, 2024
12

Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$224 1,822 $0.12 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares — — 
Diluted EPS for Class B Common Shares$224 1,822 $0.12 


Nine Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$495 1,822 $0.27 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares — — 
Diluted EPS for Class B Common Shares$495 1,822 $0.27 

Three Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$174 1,822 $0.09 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares1 — — 
Diluted EPS for Class B Common Shares$175 1,822 $0.09 

Nine Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$399 1,822 $0.22 
Reallocation of undistributed earnings from Class A Common Shares to Class B Common Shares2 — — 
Diluted EPS for Class B Common Shares$401 1,822 $0.22 
____________
13

*Amounts adjusted for rounding

For the three and nine months ended January 31, 2024 we excluded options to purchase 6,481,015 and 6,184,717 Class A Common Shares, respectively, and for the three and nine months ended January 31, 2023 we excluded options to purchase 4,445,248 and 3,718,454 Class A Common Shares, respectively. We excluded these option share amounts because the exercise prices of those options were greater than the average market price of the Class A Common Shares during the applicable period. As of January 31, 2024, we had a total of 6,522,415 options outstanding and as of January 31, 2023, we had a total of 5,677,804 options outstanding.
E. Acquisitions
We account for business combinations using the acquisition method of accounting and, accordingly, the identifiable assets acquired and liabilities assumed are recorded based upon management’s estimates of current fair values as of the acquisition date. The estimation process includes analyses based on income and market approaches. Goodwill represents the excess purchase price over the fair value of net assets, including the amount assigned to identifiable intangible assets. The goodwill generated is due in part to the synergies that are not included in the fair value of identifiable intangible assets. Goodwill recorded in an acquisition is assigned to applicable reporting units based on expected revenues. Identifiable intangible assets with finite lives are amortized over their useful lives. Amortization of current technology is recorded in cost of revenue-subscription fees and amortization of all other intangible assets is recorded in amortization of acquisition-related intangibles. Acquisition-related costs, including advisory, legal, accounting, valuation and other costs, are expensed in general and administrative expenses in the periods in which such costs are incurred. The results of operations of acquired businesses are included in the condensed consolidated financial statements from the acquisition date.
Effective September 5, 2023, the Company entered into a Stock Purchase Agreement (“Garvis Purchase Agreement”) with privately-held Garvis AI Limited, a private limited company organized and registered under the laws of England and Wales (“Garvis”). Pursuant to the Garvis Purchase Agreement, the Company acquired 100% of the total issued and outstanding shares of capital stock of Garvis, a visionary SaaS startup that can combine a large language model-based AI interface (e.g. ChatGPT) with AI-native demand forecasting.
Garvis designed from the ground up an AI-first forecasting solution now called DemandAI+. When combined with Generative AI, DemandAI+ creates a modern, more inclusive, and intuitive planning paradigm that quickly digitizes supply chain relationships and exposes that data to any stakeholder across the organization. By simply asking questions planners, executives, and non-planners alike get answers to unanticipated queries in real-time, providing transparency for more informed decisions that saves precious planning time. Demand AI+, built for the cloud, will be embedded into the Logility Digital Supply Chain Platform. The combined solutions will enable a new supply chain planning paradigm with DemandAI+ that moves beyond conventional methods to plan demand and inventory at the speed of the market.
Under the terms of the Garvis Purchase Agreement, the Company acquired the capital stock for cash consideration paid net of cash acquired of approximately $25.0 million, subject to certain post-closing adjustments. The Company incurred acquisition costs of approximately $167,000 and $504,000 during the three and nine months ended January 31, 2024. The operating results of Garvis are not material for proforma disclosure. The Company preliminarily allocated $16.8 million of the total purchase price to goodwill, which has been assigned to the Supply Chain Management segment and is not deductible for income tax purposes.
The following preliminary allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of September 5, 2023 (in thousands):
14

Useful Life
Cash67 
Accounts receivable, net457 
Current assets47 
Property and equipment, net27 
Goodwill16,835 
Non-compete2,000 3 years
Current technology9,000 3 years
Total assets acquired28,433 
Current liabilities(617)
Long-term liabilities(2,708)
Total liabilities assumed$(3,325)
Net assets acquired$25,108 
Current technology and non-compete agreements are being amortized on a straight-line basis over the remaining estimated economic life of the assets, including the period being reported.
Effective June 28, 2022, the Company acquired certain assets of privately-held Starboard Solutions Corp., a Michigan based innovator of supply chain network design software (“Starboard”), pursuant to the terms of an asset purchase agreement, dated as of June 28, 2022 (the “Starboard Purchase Agreement”).
Starboard creates an interactive supply chain digital twin of the physical supply chain network and uses gaming technology to provide an intuitive user experience where users can easily explore answers to various "what if" questions. Starboard offers a unique supply chain visualization solution that can optimize for unknown locations, meaning users do not have to map their plans to a physical location. Applying Starboard’s rich set of reference costs with Logility’s lane rates and time data structures, users have the ability to quickly analyze options in regions for which they have no prior data and assess better locations for future plants, warehouses or third-party logistic locations. The intuitive design and ease of configuration makes the Starboard network design solution stand out. The Starboard software is built for recurring use, eliminating the need for a consulting project to model potential resolutions to unexpected supply chain disruptions. The integration of Starboard’s capabilities into the Logility Digital Supply Chain Platform will offer supply chain leaders enhanced integrated business planning outcomes. Users will be able to model a response to disruptions and update their operating plan within the Logility Digital Supply Chain Platform in minutes to enact the new operating paradigm.
Under the terms of the Starboard Purchase Agreement, the Company acquired the assets in exchange for a purchase price of approximately $6.5 million in cash, subject to certain post-closing adjustments, plus up to a maximum aggregate amount of $6.0 million (the "Aggregate Maximum Earnout Payment") of contingent earnout payments upon satisfaction of certain subscription revenue targets over a three year earnout period (the "Earnout Period"). For each year of the Earnout Period (each, a "Calculation Period"), the Company will pay, as additional consideration, $2.0 million once subscription revenue (i.e., revenue contracted for and recorded as revenue in accordance with GAAP) for the applicable Calculation Period equals $1.5 million, plus one dollar of additional consideration for each dollar of subscription revenue in excess of $1.5 million, subject to the Aggregate Maximum Earnout Payment. If the subscription revenue for each Calculation Period is less than $1.5 million, no additional payment shall be due for such Calculation Period. The contingent earnout payments are subject to the recipient's continued service with the Company; therefore, any additional consideration will be accounted for as post-combination services and will be expensed in the period(s) payments are accruable. The cumulative earnout paid as of January 31, 2024 was $0. The Company incurred acquisition costs of approximately $0, $0, $50,000 and $186,000 during the three and nine months ended January 31, 2024 and 2023, respectively. The operating results of Starboard are not material for proforma disclosure. We allocated $3.7 million of the total purchase price to goodwill, which has been assigned to the Supply Chain Management segment and is deductible for income tax purposes.
The following allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of June 28, 2022 (in thousands):
15

Useful Life
Other assets90 
Goodwill3,670 
Non-compete agreements170 5 years
Current technology2,500 3 years
Customer relationships160 6 years
Total assets acquired6,590 
Long-term liabilities(90)
Net assets acquired$6,500 

Non-compete agreements, current technology and customer relationships are being amortized on a straight-line basis over the remaining estimated economic life of the assets, including the period being reported.
F. Divestitures
Discontinued Operations
On September 18, 2023, the Company disposed of its 100% equity interest in its information technology staffing firm, TPM to Marathon TS, Inc., an IT professional services firm for approximately $2.1 million in cash, of which $300,000 is held in escrow. The amounts held in escrow are limited to claims arising out of or relating to any pre-closing taxes. Any escrow amounts that are not subject to then outstanding indemnification claims shall be released to the Company in equal $100,000 increments on the 12, 24 and 36 month anniversary of the transaction closing date and are included in prepaid expenses and other current assets and other assets in the Condensed Consolidated Balance Sheet as of January 31, 2024. There have not been any submitted, or expected, indemnification claims against these escrowed funds. This transaction enables us to focus on our core supply chain planning business allowing Logility to continue to expand its AI-first supply chain management platform.
In accordance with applicable accounting guidance for the disposal of long-lived assets, the results of TPM are presented as discontinued operations and, as such, have been excluded from both continuing operations and segment results in the accompanying Condensed Consolidated Balance Sheets, Condensed Consolidated Statements of Operations, Condensed Consolidated Statements of Cash Flows and in the Notes to Condensed Consolidated Financial Statements. TPM was previously reported in the former IT Consulting segment. During the second quarter of fiscal 2024, the Company identified an error, originating in 2017, resulting in an understatement of professional services and other cost of revenue and other current liabilities. The error was determined to be immaterial to all impacted periods and has been corrected in the previously issued condensed consolidated financial statements presented herein. Subsequent to presenting the results of TPM as discontinued operations, the amounts related to the error resulted in an adjustment to decrease earnings from operations of discontinued operations by $123,000 and $168,000 in the three and nine months ended January 31, 2023, respectively. The error resulted in an increase to retained deficit and an increase to other current liabilities of approximately $1.0 million in prior periods presented.
The following is selected financial information included in Earnings from discontinued operations for TPM:

Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
Revenue$ $3,584 $4,932 $12,258 
Cost of revenue 2,926 3,959 9,942 
Total operating expenses$ $570 $718 $1,841 
Gain on disposal of discontinued operations$ $ $2,124 $ 
Earnings before income taxes$ $88 $2,379 $475 
Income tax expense64 43 567 152 
Earnings (loss) from discontinued operations, net of taxes$(64)$45 $1,812 $323 
16


The following is selected financial information included in current assets and current liabilities from discontinued operations for TPM:
January 31,April 30,
20242023
Cash and cash equivalents$ $637 
Trade accounts receivable, less allowance for doubtful accounts 2,964 
Prepaid expenses and other current assets 2 
Current assets of discontinued operations$ $3,603 
Current liabilities of discontinued operations$ $318 
Other Divestitures
On November 15 2023, we signed an asset purchase agreement for the sale of our Transportation Rating Solutions ("TRS") business which consists of on-premise freight shipping solutions for LTL, truckload and rail shipments within North America to FOG Software Group ("FOG") a division of Vela Software for approximately $1.1 million in cash, of which, $440,000 is subject to various holdback provisions, which will expire 120 days following the date of the agreement. The divestiture of TRS will allow us to focus on our core supply chain planning business allowing Logility to continue to expand its AI-first supply chain management platform. The purchase price is subject to a working capital adjustment. We recognized a pre-tax gain of approximately $1.4 million which is recorded within Other Income in the accompanying Condensed Consolidated Statements of Operations for the three and nine months ended January 31, 2024. Earnings from the business were not material and the results of the business through the date of sale were reflected in continuing operations within the SCM segment.
G. Stock-Based Compensation
In the first quarter of fiscal 2024, the Compensation Committee of our Board of Directors awarded RSUs to independent directors not employed by the Company that will vest, and shares of Class A common stock will be issued, on the first anniversary of the date of the grant. The RSU awards replace option grants for Class A common stock previously awarded to independent directors. In addition, stock option grants for employees and contractors for Class A common shares were issued, as follows:

 Nine Months Ended January 31,
 20242023
Awards granted:
    Options1,485,000 1,519,000 
    RSUs95,411  
Total awards granted1,580,411 1,519,000 

The fair value of each option award is estimated on the date of grant using the Black-Scholes option pricing model and the fair value of each RSU award is estimated on the date of grant using the fair value method. The forfeiture rates are estimated using historical data. We recorded total compensation cost related to stock options and RSUs of approximately $1.6 million and $1.3 million of which, $0 and $8,000 was included in discontinued operations, and income tax expense of approximately $69,000 from option expirations and income tax benefits of approximately $4,000 from option exercises during the three months ended January 31, 2024 and 2023, respectively. We recorded total compensation cost related to stock options and RSUs of approximately $4.7 million and $3.9 million, of which $0 and $16,000 was included in discontinued operations, and income tax expense of approximately $69,000 from option expirations and income tax benefits of approximately $67,000 from option exercises during the nine months ended January 31, 2024 and 2023, respectively. We record stock-based compensation expense on a straight-line basis over the vesting period directly to additional paid-in capital.
17

During the nine months ended January 31, 2024 and 2023, we issued 26,253 and 140,800 shares of Class A common stock, respectively, resulting from the exercise of stock options. The total intrinsic value of options exercised during the nine months ended January 31, 2024 and 2023 based on market value at the exercise dates was approximately $40,000 and $589,000, respectively. As of January 31, 2024, unrecognized compensation cost related to unvested stock option and RSU awards approximated $14.6 million, respectively, which we expect to recognize over a weighted average period of 1.71 years.
18

H. Fair Value of Financial Instruments
We measure our investments based on a fair value hierarchy disclosure framework that prioritizes and ranks the level of market price observability used in measuring assets and liabilities at fair value. A number of factors affect market price observability, including the type of asset or liability and its characteristics. This hierarchy prioritizes the inputs into three broad levels as follows:
Level 1—Quoted prices for identical instruments in active markets.
Level 2—Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs and significant value drivers are observable in active markets.
Level 3—Valuations derived from valuation techniques in which one or more significant inputs or significant value drivers are unobservable.
The following is a general description of the valuation methodologies we use for financial assets and liabilities measured at fair value, including the general classification of such assets and liabilities pursuant to the valuation hierarchy.
Cash Equivalents—Cash equivalents include investments in government obligation based money-market funds, other money market instruments and interest-bearing deposits with initial terms of three months or less. The fair value of cash equivalents approximates its carrying value due to the short-term nature of these instruments.
Marketable Securities—Marketable securities utilizing Level 1 inputs include active exchange-traded equity securities and equity index funds, and most U.S. government debt securities, as these securities all have quoted prices in active markets. Marketable securities utilizing Level 2 inputs include municipal bonds. We value these securities using market-corroborated pricing or other models that use observable inputs such as yield curves.
The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of January 31, 2024 and April 30, 2023, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands):
 January 31, 2024
 Quoted Prices
in Active
Markets for
Identical Assets
(Level 1)
Significant
Other
Observable
Inputs
(Level 2)
Significant
Unobservable
Inputs
(Level 3)
Balance
Cash equivalents$51,464 $ $ $51,464 
U.S. Treasury securities4,625   4,625 
Marketable securities17,829   17,829 
Total$73,918 $ $ $73,918 
April 30, 2023
Quoted Prices
in Active
Markets for
Identical Assets
(Level 1)
Significant
Other
Observable
Inputs
(Level 2)
Significant
Unobservable
Inputs
(Level 3)
Balance
Cash equivalents$81,352 $ $ $81,352 
U.S. Treasury securities7,305   7,305 
Marketable securities16,632   16,632 
Total$105,289 $ $ $105,289 

I. Stock Repurchases
On August 19, 2002, our Board of Directors authorized the repurchase of up to an additional 2.0 million shares of our Class A common stock. We have made and will make these repurchases through open market purchases at prevailing market
19

prices. The timing of any repurchase will depend upon market conditions, the market price of our Class A common stock and management’s assessment of our liquidity and cash flow needs. Under this repurchase plan, we have repurchased 2,000,000 shares of Class A common stock at a cost of approximately $16.4 million, which had a $10.2 million impact on fiscal 2024. As of January 31, 2024, under all repurchase plans previously authorized, including this most recent plan, we have repurchased a total of 5,534,953 shares of common stock at a cost of approximately $35.8 million.
20

J. Comprehensive Income
We have not included Condensed Consolidated Statements of Comprehensive Income in the accompanying unaudited condensed consolidated financial statements since comprehensive income and net earnings presented in the accompanying Condensed Consolidated Statements of Operations would be substantially the same.
21

K. Industry Segments
FASB ASC 280, Segment Reporting, establishes standards for reporting information about operating segments. Operating segments are defined as components of a public entity about which separate financial information is available that is evaluated regularly by the chief operating decision makers (“CODMs”), or decision making group, in deciding how to allocate resources and in assessing performance. Our CODMs are our Chief Executive Officer and President and our Chief Financial Officer. While our CODMs are apprised of a variety of financial metrics and information, we manage our business primarily on a segment basis, with the CODMs evaluating performance based upon segment operating profit or loss that includes an allocation of common expenses, but excludes certain unallocated corporate expenses, which are included in the Other segment. Our CODMs review the operating results of our two segments, assess performance and allocate resources in a manner that is consistent with the changing market dynamics that we have experienced. The two operating segments are: (1) Supply Chain Management (“SCM”) and (2) Other.
The SCM segment leverages a single platform spanning seven supply chain process areas, including product, demand, inventory, supply, deploy, integrated business planning and supply chain data management. The Other segment consists of (i) American Software enterprise resource planning ("ERP"), which provides purchasing and materials management, client order processing, financial, e-commerce and traditional manufacturing solutions, and (ii) unallocated corporate overhead expenses.
All of our revenue is derived from external clients. We do not have any inter-segment revenue. Our income taxes and dividends are paid at a consolidated level. Consequently, it is not practical to show these items by operating segment.
In the following table, we have broken down the intersegment transactions applicable to the three and nine months ended January 31, 2024 and 2023 (in thousands):
 Three Months Ended January 31,Nine Months Ended January 31,
 2024202320242023
Revenue:
Supply Chain Management$25,009 $26,952 $75,558 $79,886 
Other527 475 1,569 1,601 
$25,536 $27,427 $77,127 $81,487 
Operating income\(loss):
Supply Chain Management$6,119 $7,763 $18,396 $22,587 
Other(5,304)(5,018)(14,960)(14,950)
$815 $2,745 $3,436 $7,637 
Capital expenditures:
Supply Chain Management$21 $14 $434 $1,604 
Other47 935 155 2,051 
$68 $949 $589 $3,655 
Depreciation and amortization:
Supply Chain Management$1,462 $675 $3,115 $2,042 
Other172 113 526 347 
$1,634 $788 $3,641 $2,389 
Earnings\(loss) before income taxes:
Supply Chain Management$7,810 $8,094 $20,353 $22,695 
Other(2,578)(4,015)(11,191)(13,750)
$5,232 $4,079 $9,162 $8,945 
L. Major Clients
No single client accounted for more than 10% of total revenue for the three and nine months ended January 31, 2024 and 2023.
22

M. Contingencies
The Company more often than not indemnifies its clients against damages and costs resulting from third-party claims of intellectual property infringement associated with use of the Company’s products. The Company historically has not been required to make any payments under such indemnification obligations. However, the Company continues to monitor the circumstances that are subject to indemnification to identify whether it is probable that a loss has occurred, and would recognize any such losses under such indemnification obligations when they are estimable.
In addition, the Company warrants to clients that the Company’s products operate substantially in accordance with the software product’s specifications. Historically, no costs have been incurred related to software product warranties and none are expected in the future, and as such no accruals for software product warranty costs have been made. Additionally, the Company is involved in various claims arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on the financial position or results of operations of the Company.
N. Subsequent Event
On February 21, 2024, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend is payable on May 17, 2024 to Class A and Class B shareholders of record at the close of business on May 3, 2024.

23

Item 2.    Management’s Discussion and Analysis of Financial Condition and Results of Operations
FORWARD-LOOKING STATEMENTS
This quarterly report on Form 10-Q (this “Quarterly Report”) contains forward-looking statements relating to our future financial performance, business strategy, financing plans and other future events that involve uncertainties and risks. You can identify these statements by forward-looking words such as “anticipate,” “intend,” “plan,” “continue,” “could,” “grow,” “may,” “potential,” “predict,” “strive” “will,” “seek,” “estimate,” “believe,” “expect,” and similar expressions that convey uncertainty of future events or outcomes. Any forward-looking statements we make herein are pursuant to the safe harbor provision of the Private Securities Litigation Reform Act of 1995. Forward-looking statements include statements concerning future:
results of operations;
liquidity, cash flow and capital expenditures;
demand for and pricing of our products and services;
viability and effectiveness of strategic alliances;
industry conditions and market conditions;
acquisition activities and the effect of completed acquisitions; and
general economic conditions.
Although we believe that the goals, plans, expectations, and prospects that our forward-looking statements reflect are reasonable in view of the information currently available to us, those statements are not guarantees of performance. There are many factors that could cause our actual results to differ materially from those anticipated by forward-looking statements made herein. These factors include, but are not limited to, continuing U.S. and global economic uncertainty, the timing and degree of business recovery, unpredictability and the irregular pattern of future revenue, dependence on particular market segments or clients, competitive pressures, delays, product liability and warranty claims and other risks associated with new product development, undetected software errors, market acceptance of our products, technological complexity, the challenges and risks associated with integration of acquired product lines, companies and services, as well as a number of other risk factors that could affect our future performance. All forward-looking statements included in this Quarterly Report are based upon information available to us as of the filing date of this Quarterly Report. We undertake no obligation to update any of these forward-looking statements for any reason. These forward-looking statements involve known and unknown risks, uncertainties and other factors that may cause our actual results, levels of activity, performance, or achievements to differ materially from those expressed or implied by these statements. We discuss certain factors in greater detail in “Business Overview” below.
ECONOMIC OVERVIEW
In January 2024, the International Monetary Fund (“IMF”) provided an update to the World Economic Outlook for 2024. The update noted that, “Global growth is projected at 3.1 percent in 2024 and 3.2 percent in 2025, with the 2024 forecast 0.2 percentage point higher than that in the October 2023 World Economic Outlook (WEO) on account of greater-than-expected resilience in the United States and several large emerging market and developing economies, as well as fiscal support in China. The forecast for 2024–25 is, however, below the historical (2000–19) average of 3.8 percent, with elevated central bank policy rates to fight inflation, a withdrawal of fiscal support amid high debt weighing on economic activity, and low underlying productivity growth. Inflation is falling faster than expected in most regions, in the midst of unwinding supply-side issues and restrictive monetary policy. Global headline inflation is expected to fall to 5.8 percent in 2024 and to 4.4 percent in 2025, with the 2025 forecast revised down.
With disinflation and steady growth, the likelihood of a hard landing has receded, and risks to global growth are broadly balanced. On the upside, faster disinflation could lead to further easing of financial conditions. Looser fiscal policy than necessary and than assumed in the projections could imply temporarily higher growth, but at the risk of a more costly adjustment later on. Stronger structural reform momentum could bolster productivity with positive cross-border spillovers. On the downside, new commodity price spikes from geopolitical shocks––including continued attacks in the Red Sea––and supply disruptions or more persistent underlying inflation could prolong tight monetary conditions. Deepening property sector woes in China or, elsewhere, a disruptive turn to tax hikes and spending cuts could also cause growth disappointments."
For fiscal 2024, we believe that the important nature of our software, combined with a challenging global macro economic environment from increased global disruptions on companies’ supply chains will require them to improve productivity and profitability by upgrading their technology systems, which may result in an improved selling environment. Although this improvement could slow or regress at any time, due in part to the effects of a possible recession and trade conflicts on global capital markets, we believe that our organizational and financial structure will enable us to take advantage of any sustained economic rebound. That said, the current business climate within the U.S. and geographic regions in which we
24

operate may affect clients’ and prospects' decisions regarding timing of strategic capital expenditures by taking longer periods to evaluate discretionary software purchases.
Corporate capital spending trends and commitments are the primary determinants of the size of the market for business software. Corporate capital spending is, in turn, a function of general economic conditions in the U.S. and abroad and in particular may be affected by conditions in U.S. and global credit markets. In recent years, the weakness in the overall global economy and the U.S. economy has resulted in reduced expenditures in the business software market.
COMPANY OVERVIEW
American Software was incorporated in Georgia in 1970. The Company is headquartered in Atlanta, Georgia with another U.S. office in Miami; and international offices in Belgium, the United Kingdom, India, Germany, New Zealand and Australia.
We provide our software and services solutions through two major operating segments: (1) Supply Chain Management and (2) Other. The SCM software business is our core market. We continue to provide limited services to our legacy ERP clients included in the Other segment.
American Software through its wholly-owned subsidiary and operating entity Logility, Inc ("Logility"), delivers prescriptive demand, inventory, manufacturing, and supply planning tools – helping to provide executives the confidence and control to increase margins and service levels, while delivering sustainable supply chains. Designed for speed and agility, Logility’s SaaS cloud-based platform provides an innovative blend of artificial intelligence (AI), machine learning, and predictive analytics to help deliver integrated planning and operations across the end-to-end supply chain. Our prescriptive approach drives team alignment for enterprises with prioritized outcomes that assure demonstrable value.
Fueled by supply chain master data, allowing for the automation of critical business processes through the application of artificial intelligence and machine learning algorithms to a variety of internal and external data streams, the comprehensive Logility portfolio delivered in the cloud includes advanced analytics, supply chain visibility, demand, inventory and replenishment planning, Sales and Operations Planning, Integrated Business Planning, supply and inventory optimization, manufacturing planning and scheduling, network design and optimization, retail merchandise and assortment planning and allocation, product lifecycle management, sourcing management, vendor quality and compliance, and product traceability.
We believe enterprises are facing unprecedented rates of change and disruption across their operations with a significant transformation in supply chain planning due to advancements in technology, generational shifts of planners, and the significant speed of market changes and disruptions. With increasing consumer expectations for convenience and personalization, fast and free delivery and product freshness forcing enterprises to adapt or be left behind. Given constraints arising from a shortage of skilled supply chain talent and a desire to keep costs at a minimum, we expect enterprises to embrace digital transformation initiatives to meet these challenges. Our solution reduces the business cycle time required from product concept to client availability. Our platform allows our clients to create a digital model of their physical supply chain networks that improves the speed and agility of their operations by implementing automated planning processes. These processes regularly analyze business and market signals to better inform product design and development, increase forecast accuracy, optimize inventory across the supply chain, improve sourcing of sustainable and ethically produced products, and contribute to high client satisfaction.
Our platform is highly regarded by clients and industry analysts alike. Logility, is named a leader in multiple IDC MarketScape reports including; the September 2022 report IDC MarketScape: Worldwide Holistic Supply Chain Planning 2022 Vendor Assessment; the September 2022 report IDC MarketScape: Worldwide Supply Chain Demand Planning 2022 Vendor Assessment; the September 2022 report IDC MarketScape: Worldwide Supply Chain Sales and Operations Planning 2022 Vendor Assessment; and the September 2022 report IDC MarketScape: Worldwide Supply Chain Inventory Optimization 2022 Vendor Assessment. Logility, Inc. was also named as a Major Player in the September 2022 IDC MarketScape: Worldwide Holistic Supply Planning 2022 Vendor Assessment.
Logility has been positioned in the Challenger quadrant in Gartner, Inc.’s May 2, 2023 report, Magic Quadrant for Supply Chain Planning Solutions and positioned in the Leadership quadrant in the Peer Insights for the Gartner Voice of the Customer. We believe our platform is rated highly due to our flexible advanced analytics, underlying SaaS architecture, ease of integration with third-party systems, lower total cost of ownership relative to competitors and the broad scope of supply chain planning functions supported.
We serve approximately 650 clients located in approximately 80 countries, largely concentrated within key vertical markets including apparel and other soft goods, food and beverage, consumer packaged goods, consumer durable goods, wholesale distribution, specialty chemical and other process manufacturing. Our solutions are marketed and sold through a direct sales team as well as an indirect global value-added reseller (“VAR”) distribution network. Our solutions may be
25

deployed in the cloud or with existing on-premise clients who may require additional components. We further support our clients with an array of consulting, implementation, operational and training services as well as technical support and hosting.
We derive revenue from four sources: subscriptions, software licenses, maintenance and services. We generally determine SaaS subscription and software license fees based on the breadth of functionality and number of users and/or divisions. Services and other revenues consist primarily of fees from software implementation, training, consulting services, hosting and managed services. We bill for consulting services primarily under time and materials arrangements and recognize revenue as we perform services. Subscription and maintenance agreements typically are for a three- to five-year term. We generally bill these fees annually in advance and then recognize the resulting revenue ratably over the term of the agreement. Deferred revenues represent advance payments or fees for subscriptions, software licenses, services and maintenance billed in advance of the time we recognize the related revenue.
We currently view the following factors as the primary opportunities and risks associated with our business:
Acquisition Opportunities. There are opportunities for selective acquisitions or investments to expand our sales distribution channels and/or broaden our product offering by providing additional solutions for our target markets.
Dependence on Capital Spending Patterns. There is risk associated with our dependence on the capital spending patterns of U.S. and international businesses, which in turn are functions of economic trends and conditions over which we have no control.
Acquisition Risks. There are risks associated with acquisitions of complementary companies, products and technologies, including the risks that we will not achieve the financial and strategic goals that we contemplate at the time of the transaction. More specifically, in any acquisition, we will face risks and challenges associated with the uncertain value of the acquired business or assets, the difficulty of assimilating operations and personnel, integrating acquired technologies and products and maintaining the loyalty of the clients of the acquired business.
Competitive Technologies. There is a risk that our competitors may develop technologies that are substantially equivalent or superior to our technology.
Competition in General. There are risks inherent in the market for business application software and related services, which has been and continues to be intensely competitive; for example, some of our competitors may become more aggressive with their prices and/or payment terms, which may adversely affect our profit margins.
A discussion of a number of additional risk factors associated with our business is included in our Annual Report for fiscal 2023. Additional information and other factors that could affect future financial results may be included, from time to time, in our filings with the Securities and Exchange Commission (the “SEC”).
Recent Accounting Pronouncements
For information with respect to recent accounting pronouncements, if any, and the impact of these pronouncements on our condensed consolidated financial statements, if any, see Note A in the Notes to condensed consolidated financial statements included elsewhere in this Quarterly Report.
26

COMPARISON OF RESULTS OF OPERATIONS
Three-Month Comparisons. The following table sets forth certain revenue and expense items as a percentage of total revenue and the percentage changes in dollars for such items for the three months ended January 31, 2024 and 2023:
 Three Months Ended January 31,
 Percentage of Total
Revenue
Pct. Change in
Dollars
 20242023
2024 vs. 2023
Revenue:
Subscription fees55 %47 %%
License%%(73)%
Professional services and other13 %17 %(28)%
Maintenance31 %32 %(11)%
Total revenue100 %100 %(7)%
Cost of revenue:
Subscription fees19 %15 %23 %
License— %%(99)%
Professional services and other11 %13 %(23)%
Maintenance%%(10)%
Total cost of revenue36 %35 %(4)%
Gross margin64 %65 %(8)%
Research and development18 %16 %%
Sales and marketing20 %18 %%
General and administrative24 %22 %%
Total operating expenses62 %56 %%
Operating income%%(70)%
Other income:
Other, net17 %%231 %
Earnings before income taxes19 %14 %28 %
Income tax expense%%19 %
Net earnings from continuing operations15 %11 %31 %
Net earnings15 %11 %27 %
nm - not meaningful
27

Nine-Month Comparisons. The following table sets forth certain revenue and expense items as a percentage of total revenue and the percentage changes in dollars for such items for the nine months ended January 31, 2024 and 2023:
 Nine Months Ended January 31,
 Percentage of Total
Revenue
Pct. Change in
Dollars
 20242023
2024 vs. 2023
Revenue:
Subscription fees53 %46 %10 %
License%%(61)%
Professional services and other14 %19 %(29)%
Maintenance32 %33 %(9)%
Total revenue100 %100 %(5)%
Cost of revenue:
Subscription fees18 %14 %18 %
License— %%(69)%
Professional services and other11 %13 %(19)%
Maintenance%%%
Total cost of revenue35 %34 %(1)%
Gross margin65 %66 %(8)%
Research and development17 %16 %(1)%
Sales and marketing21 %19 %%
General and administrative22 %21 %(2)%
Total operating expenses60 %56 %— %
Operating income%10 %(55)%
Other income:
Other, net%%338 %
Earnings before income taxes12 %12 %%
Income tax expense%%(6)%
Net earnings from continuing operations10 %10 %%
Earnings from discontinued operations, net of income taxes%— %461 %
Net earnings12 %10 %25 %
nm - not meaningful


COMPARISON OF RESULTS OF OPERATIONS FOR THE THREE AND NINE MONTHS ENDED JANUARY 31, 2024 AND 2023
REVENUE
 
Three Months Ended January 31,
    % of Total Revenue
 20242023% Change20242023
 (in thousands)   
Subscription fees$14,114 $13,003 %55 %47 %
License277 1,017 (73)%%%
Professional services and other3,418 4,758 (28)%13 %17 %
Maintenance7,727 8,649 (11)%31 %32 %
Total revenue$25,536 $27,427 (7)%100 %100 %
28


 Nine Months Ended January 31,
    % of Total Revenue
 20242023% Change20242023
 (in thousands)   
Subscription fees$41,235 $37,391 10 %53 %46 %
License795 2,025 (61)%%%
Professional services and other11,107 15,687 (29)%14 %19 %
Maintenance23,990 26,384 (9)%32 %33 %
Total revenue$77,127 $81,487 (5)%100 %100 %

For the three months ended January 31, 2024, revenue decreased by 7% when compared to the same period last year, which was attributable primarily to a 73% decrease in license revenue, a 28% decrease in professional services and other revenue and an 11% decrease in maintenance revenue, partially offset by an 9% increase in subscription fees revenue.
For the nine months ended January 31, 2024, revenue decreased by 5% when compared to the same period last year, which was attributable primarily to a 61% decrease in license revenue, a 29% decrease in professional services and other revenue and a 9% decrease in maintenance revenue, partially offset by a 10% increase in subscription fees revenue.
Due to intense competition in our industry, we sometimes discount SaaS and license fees from our published list price. Numerous factors contribute to the amount of the discount provided, such as previous client purchases, the number of client sites utilizing the software, the number of modules purchased and the number of users, as well as the overall size of the contract. While all these factors may affect the discount amount of a particular contract, the overall percentage discount has not materially changed in the recent reported fiscal periods.
The change in our revenue from period to period is primarily due to the volume of products and related services sold in any period and the number of products or modules purchased with each sale.
International revenue represented approximately 22% and 21% of total revenue in the three and nine months ended January 31, 2024 compared to 23% and 22% in the three and nine months ended January 31, 2023. Our revenue, particularly our international revenue, may fluctuate substantially from period to period, primarily because we derive most of our license and subscription fee revenue from a relatively small number of clients in a given period.
Subscription Fees
 Three Months Ended January 31,
 20242023% Change
 (in thousands) 
Supply Chain Management$14,114 $13,003 %
Total subscription fees revenue$14,114 $13,003 %
Nine Months Ended January 31,
20242023% Change
(in thousands)
Supply Chain Management$41,235 $37,391 10 %
Total subscription fees revenue$41,235 $37,391 10 %

For the three and nine months ended January 31, 2024, subscription fees revenue increased 9% and 10%, respectively, when compared to the same period in the prior year, primarily due to an increase in the number of contracts, including contracts with a higher cloud services annual contract value, as well as an increase in multi-year contracts. 

29


License Revenue
 Three Months Ended January 31,
 20242023% Change
 (in thousands) 
Supply Chain Management$277 $1,017 (73)%
Other— — — %
Total license revenue$277 $1,017 (73)%
Nine Months Ended January 31,
20242023% Change
(in thousands)
Supply Chain Management$779 $2,009 (61)%
Other16 16 — %
Total license revenue$795 $2,025 (61)%

For the three and nine months ended January 31, 2024, license fee revenue decreased 73% and 61%, respectively, when compared to the same period in the prior year, which was primarily attributable to our SCM segment. The majority of our current license fee revenue is generated from additional users and expanded scope from our existing on-premise clients, as the market and we have moved away from on-premise licensed software. The decrease is due to the timing of purchases and the trend of on-premise clients moving to SaaS. For both the three months ended January 31, 2024 and 2023, our SCM segment constituted 100% of total license fee revenue.  For the nine months ended January 31, 2024 and 2023, our SCM segment constituted approximately 98% and 99% of total license fee revenue, respectively. Our Other segment revenue remained flat for the three and nine months ended January 31, 2024 when compared to the same periods in the prior year primarily due to timing of sales to our existing ERP clients.
The direct sales channel provided 100% of license fee revenues for both the three and nine months ended January 31, 2024 and 2023, due to expanding user licenses and products.
For the three months ended January 31, 2024 and 2023 our margins after commissions on direct sales were approximately 93% and 90%, respectively. For both the nine months ended January 31, 2024 and 2023 our margins after commissions on direct sales remained flat at approximately 94%. Margins are directly related to the mix of sales commission rates based on each individual salesperson’s quotas and related achievement. For the three months ended January 31, 2024 and 2023, our margins after commissions on indirect sales were approximately 62% and 59%, respectively. For the nine months ended January 31, 2024 and 2023, our margins after commissions on indirect sales were approximately 56% and 59%, respectively. The indirect channel margins decreased for the three and nine months ended January 31, 2024 compared to the same periods in the prior year due to the mix of VAR commission rates. These margin calculations include only commission expense for comparative purposes and do not include other costs of license fees such as amortization of capitalized software.
Professional Services and Other Revenue
30

Three Months Ended January 31,
 20242023% Change
 (in thousands) 
Supply Chain Management$3,211 $4,590 (30)%
Other207 168 23 %
Total professional services and other revenue$3,418 $4,758 (28)%
Nine Months Ended January 31,
20242023% Change
(in thousands)
Supply Chain Management$10,510 $15,034 (30)%
Other597 653 (9)%
Total professional services and other revenues$11,107 $15,687 (29)%

For the three and nine months ended January 31, 2024, professional services and other revenue decreased by 28% and 29%, respectively, when compared to the same periods in the prior year, primarily due to lower professional services and other revenue derived from our Other and SCM segments. For both the three and nine months ended January 31, 2024, our SCM segment’s revenue decreased 30% when compared to the same periods in the prior year primarily due to lower bookings in recent quarters resulting in lower project work and the timing of implementation project work in recent periods. For the three and nine months ended January 31, 2024, our Other segment’s revenue increased 23% and decreased 9%, respectively when compared to the same period in the prior year due to the timing of project work with existing clients. We have observed that there is a tendency for services and other revenue to lag changes in license and subscription revenue by one to three quarters, as new licenses and subscriptions in one quarter often involve implementation and consulting services in subsequent quarters, for which we recognize revenue only as we perform those services.
Maintenance Revenue
 Three Months Ended January 31,
 20242023% Change
 (in thousands) 
Supply Chain Management$7,408 $8,341 (11)%
Other319 308 %
Total maintenance revenue$7,727 $8,649 (11)%
Nine Months Ended January 31,
20242023% Change
(in thousands)
Supply Chain Management$23,036 $25,451 (9)%
Other954 933 %
Total maintenance revenue$23,990 $26,384 (9)%

For the three and nine months ended January 31, 2024, maintenance revenue decreased 11% and 9%, respectively, when compared to the same periods in the prior year, primarily due to our SCM segment. Our SCM maintenance revenue decreased 11% and 9% for the three and nine months ended January 31, 2024, when compared to the same periods last year due to normal client attrition. The SCM segment accounted for 96% of total maintenance revenue for the three and nine months ended January 31, 2024 and 2023. Our Other segment revenue increased 4% and 2% for the three and nine months ended January 31, 2024, when compared to the same periods last year. Typically, our maintenance revenue has had a direct relationship to current and historic license fee revenue, since licenses are the source of maintenance clients.
31

GROSS MARGIN
The following table provides both dollar amounts (in thousands) and percentage measures of gross margin:    
 Three Months Ended January 31,Nine Months Ended January 31,
 2024%2023%2024%2023%
Gross margin on subscription fees$9,170 65 %$8,998 69 %$27,467 67 %$25,709 69 %
Gross margin on license fees274 99 %659 65 %627 79 %1,484 73 %
Gross margin on professional services and other724 21 %1,260 26 %2,497 22 %5,005 32 %
Gross margin on maintenance6,278 81 %7,042 81 %19,113 80 %21,627 82 %
Total gross margin$16,446 64 %$17,959 65 %$49,704 4970400065 %$53,825 66 %
For both the three and nine months ended January 31, 2024, our total gross margin percentage decreased by 1%, when compared to the same periods in the prior year, primarily due to lower margins on professional services and other, maintenance and subscription fees.
Gross Margin on Subscription Fees
For the three months ended January 31, 2024, our gross margin percentage on subscription fees revenue decreased from 69% to 65%, when compared to the same period in the prior year, primarily due to increased hosting costs, personnel costs and the amortization of acquired software.
For the nine months ended January 31, 2024, our gross margin percentage on subscription fees revenue decreased from 69% to 67%, when compared to the same period in the prior year, primarily due to increased hosting costs, personnel costs and the amortization of acquired software.
Gross Margin on License Fees
License fee gross margin percentage for the three and nine months ended January 31, 2024 increased 34% and 6%, respectively, when compared to the same periods in the prior year. License fee gross margin percentage tends to be directly related to the level of license fee revenue due to the sales mix between our direct and indirect channels.
Gross Margin on Professional Services and Other
Our gross margin percentage on professional services and other revenue decreased from 26% to 21% and 32% to 22%, respectively, for the three and nine months ended January 31, 2024 and 2023, primarily due to a decrease in revenues and utilization. Our gross margin percentage on professional services and other revenue in our SCM segment decreased from 26% to 20% and 31% to 21% for the three and nine months ended January 31, 2024 and 2023, respectively. This is primarily the result of a decrease in professional services and other revenue, which is being driven by timing of projects and utilization due to a decrease in bookings in recent quarters, as well as, outsourcing of some services to system integrators and other service providers. Our Other segment professional services gross margin remained flat at 43% for the three and nine months ended January 31, 2024 and 2023. Professional services and other gross margin is directly related to the level of services and other revenue. The primary component of cost of services and other revenue is services staffing, which is relatively inelastic in the short term.
Gross Margin on Maintenance
Maintenance gross margin percentage remained flat at 81% for the three months ended January 31, 2024 and 2023, respectively. Maintenance gross margin percentage decreased from 82% to 80% for the nine months ended January 31, 2024 and 2023, respectively. The decrease is primarily due to a decrease in maintenance revenue when compared to the same periods in the prior year. The primary cost component is maintenance staffing, which is relatively inelastic in the short term.
EXPENSES
32

 Three Months Ended January 31,Nine Months Ended January 31,
 20242023% of Revenue20242023% of Revenues
 2024202320242023
 (in thousands)(in thousands)
Research and development$4,546 $4,402 18 %16 %$13,064 $13,220 17 %16 %
Sales and marketing$5,039 $4,904 20 %18 %$16,083 $15,537 21 %19 %
General and administrative$5,853 $5,883 23 %21 %$16,775 $17,350 22 %21 %
Amortization of acquisition-related intangible assets$193 $25 %— %$346 $81 — %— %
Other income$4,417 $1,334 17 %%$5,726 $1,308 %%
Income tax expense$1,080 $907 %%$1,775 $1,882 %%
Research and Development
Research and development costs include personnel costs, third-party contractors, travel expense, rent, software expense and other non-capitalized software development costs. A breakdown of the research and development costs is as follows:
 Three Months Ended January 31,Nine Months Ended January 31,
 20242023% Change20242023% Change
 (in thousands) (in thousands)
Total research and development expense$4,546 $4,402 %$13,064 $13,220 (1)%
Percentage of total revenue18 %16 %17%16 %
Total amortization of capitalized computer software development costs *$90 $262 (66)%$332 $981 (66)%
*Included in cost of license fees and subscription fees.

For the three and nine months ended January 31, 2024, total product research and development costs increased by 3% and decreased by 1%, respectively, when compared to the same periods in the previous year, primarily due to an increase in personnel costs and an increase in the use of third-party contractors. For both the three and nine months ended January 31, 2024 and 2023, amortization of capitalized software development costs decreased 66%, as some projects were fully amortized.
Sales and Marketing
For the three and nine months ended January 31, 2024, sales and marketing expenses as a percentage of revenue increased from 18% to 20% and 19% to 21%, respectively, when compared to the same periods last year. The increase in sales and marketing cost is primarily due to an increase in personnel costs, stock option expenses, travel costs and timing of marketing events.
General and Administrative
For the three and nine months ended January 31, 2024, general and administrative expenses increased from 21% to 23% and 21% to 22% as a percentage of revenue when compared to the same period a year ago, primarily due to personnel costs, stock option expenses and professional services, partially offset by a decrease in recruiting fees and the use of third-party contractors.
At January 31, 2024, the total number of full-time personnel was 402, which includes 327 employees and 75 third-party contractors, compared to 550 full-time personnel, which includes 397 employees and 153 third-party contractors at January 31, 2023.





33


Operating Income/(Loss)
 Three Months Ended January 31,Nine Months Ended January 31,
 20242023% Change20242023% Change
 (in thousands) (in thousands)
Supply Chain Management$6,119 $7,763 (21)%$18,396 $22,587 (19)%
Other*(5,304)(5,018)%(14,960)(14,950)— %
Total operating income$815 $2,745 (70)%$3,436 $7,637 (55)%
*    Includes all corporate overhead and other common expenses.
Our SCM segment operating income decreased by 21% and 19%, respectively, for the three and nine months ended January 31, 2024, when compared to the same periods in the prior year primarily due to a reduction in professional services and other revenue and an increase in the amortization of intangible assets.
Our Other segment operating loss increased by 6% and remained flat, respectively, for the three and nine months ended January 31, 2024, when compared to the same periods in the prior year due primarily to increases in personnel costs and professional services, partially offset by decreases in software costs and recruiting fees.
Other Income
Other income is comprised of net interest and dividend income, rental income, asset gains and losses, exchange rate gains and losses, and realized and unrealized gains and losses from investments. For the three months ended January 31, 2024, the increase in Other income is mainly due to increases in unrealized gains, gain on sale of assets and an increase in interest income, partially offset by losses on exchange rate when compared to the same period in the prior year. We recorded unrealized gains of approximately $2.1 million and realized gains of approximately $22,000 for the three months ended January 31, 2024 from our trading securities portfolio.
For the nine months ended January 31, 2024, the increase in Other income is mainly due to an increase in interest income, gain on sale of assets, unrealized gains on investments and realized gain on investments when compared to the same period in the prior year. We recorded unrealized gains of approximately $1.2 million and realized gains of approximately $0.2 million for the nine months ended January 31, 2024 from our trading securities portfolio.
For the nine months ended January 31, 2024 and 2023, our investments generated an annualized yield of approximately 4.20% and 1.65%, respectively.
Income Taxes
We recognize deferred tax assets and liabilities based on the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their tax bases. We measure deferred tax assets and liabilities using statutory tax rates in effect in the year in which we expect the differences to reverse. We establish a deferred tax asset for the expected future benefit of net operating losses, credit carry-forwards and nonqualified stock options. Under the Income Tax Topic of the FASB ASC 740, Income Taxes, we cannot recognize a deferred tax asset for the future benefit of our net operating losses, tax credits and temporary differences unless we can establish that it is “more likely than not” that the deferred tax asset would be realized.
During the three and nine months ended January 31, 2024, we recorded income tax expense from continuing operations of $1.1 million and $1.8 million, respectively, which included discrete stock compensation expense of $69,000 and $69,000, respectively, net of normal income tax expense from operations. During the three and nine months ended January 31, 2023, we recorded income tax expense from continuing operations of $907,000 and $1.9 million, respectively, which included discrete stock compensation benefits of $4,000 and $67,000, respectively, net of normal income tax expense from operations. Before adjusting for these discrete tax benefits, our effective tax rate would have been 19.3% and 18.6% in the three and nine months ended January 31, 2024, respectively, compared to our effective tax rate of 22.3% and 21.8% in the three and nine months ended January 31, 2023, respectively. In addition, research and development credits and various permanent differences reduced our effective tax rate by 4.7% and 3.5%, respectively, in the nine months ended January 31, 2024, compared to a reduction of 4.3% and 0.2%, respectively, in the nine months ended January 31, 2023.
Operating Pattern
34

We experience an irregular pattern of quarterly operating results, caused primarily by fluctuations in both the number and size of software license and subscription contracts received and delivered from quarter-to-quarter and our ability to recognize revenue in that quarter in accordance with our revenue recognition policies. We expect this pattern to continue.

LIQUIDITY, CAPITAL RESOURCES AND FINANCIAL CONDITION
Sources and Uses of Cash
Historically, we have funded, and we continue to fund, our operations and capital expenditures primarily with cash generated from operating activities. The changes in net cash that our operating activities provide generally reflect the changes in net earnings and non-cash operating items plus the effect of changes in operating assets and liabilities, such as investment trading securities, trade accounts receivable, trade accounts payable, accrued expenses and deferred revenue. We have no debt obligations or off-balance sheet financing arrangements, and, therefore, we used no cash for debt service purposes.
The following table shows information about our cash flows and liquidity positions during the nine months ended January 31, 2024 and 2023. You should read this table and the discussion that follows in conjunction with our Condensed Consolidated Statements of Cash Flows contained in Item 1 in Part I of this Quarterly Report and in our Annual Report for fiscal 2023.
 Nine Months Ended
January 31,
 20242023
(in thousands)
Net cash provided by (used in) operating activities of continuing operations$7,916 $(11,574)
Net cash provided by operating activities of discontinued operations1,554 1,108 
Net cash provided by (used in) operating activities9,470 (10,466)
Net cash used in investing activities of continuing operations(24,920)(10,155)
Net cash provided by investing activities of discontinued operations1,825 — 
Net cash used in investing activities(23,095)(10,155)
Net cash used in financing activities of continuing operations(21,217)(9,463)
Net change in cash and cash equivalents$(34,842)$(30,084)
For the nine months ended January 31, 2024, the net increase in cash provided by operating activities when compared to cash used in operating activities in the same period last year was due primarily to the following: (1) a decrease in client accounts receivables when compared to an increase in the same period last year due to the timing of closing client sales and related collections, (2) an increase in the proceeds from the maturity and sales of trading securities, (3) a decrease in the purchases of trading securities, (4) a decrease in deferred tax assets relative to an increase in the prior year, (5) an increase in net earnings, (6) higher depreciation and amortization expense due to the acquisition of 100% of the total issued and outstanding shares of capital stock of Garvis AI Limited, a private limited company organized and registered under the laws of England and Wales (the “Garvis Acquisition”). and (7) an increase in stock-based compensation expense.
This net increase in cash provided by operating activities was partially offset by: (1) a larger decrease in deferred revenue when compared to the same period last year due to timing of revenue recognition, (2) a decrease in accounts payable and other liabilities compared to the same period last year due to timing of payments, (3) a gain on sale of discontinued operations, (4) an increase in prepaid expenses when compared to a decrease in the same period last year due to the timing of purchases, (5) a gain on sale of our transportation business and (6) an increase in gains on our investments portfolio.
The increase in cash used in investing activities when compared to the same period in the prior year was mainly due to the Garvis Acquisition compared to the purchase of certain assets of Starboard during the prior year, partially offset by a decrease in purchases of property and equipment and proceeds from sale of a business.
The increase in cash used in financing activities when compared to the prior year was due primarily to repurchases of common stock, an increase in dividends paid and a decrease in proceeds from exercise of stock options.
Discontinued Operations
35

Net cash provided by operating activities of discontinued operations was $1.6 million in the current year compared to $1.1 million in the prior year due primarily to the gain on the sale of discontinued operations, offset by a decrease in prepaid expenses and other assets and a lower decrease in accounts receivable.
In accordance with our policy to record the net cash received from the sale of a discontinued operation as a cash inflow from investing activities of discontinued operations, the increase in cash provided by investing activities of discontinued operations is the result of the disposal of discontinued operations.
The following table shows net changes in total cash, cash equivalents, and investments, which is one measure management uses to understand net total cash generated by our activities:
 
As of January 31,
 20242023
Cash and cash equivalents$55,854 $80,606 
Short and long-term investments22,454 24,331 
Total cash and short and long-term investments78,308 104,937 
Net decrease in total cash and investments during the nine months ended January 31,
$(29,622)$(22,579)
Our total activities used more cash and investments during the nine months ended January 31, 2024, when compared to the prior year period, in the course of normal business operations.
Days Sales Outstanding in accounts receivable was 86 days as of January 31, 2024, compared to 101 days as of January 31, 2023. This decrease is primarily due to the timing of billings and cash collections. Our current ratio was 2.3 to 1 on January 31, 2024 and 2.6 to 1 on January 31, 2023.
Our business in recent periods has generated substantial positive cash flow from operations, excluding purchases and proceeds of sale of trading securities. For this reason, and because we had $78.3 million in cash and investments with no debt as of January 31, 2024, we believe that our sources of liquidity and capital resources will be sufficient to satisfy our presently anticipated requirements for continuing operations for a minimum of twelve months for working capital, capital expenditures and other corporate needs. However, at some future date, we may need to seek additional sources of capital to meet our requirements. If such need arises, we may be required to raise additional funds through equity or debt financing. We do not currently have a bank line of credit. We can provide no assurance that bank lines of credit or other financing will be available on terms acceptable to us. If available, such financing may result in dilution to our shareholders or higher interest expense.
On August 19, 2002, our Board of Directors approved a resolution authorizing the repurchase of up to an additional 2.0 million shares of our Class A common stock. We made these repurchases through open market purchases at prevailing market prices. Under this repurchase plan, through January 31, 2024, we completed our repurchase of 2.0 million shares of common stock at a cost of approximately $16.4 million. As of January 31, 2024, under all repurchase plans previously authorized, including this most recent plan, we have repurchased a total of 5,534,953 shares of common stock at a cost of approximately $35.8 million.
CRITICAL ACCOUNTING POLICIES AND ESTIMATES
For the three months ended January 31, 2024, there were no significant changes to our critical accounting policies and estimates from those disclosed in the section “Management’s Discussion and Analysis of Financial Condition and Results of Operations” in our Annual Report for fiscal 2023.

36

Item 3    Quantitative and Qualitative Disclosures About Market Risk
Foreign Currency. In the three months ended January 31, 2024, we generated approximately 22% and 21% of our revenue outside the U.S. In the nine months ended January 31, 2023, we generated approximately 23% and 22% of our revenue outside the U.S. We typically make international sales through our VARs and employees located in foreign countries and denominate those sales in U.S. and New Zealand dollars, British pounds sterling or euros. However, expenses incurred in connection with these sales are typically denominated in the local currencies. We recorded exchange rate gains of approximately $42,000 for the three months ended January 31, 2024 compared to exchange rate losses of approximately $123,000 for the same period in the prior year. We recorded an exchange rate losses of approximately $0.3 million for both the nine months ended January 31, 2024 and 2023. We estimate that a 10% movement in foreign currency rates would have had the effect of creating up to a $32,000 and $29,000 exchange rate gain or loss for the three and nine months ended January 31, 2024. We have not engaged in any hedging activities.
Interest Rates and Other Market Risks. We have no debt, and therefore limit our discussion of interest rate risk to risk associated with our investment profile. We manage our interest rate risk by maintaining an investment portfolio of trading investments with high credit quality and relatively short average maturities. These instruments include, but are not limited to, money-market instruments, bank time deposits, and taxable and tax-advantaged variable rate and fixed rate obligations of corporations, municipalities, and national, state, and local government agencies. These instruments are denominated in U.S. dollars. The fair market value of these instruments as of January 31, 2024 was approximately $73.9 million compared to $98.4 million as of January 31, 2023.
We also hold cash balances in accounts with commercial banks in the U.S. and foreign countries. These cash balances represent operating balances only and are invested in short-term time deposits of the local bank. Such operating cash balances held at banks outside the U.S. are denominated in the local currency and are minor.
Many of our investments carry a degree of interest rate risk. When interest rates fall, our income from investments in variable-rate securities declines. When interest rates rise, the fair market value of our investments in fixed-rate securities declines. In addition, our investments in equity securities are subject to stock market volatility. Due in part to these factors, our future investment income may fall short of expectations or we may suffer losses in principal if forced to sell securities, which have seen a decline in market value due to changes in interest rates. We attempt to mitigate risk by holding fixed-rate securities to maturity, but, if our liquidity needs force us to sell fixed-rate securities prior to maturity, we may experience a loss of principal.
Inflation. Although we cannot accurately determine the amounts attributable thereto, we have been affected by inflation through increased costs of employee compensation and other operating expenses. To the extent permitted by the marketplace for our products and services, we attempt to recover increases in costs by periodically increasing prices.
37

Item 4.    Controls and Procedures
Management’s Report on Internal Control Over Financial Reporting
Management, under the supervision and with the participation of the Chief Executive Officer and Chief Financial Officer, has conducted an evaluation of the effectiveness of the design and operation of our disclosure controls and procedures as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended (the “Exchange Act”). Disclosure controls and procedures are designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is recorded, processed, summarized, and reported within the time periods specified in the SEC’s rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is accumulated and communicated to our management, including our principal executive and principal financial officers, as appropriate to allow timely decisions regarding required disclosure.
Based on that evaluation, and because of the previously-reported material weakness in internal control over financial reporting, our Chief Executive Officer and Chief Financial Officer concluded that as of January 31, 2024, our disclosure controls and procedures were not effective due to the material weakness in internal control over financial reporting described below. We have in place and are executing a remediation plan to address the material weakness described below.
Management performed additional analyses and other procedures to ensure that our condensed consolidated financial statements were prepared in accordance with U.S. Generally Accepted Accounting Principles ("U.S. GAAP"). Accordingly, management believes that the condensed consolidated financial statements included in this Quarterly Report fairly present, in all material respects, our financial position, results of operations, and cash flows as of and for the periods presented, in accordance with U.S. GAAP.

Previously Reported Material Weaknesses
As previously disclosed in our Quarterly Report on Form 10-Q for the quarterly period ended October 31, 2023, Management identified a material weakness in our internal control over financial reporting, related to certain process-level controls over the reconciliation of cash, accounts payable, accrued compensation, and related costs and cost of revenues. These ineffective controls were attributable to insufficient policies and procedures and training that impaired our ability to timely investigate and resolve reconciling items.
A material weakness is a deficiency, or a combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of our annual or interim financial statements will not be prevented or detected on a timely basis.
These control deficiencies resulted in immaterial misstatements in related accounts, some of which have been corrected. Furthermore, the control deficiencies described above created a reasonable possibility that a material misstatement to the condensed consolidated financial statements would not be prevented or detected on a timely basis. Therefore, we concluded that the deficiencies, in the aggregate, represent a material weakness in the Company’s internal control over financial reporting and our internal control over financial reporting was not effective as of January 31, 2024.

Management’s Plan to Remediate the Identified Material Weaknesses
As of January 31, 2024, the material weakness previously disclosed has not yet been fully remediated. The Company has implemented enhanced policies and procedures over reconciliations and related training, including a focus on expectations and procedures for investigating and resolving reconciling items on a timely basis. In addition, the Company has increased its usage of its financial close management software in order to strengthen account reconciliation accuracy, tracking, and reporting.
We anticipate that the material weakness will be fully remediated before April 30, 2024, but the material weakness cannot be considered fully remediated until the updated policies and training have been in place and operated for a sufficient period of time to enable management and our auditor KPMG LLP, to test and to conclude on the operating effectiveness of the controls.

Changes in Internal Control Over Financial Reporting
Except as related to the identification of the material weakness described above, there have not been any changes in our internal control over financial reporting (as such term is defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act)
38

during the fiscal quarter to which this report relates that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.
39

PART II—OTHER INFORMATION
Item 1.    Legal Proceedings
We are not currently involved in legal proceedings requiring disclosure under this item.
Item 1A.    Risk Factors
In addition to the other information set forth in this Quarterly Report, you should carefully consider the risk factors disclosed in Item 1A, “Risk Factors,” of our Annual Report for fiscal 2023. There have been no material changes to the risk factors as previously disclosed in such Annual Report.
Item 2.    Unregistered Sales of Equity Securities and Use of Proceeds
Issuer Purchases of Equity Securities*
On August 19, 2002, our Board of Directors authorized the repurchase of up to an additional 2.0 million shares of our Class A common stock. We made and these repurchases through open market purchases at prevailing market prices. Under this repurchase plan, we completed our repurchase of 2.0 million shares of Class A common stock at a cost of approximately $16.4 million, which had a $10.2 million impact on fiscal 2024. As of January 31, 2024, under all repurchase plans previously authorized, including this most recent plan, we have repurchased a total of 5,534,953 shares of common stock at a cost of approximately $35.8 million.
The following table presents information related to repurchases of common stock the Company made during the quarter ended January 31, 2024:
Fiscal PeriodTotal Number of
Shares Purchased, which were also Part of the Publicly Announced Plans or Programs
Average
Price Paid
per Share
Maximum Number
(or Approximate
Dollar Value) of
Shares that May Yet Be
Purchased Under
the Plans or
Programs
November 1, 2023 through November 31, 2023516,056 $10.62 — 
December 1, 2023 through December 31, 2023— $— — 
January 1, 2024 through January 31, 2024— $— — 
Total Fiscal 2024 Third Quarter516,056 

*Subject to applicable law, the Company may repurchase shares directly in the open market, in privately negotiated transactions or pursuant to derivative instruments and plans complying with Rule 10b5-1 under the Exchange Act, among other types of transactions and arrangements.

Item 3.    Defaults Upon Senior Securities
Not applicable.
Item 4.    Mine Safety Disclosures
Not applicable.
Item 5.    Other Information
None.
Item 6.    Exhibits
40


Exhibit 2.1
Exhibit 3.1  Amended and Restated Articles of Incorporation, and amendments thereto. (2) (P)
Exhibit 3.2  
Exhibits 31.1-31.2.  
Rule 13a-14(a)/15d-14(a) Certifications
Exhibit 32.1.  
Exhibit 101.INS  XBRL Instance Document.
Exhibit 101.SCH  XBRL Taxonomy Extension Schema Document.
Exhibit 101.CAL  XBRL Taxonomy Extension Calculation Linkbase Document.
Exhibit 101.DEF  XBRL Taxonomy Extension Definition Linkbase Document.
Exhibit 101.LAB  XBRL Taxonomy Extension Label Linkbase Document.
Exhibit 101.PRE  XBRL Taxonomy Extension Presentation Linkbase Document.
______________
(1)Incorporated by reference herein. Filed by the Company as Exhibit 2.1 of the Company’s Form 8-K (File No. 000-12456) as filed with the SEC on September 7, 2023.
(2)Incorporated by reference herein. Filed by the Company as an exhibit to its Quarterly Report filed on Form 10-Q for the quarter ended October 31, 1990. (P) Filed in paper format.
(3)Incorporated by reference herein. Filed by the Company as Exhibit 3.1 to its Quarterly Report filed on Form 10-Q for the quarter ended January 31, 2010.
41

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.
AMERICAN SOFTWARE, INC.
Date: March 1, 2024
By:/s/ H. Allan Dow
H. Allan Dow
Chief Executive Officer and President
(Principal Executive Officer)
Date: March 1, 2024
By:/s/ Vincent C. Klinges
Vincent C. Klinges
Chief Financial Officer
(Principal Financial Officer)
Date: March 1, 2024
By:/s/ Bryan L. Sell
Bryan L. Sell
Controller and Principal Accounting Officer

42
EX-31.1 2 amswa-2024131ex311.htm EX-31.1 Document
Exhibit 31.1

RULE 13a-14(a)/15d-14(a) CERTIFICATION
I, H. Allan Dow, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of American Software, Inc.;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and we have:
(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; 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:March 1, 2024 By: /s/ H. Allan Dow
  H. Allan Dow
  Chief Executive Officer and President (Principal Executive Officer) and Director


EX-31.2 3 amswa-2024131ex312.htm EX-31.2 Document
Exhibit 31.2


RULE 13a-14(a)/15d-14(a) CERTIFICATION
I, Vincent C. Klinges, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of American Software, Inc.;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and we have:
(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; 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:March 1, 2024By: /s/ Vincent C. Klinges
 Vincent C. Klinges
 Chief Financial Officer
(Principal Financial Officer)


EX-32.1 4 amswa-2024131ex321.htm EX-32.1 Document
Exhibit 32.1


Certifications Pursuant to Section 906 of
The Sarbanes-Oxley Act of 2002 (18 U.S.C. Section 1350)
The undersigned, as the Principal Executive Officer of American Software, Inc., certifies that, to the best of his knowledge and belief, this report on Form 10-Q for the fiscal quarter ended January 31, 2024 (the “Report”), which accompanies this certification, fully complies with the requirements of Section 13(a) of the Securities Exchange Act of 1934 and the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of American Software, Inc. at the dates and for the periods indicated. The foregoing certification is made pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. Section 1350) and shall not be relied upon for any other purpose.
This 1st day of March, 2024  /s/ H. Allan Dow
  H. Allan Dow
  Chief Executive Officer and President (Principal Executive Officer) and Director

The undersigned, as the Principal Financial Officer of American Software, Inc., certifies that, to the best of his knowledge and belief, this report on Form 10-Q for the fiscal quarter ended January 31, 2024 (the “Report”), which accompanies this certification, fully complies with the requirements of Section 13(a) of the Securities Exchange Act of 1934 and the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of American Software, Inc. at the dates and for the periods indicated. The foregoing certification is made pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. Section 1350) and shall not be relied upon for any other purpose.
This 1st day of March, 2024  /s/ Vincent C. Klinges
  Vincent C. Klinges
  Chief Financial Officer
(Principal Financial Officer)

A signed original of this written statement required by Section 906, or other document authenticating, acknowledging, or otherwise adopting the signature that appears in typed form within the electronic version of this written statement required by Section 906, has been provided to American Software, Inc. and will be retained by American Software, Inc. and furnished to the Securities and Exchange Commission or its staff upon request.

The information in this Exhibit 32.1 shall not be deemed “filed” for purposes of Section 18 of the Securities Exchange Act of 1934, as amended, nor shall it be deemed incorporated by reference in any filing under the Securities Act of 1933, except as shall be expressly set forth by specific reference in such filing.


EX-101.SCH 5 amswa-20240131.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 0000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - Condensed Consolidated Statements of Operations (Unaudited) link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) link:presentationLink link:calculationLink link:definitionLink 0000007 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) link:presentationLink link:calculationLink link:definitionLink 0000008 - Disclosure - Presentation and Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 0000009 - Disclosure - Revenue Recognition link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Declaration of Dividend Payable link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - Earnings Per Common Share link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Acquisitions link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Divestitures link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Fair Value of Financial Instruments link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Stock Repurchases link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Industry Segments link:presentationLink link:calculationLink link:definitionLink 0000019 - Disclosure - Major Clients link:presentationLink link:calculationLink link:definitionLink 0000020 - Disclosure - Contingencies link:presentationLink link:calculationLink link:definitionLink 0000021 - Disclosure - Subsequent Event link:presentationLink link:calculationLink link:definitionLink 9954471 - Disclosure - Presentation and Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9954472 - Disclosure - Revenue Recognition (Tables) link:presentationLink link:calculationLink link:definitionLink 9954473 - Disclosure - Earnings Per Common Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954474 - Disclosure - Acquisitions (Tables) link:presentationLink link:calculationLink link:definitionLink 9954475 - Disclosure - Divestitures (Tables) link:presentationLink link:calculationLink link:definitionLink 9954476 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954477 - Disclosure - Fair Value of Financial Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954478 - Disclosure - Industry Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954479 - Disclosure - Presentation and Summary of Significant Accounting Policies - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954480 - Disclosure - Revenue Recognition - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954481 - Disclosure - Revenue Recognition - Summary of Contract Balances (Details) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Revenue Recognition - Remaining Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Revenue Recognition - Remaining Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 9954483 - Disclosure - Revenue Recognition - Disaggregated Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Declaration of Dividend Payable (Details) link:presentationLink link:calculationLink link:definitionLink 9954485 - Disclosure - Earnings Per Common Share - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Earnings Per Common Share - Basic Earnings Per Common Share (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Earnings Per Common Share - Basic Earnings Per Common Share (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details) link:presentationLink link:calculationLink link:definitionLink 9954488 - Disclosure - Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details) link:presentationLink link:calculationLink link:definitionLink 9954489 - Disclosure - Acquisitions - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954490 - Disclosure - Acquisitions - Allocation of Total Purchase Price (Details) link:presentationLink link:calculationLink link:definitionLink 9954491 - Disclosure - Divestitures - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954492 - Disclosure - Divestitures - Earning from Discontinued Operations (Details) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Divestitures - Current Assets and Current Liabilities from Discontinued Operations (Details) link:presentationLink link:calculationLink link:definitionLink 9954494 - Disclosure - Stock-Based Compensation- Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Stock-Based Compensation- Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954496 - Disclosure - Fair Value of Financial Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 9954497 - Disclosure - Stock Repurchases (Details) link:presentationLink link:calculationLink link:definitionLink 9954498 - Disclosure - Industry Segments - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954499 - Disclosure - Industry Segments - Segment Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954500 - Disclosure - Subsequent Event (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 6 amswa-20240131_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 7 amswa-20240131_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 8 amswa-20240131_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Depreciation and amortization Depreciation, Depletion And Amortization, Continuing And Discontinued Operations Depreciation, Depletion And Amortization, Continuing And Discontinued Operations Diluted (in usd per share) Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share Range [Domain] Statistical Measurement [Domain] Total current assets Assets, Current Weighted average shares including common stock equivalents, diluted (in shares) Weighted Average Number Of Shares Including Common Stock Equivalents Diluted Weighted average number of shares including common stock equivalents diluted. Research and development Research and Development Expense Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Cash Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] Supplemental disclosure of cash flow information: Supplemental Cash Flow Information [Abstract] All Award Types Award Type [Domain] Revenue, remaining performance obligation, expected timing of satisfaction, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Other, net Other Nonoperating Income (Expense) Entity Filer Category Entity Filer Category Schedule of Equity Method Investments [Line Items] Schedule of Equity Method Investments [Line Items] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Cash consideration paid Payments to Acquire Businesses, Gross Schedule of Recognized Identified Assets Acquired and Liabilities Assumed Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block] Statement [Table] Statement [Table] Current Fiscal Year End Date Current Fiscal Year End Date Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table] Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table] Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] Segment Reporting [Abstract] Segment Reporting [Abstract] Accounts payable Accounts Payable, Current Discontinued Operations and Disposal Groups [Abstract] Professional services and other Professional Services And Other [Member] Deferred professional services. Impairment loss Capitalized Contract Cost, Impairment Loss Schedule of Diluted Earnings Per Share for Class B Common Shares Using Two-Class Method Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table Text Block] Commitments and contingencies Commitments and Contingencies Net cash provided by (used in) operating activities Net Cash Provided by (Used in) Operating Activities Undistributed and distributed earnings, class B conversion Dilutive Securities, Effect on Basic Earnings Per Share Class of Stock [Axis] Class of Stock [Axis] Geographical [Axis] Geographical [Axis] Maintenance Maintenance [Member] Contractual period of maintenance contract Contractual Period Of Maintenance Contract Contractual period of maintenance contract. Depreciation and amortization Depreciation, Depletion and Amortization Property and equipment, net Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment TPM The Poven Method [Member] The Poven Method Total from continuing operations Net Income (Loss) from Continuing Operations Available to Common Shareholders, Basic Net cash provided by investing activities of discontinued operations Cash Provided by (Used in) Investing Activities, Discontinued Operations Current liabilities: Liabilities, Current [Abstract] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Income tax expense Discontinued Operation, Tax Effect of Discontinued Operation Business Combination and Asset Acquisition [Abstract] Total shareholders’ equity Beginning balance Ending balance Equity, Attributable to Parent Current assets of discontinued operations Current assets of discontinued operations Disposal Group, Including Discontinued Operation, Assets, Current Business Acquisition [Line Items] Business Acquisition [Line Items] Subsequent Event Type [Domain] Subsequent Event Type [Domain] Proceeds from sale of business Proceeds from Divestiture of Businesses Fair Value Measurements, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Long-term liabilities Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities Diluted (in usd per share) Diluted (in usd per share) Diluted EPS (in usd per share) Earnings Per Share, Diluted Deferred revenue Increase (Decrease) in Deferred Revenue Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Billed Accounts Receivable, after Allowance for Credit Loss, Current Deferred revenue recognized Contract with Customer, Liability, Revenue Recognized Stock Repurchases Treasury Stock [Text Block] Share-Based Goods and Nonemployee Services Transaction [Line Items] Share-Based Goods and Nonemployee Services Transaction [Line Items] Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Schedule of Stock by Class [Table] Schedule of Stock by Class [Table] Significant Unobservable Inputs (Level 3) Fair Value, Inputs, Level 3 [Member] Class A treasury stock shares (in shares) Treasury Stock, Common, Shares Revision of Prior Period [Domain] Revision of Prior Period [Domain] Subsequent Events [Abstract] Subsequent Events [Abstract] Earnings before income taxes Earnings\(loss) before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Options to purchase outstanding (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number Share conversion ratio Convertible Stock, Conversion Ratio Convertible Stock, Conversion Ratio Unbilled Unbilled Contracts Receivable Schedule Of Revenue Recognition [Table] Schedule Of Revenue Recognition [Table] Schedule Of Revenue Recognition [Table] Proceeds from stock options exercised Stock Issued During Period, Value, Stock Options Exercised Trading Symbol Trading Symbol Discontinued operations (Note F) Discontinued Operation, Income (Loss) from Discontinued Operation Disclosures [Abstract] Non-compete agreements Noncompete Agreements [Member] Marketable securities Investments, Fair Value Disclosure Total liabilities assumed Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities Significant Other Observable Inputs (Level 2) Fair Value, Inputs, Level 2 [Member] Net earnings Net earnings Net Income (Loss) Schedule of Basic Earnings Per Common Share Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table Text Block] Total current liabilities Liabilities, Current Fair Value Disclosures [Abstract] Fair Value Disclosures [Abstract] Entity Emerging Growth Company Entity Emerging Growth Company Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Cost of revenues: Cost of Revenue [Abstract] Other intangibles, net of accumulated amortization of $16,258 at January 31, 2024 and $14,062 at April 30, 2023 Intangible Assets, Net (Excluding Goodwill) LIABILITIES AND SHAREHOLDERS’ EQUITY Liabilities and Equity [Abstract] Disposal Group Classification [Domain] Disposal Group Classification [Domain] Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table] Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table] Schedule of Equity Method Investments [Table] Schedule of Equity Method Investments [Table] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Shareholders’ equity: Equity, Attributable to Parent [Abstract] Deferred revenue Contract with Customer, Liability Proceeds from stock options exercised (in shares) Stock options exercised (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Intangible assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles Revenue Recognition [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Document Fiscal Period Focus Document Fiscal Period Focus Useful Life Finite-Lived Intangible Asset, Useful Life Schedule of Diluted Earnings Per Share for Class A Common Shares Using If-Converted Method Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Cost of revenues Cost of Goods and Services Sold Cumulative earnout paid Business Combination, Cumulative Earnout Paid Business Combination, Cumulative Earnout Paid Stock-based compensation expense Share-Based Payment Arrangement, Noncash Expense Class B Common Shares Common Class B [Member] Common stock Common Stock [Member] Quoted Prices in Active Markets for Identical Assets (Level 1) Fair Value, Inputs, Level 1 [Member] City Area Code City Area Code Entity Address, Postal Zip Code Entity Address, Postal Zip Code Earnings Per Common Share Earnings Per Share [Text Block] Product and Service [Axis] Product and Service [Axis] Goodwill Goodwill Equity Components [Axis] Equity Components [Axis] Financial Instruments [Domain] Financial Instruments [Domain] Revenue Disposal Group, Including Discontinued Operation, Revenue Number of supply chain process areas Number Of Supply Chain Process Areas Number Of Supply Chain Process Areas Document Fiscal Year Focus Document Fiscal Year Focus Geographical [Domain] Geographical [Domain] Total awards granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross Entity Small Business Entity Small Business Minimum Minimum [Member] Comprehensive Income Comprehensive Income (Loss) Note [Text Block] Local Phone Number Local Phone Number Accounts receivable, net Increase (Decrease) in Accounts Receivable Shares used in the calculation of earnings per common share: Weighted Average Number of Shares Outstanding, Diluted [Abstract] Property and equipment, net of accumulated depreciation of $32,454 at January 31, 2024 and $32,371 at April 30, 2023 Property, Plant and Equipment, Net Share Repurchase Program [Domain] Share Repurchase Program [Domain] Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares Reallocation of undistributed earnings Reallocation of undistributed earnings. Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Cash dividends declared per common share (in usd per share) Common Stock, Dividends, Per Share, Declared Maximum contingent consideration Business Combination, Contingent Consideration Arrangements, Range of Outcomes, Value, High Disposal Group Classification [Axis] Disposal Group Classification [Axis] Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Equity, Class of Treasury Stock [Line Items] Equity, Class of Treasury Stock [Line Items] ASSETS Assets [Abstract] Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items] Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items] RSUs Restricted Stock Units (RSUs) [Member] US Treasury Securities US Treasury Securities [Member] Income taxes, net of refunds Income Taxes Paid, Net Earnings per common share from continuing operations (a): Earnings Per Common Share from Continuing Operations [Abstract] Earnings Per Common Share from Continuing Operations Earnings (loss) from discontinued operations, net of income taxes Earnings from discontinued operations, net of tax Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest Net cash used in financing activities of continuing operations Net Cash Provided by (Used in) Financing Activities Contingencies Commitments and Contingencies Disclosure [Text Block] Diluted (in usd per share) Income (Loss) from Continuing Operations, Per Diluted Share Proceeds from maturities and sales of trading securities Proceeds From Sale And Maturity Of Securities, Trading Proceeds From Sale And Maturity Of Securities, Trading Issued and outstanding shares acquired (in percent) Business Acquisition, Percentage of Voting Interests Acquired Retained deficit Retained Earnings [Member] Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items] Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items] Total liabilities and shareholders’ equity Liabilities and Equity Shares Stock Repurchase Plan, August 19, 2002 Stock Repurchase Plan August Nineteen Twenty Zero Two [Member] Stock repurchase plan august 19, 2002. Other income: Nonoperating Income (Expense) [Abstract] Other assets Other Assets, Noncurrent Common stock equivalents (in shares) Weighted Average Number of Shares Outstanding, Diluted, Adjustment Basic (in usd per share) Total (in usd per share) Basic EPS (in usd per share) Earnings Per Share, Basic Unrecognized compensation cost related to unvested stock option Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount Cash and cash equivalents Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents Contract Balances: Contract with Customer, Asset, after Allowance for Credit Loss [Abstract] Accounting Policies [Abstract] Accounting Policies [Abstract] Class of Treasury Stock [Table] Class of Treasury Stock [Table] Domestic Domestic [Member] Domestic. Total intrinsic value of options exercised Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value Undistributed losses Undistributed Earnings, Basic Garvis Garvis AI Limited [Member] Garvis AI Limited Diluted EPS, Net earnings Net Income (Loss) Available to Common Stockholders, Diluted Product and Service [Domain] Product and Service [Domain] Supply Chain Management Supply Chain Management Segment [Member] Supply chain management segment. Earnings from operations of discontinued operations Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax Gain on disposal of discontinued operations Discontinued Operation, Gain (Loss) from Disposal of Discontinued Operation, before Income Tax Entity Address, City or Town Entity Address, City or Town Schedule of Segment Operating Profit or Loss Schedule of Segment Reporting Information, by Segment [Table Text Block] Cash flows from investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Revision of Prior Period, Error Correction, Adjustment Revision of Prior Period, Error Correction, Adjustment [Member] Schedule Of Earnings Per Share [Table] Schedule Of Earnings Per Share [Table] Schedule Of Earnings Per Share [Table] Business acquisition costs incurred Business Combination, Acquisition Related Costs Discontinued Operations, Disposed of by Sale Discontinued Operations, Disposed of by Sale [Member] Award Type Award Type [Axis] Options to purchase excluded (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Principles of Consolidation Consolidation, Policy [Policy Text Block] Document Quarterly Report Document Quarterly Report Schedule of Share-Based Goods and Nonemployee Services Transaction [Table] Schedule of Share-Based Goods and Nonemployee Services Transaction [Table] Dividends declared Dividends, Common Stock Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Document Transition Report Document Transition Report Schedule of Business Acquisitions, by Acquisition [Table] Schedule of Business Acquisitions, by Acquisition [Table] Current technology Technology-Based Intangible Assets [Member] Common stock, shares authorized (in shares) Common Stock, Shares Authorized Trade accounts receivable, less allowance for doubtful accounts Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net Class A and Class B Class A and Class B [Member] Class A and Class B U.S. Treasury securities Debt Securities, Available-for-Sale Capitalized software, accumulated amortization Capitalized Computer Software, Accumulated Amortization Document Information [Table] Document Information [Table] Entity File Number Entity File Number Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] License License [Member] Other Revenues [Line Items] Other Revenues [Line Items] Other revenues. Amortization of acquisition-related intangibles Amortization of Intangible Assets Entity Shell Company Entity Shell Company Investments—noncurrent Long-Term Investments Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Adjustments to reconcile net earnings to net cash provided by operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Recent Accounting Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Gain on sale of business Disposal group, not discontinued operation, gain on disposal Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Other intangibles, accumulated amortization Finite-Lived Intangible Assets, Accumulated Amortization Net gain on investments Gain (Loss) on Investments Escrow deposit Escrow Deposit Common stock, shares issued (in shares) Common Stock, Shares, Issued Gross margin Gross Profit Deferred revenue Contract with Customer, Liability, Current Class A treasury stock, 5,534,953 shares at January 31, 2024 and 4,588,632 shares at April 30, 2023, at cost Treasury Stock, Common, Value Security Exchange Name Security Exchange Name Deferred income taxes Deferred Income Tax Expense (Benefit) Document Information [Line Items] Document Information [Line Items] Subsequent Event Type [Axis] Subsequent Event Type [Axis] Total Assets, Fair Value Disclosure Proceeds from exercise of stock options Proceeds from Stock Options Exercised Net cash used in investing activities of continuing operations Net Cash Provided by (Used in) Investing Activities, Continuing Operations Net cash provided by (used in) operating activities of continuing operations Net Cash Provided by (Used in) Operating Activities, Continuing Operations Dividends [Abstract] Dividends [Abstract] Options Employee Stock Option [Member] Consideration subject to holdback provisions Disposal Group, Including Discontinued Operation, Consideration Subject To Holdback Provisions Disposal Group, Including Discontinued Operation, Consideration Subject To Holdback Provisions Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Discontinued Operations Disposal Group, Not Discontinued Operations [Member] Class A Common Shares Common Class A [Member] Weighted average period for unrecognized compensation cost Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Maximum Maximum [Member] Class B common share conversion (in shares) Incremental Common Shares Attributable to Conversion of Common Stock Dilutive impact on our earnings per share for the period as a result of conversion of Class B to Class A common stock. Gain on sale of discontinued operations Discontinued Operation, Gain (Loss) on Disposal of Discontinued Operation, Net of Tax Unrecognized compensation cost related to RSU awards Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Document Type Document Type Earnings per common share from discontinued operations (a): Earnings Per Common Share from Discontinuing Operations [Abstract] Earnings Per Common Share from Discontinuing Operations Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Basic (in usd per share) Total from discontinued operations (in usd per share) Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share Entity Address, Address Line One Entity Address, Address Line One Purchases of common stock Cost of common stock repurchased Treasury Stock, Value, Acquired, Cost Method Other Other Segments [Member] Entity Registrant Name Entity Registrant Name Capital expenditures Payments to Acquire Property, Plant, and Equipment, Including Gain (Loss) on Disposition of Property Plant Equipment Payments to Acquire Property, Plant, and Equipment, Including Gain (Loss) on Disposition of Property Plant Equipment Subsequent Event [Table] Subsequent Event [Table] Stock-Based Compensation Share-Based Payment Arrangement [Text Block] Deferred commissions Capitalized Contract Cost, Net Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Document Period End Date Document Period End Date Property and equipment, accumulated depreciation Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Business Acquisition [Axis] Business Acquisition [Axis] Disposal Group Name [Axis] Disposal Group Name [Axis] Schedule of Assets and Liabilities Measured at Fair Value on Recurring Basis Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block] Remaining revenue to be recognized Revenue, Remaining Performance Obligation, Percentage Allowance for doubtful accounts receivable Accounts Receivable, Allowance for Credit Loss, Current Treasury stock Treasury Stock, Common [Member] Entity Central Index Key Entity Central Index Key Subsequent Event Subsequent Event [Member] Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Other current liabilities Other Liabilities, Current Document And Entity Information [Abstract] Document And Entity Information [Abstract] Document and entity information. Accounts payable and other liabilities Increase (Decrease) in Accounts Payable and Accrued Liabilities Income tax expense Income Tax Expense (Benefit) Income Statement [Abstract] Income Statement [Abstract] Accounts receivable, net Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables Major Clients Major Clients [Text Block] Major Clients [Text Block] Title of 12(b) Security Title of 12(b) Security Accrued compensation and related costs Employee-related Liabilities, Current Earnings Per Share [Line Items] Earnings Per Share [Line Items] Earnings Per Share [Line Items] Fair Value of Financial Instruments Fair Value Disclosures [Text Block] Number of major operating segments Number of Operating Segments Cash equivalents Cash and Cash Equivalents, Fair Value Disclosure Acquisitions Business Combination Disclosure [Text Block] Net cash provided by operating activities of discontinued operations Cash Provided by (Used in) Operating Activities, Discontinued Operations International Foreign [Member] Foreign. Schedule of Revenue by Geography Disaggregation of Revenue [Table Text Block] Equity [Abstract] Equity [Abstract] Net assets acquired Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net Dividends payable Accrual of dividends payable Dividends Payable, Current Revenues Revenue from Contract with Customer, Excluding Assessed Tax Class of Stock [Line Items] Class of Stock [Line Items] Amendment Flag Amendment Flag Distributed earnings Distributed Earnings Disclosure of Compensation Related Costs, Share-based Payments [Abstract] Share-Based Payment Arrangement [Abstract] Entity Tax Identification Number Entity Tax Identification Number Total from discontinued operations Net Income (Loss) from Discontinued Operations Available to Common Shareholders, Basic Amortization of sales commissions Capitalized Contract Cost, Amortization Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Purchase of business, net of cash acquired Purchase of business, net of cash acquired Payments to Acquire Businesses, Net of Cash Acquired Total operating expenses Disposal Group, Including Discontinued Operation, Operating Expense Range [Axis] Statistical Measurement [Axis] Financial Instrument [Axis] Financial Instrument [Axis] Divestitures Disposal Groups, Including Discontinued Operations, Disclosure [Text Block] Entity Interactive Data Current Entity Interactive Data Current Common stock shares repurchased (in shares) Treasury Stock, Shares, Acquired Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Other assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets Acquisitions Business Combinations Policy [Policy Text Block] Current liabilities of discontinued operations Disposal Group, Including Discontinued Operation, Liabilities, Current Purchases of common stock Payments for Repurchase of Common Stock Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Proceeds from sale of equity method investments Proceeds from Sale of Equity Method Investments Diluted (in shares) Class A common shares diluted (in shares) Diluted EPS for class B common shares (in shares) Weighted Average Number of Shares Outstanding, Diluted Prepaid expenses and other current assets Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current Supplemental disclosures of noncash operating, investing and financing activities: Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract] Segments [Domain] Segments [Domain] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Summary of Contract Balances Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Disposal Groups, Including Discontinued Operations Disposal Groups, Including Discontinued Operations [Table Text Block] Retained deficit Retained deficit Retained Earnings (Accumulated Deficit) Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Revenue Recognition Revenue from Contract with Customer [Policy Text Block] Revenue Recognition Revenue from Contract with Customer [Text Block] Earnings from operations of discontinued operations Decrease in earnings from operations of discontinued operations Discontinued Operation, Income (Loss) from Discontinued Operation During Phase-out Period, before Income Tax Purchases of property and equipment, net of disposals Payments to Acquire Property, Plant, and Equipment Purchases of trading securities Payments To Acquire Securities, Trading Payments To Acquire Securities, Trading Additional paid-in capital Additional Paid in Capital, Common Stock Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Additional paid-in capital Additional Paid-in Capital [Member] Current assets: Assets, Current [Abstract] Total assets Assets Entity Address, State or Province Entity Address, State or Province Share Repurchase Program [Axis] Share Repurchase Program [Axis] Revision of Prior Period [Axis] Revision of Prior Period [Axis] Cash flows from operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Interest income Investment Income, Nonoperating Basic (in usd per share) Income (Loss) from Continuing Operations, Per Basic Share Subsequent Event Subsequent Events [Text Block] Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Common stock, shares outstanding (in shares) Beginning balance (in shares) Ending balance (in shares) Common Stock, Shares, Outstanding Disposal Group Name [Domain] Disposal Group Name [Domain] Dividends paid Payments of Dividends Other long-term liabilities Other Liabilities, Noncurrent Dividends preference (in usd per share) Common Stock, Dividends Preference, Per Share Common Stock, Dividends Preference, Per Share Business combination, earnout period Business Combination, Earnout Period Business combination, earnout period Transaction price allocated to remaining performance obligations Revenue, Remaining Performance Obligation, Amount Investments Short-Term Investments Undistributed losses (in usd per share) Earnings Per Share, Basic, Undistributed Current liabilities Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities Total operating expenses Operating Expenses Industry Segments Segment Reporting Disclosure [Text Block] Net earnings from continuing operations Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest Additional consideration Business Combination, Consideration Transferred, Additional Consideration Business Combination, Consideration Transferred, Additional Consideration Net change in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Subscription fees Subscription and Circulation [Member] Cash flows from financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Cost of revenue Disposal Group, Including Discontinued Operation, Costs of Goods Sold Common stock, par value (in usd per share) Common Stock, Par or Stated Value Per Share Equity Component [Domain] Equity Component [Domain] Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Class of Stock [Domain] Class of Stock [Domain] Total assets acquired Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Acquired Including Goodwill Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Acquired Including Goodwill Total Undistributed and distributed earnings Net Income (Loss) Available to Common Stockholders, Basic Basic (in shares) Basic weighted average common shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Basic Entity Current Reporting Status Entity Current Reporting Status Current assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets Operating income Operating income\(loss) Operating Income (Loss) Consideration subject to holdback provisions period Disposal Group, Including Discontinued Operation, Holdback Provisions Period Disposal group including discontinued operation holdback provisions period Starboard Starboard Solutions Corp. [Member] Starboard Solutions Corp. Schedule of Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity [Table Text Block] Total liabilities Liabilities Presentation and Summary of Significant Accounting Policies Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Cash consideration Disposal Group, Including Discontinued Operation, Consideration Revenues: Revenues: Revenues [Abstract] Prepaid expenses and other assets Increase (Decrease) in Prepaid Expense and Other Assets Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Equity interest (in percent) Equity Ownership, Percentage Equity ownership percentage Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract] Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract] Segments [Axis] Segments [Axis] Disposal Groups, Including Discontinued Operations [Table] Disposal Groups, Including Discontinued Operations [Table] Statement [Line Items] Statement [Line Items] Distributed earnings (in usd per share) Earnings Per Share, Basic, Distributed Additional consideration, revenue threshold Business Combination, Consideration Transferred, Additional Consideration, Revenue Threshold Business Combination, Consideration Transferred, Additional Consideration, Revenue Threshold Income tax benefit (expense) Share-Based Payment Arrangement, Expense, Tax Benefit Declaration of Dividend Payable Declaration Of Dividend Payable Disclosure [Text Block] This text block may be used to disclose all or some of the information related to dividends declared and their payments, as of the financial reporting date. Gain on disposal of discontinued operations Discontinued Operation, Provision for Loss (Gain) on Disposal, before Income Tax Customer relationships Customer Relationships [Member] Earnings per common share: (a) Earnings Per Share [Abstract] Subsequent Event [Line Items] Subsequent Event [Line Items] Additional consideration per dollar of subscription revenue Business Combination, Consideration Transferred, Additional Consideration per Dollar of Subscription Revenue Business Combination, Consideration Transferred, Additional Consideration per Dollar of Subscription Revenue Sales and marketing Selling and Marketing Expense Equal increments for release of escrow deposit not subject to then outstanding indemnification claims Escrow Deposit Not Subject To Outstanding Indemnification Claims, Amount Of Equal Increments For Release Escrow Deposit Not Subject To Outstanding Indemnification Claims, Amount Of Equal Increments For Release Common stock value Common Stock, Value, Issued Approved number of shares to be repurchased (in shares) Stock Repurchase Program, Number of Shares Authorized to be Repurchased TRS Transportation Rating Solutions [Member] Transportation Rating Solutions General and administrative General and Administrative Expense Trade accounts receivable, net Accounts Receivable, after Allowance for Credit Loss, Current [Abstract] Capitalized software, net of accumulated amortization of $43,534 at January 31, 2024 and $43,202 at April 30, 2023 Capitalized Computer Software, Net EX-101.PRE 9 amswa-20240131_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 10 R1.htm IDEA: XBRL DOCUMENT v3.24.0.1
Cover Page - shares
9 Months Ended
Jan. 31, 2024
Feb. 28, 2024
Document Information [Line Items]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jan. 31, 2024  
Document Transition Report false  
Entity File Number 000-12456  
Entity Registrant Name AMERICAN SOFTWARE, INC.  
Entity Incorporation, State or Country Code GA  
Entity Tax Identification Number 58-1098795  
Entity Address, Address Line One 470 East Paces Ferry Road, N.E.  
Entity Address, City or Town Atlanta  
Entity Address, State or Province GA  
Entity Address, Postal Zip Code 30305  
City Area Code 404  
Local Phone Number 261-4381  
Title of 12(b) Security Common Stock  
Trading Symbol AMSWA  
Security Exchange Name NASDAQ  
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  
Amendment Flag false  
Document Fiscal Year Focus 2024  
Document Fiscal Period Focus Q3  
Entity Central Index Key 0000713425  
Current Fiscal Year End Date --04-30  
Class A Common Shares    
Document Information [Line Items]    
Entity Common Stock, Shares Outstanding   31,398,542
Class B Common Shares    
Document Information [Line Items]    
Entity Common Stock, Shares Outstanding   1,821,587
XML 11 R2.htm IDEA: XBRL DOCUMENT v3.24.0.1
Condensed Consolidated Balance Sheets (Unaudited) - USD ($)
$ in Thousands
Jan. 31, 2024
Apr. 30, 2023
Current assets:    
Cash and cash equivalents $ 55,854 $ 90,059
Investments 22,454 23,451
Trade accounts receivable, net    
Billed 22,796 23,476
Unbilled 1,343 1,569
Prepaid expenses and other current assets 6,973 7,831
Current assets of discontinued operations 0 3,603
Total current assets 109,420 149,989
Investments—noncurrent 0 486
Property and equipment, net of accumulated depreciation of $32,454 at January 31, 2024 and $32,371 at April 30, 2023 5,897 6,444
Capitalized software, net of accumulated amortization of $43,534 at January 31, 2024 and $43,202 at April 30, 2023 59 391
Goodwill 46,393 29,558
Other intangibles, net of accumulated amortization of $16,258 at January 31, 2024 and $14,062 at April 30, 2023 10,948 2,143
Other assets 6,311 6,609
Total assets 179,028 195,620
Current liabilities:    
Accounts payable 1,086 2,131
Accrued compensation and related costs 2,516 4,077
Dividends payable 3,654 3,756
Other current liabilities 3,275 3,638
Deferred revenue 37,154 43,124
Current liabilities of discontinued operations 0 318
Total current liabilities 47,685 57,044
Other long-term liabilities 249 288
Total liabilities 47,934 57,332
Shareholders’ equity:    
Additional paid-in capital 187,731 182,722
Retained deficit (24,718) (22,748)
Class A treasury stock, 5,534,953 shares at January 31, 2024 and 4,588,632 shares at April 30, 2023, at cost (35,794) (25,559)
Total shareholders’ equity 131,094 138,288
Commitments and contingencies
Total liabilities and shareholders’ equity 179,028 195,620
Class A Common Shares    
Shareholders’ equity:    
Common stock value 3,693 3,691
Class B Common Shares    
Shareholders’ equity:    
Common stock value $ 182 $ 182
XML 12 R3.htm IDEA: XBRL DOCUMENT v3.24.0.1
Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)
$ in Thousands
9 Months Ended 12 Months Ended
Jan. 31, 2024
USD ($)
$ / shares
shares
Apr. 30, 2023
USD ($)
$ / shares
shares
Allowance for doubtful accounts receivable | $ $ 220 $ 418
Property and equipment, accumulated depreciation | $ 32,454 32,371
Capitalized software, accumulated amortization | $ 43,534 43,202
Other intangibles, accumulated amortization | $ $ 16,258 $ 14,062
Share conversion ratio 1 1
Class A Common Shares    
Common stock, par value (in usd per share) | $ / shares $ 0.10 $ 0.10
Common stock, shares authorized (in shares) 50,000,000 50,000,000
Common stock, shares issued (in shares) 36,933,495 36,907,242
Common stock, shares outstanding (in shares) 31,398,542 32,318,610
Class A treasury stock shares (in shares) 5,534,953 4,588,632
Class B Common Shares    
Common stock, par value (in usd per share) | $ / shares $ 0.10 $ 0.10
Common stock, shares authorized (in shares) 10,000,000 10,000,000
Common stock, shares issued (in shares) 1,821,587 1,821,587
Common stock, shares outstanding (in shares) 1,821,587 1,821,587
XML 13 R4.htm IDEA: XBRL DOCUMENT v3.24.0.1
Condensed Consolidated Statements of Operations (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Revenues:        
Revenues $ 25,536 $ 27,427 $ 77,127 $ 81,487
Cost of revenues:        
Cost of revenues 9,090 9,468 27,423 27,662
Gross margin 16,446 17,959 49,704 53,825
Research and development 4,546 4,402 13,064 13,220
Sales and marketing 5,039 4,904 16,083 15,537
General and administrative 5,853 5,883 16,775 17,350
Amortization of acquisition-related intangibles 193 25 346 81
Total operating expenses 15,631 15,214 46,268 46,188
Operating income 815 2,745 3,436 7,637
Other income:        
Interest income 777 701 2,938 1,274
Other, net 3,640 633 2,788 34
Earnings before income taxes 5,232 4,079 9,162 8,945
Income tax expense 1,080 907 1,775 1,882
Net earnings from continuing operations 4,152 3,172 7,387 7,063
Discontinued operations (Note F)        
Earnings from operations of discontinued operations 0 88 255 475
Gain on disposal of discontinued operations 0 0 2,124 0
Income tax expense 64 43 567 152
Earnings (loss) from discontinued operations, net of income taxes (64) 45 1,812 323
Net earnings $ 4,088 $ 3,217 $ 9,199 $ 7,386
Earnings per common share from continuing operations (a):        
Basic (in usd per share) [1] $ 0.12 $ 0.09 $ 0.22 $ 0.21
Diluted (in usd per share) [1] 0.12 0.09 0.22 0.21
Earnings per common share from discontinued operations (a):        
Basic (in usd per share) [1] 0 0 0.05 0.01
Diluted (in usd per share) [1] 0 0 0.05 0.01
Earnings per common share: (a)        
Basic (in usd per share) [1] 0.12 0.09 0.27 0.22
Diluted (in usd per share) [1] 0.12 0.09 0.27 0.22
Cash dividends declared per common share (in usd per share) $ 0.11 $ 0.11 $ 0.33 $ 0.33
Shares used in the calculation of earnings per common share:        
Basic (in shares) 33,292 33,759 33,842 33,711
Diluted (in shares) 33,337 33,965 33,866 34,006
Subscription fees        
Revenues:        
Revenues $ 14,114 $ 13,003 $ 41,235 $ 37,391
Cost of revenues:        
Cost of revenues 4,944 4,005 13,768 11,682
License        
Revenues:        
Revenues 277 1,017 795 2,025
Cost of revenues:        
Cost of revenues 3 358 168 541
Professional services and other        
Revenues:        
Revenues 3,418 4,758 11,107 15,687
Cost of revenues:        
Cost of revenues 2,694 3,498 8,610 10,682
Maintenance        
Revenues:        
Revenues 7,727 8,649 23,990 26,384
Cost of revenues:        
Cost of revenues $ 1,449 $ 1,607 $ 4,877 $ 4,757
[1] Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements.
XML 14 R5.htm IDEA: XBRL DOCUMENT v3.24.0.1
Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical) - $ / shares
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Diluted (in usd per share) [1] $ 0.12 $ 0.09 $ 0.27 $ 0.22
Class B Common Shares        
Diluted (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
[1] Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements.
XML 15 R6.htm IDEA: XBRL DOCUMENT v3.24.0.1
Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($)
$ in Thousands
Total
Class A Common Shares
Class B Common Shares
Common stock
Class A Common Shares
Common stock
Class B Common Shares
Additional paid-in capital
Retained deficit
Treasury stock
Beginning balance (in shares) at Apr. 30, 2022       36,405,695 1,821,587      
Beginning balance at Apr. 30, 2022 $ 132,041     $ 3,641 $ 182 $ 171,948 $ (18,171) $ (25,559)
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Proceeds from stock options exercised (in shares) 140,800     140,800 [1]        
Proceeds from stock options exercised [1] $ 1,654     $ 14   1,640    
Stock-based compensation 3,944         3,944    
Net earnings 7,386           7,386  
Dividends declared [1] (11,132)           (11,132)  
Ending balance (in shares) at Jan. 31, 2023       36,546,495 1,821,587      
Ending balance at Jan. 31, 2023 133,893     $ 3,655 $ 182 177,532 (21,917) (25,559)
Beginning balance (in shares) at Oct. 31, 2022       36,503,495 1,821,587      
Beginning balance at Oct. 31, 2022 132,588     $ 3,650 $ 182 175,733 (21,418) (25,559)
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Proceeds from stock options exercised (in shares)       43,000        
Proceeds from stock options exercised 510     $ 5   505    
Stock-based compensation 1,294         1,294    
Net earnings 3,217           3,217  
Dividends declared [1] (3,716)           (3,716)  
Ending balance (in shares) at Jan. 31, 2023       36,546,495 1,821,587      
Ending balance at Jan. 31, 2023 133,893     $ 3,655 $ 182 177,532 (21,917) (25,559)
Beginning balance (in shares) at Apr. 30, 2023   32,318,610 1,821,587 36,907,242 1,821,587      
Beginning balance at Apr. 30, 2023 $ 138,288     $ 3,691 $ 182 182,722 (22,748) (25,559)
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Proceeds from stock options exercised (in shares) 26,253     26,253 [1]        
Proceeds from stock options exercised [1] $ 291     $ 2   289    
Stock-based compensation 4,720         4,720    
Purchases of common stock (10,235) $ (35,800)           (10,235)
Net earnings 9,199           9,199  
Dividends declared [1] (11,169)           (11,169)  
Ending balance (in shares) at Jan. 31, 2024   31,398,542 1,821,587 36,933,495 1,821,587      
Ending balance at Jan. 31, 2024 131,094     $ 3,693 $ 182 187,731 (24,718) (35,794)
Beginning balance (in shares) at Oct. 31, 2023       36,929,495 1,821,587      
Beginning balance at Oct. 31, 2023 134,450     $ 3,693 $ 182 186,100 (25,152) (30,373)
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Proceeds from stock options exercised (in shares) [1]       4,000        
Proceeds from stock options exercised [1] 45         45    
Stock-based compensation 1,586         1,586    
Purchases of common stock (5,421)             (5,421)
Net earnings 4,088           4,088  
Dividends declared (3,654)           (3,654)  
Ending balance (in shares) at Jan. 31, 2024   31,398,542 1,821,587 36,933,495 1,821,587      
Ending balance at Jan. 31, 2024 $ 131,094     $ 3,693 $ 182 $ 187,731 $ (24,718) $ (35,794)
[1] Amounts adjusted for rounding
XML 16 R7.htm IDEA: XBRL DOCUMENT v3.24.0.1
Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)
$ in Thousands
9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Cash flows from operating activities:    
Net earnings $ 9,199 $ 7,386
Earnings from discontinued operations, net of tax (1,812) (323)
Adjustments to reconcile net earnings to net cash provided by operating activities:    
Depreciation and amortization 3,641 2,389
Stock-based compensation expense 4,720 3,919
Net gain on investments (1,331) (92)
Deferred income taxes 282 (3,377)
Gain on sale of business (1,438) 0
Gain on sale of discontinued operations (2,124) 0
Changes in operating assets and liabilities:    
Purchases of trading securities (3,958) (8,284)
Proceeds from maturities and sales of trading securities 6,772 870
Accounts receivable, net 4,267 (11,816)
Prepaid expenses and other assets (1,150) 579
Accounts payable and other liabilities (3,854) (1,578)
Deferred revenue (5,298) (1,247)
Net cash provided by (used in) operating activities of continuing operations 7,916 (11,574)
Net cash provided by operating activities of discontinued operations 1,554 1,108
Net cash provided by (used in) operating activities 9,470 (10,466)
Cash flows from investing activities:    
Purchases of property and equipment, net of disposals (539) (3,655)
Purchase of business, net of cash acquired (25,041) (6,500)
Proceeds from sale of business 660 0
Net cash used in investing activities of continuing operations (24,920) (10,155)
Net cash provided by investing activities of discontinued operations 1,825 0
Net cash used in investing activities (23,095) (10,155)
Cash flows from financing activities:    
Proceeds from exercise of stock options 290 1,654
Purchases of common stock (10,235) 0
Dividends paid (11,272) (11,117)
Net cash used in financing activities of continuing operations (21,217) (9,463)
Net change in cash and cash equivalents (34,842) (30,084)
Cash and cash equivalents at beginning of period 90,696 110,690
Cash and cash equivalents at end of period 55,854 80,606
Supplemental disclosure of cash flow information:    
Income taxes, net of refunds 4,345 5,441
Supplemental disclosures of noncash operating, investing and financing activities:    
Accrual of dividends payable $ 3,654 $ 3,716
XML 17 R8.htm IDEA: XBRL DOCUMENT v3.24.0.1
Presentation and Summary of Significant Accounting Policies
9 Months Ended
Jan. 31, 2024
Accounting Policies [Abstract]  
Presentation and Summary of Significant Accounting Policies Presentation and Summary of Significant Accounting Policies
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements ("condensed consolidated financial statements") have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these condensed consolidated financial statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at January 31, 2024, results of operations for the three and nine months ended January 31, 2024 and 2023, consolidated statements of shareholders’ equity for the three and nine months ended January 31, 2024 and 2023, and cash flows for the nine months ended January 31, 2024 and 2023. The Company’s results for the three months ended January 31, 2024 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2023. The terms “fiscal 2024” and “fiscal 2023” refer to our fiscal years ending April 30, 2024 and 2023, respectively.
The preparation of these condensed consolidated financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosures of contingent assets and liabilities, at the date of the condensed consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Note 1 in the Notes to Consolidated Financial Statements contained in the Annual Report describes the significant accounting policies that we have used in preparing our consolidated financial statements. On an ongoing basis, we evaluate our estimates, including, but not limited to, those related to revenue reserves and allowances. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Our actual results could differ materially from these estimates under different assumptions or conditions.
Principles of Consolidation
The accompanying condensed consolidated financial statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation.
In September 2023, we disposed of our 100% equity interest in our information technology staffing firm, The Proven Method ("TPM") for approximately $2.1 million in cash. For further information regarding the transaction, see Note F to the accompanying condensed consolidated financial statements.
Recent Accounting Pronouncements
Accounting Standards Update ("ASU") 2021-08 In October 2021, the Financial Accounting Standards Board ("FASB") issued ASU 2021-08, "Business Combinations (Topic 805): Accounting for Contract Assets and Contract Liabilities from Contracts with Customers." Under current GAAP, an acquirer generally recognizes assets acquired and liabilities assumed in a business combination, including contract assets and contract liabilities arising from revenue contracts with customers and other similar contracts that are accounted for in accordance with Accounting Standards Codification ("ASC") Topic 606, Revenue from Contracts with Customers ("Topic 606"), at fair value on the acquisition date. ASU 2021-08 requires that an entity recognize and measure contract assets and contract liabilities acquired in a business combination in accordance with Topic 606. At the acquisition date, an acquirer should account for the related revenue contracts in accordance with Topic 606 as if it had originated the contracts, which should generally result in an acquirer recognizing and measuring the acquired contract assets and contract liabilities consistent with how they were recognized and measured in the acquiree’s financial statements. This update also provides certain practical expedients for acquirers when recognizing and measuring acquired contract assets and contract liabilities from revenue contracts in a business combination. The amendments in this update are effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years and should be applied prospectively to business combinations occurring on or after the effective date of the amendments. The Company adopted this update prospectively on May 1, 2023 and it did not have a material impact to our condensed consolidated financial statements.
XML 18 R9.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition
9 Months Ended
Jan. 31, 2024
Revenue from Contract with Customer [Abstract]  
Revenue Recognition Revenue Recognition
    In accordance with ASU 2014-09, Revenue from Contracts with Customers (Topic 606), we recognize revenue when we transfer control of the promised goods or services to our clients, in an amount that reflects the consideration we expect to
receive, in exchange for those goods or services. We derive our revenue from software licenses, maintenance services, consulting, implementation and training services, and Software-as-a-Service (“SaaS”), which includes a subscription to our software, as well as support, hosting and managed services.
The Company recognizes revenue in accordance with the following steps:
Step 1 - Identification of the Contract with the Client
Step 2 - Identification of Promised Goods and Services and Evaluation of Whether the Promised Goods and Services are Distinct Performance Obligations
Step 3 - Determination of the Transaction Price
Step 4 - Allocation of the Transaction Price to Distinct Performance Obligations
Step 5 - Attribution of Revenue for Each Distinct Performance Obligation
Nature of Products and Services
    Subscription. Subscription fees include SaaS revenue for the right to use the software for a limited period of time in an environment hosted by the Company or by a third-party. The client accesses and uses the software on an as-needed basis over the Internet or via a dedicated line; however, the client has no right to take delivery of the software. The underlying arrangements typically include a single fee for the service that is billed monthly, quarterly or annually. The Company’s SaaS solutions represent a series of distinct services that are substantially the same and have the same pattern of transfer to the client. Revenue from a SaaS solution is generally recognized ratably over the term of the arrangement.
    License. Our perpetual software licenses provide the client with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the client. Our perpetual software licenses are sold with maintenance under which we provide clients with telephone consulting, product updates on a when available basis, and releases of new versions of products previously purchased by the client, as well as error reporting and correction services.
    Professional Services and Other. Our services revenue consists of fees generated from consulting, implementation and training services, including reimbursements of out-pocket expenses in connection with our services. Services are typically optional to our clients, and are distinct from our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. We believe the output method of hours worked provides the best depiction of the transfer of our services since the client is receiving the benefit from our services as the work is performed. The total amount of expense reimbursement included in professional services and other revenue was immaterial for the three and nine months ended January 31, 2024 and 2023.
    Maintenance. Revenue is derived from maintenance under which we provide clients with telephone consulting, product updates and releases of new versions of products previously purchased by the client on a when and-if-available basis, as well as error reporting and correction services. Maintenance for perpetual licenses is renewable, generally on an annual basis, at the option of the client. Maintenance terms typically range from one to three years. Revenue related to maintenance is generally paid in advance and recognized ratably over the term of the agreement since the Company is standing ready to provide a series of maintenance services that are substantially the same each period over the term; therefore, time is the best measure of progress. Support services for subscriptions are included in the subscription fees and are recognized as a component of such fees.
    Indirect Channel Revenue. We record revenue from sales made through the indirect sales channels on a gross basis, because we control the goods or services and act as the principal in the transaction. In reaching this determination, we evaluated sales through our indirect channel on a case-by-case basis and considered a number of factors including indicators of control such as the party having the primary responsibility to provide specified goods or services and the party having discretion in establishing prices.
    Sales Taxes. We account for sales taxes collected from clients on a net basis.
Contract Balances. Timing of invoicing to clients may differ from timing of revenue recognition and these timing differences result in unbilled accounts receivables or contract liabilities (deferred revenue) on the Company’s Condensed Consolidated Balance Sheets. Fees for our software licenses are generally due within 30 days of contract execution. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our clients. SaaS solutions and maintenance are typically billed in advance on a monthly, quarterly, or annual basis. Services are typically billed as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we
have determined that our contracts generally do not include significant financing component. The primary purpose of our invoicing terms is to provide clients with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude any financing component from consideration for any contracts with payment terms of one year or less since we rarely offer terms extending beyond one year. The consideration in our client contracts is fixed.
We have an unconditional right to consideration for all goods and services transferred to our clients. That unconditional right to consideration is reflected in billed and unbilled accounts receivable in the accompanying Condensed Consolidated Balance Sheets in accordance with Topic 606.
Deferred revenue consists of amounts collected prior to having completed the performance of maintenance, SaaS, hosting, and managed services. We typically invoice clients for cloud subscription and support fees in advance on a monthly, quarterly or annual basis, with payment due at the start of the cloud subscription or support term. During the nine months ended January 31, 2024, we recognized $38.1 million of revenue that was included in the deferred revenue balance as of April 30, 2023.
January 31,
2024
April 30,
2023
(in thousands)
Deferred revenue$37,154 $43,124 

    Remaining Performance Obligations. A performance obligation is a promise in a contract to transfer a distinct good or service to the client and is the unit of account under Topic 606. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied by transferring the promised good or service to the client. The Company identifies and tracks the performance obligations at contract inception so that the Company can monitor and account for the performance obligations over the life of the contract. Remaining performance obligations represent the transaction price of orders for which products have not been delivered or services have not been performed. As of January 31, 2024, the aggregate amount of the transaction price allocated to remaining performance obligations was approximately $119.5 million. The Company expects to recognize revenue on approximately 51% of the remaining performance obligations over the next 12 months, with the remainder recognized thereafter.
    Disaggregated Revenue. The Company disaggregates revenue from contracts with clients by geography, as it believes it best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors.
The Company’s revenue by geography is as follows:
    
 Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
(in thousands)(in thousands)
Revenues:
Domestic$20,040 $21,078 $60,646 $63,633 
International5,496 6,349 16,481 17,854 
$25,536 $27,427 $77,127 $81,487 
    Contract Costs. The Company capitalizes the incremental costs of obtaining a contract with a client if the Company expects to recover those costs. The incremental costs of obtaining a contract are those that the Company incurs to obtain a contract with a client that it would not have incurred if the contract had not been obtained (for example, a sales commission). The Company capitalizes the costs incurred to fulfill a contract only if those costs meet all of the following criteria:
The costs relate directly to a contract or to an anticipated contract that the Company can specifically identify.
The costs generate or enhance resources of the Company that will be used in satisfying (or in continuing to satisfy) performance obligations in the future.
The costs are expected to be recovered.
    Certain sales commissions incurred by the Company were determined to be incremental costs to obtain the related contracts, which are deferred and amortized ratably over the economic benefit period. These deferred commission costs are classified as current or non-current based on the timing of when the Company expects to recognize the expense. The current and non-current portions of deferred commissions are included in prepaid expenses and other current assets and other assets, respectively, in the Company’s Condensed Consolidated Balance Sheets. Total deferred commissions at January 31, 2024 and April 30, 2023 were $2.6 million and $3.0 million, respectively. Amortization of sales commissions was $0.4 million and $1.2 million for the three and nine months ended January 31, 2024 and $0.4 million and $1.2 million for the three and nine months ended January 31, 2023, which is included in "Sales and marketing" expense in the accompanying Condensed Consolidated Statements of Operations. No impairment losses were recognized during the periods.
XML 19 R10.htm IDEA: XBRL DOCUMENT v3.24.0.1
Declaration of Dividend Payable
9 Months Ended
Jan. 31, 2024
Dividends [Abstract]  
Declaration of Dividend Payable Declaration of Dividend Payable
On November 20, 2023, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend was payable on February 16, 2024 to Class A and Class B shareholders of record at the close of business on February 2, 2024.
XML 20 R11.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Common Share
9 Months Ended
Jan. 31, 2024
Earnings Per Share [Abstract]  
Earnings Per Common Share Earnings Per Common Share
The Company has two classes of common stock. Class B common shares are convertible into Class A common shares at any time, on a one-for-one basis. Under the Company’s Articles of Incorporation, if dividends are declared, holders of Class A common shares shall receive a $0.05 dividend per share prior to the Class B common shares receiving any dividend and holders of Class A common shares shall receive a dividend at least equal to Class B common shares dividends on a per share basis. As a result, the Company has computed the earnings per share in compliance with the Earnings Per Share Topic of the FASB ASC 260, Earnings Per Share, which requires companies that have multiple classes of equity securities to use the “two-class” method in computing earnings per share.
For the Company’s basic earnings per share calculation, the Company uses the “two-class” method. Basic earnings per share are calculated by dividing net earnings attributable to each class of common stock by the weighted average number of shares outstanding. All undistributed earnings are allocated evenly between Class A and B common shares in the earnings per share calculation to the extent that earnings equal or exceed $0.05 per share. If Class B shares convert to Class A shares during the period, the distributed net earnings for Class B shares is calculated using the weighted average common shares outstanding during the period.
Diluted earnings per share is calculated similarly to basic earnings per share, except that the calculation is adjusted to give effect to dilutive elements including stock options and restricted stock units ("RSUs") issuable under the Company's stock incentive plans, to the extent these are dilutive. For the Company’s diluted earnings per share calculation for Class A shares, the Company uses the “if-converted” method. This calculation assumes that all Class B common shares are converted into Class A common shares and, as a result, assumes there are no holders of Class B common shares to participate in undistributed earnings.
For the Company’s diluted earnings per share calculation for Class B shares, the Company uses the “two-class” method. This calculation does not assume that all Class B common shares are converted into Class A common shares. In addition, this method assumes the dilutive effect of Class A stock options and RSUs were converted to Class A shares and the undistributed earnings are allocated evenly to both Class A and B shares including Class A shares issued pursuant to those converted stock options. This allocation is based on management’s judgment after considering the dividend rights of the two-classes of common stock, the control of the Class B shareholders and the convertibility rights of the Class B shares into Class A shares.
The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts):
Basic earnings per common share:
Three Months Ended January 31, 2024Nine Months Ended January 31, 2024
Class A
Common
Shares
Class B
Common
Shares
Class A
Common
Shares
Class B
Common
Shares
Distributed earnings$0.11 $0.11 $0.33 $0.33 
Undistributed losses0.01 0.01 (0.06)(0.06)
Total from continuing operations$0.12 $0.12 $0.22 $0.27 
Total from discontinued operations— — 0.05 — 
Total$0.12 $0.12 $0.27 $0.27 
Distributed earnings$3,454 $200 $10,568 $601 
Undistributed losses410 24 (1,864)(106)
Total from continuing operations$3,864 $224 $6,892 $495 
Total from discontinued operations— — 1,812 — 
Total$3,864 $224 $8,704 $495 
Basic weighted average common shares outstanding31,470 1,822 32,020 1,822 
Three Months Ended January 31, 2023Nine Months Ended January 31, 2023
Class A
Common
Shares
Class B
Common
Shares
Class A
Common
Shares
Class B
Common
Shares
Distributed earnings$0.11 $0.11 $0.33 $0.33 
Undistributed losses*(0.02)(0.02)(0.11)(0.11)
Total from continuing operations$0.09 $0.09 $0.21 $0.22 
Total from discontinued operations$— $— $0.01 $— 
Total$0.09 $0.09 $0.22 $0.22 
Distributed earnings$3,515 $201 $10,532 $601 
Undistributed losses(472)(27)(3,545)(202)
Total from continuing operations$2,998 $174 $6,664 $399 
Total from discontinued operations45 — 323 — 
Total$3,043 $174 $6,987 $399 
Basic weighted average common shares outstanding31,937 1,822 31,890 1,822 
`


Diluted EPS for Class A Common Shares Using the If-Converted Method
Three Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$3,864 31,470 $0.12 
Common Stock Equivalents— 44 — 
3,864 31,514 0.12 
Class B Common Share Conversion*224 1,822 — 
Diluted EPS for Class A Common Shares$4,088 33,336 $0.12 
Nine Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$8,704 32,020 $0.27 
Common Stock Equivalents— 24 — 
8,704 32,044 0.27 
Class B Common Share Conversion*495 1,822 — 
Diluted EPS for Class A Common Shares$9,199 33,866 $0.27 

Three Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$3,043 31,937 $0.09 
Common Stock Equivalents— 206 — 
3,043 32,143 0.09 
Class B Common Share Conversion174 1,822 — 
Diluted EPS for Class A Common Shares$3,217 33,965 $0.09 

Nine Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$6,987 31,890 $0.22 
Common Stock Equivalents— 294 — 
6,987 32,184 0.22 
Class B Common Share Conversion*399 1,822 — 
Diluted EPS for Class A Common Shares$7,386 34,006 $0.22 


Diluted EPS for Class B Common Shares Using the Two-Class Method
Three Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$224 1,822 $0.12 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares— — — 
Diluted EPS for Class B Common Shares$224 1,822 $0.12 


Nine Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$495 1,822 $0.27 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares— — — 
Diluted EPS for Class B Common Shares$495 1,822 $0.27 

Three Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$174 1,822 $0.09 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares— — 
Diluted EPS for Class B Common Shares$175 1,822 $0.09 

Nine Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$399 1,822 $0.22 
Reallocation of undistributed earnings from Class A Common Shares to Class B Common Shares— — 
Diluted EPS for Class B Common Shares$401 1,822 $0.22 
____________
*Amounts adjusted for rounding

For the three and nine months ended January 31, 2024 we excluded options to purchase 6,481,015 and 6,184,717 Class A Common Shares, respectively, and for the three and nine months ended January 31, 2023 we excluded options to purchase 4,445,248 and 3,718,454 Class A Common Shares, respectively. We excluded these option share amounts because the exercise prices of those options were greater than the average market price of the Class A Common Shares during the applicable period. As of January 31, 2024, we had a total of 6,522,415 options outstanding and as of January 31, 2023, we had a total of 5,677,804 options outstanding.
XML 21 R12.htm IDEA: XBRL DOCUMENT v3.24.0.1
Acquisitions
9 Months Ended
Jan. 31, 2024
Business Combination and Asset Acquisition [Abstract]  
Acquisitions Acquisitions
We account for business combinations using the acquisition method of accounting and, accordingly, the identifiable assets acquired and liabilities assumed are recorded based upon management’s estimates of current fair values as of the acquisition date. The estimation process includes analyses based on income and market approaches. Goodwill represents the excess purchase price over the fair value of net assets, including the amount assigned to identifiable intangible assets. The goodwill generated is due in part to the synergies that are not included in the fair value of identifiable intangible assets. Goodwill recorded in an acquisition is assigned to applicable reporting units based on expected revenues. Identifiable intangible assets with finite lives are amortized over their useful lives. Amortization of current technology is recorded in cost of revenue-subscription fees and amortization of all other intangible assets is recorded in amortization of acquisition-related intangibles. Acquisition-related costs, including advisory, legal, accounting, valuation and other costs, are expensed in general and administrative expenses in the periods in which such costs are incurred. The results of operations of acquired businesses are included in the condensed consolidated financial statements from the acquisition date.
Effective September 5, 2023, the Company entered into a Stock Purchase Agreement (“Garvis Purchase Agreement”) with privately-held Garvis AI Limited, a private limited company organized and registered under the laws of England and Wales (“Garvis”). Pursuant to the Garvis Purchase Agreement, the Company acquired 100% of the total issued and outstanding shares of capital stock of Garvis, a visionary SaaS startup that can combine a large language model-based AI interface (e.g. ChatGPT) with AI-native demand forecasting.
Garvis designed from the ground up an AI-first forecasting solution now called DemandAI+. When combined with Generative AI, DemandAI+ creates a modern, more inclusive, and intuitive planning paradigm that quickly digitizes supply chain relationships and exposes that data to any stakeholder across the organization. By simply asking questions planners, executives, and non-planners alike get answers to unanticipated queries in real-time, providing transparency for more informed decisions that saves precious planning time. Demand AI+, built for the cloud, will be embedded into the Logility Digital Supply Chain Platform. The combined solutions will enable a new supply chain planning paradigm with DemandAI+ that moves beyond conventional methods to plan demand and inventory at the speed of the market.
Under the terms of the Garvis Purchase Agreement, the Company acquired the capital stock for cash consideration paid net of cash acquired of approximately $25.0 million, subject to certain post-closing adjustments. The Company incurred acquisition costs of approximately $167,000 and $504,000 during the three and nine months ended January 31, 2024. The operating results of Garvis are not material for proforma disclosure. The Company preliminarily allocated $16.8 million of the total purchase price to goodwill, which has been assigned to the Supply Chain Management segment and is not deductible for income tax purposes.
The following preliminary allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of September 5, 2023 (in thousands):
Useful Life
Cash67 
Accounts receivable, net457 
Current assets47 
Property and equipment, net27 
Goodwill16,835 
Non-compete2,000 3 years
Current technology9,000 3 years
Total assets acquired28,433 
Current liabilities(617)
Long-term liabilities(2,708)
Total liabilities assumed$(3,325)
Net assets acquired$25,108 
Current technology and non-compete agreements are being amortized on a straight-line basis over the remaining estimated economic life of the assets, including the period being reported.
Effective June 28, 2022, the Company acquired certain assets of privately-held Starboard Solutions Corp., a Michigan based innovator of supply chain network design software (“Starboard”), pursuant to the terms of an asset purchase agreement, dated as of June 28, 2022 (the “Starboard Purchase Agreement”).
Starboard creates an interactive supply chain digital twin of the physical supply chain network and uses gaming technology to provide an intuitive user experience where users can easily explore answers to various "what if" questions. Starboard offers a unique supply chain visualization solution that can optimize for unknown locations, meaning users do not have to map their plans to a physical location. Applying Starboard’s rich set of reference costs with Logility’s lane rates and time data structures, users have the ability to quickly analyze options in regions for which they have no prior data and assess better locations for future plants, warehouses or third-party logistic locations. The intuitive design and ease of configuration makes the Starboard network design solution stand out. The Starboard software is built for recurring use, eliminating the need for a consulting project to model potential resolutions to unexpected supply chain disruptions. The integration of Starboard’s capabilities into the Logility Digital Supply Chain Platform will offer supply chain leaders enhanced integrated business planning outcomes. Users will be able to model a response to disruptions and update their operating plan within the Logility Digital Supply Chain Platform in minutes to enact the new operating paradigm.
Under the terms of the Starboard Purchase Agreement, the Company acquired the assets in exchange for a purchase price of approximately $6.5 million in cash, subject to certain post-closing adjustments, plus up to a maximum aggregate amount of $6.0 million (the "Aggregate Maximum Earnout Payment") of contingent earnout payments upon satisfaction of certain subscription revenue targets over a three year earnout period (the "Earnout Period"). For each year of the Earnout Period (each, a "Calculation Period"), the Company will pay, as additional consideration, $2.0 million once subscription revenue (i.e., revenue contracted for and recorded as revenue in accordance with GAAP) for the applicable Calculation Period equals $1.5 million, plus one dollar of additional consideration for each dollar of subscription revenue in excess of $1.5 million, subject to the Aggregate Maximum Earnout Payment. If the subscription revenue for each Calculation Period is less than $1.5 million, no additional payment shall be due for such Calculation Period. The contingent earnout payments are subject to the recipient's continued service with the Company; therefore, any additional consideration will be accounted for as post-combination services and will be expensed in the period(s) payments are accruable. The cumulative earnout paid as of January 31, 2024 was $0. The Company incurred acquisition costs of approximately $0, $0, $50,000 and $186,000 during the three and nine months ended January 31, 2024 and 2023, respectively. The operating results of Starboard are not material for proforma disclosure. We allocated $3.7 million of the total purchase price to goodwill, which has been assigned to the Supply Chain Management segment and is deductible for income tax purposes.
The following allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of June 28, 2022 (in thousands):
Useful Life
Other assets90 
Goodwill3,670 
Non-compete agreements170 5 years
Current technology2,500 3 years
Customer relationships160 6 years
Total assets acquired6,590 
Long-term liabilities(90)
Net assets acquired$6,500 
Non-compete agreements, current technology and customer relationships are being amortized on a straight-line basis over the remaining estimated economic life of the assets, including the period being reported.
XML 22 R13.htm IDEA: XBRL DOCUMENT v3.24.0.1
Divestitures
9 Months Ended
Jan. 31, 2024
Discontinued Operations and Disposal Groups [Abstract]  
Divestitures Divestitures
Discontinued Operations
On September 18, 2023, the Company disposed of its 100% equity interest in its information technology staffing firm, TPM to Marathon TS, Inc., an IT professional services firm for approximately $2.1 million in cash, of which $300,000 is held in escrow. The amounts held in escrow are limited to claims arising out of or relating to any pre-closing taxes. Any escrow amounts that are not subject to then outstanding indemnification claims shall be released to the Company in equal $100,000 increments on the 12, 24 and 36 month anniversary of the transaction closing date and are included in prepaid expenses and other current assets and other assets in the Condensed Consolidated Balance Sheet as of January 31, 2024. There have not been any submitted, or expected, indemnification claims against these escrowed funds. This transaction enables us to focus on our core supply chain planning business allowing Logility to continue to expand its AI-first supply chain management platform.
In accordance with applicable accounting guidance for the disposal of long-lived assets, the results of TPM are presented as discontinued operations and, as such, have been excluded from both continuing operations and segment results in the accompanying Condensed Consolidated Balance Sheets, Condensed Consolidated Statements of Operations, Condensed Consolidated Statements of Cash Flows and in the Notes to Condensed Consolidated Financial Statements. TPM was previously reported in the former IT Consulting segment. During the second quarter of fiscal 2024, the Company identified an error, originating in 2017, resulting in an understatement of professional services and other cost of revenue and other current liabilities. The error was determined to be immaterial to all impacted periods and has been corrected in the previously issued condensed consolidated financial statements presented herein. Subsequent to presenting the results of TPM as discontinued operations, the amounts related to the error resulted in an adjustment to decrease earnings from operations of discontinued operations by $123,000 and $168,000 in the three and nine months ended January 31, 2023, respectively. The error resulted in an increase to retained deficit and an increase to other current liabilities of approximately $1.0 million in prior periods presented.
The following is selected financial information included in Earnings from discontinued operations for TPM:

Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
Revenue$— $3,584 $4,932 $12,258 
Cost of revenue— 2,926 3,959 9,942 
Total operating expenses$— $570 $718 $1,841 
Gain on disposal of discontinued operations$— $— $2,124 $— 
Earnings before income taxes$— $88 $2,379 $475 
Income tax expense64 43 567 152 
Earnings (loss) from discontinued operations, net of taxes$(64)$45 $1,812 $323 
The following is selected financial information included in current assets and current liabilities from discontinued operations for TPM:
January 31,April 30,
20242023
Cash and cash equivalents$— $637 
Trade accounts receivable, less allowance for doubtful accounts— 2,964 
Prepaid expenses and other current assets— 
Current assets of discontinued operations$— $3,603 
Current liabilities of discontinued operations$— $318 
Other Divestitures
On November 15 2023, we signed an asset purchase agreement for the sale of our Transportation Rating Solutions ("TRS") business which consists of on-premise freight shipping solutions for LTL, truckload and rail shipments within North America to FOG Software Group ("FOG") a division of Vela Software for approximately $1.1 million in cash, of which, $440,000 is subject to various holdback provisions, which will expire 120 days following the date of the agreement. The divestiture of TRS will allow us to focus on our core supply chain planning business allowing Logility to continue to expand its AI-first supply chain management platform. The purchase price is subject to a working capital adjustment. We recognized a pre-tax gain of approximately $1.4 million which is recorded within Other Income in the accompanying Condensed Consolidated Statements of Operations for the three and nine months ended January 31, 2024. Earnings from the business were not material and the results of the business through the date of sale were reflected in continuing operations within the SCM segment.
XML 23 R14.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation
9 Months Ended
Jan. 31, 2024
Share-Based Payment Arrangement [Abstract]  
Stock-Based Compensation Stock-Based Compensation
In the first quarter of fiscal 2024, the Compensation Committee of our Board of Directors awarded RSUs to independent directors not employed by the Company that will vest, and shares of Class A common stock will be issued, on the first anniversary of the date of the grant. The RSU awards replace option grants for Class A common stock previously awarded to independent directors. In addition, stock option grants for employees and contractors for Class A common shares were issued, as follows:

 Nine Months Ended January 31,
 20242023
Awards granted:
    Options1,485,000 1,519,000 
    RSUs95,411 — 
Total awards granted1,580,411 1,519,000 

The fair value of each option award is estimated on the date of grant using the Black-Scholes option pricing model and the fair value of each RSU award is estimated on the date of grant using the fair value method. The forfeiture rates are estimated using historical data. We recorded total compensation cost related to stock options and RSUs of approximately $1.6 million and $1.3 million of which, $0 and $8,000 was included in discontinued operations, and income tax expense of approximately $69,000 from option expirations and income tax benefits of approximately $4,000 from option exercises during the three months ended January 31, 2024 and 2023, respectively. We recorded total compensation cost related to stock options and RSUs of approximately $4.7 million and $3.9 million, of which $0 and $16,000 was included in discontinued operations, and income tax expense of approximately $69,000 from option expirations and income tax benefits of approximately $67,000 from option exercises during the nine months ended January 31, 2024 and 2023, respectively. We record stock-based compensation expense on a straight-line basis over the vesting period directly to additional paid-in capital.
During the nine months ended January 31, 2024 and 2023, we issued 26,253 and 140,800 shares of Class A common stock, respectively, resulting from the exercise of stock options. The total intrinsic value of options exercised during the nine months ended January 31, 2024 and 2023 based on market value at the exercise dates was approximately $40,000 and $589,000, respectively. As of January 31, 2024, unrecognized compensation cost related to unvested stock option and RSU awards approximated $14.6 million, respectively, which we expect to recognize over a weighted average period of 1.71 years.
XML 24 R15.htm IDEA: XBRL DOCUMENT v3.24.0.1
Fair Value of Financial Instruments
9 Months Ended
Jan. 31, 2024
Fair Value Disclosures [Abstract]  
Fair Value of Financial Instruments Fair Value of Financial Instruments
We measure our investments based on a fair value hierarchy disclosure framework that prioritizes and ranks the level of market price observability used in measuring assets and liabilities at fair value. A number of factors affect market price observability, including the type of asset or liability and its characteristics. This hierarchy prioritizes the inputs into three broad levels as follows:
Level 1—Quoted prices for identical instruments in active markets.
Level 2—Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs and significant value drivers are observable in active markets.
Level 3—Valuations derived from valuation techniques in which one or more significant inputs or significant value drivers are unobservable.
The following is a general description of the valuation methodologies we use for financial assets and liabilities measured at fair value, including the general classification of such assets and liabilities pursuant to the valuation hierarchy.
Cash Equivalents—Cash equivalents include investments in government obligation based money-market funds, other money market instruments and interest-bearing deposits with initial terms of three months or less. The fair value of cash equivalents approximates its carrying value due to the short-term nature of these instruments.
Marketable Securities—Marketable securities utilizing Level 1 inputs include active exchange-traded equity securities and equity index funds, and most U.S. government debt securities, as these securities all have quoted prices in active markets. Marketable securities utilizing Level 2 inputs include municipal bonds. We value these securities using market-corroborated pricing or other models that use observable inputs such as yield curves.
The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of January 31, 2024 and April 30, 2023, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands):
 January 31, 2024
 Quoted Prices
in Active
Markets for
Identical Assets
(Level 1)
Significant
Other
Observable
Inputs
(Level 2)
Significant
Unobservable
Inputs
(Level 3)
Balance
Cash equivalents$51,464 $— $— $51,464 
U.S. Treasury securities4,625 — — 4,625 
Marketable securities17,829 — — 17,829 
Total$73,918 $— $— $73,918 
April 30, 2023
Quoted Prices
in Active
Markets for
Identical Assets
(Level 1)
Significant
Other
Observable
Inputs
(Level 2)
Significant
Unobservable
Inputs
(Level 3)
Balance
Cash equivalents$81,352 $— $— $81,352 
U.S. Treasury securities7,305 — — 7,305 
Marketable securities16,632 — — 16,632 
Total$105,289 $— $— $105,289 
XML 25 R16.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock Repurchases
9 Months Ended
Jan. 31, 2024
Equity [Abstract]  
Stock Repurchases Stock Repurchases
On August 19, 2002, our Board of Directors authorized the repurchase of up to an additional 2.0 million shares of our Class A common stock. We have made and will make these repurchases through open market purchases at prevailing market
prices. The timing of any repurchase will depend upon market conditions, the market price of our Class A common stock and management’s assessment of our liquidity and cash flow needs. Under this repurchase plan, we have repurchased 2,000,000 shares of Class A common stock at a cost of approximately $16.4 million, which had a $10.2 million impact on fiscal 2024. As of January 31, 2024, under all repurchase plans previously authorized, including this most recent plan, we have repurchased a total of 5,534,953 shares of common stock at a cost of approximately $35.8 million.
XML 26 R17.htm IDEA: XBRL DOCUMENT v3.24.0.1
Comprehensive Income
9 Months Ended
Jan. 31, 2024
Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]  
Comprehensive Income Comprehensive Income
We have not included Condensed Consolidated Statements of Comprehensive Income in the accompanying unaudited condensed consolidated financial statements since comprehensive income and net earnings presented in the accompanying Condensed Consolidated Statements of Operations would be substantially the same.
XML 27 R18.htm IDEA: XBRL DOCUMENT v3.24.0.1
Industry Segments
9 Months Ended
Jan. 31, 2024
Segment Reporting [Abstract]  
Industry Segments Industry Segments
FASB ASC 280, Segment Reporting, establishes standards for reporting information about operating segments. Operating segments are defined as components of a public entity about which separate financial information is available that is evaluated regularly by the chief operating decision makers (“CODMs”), or decision making group, in deciding how to allocate resources and in assessing performance. Our CODMs are our Chief Executive Officer and President and our Chief Financial Officer. While our CODMs are apprised of a variety of financial metrics and information, we manage our business primarily on a segment basis, with the CODMs evaluating performance based upon segment operating profit or loss that includes an allocation of common expenses, but excludes certain unallocated corporate expenses, which are included in the Other segment. Our CODMs review the operating results of our two segments, assess performance and allocate resources in a manner that is consistent with the changing market dynamics that we have experienced. The two operating segments are: (1) Supply Chain Management (“SCM”) and (2) Other.
The SCM segment leverages a single platform spanning seven supply chain process areas, including product, demand, inventory, supply, deploy, integrated business planning and supply chain data management. The Other segment consists of (i) American Software enterprise resource planning ("ERP"), which provides purchasing and materials management, client order processing, financial, e-commerce and traditional manufacturing solutions, and (ii) unallocated corporate overhead expenses.
All of our revenue is derived from external clients. We do not have any inter-segment revenue. Our income taxes and dividends are paid at a consolidated level. Consequently, it is not practical to show these items by operating segment.
In the following table, we have broken down the intersegment transactions applicable to the three and nine months ended January 31, 2024 and 2023 (in thousands):
 Three Months Ended January 31,Nine Months Ended January 31,
 2024202320242023
Revenue:
Supply Chain Management$25,009 $26,952 $75,558 $79,886 
Other527 475 1,569 1,601 
$25,536 $27,427 $77,127 $81,487 
Operating income\(loss):
Supply Chain Management$6,119 $7,763 $18,396 $22,587 
Other(5,304)(5,018)(14,960)(14,950)
$815 $2,745 $3,436 $7,637 
Capital expenditures:
Supply Chain Management$21 $14 $434 $1,604 
Other47 935 155 2,051 
$68 $949 $589 $3,655 
Depreciation and amortization:
Supply Chain Management$1,462 $675 $3,115 $2,042 
Other172 113 526 347 
$1,634 $788 $3,641 $2,389 
Earnings\(loss) before income taxes:
Supply Chain Management$7,810 $8,094 $20,353 $22,695 
Other(2,578)(4,015)(11,191)(13,750)
$5,232 $4,079 $9,162 $8,945 
XML 28 R19.htm IDEA: XBRL DOCUMENT v3.24.0.1
Major Clients
9 Months Ended
Jan. 31, 2024
Segment Reporting [Abstract]  
Major Clients Major Clients
No single client accounted for more than 10% of total revenue for the three and nine months ended January 31, 2024 and 2023.
XML 29 R20.htm IDEA: XBRL DOCUMENT v3.24.0.1
Contingencies
9 Months Ended
Jan. 31, 2024
Commitments and Contingencies Disclosure [Abstract]  
Contingencies Contingencies
The Company more often than not indemnifies its clients against damages and costs resulting from third-party claims of intellectual property infringement associated with use of the Company’s products. The Company historically has not been required to make any payments under such indemnification obligations. However, the Company continues to monitor the circumstances that are subject to indemnification to identify whether it is probable that a loss has occurred, and would recognize any such losses under such indemnification obligations when they are estimable.
In addition, the Company warrants to clients that the Company’s products operate substantially in accordance with the software product’s specifications. Historically, no costs have been incurred related to software product warranties and none are expected in the future, and as such no accruals for software product warranty costs have been made. Additionally, the Company is involved in various claims arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on the financial position or results of operations of the Company.
XML 30 R21.htm IDEA: XBRL DOCUMENT v3.24.0.1
Subsequent Event
9 Months Ended
Jan. 31, 2024
Subsequent Events [Abstract]  
Subsequent Event Subsequent Event
On February 21, 2024, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend is payable on May 17, 2024 to Class A and Class B shareholders of record at the close of business on May 3, 2024.
XML 31 R22.htm IDEA: XBRL DOCUMENT v3.24.0.1
Presentation and Summary of Significant Accounting Policies (Policies)
9 Months Ended
Jan. 31, 2024
Accounting Policies [Abstract]  
Basis of Presentation
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements ("condensed consolidated financial statements") have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these condensed consolidated financial statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at January 31, 2024, results of operations for the three and nine months ended January 31, 2024 and 2023, consolidated statements of shareholders’ equity for the three and nine months ended January 31, 2024 and 2023, and cash flows for the nine months ended January 31, 2024 and 2023. The Company’s results for the three months ended January 31, 2024 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2023. The terms “fiscal 2024” and “fiscal 2023” refer to our fiscal years ending April 30, 2024 and 2023, respectively.
The preparation of these condensed consolidated financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosures of contingent assets and liabilities, at the date of the condensed consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Note 1 in the Notes to Consolidated Financial Statements contained in the Annual Report describes the significant accounting policies that we have used in preparing our consolidated financial statements. On an ongoing basis, we evaluate our estimates, including, but not limited to, those related to revenue reserves and allowances. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Our actual results could differ materially from these estimates under different assumptions or conditions.
Principles of Consolidation
Principles of Consolidation
The accompanying condensed consolidated financial statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation.
In September 2023, we disposed of our 100% equity interest in our information technology staffing firm, The Proven Method ("TPM") for approximately $2.1 million in cash. For further information regarding the transaction, see Note F to the accompanying condensed consolidated financial statements.
Recent Accounting Pronouncements
Recent Accounting Pronouncements
Accounting Standards Update ("ASU") 2021-08 In October 2021, the Financial Accounting Standards Board ("FASB") issued ASU 2021-08, "Business Combinations (Topic 805): Accounting for Contract Assets and Contract Liabilities from Contracts with Customers." Under current GAAP, an acquirer generally recognizes assets acquired and liabilities assumed in a business combination, including contract assets and contract liabilities arising from revenue contracts with customers and other similar contracts that are accounted for in accordance with Accounting Standards Codification ("ASC") Topic 606, Revenue from Contracts with Customers ("Topic 606"), at fair value on the acquisition date. ASU 2021-08 requires that an entity recognize and measure contract assets and contract liabilities acquired in a business combination in accordance with Topic 606. At the acquisition date, an acquirer should account for the related revenue contracts in accordance with Topic 606 as if it had originated the contracts, which should generally result in an acquirer recognizing and measuring the acquired contract assets and contract liabilities consistent with how they were recognized and measured in the acquiree’s financial statements. This update also provides certain practical expedients for acquirers when recognizing and measuring acquired contract assets and contract liabilities from revenue contracts in a business combination. The amendments in this update are effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years and should be applied prospectively to business combinations occurring on or after the effective date of the amendments. The Company adopted this update prospectively on May 1, 2023 and it did not have a material impact to our condensed consolidated financial statements.
Revenue Recognition Revenue Recognition
    In accordance with ASU 2014-09, Revenue from Contracts with Customers (Topic 606), we recognize revenue when we transfer control of the promised goods or services to our clients, in an amount that reflects the consideration we expect to
receive, in exchange for those goods or services. We derive our revenue from software licenses, maintenance services, consulting, implementation and training services, and Software-as-a-Service (“SaaS”), which includes a subscription to our software, as well as support, hosting and managed services.
The Company recognizes revenue in accordance with the following steps:
Step 1 - Identification of the Contract with the Client
Step 2 - Identification of Promised Goods and Services and Evaluation of Whether the Promised Goods and Services are Distinct Performance Obligations
Step 3 - Determination of the Transaction Price
Step 4 - Allocation of the Transaction Price to Distinct Performance Obligations
Step 5 - Attribution of Revenue for Each Distinct Performance Obligation
Nature of Products and Services
    Subscription. Subscription fees include SaaS revenue for the right to use the software for a limited period of time in an environment hosted by the Company or by a third-party. The client accesses and uses the software on an as-needed basis over the Internet or via a dedicated line; however, the client has no right to take delivery of the software. The underlying arrangements typically include a single fee for the service that is billed monthly, quarterly or annually. The Company’s SaaS solutions represent a series of distinct services that are substantially the same and have the same pattern of transfer to the client. Revenue from a SaaS solution is generally recognized ratably over the term of the arrangement.
    License. Our perpetual software licenses provide the client with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the client. Our perpetual software licenses are sold with maintenance under which we provide clients with telephone consulting, product updates on a when available basis, and releases of new versions of products previously purchased by the client, as well as error reporting and correction services.
    Professional Services and Other. Our services revenue consists of fees generated from consulting, implementation and training services, including reimbursements of out-pocket expenses in connection with our services. Services are typically optional to our clients, and are distinct from our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. We believe the output method of hours worked provides the best depiction of the transfer of our services since the client is receiving the benefit from our services as the work is performed. The total amount of expense reimbursement included in professional services and other revenue was immaterial for the three and nine months ended January 31, 2024 and 2023.
    Maintenance. Revenue is derived from maintenance under which we provide clients with telephone consulting, product updates and releases of new versions of products previously purchased by the client on a when and-if-available basis, as well as error reporting and correction services. Maintenance for perpetual licenses is renewable, generally on an annual basis, at the option of the client. Maintenance terms typically range from one to three years. Revenue related to maintenance is generally paid in advance and recognized ratably over the term of the agreement since the Company is standing ready to provide a series of maintenance services that are substantially the same each period over the term; therefore, time is the best measure of progress. Support services for subscriptions are included in the subscription fees and are recognized as a component of such fees.
    Indirect Channel Revenue. We record revenue from sales made through the indirect sales channels on a gross basis, because we control the goods or services and act as the principal in the transaction. In reaching this determination, we evaluated sales through our indirect channel on a case-by-case basis and considered a number of factors including indicators of control such as the party having the primary responsibility to provide specified goods or services and the party having discretion in establishing prices.
    Sales Taxes. We account for sales taxes collected from clients on a net basis.
Contract Balances. Timing of invoicing to clients may differ from timing of revenue recognition and these timing differences result in unbilled accounts receivables or contract liabilities (deferred revenue) on the Company’s Condensed Consolidated Balance Sheets. Fees for our software licenses are generally due within 30 days of contract execution. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our clients. SaaS solutions and maintenance are typically billed in advance on a monthly, quarterly, or annual basis. Services are typically billed as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we
have determined that our contracts generally do not include significant financing component. The primary purpose of our invoicing terms is to provide clients with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude any financing component from consideration for any contracts with payment terms of one year or less since we rarely offer terms extending beyond one year. The consideration in our client contracts is fixed.
We have an unconditional right to consideration for all goods and services transferred to our clients. That unconditional right to consideration is reflected in billed and unbilled accounts receivable in the accompanying Condensed Consolidated Balance Sheets in accordance with Topic 606.
Deferred revenue consists of amounts collected prior to having completed the performance of maintenance, SaaS, hosting, and managed services. We typically invoice clients for cloud subscription and support fees in advance on a monthly, quarterly or annual basis, with payment due at the start of the cloud subscription or support term. During the nine months ended January 31, 2024, we recognized $38.1 million of revenue that was included in the deferred revenue balance as of April 30, 2023.
January 31,
2024
April 30,
2023
(in thousands)
Deferred revenue$37,154 $43,124 

    Remaining Performance Obligations. A performance obligation is a promise in a contract to transfer a distinct good or service to the client and is the unit of account under Topic 606. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied by transferring the promised good or service to the client. The Company identifies and tracks the performance obligations at contract inception so that the Company can monitor and account for the performance obligations over the life of the contract. Remaining performance obligations represent the transaction price of orders for which products have not been delivered or services have not been performed. As of January 31, 2024, the aggregate amount of the transaction price allocated to remaining performance obligations was approximately $119.5 million. The Company expects to recognize revenue on approximately 51% of the remaining performance obligations over the next 12 months, with the remainder recognized thereafter.
    Disaggregated Revenue. The Company disaggregates revenue from contracts with clients by geography, as it believes it best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors.
The Company’s revenue by geography is as follows:
    
 Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
(in thousands)(in thousands)
Revenues:
Domestic$20,040 $21,078 $60,646 $63,633 
International5,496 6,349 16,481 17,854 
$25,536 $27,427 $77,127 $81,487 
    Contract Costs. The Company capitalizes the incremental costs of obtaining a contract with a client if the Company expects to recover those costs. The incremental costs of obtaining a contract are those that the Company incurs to obtain a contract with a client that it would not have incurred if the contract had not been obtained (for example, a sales commission). The Company capitalizes the costs incurred to fulfill a contract only if those costs meet all of the following criteria:
The costs relate directly to a contract or to an anticipated contract that the Company can specifically identify.
The costs generate or enhance resources of the Company that will be used in satisfying (or in continuing to satisfy) performance obligations in the future.
The costs are expected to be recovered.
    Certain sales commissions incurred by the Company were determined to be incremental costs to obtain the related contracts, which are deferred and amortized ratably over the economic benefit period. These deferred commission costs are classified as current or non-current based on the timing of when the Company expects to recognize the expense. The current and non-current portions of deferred commissions are included in prepaid expenses and other current assets and other assets, respectively, in the Company’s Condensed Consolidated Balance Sheets. Total deferred commissions at January 31, 2024 and April 30, 2023 were $2.6 million and $3.0 million, respectively. Amortization of sales commissions was $0.4 million and $1.2 million for the three and nine months ended January 31, 2024 and $0.4 million and $1.2 million for the three and nine months ended January 31, 2023, which is included in "Sales and marketing" expense in the accompanying Condensed Consolidated Statements of Operations. No impairment losses were recognized during the periods.
Acquisitions
We account for business combinations using the acquisition method of accounting and, accordingly, the identifiable assets acquired and liabilities assumed are recorded based upon management’s estimates of current fair values as of the acquisition date. The estimation process includes analyses based on income and market approaches. Goodwill represents the excess purchase price over the fair value of net assets, including the amount assigned to identifiable intangible assets. The goodwill generated is due in part to the synergies that are not included in the fair value of identifiable intangible assets. Goodwill recorded in an acquisition is assigned to applicable reporting units based on expected revenues. Identifiable intangible assets with finite lives are amortized over their useful lives. Amortization of current technology is recorded in cost of revenue-subscription fees and amortization of all other intangible assets is recorded in amortization of acquisition-related intangibles. Acquisition-related costs, including advisory, legal, accounting, valuation and other costs, are expensed in general and administrative expenses in the periods in which such costs are incurred. The results of operations of acquired businesses are included in the condensed consolidated financial statements from the acquisition date.
XML 32 R23.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition (Tables)
9 Months Ended
Jan. 31, 2024
Revenue from Contract with Customer [Abstract]  
Summary of Contract Balances
January 31,
2024
April 30,
2023
(in thousands)
Deferred revenue$37,154 $43,124 
Schedule of Revenue by Geography
The Company’s revenue by geography is as follows:
    
 Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
(in thousands)(in thousands)
Revenues:
Domestic$20,040 $21,078 $60,646 $63,633 
International5,496 6,349 16,481 17,854 
$25,536 $27,427 $77,127 $81,487 
XML 33 R24.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Common Share (Tables)
9 Months Ended
Jan. 31, 2024
Earnings Per Share [Abstract]  
Schedule of Basic Earnings Per Common Share
The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts):
Basic earnings per common share:
Three Months Ended January 31, 2024Nine Months Ended January 31, 2024
Class A
Common
Shares
Class B
Common
Shares
Class A
Common
Shares
Class B
Common
Shares
Distributed earnings$0.11 $0.11 $0.33 $0.33 
Undistributed losses0.01 0.01 (0.06)(0.06)
Total from continuing operations$0.12 $0.12 $0.22 $0.27 
Total from discontinued operations— — 0.05 — 
Total$0.12 $0.12 $0.27 $0.27 
Distributed earnings$3,454 $200 $10,568 $601 
Undistributed losses410 24 (1,864)(106)
Total from continuing operations$3,864 $224 $6,892 $495 
Total from discontinued operations— — 1,812 — 
Total$3,864 $224 $8,704 $495 
Basic weighted average common shares outstanding31,470 1,822 32,020 1,822 
Three Months Ended January 31, 2023Nine Months Ended January 31, 2023
Class A
Common
Shares
Class B
Common
Shares
Class A
Common
Shares
Class B
Common
Shares
Distributed earnings$0.11 $0.11 $0.33 $0.33 
Undistributed losses*(0.02)(0.02)(0.11)(0.11)
Total from continuing operations$0.09 $0.09 $0.21 $0.22 
Total from discontinued operations$— $— $0.01 $— 
Total$0.09 $0.09 $0.22 $0.22 
Distributed earnings$3,515 $201 $10,532 $601 
Undistributed losses(472)(27)(3,545)(202)
Total from continuing operations$2,998 $174 $6,664 $399 
Total from discontinued operations45 — 323 — 
Total$3,043 $174 $6,987 $399 
Basic weighted average common shares outstanding31,937 1,822 31,890 1,822 
`
Schedule of Diluted Earnings Per Share for Class A Common Shares Using If-Converted Method
Diluted EPS for Class A Common Shares Using the If-Converted Method
Three Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$3,864 31,470 $0.12 
Common Stock Equivalents— 44 — 
3,864 31,514 0.12 
Class B Common Share Conversion*224 1,822 — 
Diluted EPS for Class A Common Shares$4,088 33,336 $0.12 
Nine Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$8,704 32,020 $0.27 
Common Stock Equivalents— 24 — 
8,704 32,044 0.27 
Class B Common Share Conversion*495 1,822 — 
Diluted EPS for Class A Common Shares$9,199 33,866 $0.27 

Three Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$3,043 31,937 $0.09 
Common Stock Equivalents— 206 — 
3,043 32,143 0.09 
Class B Common Share Conversion174 1,822 — 
Diluted EPS for Class A Common Shares$3,217 33,965 $0.09 

Nine Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class A
Common
Shares
Class A
Common
Shares
EPS*
Per Basic$6,987 31,890 $0.22 
Common Stock Equivalents— 294 — 
6,987 32,184 0.22 
Class B Common Share Conversion*399 1,822 — 
Diluted EPS for Class A Common Shares$7,386 34,006 $0.22 
Schedule of Diluted Earnings Per Share for Class B Common Shares Using Two-Class Method
Diluted EPS for Class B Common Shares Using the Two-Class Method
Three Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$224 1,822 $0.12 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares— — — 
Diluted EPS for Class B Common Shares$224 1,822 $0.12 


Nine Months Ended January 31, 2024
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$495 1,822 $0.27 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares— — — 
Diluted EPS for Class B Common Shares$495 1,822 $0.27 

Three Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$174 1,822 $0.09 
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares— — 
Diluted EPS for Class B Common Shares$175 1,822 $0.09 

Nine Months Ended January 31, 2023
Undistributed
& Distributed
Earnings
to Class B
Common
Shares
Class B
Common
Shares
EPS*
Per Basic$399 1,822 $0.22 
Reallocation of undistributed earnings from Class A Common Shares to Class B Common Shares— — 
Diluted EPS for Class B Common Shares$401 1,822 $0.22 
____________
*Amounts adjusted for rounding
XML 34 R25.htm IDEA: XBRL DOCUMENT v3.24.0.1
Acquisitions (Tables)
9 Months Ended
Jan. 31, 2024
Business Combination and Asset Acquisition [Abstract]  
Schedule of Recognized Identified Assets Acquired and Liabilities Assumed
The following preliminary allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of September 5, 2023 (in thousands):
Useful Life
Cash67 
Accounts receivable, net457 
Current assets47 
Property and equipment, net27 
Goodwill16,835 
Non-compete2,000 3 years
Current technology9,000 3 years
Total assets acquired28,433 
Current liabilities(617)
Long-term liabilities(2,708)
Total liabilities assumed$(3,325)
Net assets acquired$25,108 
The following allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of June 28, 2022 (in thousands):
Useful Life
Other assets90 
Goodwill3,670 
Non-compete agreements170 5 years
Current technology2,500 3 years
Customer relationships160 6 years
Total assets acquired6,590 
Long-term liabilities(90)
Net assets acquired$6,500 
XML 35 R26.htm IDEA: XBRL DOCUMENT v3.24.0.1
Divestitures (Tables)
9 Months Ended
Jan. 31, 2024
Discontinued Operations and Disposal Groups [Abstract]  
Disposal Groups, Including Discontinued Operations
The following is selected financial information included in Earnings from discontinued operations for TPM:

Three Months Ended
January 31,
Nine Months Ended
January 31,
2024202320242023
Revenue$— $3,584 $4,932 $12,258 
Cost of revenue— 2,926 3,959 9,942 
Total operating expenses$— $570 $718 $1,841 
Gain on disposal of discontinued operations$— $— $2,124 $— 
Earnings before income taxes$— $88 $2,379 $475 
Income tax expense64 43 567 152 
Earnings (loss) from discontinued operations, net of taxes$(64)$45 $1,812 $323 
The following is selected financial information included in current assets and current liabilities from discontinued operations for TPM:
January 31,April 30,
20242023
Cash and cash equivalents$— $637 
Trade accounts receivable, less allowance for doubtful accounts— 2,964 
Prepaid expenses and other current assets— 
Current assets of discontinued operations$— $3,603 
Current liabilities of discontinued operations$— $318 
XML 36 R27.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation (Tables)
9 Months Ended
Jan. 31, 2024
Share-Based Payment Arrangement [Abstract]  
Schedule of Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity In addition, stock option grants for employees and contractors for Class A common shares were issued, as follows:
 Nine Months Ended January 31,
 20242023
Awards granted:
    Options1,485,000 1,519,000 
    RSUs95,411 — 
Total awards granted1,580,411 1,519,000 
XML 37 R28.htm IDEA: XBRL DOCUMENT v3.24.0.1
Fair Value of Financial Instruments (Tables)
9 Months Ended
Jan. 31, 2024
Fair Value Disclosures [Abstract]  
Schedule of Assets and Liabilities Measured at Fair Value on Recurring Basis
The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of January 31, 2024 and April 30, 2023, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands):
 January 31, 2024
 Quoted Prices
in Active
Markets for
Identical Assets
(Level 1)
Significant
Other
Observable
Inputs
(Level 2)
Significant
Unobservable
Inputs
(Level 3)
Balance
Cash equivalents$51,464 $— $— $51,464 
U.S. Treasury securities4,625 — — 4,625 
Marketable securities17,829 — — 17,829 
Total$73,918 $— $— $73,918 
April 30, 2023
Quoted Prices
in Active
Markets for
Identical Assets
(Level 1)
Significant
Other
Observable
Inputs
(Level 2)
Significant
Unobservable
Inputs
(Level 3)
Balance
Cash equivalents$81,352 $— $— $81,352 
U.S. Treasury securities7,305 — — 7,305 
Marketable securities16,632 — — 16,632 
Total$105,289 $— $— $105,289 
XML 38 R29.htm IDEA: XBRL DOCUMENT v3.24.0.1
Industry Segments (Tables)
9 Months Ended
Jan. 31, 2024
Segment Reporting [Abstract]  
Schedule of Segment Operating Profit or Loss
In the following table, we have broken down the intersegment transactions applicable to the three and nine months ended January 31, 2024 and 2023 (in thousands):
 Three Months Ended January 31,Nine Months Ended January 31,
 2024202320242023
Revenue:
Supply Chain Management$25,009 $26,952 $75,558 $79,886 
Other527 475 1,569 1,601 
$25,536 $27,427 $77,127 $81,487 
Operating income\(loss):
Supply Chain Management$6,119 $7,763 $18,396 $22,587 
Other(5,304)(5,018)(14,960)(14,950)
$815 $2,745 $3,436 $7,637 
Capital expenditures:
Supply Chain Management$21 $14 $434 $1,604 
Other47 935 155 2,051 
$68 $949 $589 $3,655 
Depreciation and amortization:
Supply Chain Management$1,462 $675 $3,115 $2,042 
Other172 113 526 347 
$1,634 $788 $3,641 $2,389 
Earnings\(loss) before income taxes:
Supply Chain Management$7,810 $8,094 $20,353 $22,695 
Other(2,578)(4,015)(11,191)(13,750)
$5,232 $4,079 $9,162 $8,945 
XML 39 R30.htm IDEA: XBRL DOCUMENT v3.24.0.1
Presentation and Summary of Significant Accounting Policies - Additional Information (Details) - Discontinued Operations, Disposed of by Sale - TPM
$ in Millions
1 Months Ended
Sep. 18, 2023
USD ($)
Sep. 30, 2023
USD ($)
Schedule of Equity Method Investments [Line Items]    
Equity interest (in percent) 1 1
Proceeds from sale of equity method investments $ 2.1 $ 2.1
XML 40 R31.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition - Additional Information (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Apr. 30, 2023
Revenue Recognition [Line Items]          
Deferred revenue recognized     $ 38.1    
Deferred commissions $ 2.6   2.6   $ 3.0
Amortization of sales commissions 0.4 $ 0.4 1.2 $ 1.2  
Impairment loss $ 0.0 $ 0.0 $ 0.0 $ 0.0  
Minimum          
Revenue Recognition [Line Items]          
Contractual period of maintenance contract     1 year    
Maximum          
Revenue Recognition [Line Items]          
Contractual period of maintenance contract     3 years    
XML 41 R32.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition - Summary of Contract Balances (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Apr. 30, 2023
Contract Balances:    
Deferred revenue $ 37,154 $ 43,124
XML 42 R33.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition - Remaining Performance Obligation (Details)
$ in Millions
Jan. 31, 2024
USD ($)
Revenue from Contract with Customer [Abstract]  
Transaction price allocated to remaining performance obligations $ 119.5
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-02-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining revenue to be recognized 51.00%
Revenue, remaining performance obligation, expected timing of satisfaction, period 12 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-02-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue, remaining performance obligation, expected timing of satisfaction, period
XML 43 R34.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition - Disaggregated Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Revenues:        
Revenues $ 25,536 $ 27,427 $ 77,127 $ 81,487
Domestic        
Revenues:        
Revenues 20,040 21,078 60,646 63,633
International        
Revenues:        
Revenues $ 5,496 $ 6,349 $ 16,481 $ 17,854
XML 44 R35.htm IDEA: XBRL DOCUMENT v3.24.0.1
Declaration of Dividend Payable (Details) - $ / shares
3 Months Ended 9 Months Ended
Nov. 20, 2023
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Class of Stock [Line Items]          
Cash dividends declared per common share (in usd per share)   $ 0.11 $ 0.11 $ 0.33 $ 0.33
Class A and Class B          
Class of Stock [Line Items]          
Cash dividends declared per common share (in usd per share) $ 0.11        
XML 45 R36.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Common Share - Additional Information (Details)
3 Months Ended 9 Months Ended 12 Months Ended
Jan. 31, 2024
shares
Jan. 31, 2023
shares
Jan. 31, 2024
$ / shares
shares
Jan. 31, 2023
shares
Apr. 30, 2023
Earnings Per Share [Line Items]          
Share conversion ratio     1   1
Options to purchase excluded (in shares) 6,481,015 4,445,248 6,184,717 3,718,454  
Options to purchase outstanding (in shares) 6,522,415 5,677,804 6,522,415 5,677,804  
Class A Common Shares          
Earnings Per Share [Line Items]          
Dividends preference (in usd per share) | $ / shares     $ 0.05    
XML 46 R37.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Common Share - Basic Earnings Per Common Share (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]        
Basic (in usd per share) [1] $ 0.12 $ 0.09 $ 0.22 $ 0.21
Total from discontinued operations (in usd per share) [1] 0 0 0.05 0.01
Total (in usd per share) [1] $ 0.12 $ 0.09 $ 0.27 $ 0.22
Basic weighted average common shares outstanding (in shares) 33,292 33,759 33,842 33,711
Class A Common Shares        
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]        
Distributed earnings (in usd per share) $ 0.11 $ 0.11 $ 0.33 $ 0.33
Undistributed losses (in usd per share) 0.01 (0.02) (0.06) (0.11)
Basic (in usd per share) 0.12 0.09 0.22 0.21
Total from discontinued operations (in usd per share) 0 0 0.05 0.01
Total (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
Distributed earnings $ 3,454 $ 3,515 $ 10,568 $ 10,532
Undistributed losses 410 (472) (1,864) (3,545)
Total from continuing operations 3,864 2,998 6,892 6,664
Total from discontinued operations 0 45 1,812 323
Total $ 3,864 $ 3,043 $ 8,704 $ 6,987
Basic weighted average common shares outstanding (in shares) 31,470 31,937 32,020 31,890
Class B Common Shares        
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]        
Distributed earnings (in usd per share) $ 0.11 $ 0.11 $ 0.33 $ 0.33
Undistributed losses (in usd per share) 0.01 (0.02) (0.06) (0.11)
Basic (in usd per share) 0.12 0.09 0.27 0.22
Total from discontinued operations (in usd per share) 0 0 0 0
Total (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
Distributed earnings $ 200 $ 201 $ 601 $ 601
Undistributed losses 24 (27) (106) (202)
Total from continuing operations 224 174 495 399
Total from discontinued operations 0 0 0 0
Total $ 224 $ 174 $ 495 $ 399
Basic weighted average common shares outstanding (in shares) 1,822 1,822 1,822 1,822
[1] Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements.
XML 47 R38.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]        
Basic weighted average common shares outstanding (in shares) 33,292 33,759 33,842 33,711
Class A common shares diluted (in shares) 33,337 33,965 33,866 34,006
Basic EPS (in usd per share) [1] $ 0.12 $ 0.09 $ 0.27 $ 0.22
Diluted EPS (in usd per share) [1] $ 0.12 $ 0.09 $ 0.27 $ 0.22
Class A Common Shares        
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]        
Undistributed and distributed earnings $ 3,864 $ 3,043 $ 8,704 $ 6,987
Undistributed and distributed earnings, class B conversion 224 174 495 399
Diluted EPS, Net earnings $ 4,088 $ 3,217 $ 9,199 $ 7,386
Basic weighted average common shares outstanding (in shares) 31,470 31,937 32,020 31,890
Common stock equivalents (in shares) 44 206 24 294
Weighted average shares including common stock equivalents, diluted (in shares) 31,514 32,143 32,044 32,184
Class B common share conversion (in shares) 1,822 1,822 1,822 1,822
Class A common shares diluted (in shares) 33,336 33,965 33,866 34,006
Basic EPS (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
Diluted EPS (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
[1] Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements.
XML 48 R39.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]        
Basic weighted average common shares outstanding (in shares) 33,292 33,759 33,842 33,711
Diluted EPS for class B common shares (in shares) 33,337 33,965 33,866 34,006
Basic EPS (in usd per share) [1] $ 0.12 $ 0.09 $ 0.27 $ 0.22
Diluted EPS (in usd per share) [1] $ 0.12 $ 0.09 $ 0.27 $ 0.22
Class B Common Shares        
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]        
Undistributed and distributed earnings $ 224 $ 174 $ 495 $ 399
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 0 1 0 2
Diluted EPS, Net earnings $ 224 $ 175 $ 495 $ 401
Basic weighted average common shares outstanding (in shares) 1,822 1,822 1,822 1,822
Diluted EPS for class B common shares (in shares) 1,822 1,822 1,822 1,822
Basic EPS (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
Diluted EPS (in usd per share) $ 0.12 $ 0.09 $ 0.27 $ 0.22
[1] Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements.
XML 49 R40.htm IDEA: XBRL DOCUMENT v3.24.0.1
Acquisitions - Additional Information (Details) - USD ($)
3 Months Ended 9 Months Ended
Sep. 05, 2023
Jun. 28, 2022
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Apr. 30, 2023
Business Acquisition [Line Items]              
Purchase of business, net of cash acquired         $ 25,041,000 $ 6,500,000  
Goodwill     $ 46,393,000   46,393,000   $ 29,558,000
Garvis              
Business Acquisition [Line Items]              
Issued and outstanding shares acquired (in percent) 100.00%            
Purchase of business, net of cash acquired $ 25,000,000            
Business acquisition costs incurred     167,000   504,000    
Goodwill $ 16,835,000   16,800,000   16,800,000    
Starboard              
Business Acquisition [Line Items]              
Business acquisition costs incurred     0 $ 50,000 0 $ 186,000  
Goodwill   $ 3,670,000          
Cash consideration paid   6,500,000          
Maximum contingent consideration   $ 6,000,000          
Business combination, earnout period   3 years          
Additional consideration   $ 2,000,000          
Additional consideration, revenue threshold   1,500,000          
Additional consideration per dollar of subscription revenue   $ 1          
Cumulative earnout paid     $ 0   $ 0    
XML 50 R41.htm IDEA: XBRL DOCUMENT v3.24.0.1
Acquisitions - Allocation of Total Purchase Price (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Sep. 05, 2023
Apr. 30, 2023
Jun. 28, 2022
Business Acquisition [Line Items]        
Goodwill $ 46,393   $ 29,558  
Garvis        
Business Acquisition [Line Items]        
Cash   $ 67    
Accounts receivable, net   457    
Current assets   47    
Property and equipment, net   27    
Goodwill $ 16,800 16,835    
Total assets acquired   28,433    
Current liabilities   (617)    
Long-term liabilities   (2,708)    
Total liabilities assumed   (3,325)    
Net assets acquired   25,108    
Garvis | Non-compete agreements        
Business Acquisition [Line Items]        
Intangible assets   $ 2,000    
Useful Life   3 years    
Garvis | Current technology        
Business Acquisition [Line Items]        
Intangible assets   $ 9,000    
Useful Life   3 years    
Starboard        
Business Acquisition [Line Items]        
Other assets       $ 90
Goodwill       3,670
Total assets acquired       6,590
Long-term liabilities       (90)
Net assets acquired       6,500
Starboard | Non-compete agreements        
Business Acquisition [Line Items]        
Intangible assets       $ 170
Useful Life       5 years
Starboard | Current technology        
Business Acquisition [Line Items]        
Intangible assets       $ 2,500
Useful Life       3 years
Starboard | Customer relationships        
Business Acquisition [Line Items]        
Intangible assets       $ 160
Useful Life       6 years
XML 51 R42.htm IDEA: XBRL DOCUMENT v3.24.0.1
Divestitures - Additional Information (Details)
$ in Thousands
1 Months Ended 3 Months Ended 9 Months Ended
Nov. 15, 2023
USD ($)
Sep. 18, 2023
USD ($)
Sep. 30, 2023
USD ($)
Jan. 31, 2024
USD ($)
Jan. 31, 2023
USD ($)
Jan. 31, 2024
USD ($)
Jan. 31, 2023
USD ($)
May 01, 2023
USD ($)
Apr. 30, 2023
USD ($)
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]                  
Decrease in earnings from operations of discontinued operations       $ 0 $ (88) $ (255) $ (475)    
Retained deficit       24,718   24,718     $ 22,748
Other current liabilities       3,275   3,275     $ 3,638
Disposal group, not discontinued operation, gain on disposal           1,438 0    
Revision of Prior Period, Error Correction, Adjustment                  
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]                  
Decrease in earnings from operations of discontinued operations         $ 123   $ 168    
Retained deficit               $ 1,000  
Other current liabilities               $ 1,000  
Discontinued Operations, Disposed of by Sale | TPM                  
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]                  
Equity interest (in percent)   1 1            
Proceeds from sale of equity method investments   $ 2,100 $ 2,100            
Escrow deposit       300   300      
Equal increments for release of escrow deposit not subject to then outstanding indemnification claims       100   100      
Discontinued Operations | TRS                  
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]                  
Cash consideration $ 1,100                
Consideration subject to holdback provisions $ 440                
Consideration subject to holdback provisions period 120 days                
Disposal group, not discontinued operation, gain on disposal       $ 1,400   $ 1,400      
XML 52 R43.htm IDEA: XBRL DOCUMENT v3.24.0.1
Divestitures - Earning from Discontinued Operations (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]        
Income tax expense $ 64 $ 43 $ 567 $ 152
Earnings (loss) from discontinued operations, net of income taxes (64) 45 1,812 323
Discontinued Operations, Disposed of by Sale | TPM        
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]        
Revenue 0 3,584 4,932 12,258
Cost of revenue 0 2,926 3,959 9,942
Total operating expenses 0 570 718 1,841
Gain on disposal of discontinued operations 0 0 2,124 0
Earnings from operations of discontinued operations 0 88 2,379 475
Income tax expense 64 43 567 152
Earnings (loss) from discontinued operations, net of income taxes $ (64) $ 45 $ 1,812 $ 323
XML 53 R44.htm IDEA: XBRL DOCUMENT v3.24.0.1
Divestitures - Current Assets and Current Liabilities from Discontinued Operations (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Apr. 30, 2023
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]    
Current assets of discontinued operations $ 0 $ 3,603
Current liabilities of discontinued operations 0 318
Discontinued Operations, Disposed of by Sale | TPM    
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]    
Cash and cash equivalents 0 637
Trade accounts receivable, less allowance for doubtful accounts 0 2,964
Prepaid expenses and other current assets 0 2
Current assets of discontinued operations 0 3,603
Current liabilities of discontinued operations $ 0 $ 318
XML 54 R45.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation- Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity (Details) - shares
9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Share-Based Goods and Nonemployee Services Transaction [Line Items]    
Total awards granted (in shares) 1,580,411 1,519,000
Options    
Share-Based Goods and Nonemployee Services Transaction [Line Items]    
Total awards granted (in shares) 1,485,000 1,519,000
RSUs    
Share-Based Goods and Nonemployee Services Transaction [Line Items]    
Total awards granted (in shares) 95,411 0
XML 55 R46.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation- Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation expense $ 1,600 $ 1,300 $ 4,720 $ 3,919
Income tax benefit (expense) (69) 4 $ (69) $ 67
Stock options exercised (in shares)     26,253 140,800
Total intrinsic value of options exercised     $ 40 $ 589
Unrecognized compensation cost related to unvested stock option 14,600   14,600  
Unrecognized compensation cost related to RSU awards 14,600   $ 14,600  
Weighted average period for unrecognized compensation cost     1 year 8 months 15 days  
Discontinued Operations, Disposed of by Sale        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation expense $ 0 $ 8 $ 0 $ 16
XML 56 R47.htm IDEA: XBRL DOCUMENT v3.24.0.1
Fair Value of Financial Instruments (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Apr. 30, 2023
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Cash equivalents $ 51,464 $ 81,352
Marketable securities 17,829 16,632
Total 73,918 105,289
US Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
U.S. Treasury securities 4,625 7,305
Quoted Prices in Active Markets for Identical Assets (Level 1)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Cash equivalents 51,464 81,352
Marketable securities 17,829 16,632
Total 73,918 105,289
Quoted Prices in Active Markets for Identical Assets (Level 1) | US Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
U.S. Treasury securities 4,625 7,305
Significant Other Observable Inputs (Level 2)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Cash equivalents 0 0
Marketable securities 0 0
Total 0 0
Significant Other Observable Inputs (Level 2) | US Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
U.S. Treasury securities 0 0
Significant Unobservable Inputs (Level 3)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Cash equivalents 0 0
Marketable securities 0 0
Total 0 0
Significant Unobservable Inputs (Level 3) | US Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
U.S. Treasury securities $ 0 $ 0
XML 57 R48.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock Repurchases (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended 257 Months Ended
Jan. 31, 2024
Jan. 31, 2024
Jan. 31, 2024
Aug. 19, 2002
Equity, Class of Treasury Stock [Line Items]        
Cost of common stock repurchased $ 5,421 $ 10,235    
Class A Common Shares        
Equity, Class of Treasury Stock [Line Items]        
Cost of common stock repurchased   $ 35,800    
Common stock shares repurchased (in shares)   5,534,953    
Shares Stock Repurchase Plan, August 19, 2002 | Class A Common Shares        
Equity, Class of Treasury Stock [Line Items]        
Approved number of shares to be repurchased (in shares)       2,000,000
Cost of common stock repurchased   $ 10,200 $ 16,400  
Common stock shares repurchased (in shares)     2,000,000  
XML 58 R49.htm IDEA: XBRL DOCUMENT v3.24.0.1
Industry Segments - Additional Information (Details)
9 Months Ended
Jan. 31, 2024
segment
supplyChain
Segment Reporting [Abstract]  
Number of major operating segments | segment 2
Number of supply chain process areas | supplyChain 7
XML 59 R50.htm IDEA: XBRL DOCUMENT v3.24.0.1
Industry Segments - Segment Information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Segment Reporting Information [Line Items]        
Revenues $ 25,536 $ 27,427 $ 77,127 $ 81,487
Operating income\(loss) 815 2,745 3,436 7,637
Capital expenditures 68 949 589 3,655
Depreciation and amortization 1,634 788 3,641 2,389
Earnings\(loss) before income taxes 5,232 4,079 9,162 8,945
Supply Chain Management        
Segment Reporting Information [Line Items]        
Revenues 25,009 26,952 75,558 79,886
Operating income\(loss) 6,119 7,763 18,396 22,587
Capital expenditures 21 14 434 1,604
Depreciation and amortization 1,462 675 3,115 2,042
Earnings\(loss) before income taxes 7,810 8,094 20,353 22,695
Other        
Segment Reporting Information [Line Items]        
Revenues 527 475 1,569 1,601
Operating income\(loss) (5,304) (5,018) (14,960) (14,950)
Capital expenditures 47 935 155 2,051
Depreciation and amortization 172 113 526 347
Earnings\(loss) before income taxes $ (2,578) $ (4,015) $ (11,191) $ (13,750)
XML 60 R51.htm IDEA: XBRL DOCUMENT v3.24.0.1
Subsequent Event (Details) - $ / shares
3 Months Ended 9 Months Ended
Feb. 21, 2024
Nov. 20, 2023
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2024
Jan. 31, 2023
Subsequent Event [Line Items]            
Cash dividends declared per common share (in usd per share)     $ 0.11 $ 0.11 $ 0.33 $ 0.33
Class A and Class B            
Subsequent Event [Line Items]            
Cash dividends declared per common share (in usd per share)   $ 0.11        
Class A and Class B | Subsequent Event            
Subsequent Event [Line Items]            
Cash dividends declared per common share (in usd per share) $ 0.11          
EXCEL 62 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( $M@85@'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 " !+8&%8S:",X^X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>R$E&!R;UI:.G#@8K;.QF;+4UBQUC:R1]^SE9FS*V!]C1TN]/ MGT"M#D+W$9]C'S"2Q70WNLXGH<.:G8B" $CZA$ZE,B=\;A[ZZ!3E9SQ"4/I# M'1%JSE?@D)11I& "%F$A,MD:+71$17V\X(U>\.$S=C/,:, .'7I*4)45,#E- M#.>Q:^$&F&"$T:7O IJ%.%?_Q,X=8)?DF.R2&H:A')HYEW>HX.UI]S*O6UB? M2'F-^5>R@LX!U^PZ^;79/.ZW3-:\OB]X4_!J7ST(7@N^>I]621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M $M@85C%[8QX-08 *@C 8 >&PO=V]R:W-H965T&UL MM9K=*%+>UNEH6T.VVG!\(6X%G;HI(MG93[-YV.\'8T(N*: M[6FLSFP8CXA4NWS;$7M.B9\&16$'.4Z_$Y$@;HU'Z;$%'X]8(L,@I@L.1!)% MA#_?T9 =;ENP=3JP#+8[J0]TQJ,]V=(5E;_M%USM=7(5/XAH+ (6 TXWMZT) M?./B@0Y(K_@]H =QM@VTE35C7_3.W+]M.;I$-*2>U!)$_3Q2EX:A5E+E^.62'7ZF1T,]K>>Q4*3_ MP2&[MMMM 2\1DD7'8%6"*(BS7_)TK(BS (Q* M Q +T(@&5WP,< G!K-2I;: M>DLD&8\X.P"NKU9J>B.MFS1:N0EBW8PKR=790,7)L*0<+U6*@#<2.<"I& M':F$]>F.=Q2YRT10B<@-^,!BN1-@&OO4_SJ^HPJ4EPJ=2G6'K(*_D/@:8'@% MD(.ZAO*X]O 975\#-#2%?U4M4L?4H(EY2'SV!)]XQ+DSV[E.2)J5)< M:U1->_W<7K^:O07E ?-UMP3JZ6!L/+M2WA%+>Z(UOJ;/0>YS4#$S.5$OEK1; MEK>C76M#0F%L2&M838/#W.#06JAI+ /Y#&9!2,%]$JTI-QFS:SB.TX:HV^N; MS%E#:YJ[RKC[.'S9#F] O-[ M]]IDURI4TRYTBE>M4\7P//885TF:OD:NP$JJG@D8!RY+8LF?U:]OK(4+ZN\F M)L?VH+J6S^@"5K'\0)[ W%<]-=@$7O;Z+$_G"Y*]81LZ-\/!3<_HUQI^K]3%U6D#I*SP,3:WJUVR.W# E CU,%?%%F!&N&LV[ M\H*SQR#VS,UMURSIQDW0$BQP"=HAYZ71!1.2A.#/8%_^M+(K8@<[Y@[%Z/1 M)I )%LP$[;"C2-5==GP4"H$@/-8S6PSF;I]."3G(P;?=H5RWPV@3FHP!Q4"7/TX$S!NWKS M;QDW/G$NZ$P\CRH))>!G8D:O39 .*D@'52*=543"$-PE0IT6YHRUZY2.LNUQ M=?T5@(,J [2+O<)&STV@3FXP!Q<:0[( M53:YLCB/??H$?J7&/GA!RE%_ XB[R#B.L@?7]5G #K:CR8ERSM/5-@U]0:[= M=KIM[!B--D$[N* =;&<3-R1"9'H3,80WPS M['71J/-H\EB@$;:3S%F"WU5(\%?"FZ.M)F )%["$^PTD^"L1T+$&FN I7/ 4 MMN/0_TGP5P*F8ST,ODEP.$2P-QR\R._.V5H(3?/I$A$!//UQ)5L6D1_-EZ%, MTL47G>+R; W+!Z(' P*$=*-"G>N!NCO/EH5D.Y+MTY45:R8EB]+-'24^Y?H" M=7[#F#SMZ!ODBW/&_P)02P,$% @ 2V!A6(1"Y)D#!P ="$ !@ !X M;"]W;W)KT"BP9-L_O,2'1,5!)=D;:3?OV2DF-9(D4[@%X2R1Z.SEPTYU#RQ997/\62 M4@F>B[P4EY.EE*OSV4RD2UH0\9FO:*F^6?"J(%*=5D\SL:HHR>I%13Y#GA?. M"L+*R?RB_NRNFE_PM\J(-9%0:J7:YKS[>4$3EX_^,Z>EE)_,)M?K,@3 MO:?R8757J;/9WDO&"EH*QDM0T<7EY J>W_B>7E!;_,OH5AP< QW*(^<_]3N()R.B"K'/YG6__HKN NTOY;FH_X+MSM:;@'0M)"]VBQ6"@I7-?_*\ M2\3! N@/+$"[!>C4!7BW ->!-LCJL&Z))/.+BF]!I:V5-WU0YZ9>K:)AI2[C MO:S4MTRMD_,;7F:J*#0#ZDCPG&5$JI-KDI,RI>!>.Q;@XT-)UAE3WWP"9^#A M_A9\?/\)O >L!#^6?"U(F8F+F51XM-=9NKOV=7-M-'#MOTGY&6 X!XNGZDL[%.!]JE M3\\E(IU5=%2 B*$BOG<%D_CP+<[T'?< MN5B1E%Y.U"TE:+6AD_F'=S#TOMBB&\E9)U:\CQ6[O,]OB%@"5360Z@/Z:\TV M)%?!6ZO8N IK5WHL;.9!$ >J8IO#<$RKQ/."9&_5P>GO4XS6XBAI1Y1$O;J8;'"?A3:ZQ'M045.4 _EXR"L MR+@@Q#[NH;(8!>% ^\9[4+$3U%U%5X1E@#ZO]) 5]2W'Y9)6:K8?3AL;ZM@ M%"91'[5I%,5XH+63/>K$/1PZT !?@(R)E)>2E6O%#4I"5$1SL!5U8@#R>I!- M"QQZV X9>BV/>4[0/[@D^0E9W;GIU-E+?-1':;/SDR0>Z AX0+CPU)'VX5V, M(/I2\G*'VPH8'LVHQ<2/!^XGV-(A=#*0:EY=:?E2-ZVFB)4&78\WW1-J]*V+ M=5[+A8RJ,9.RNBOT=^\QFJHY#(@$BN372A\VP^>5[&N7V@A'4!LI*F?YSL1* MZ+M4("/.($ZB?C9,J]#W_8%TM(P)CU'FBJD68[]5O((OY)94U)H,4O!*LM]M M,GP\#?"Q9"@C=?*69& S&4D_%:8-3@:F VPY&;I)^4_.LZT:ME94)MGZ(4[Z M8\MBAA*E*@:@M:0,G<0W_U;/5E9*4CXQ1<;BM K!<(J"^$B%H#_UPC=5*+". MFKB?"],,07]H(+8D#=TLW:3",0A-&@XQA'UP%JO0&QJ"+5E#-ULWT]H!SL+& M4>(A(W<6NR0(#Z9Y%V!+W# ^:3.0,Z)T!9.,VG<$T"D WJKJQO+6#;KE?>@F M_JM7-;LB+UK*6@,VZ1MZ<5_B6:P0'-(EJ"5YY"9Y!;#2$B3EA194S0VL;\Z* M-G=VRH6]H9!)YRB ?=@6*]^+H@'8+>4C-^7?L@U3N^S,F5ADDC@.C;V,S2H* M!K@>'6Q]W5S_K:-)#YK>BM0D6(RBH(_48A7B@0F/6AI&;AJ^I0NJ4.J2;ZC2 MHU: %MJ+H)E+T\S'$ TH!=3R(W+SHV5VO%%$(Y,>^YK/8H+A4'9;_D1N_NRJ MZ&-]8!*7VL;%1B.89D'D#0DRU!(<.H7@EC%]+ZHBZ>WZ&2M!VJA]:^@6!HRC"/>ED]4.16B@ M5+AE0>QFP>]4$O61WG8M6,JLNT9L,MD9\B/8%U!6.Q3Y SV/6\[#;LZ[R96Z M:VIT!61%B5A7+T!(GOZ<@D!OB*9)@('0;2?5I<\]<3+=.!(>;V9[^1@6TBC."H&W/+WMC-WL:PKB-_ M8^%,]5&?30]EK=NZ*TLP.&81(:= M(N/-L8_DK1M[*S2P6VCL*EU/6; AN5T>8U-"X-!X1&.W&MC"X59G8/5&6-YZX;>R@RX1_2/7$2@%RNE"KO,^1ZNNJ><7?G$B^JM^2/W(I>5$?+BE1 MI=(&ZOL%Y_+U1+]XW__08OX_4$L#!!0 ( $M@85@:$:;.7P0 -\0 8 M >&PO=V]R:W-H965T&ULK5AK;Z,X%/TK%ENM6JDJF%=( M-XG49':UN])HHLEV][,+3F(5,&.;9#K:'S_7AI*0$)*J[8>"X=[C<_PX%V>T MY>)9KBE5Z'N6YG)LK94J[FU;QFN:$7G'"YK#FR47&5'0%"M;%H*2Q"1EJ>TZ M3FAGA.769&2>S<5DQ$N5LIS.!9)EEA'Q,J4IWXXM;+T^^,I6:Z4?V)-1059T M0=5C,1?0LAN4A&4TEXSG2-#EV'K ]S,.O9&PY MFA%-::PT!('+ALYHFFHDX/&M!K6:/G7B_OTK^A]&/(AY(I+.>/H?2]1Z;$46 M2NB2E*GZRK=_TEI0H/%BGDKS'VWK6,="<2D5S^ID8)"QO+J2[_5 ["7XIQ+< M.L&]-,&K$SPCM&)F9'TBBDQ&@F^1T-& IF_,V)AL4,-R/8T+)> M@SPUF?$\ M@4FA"8([R5.6$ 6-*4E)'E.TT, 273_FI$P8O+E!UW,B:*[65+&8I#?H"K$< M_;/FI21Y(D>V E8:VXYK!M.*@7N"P1!]Y@ GT>_ ).G(G_7G8[<'P(;A:,;$ M?1V3J=N+^#?)[Y"';Y'KN#YZ7'Q"UU=:IXWD&K3+^M)%M1_XH1 [!A@[U+@ ME@2OF5;/].2?ZBF%_6EF$'8Z2GCYI)9E"ILFYF4.$RIH3-F&/*44_8^NNB:M MP@\-OO:"S<1UG9&]V5=['./CJ(EI$?<;XGXO\;D AQ+J!<%B0O1;R0KP#'6K MF9=9F9K%F5!PK)@1XP,GZ%>]!'O4/- '=+"!H)0:^$&2F8(BG[ M 50E7ZHMS&E; ,FX4.Q'KX#@B)KO!=ZA@*XH6%S= L)&0-@KX ML;@&[6I%\ MQ6")R+>S#X]6!@[=(#I@WQ'E.^$)]H.&_:"7_4+O(13S?$-%56PTTRZ2@Z/! MPP<$^R):Y**&7-2_-E(BY:^_X-#Y[0$<-\N W^*4FTQ[L72!OY<%B>G8@OT@ MJ=A0:U)A=UG3!X&U9 \;V<-^V952J&;Q\RTJB$ ;DI8474/I*&6"8,M7WG>C M%U3CAUUC4G4TV)L2Y^YPVOIC6@JPLRN4SALTU(9-2K7FPFQUK:5Z>M-9!)VC MM10XU=\!^TLBVQKVBCU^NP8F97D!?WSLE>'0\_QA<,B_,](9N/Z)G8W='7_W M[?SAXU2"524L7YT5X1Y3P]XP"O:HU2(Z(ET/1R$^-0F[THS[:[/Q /2 %'QV MRU*\5')>U9Q3X!TOCD!/@G=AT_,>U@_V5A/[ M*+2V]%UEQV=*^\?Y6-U3OY&="6JKV)5WW%_?W^MDX7%5/.%D%T2V->R*/.ZO M\N]QLHZJ'KDXB :'],\'MMGOO@+PF<^ ]_I8=*F$\X&5!'OO")E1L3(G:XG, M<:$Z339/F]/[@SFSVKOPZNC_F8@5RR5*Z1)2G;L!]"ZJTW354+PP!](GKN!X M:V[7E"14Z !XO^1&PO=V]R:W-H965T&ULM5Q;<]NX&?TK򲸊 MB[CPYMJ>22QRFYUFDXDW[4.G#[0$69Q(I):D[&Q_?0&*)D3@(R3%:!YB2CHX MY'3]_@R M#3S9H$7\,^=/]<$QDJ;'CXGKBR2OB:SYO)$4F_CSR6[Y>2R9Q'7]T MI)/^G++AX?$S>]H:+XRYSVI^6Z[_E2^:U?4DFJ %7V:[=?.U?/H[[PSR)=^\ M7-?M_^BIPWH3--_53;GI&HLKV.3%_F_VHW/$00-,1QJ0K@'1&_@C#6C7@.H- MV$@#UC5@IY[![QKXIYXAZ!H$K>_WSFH]/-^",2J*E1N42?M[S*9"+4 MZ/6W(MLMR:%8U2L0E+H#VB;U];&D_%6[J?46>?75+K(2_9L4% MHO@M(AYAP/7,3F].(7->=O;TI\\^< ;M$X>V?'2$[RM_Y,6.UY=08/=-&=Q4 M=I:7]3:;\^N)Z UK7CWRRM&=C^5+=5\EZGFDBQQ298Z(AO$(>CC$%A338\#%(8]@W^0 +$7>UK& 2 6 M1%K"F2"9EE1+. @5! 1.N+ W-+0:^DM5UK487:N'O(",#(V3XH Q_;X"4&'L MQYJ9)HK%H<T0PV09AZ@6XPA"+$@PV.>X-CJ\%WV5JH$VFMB.UWWN3% V1K;#K; MHUK<9B:(Q7K8$A,D;L5(SV$ );KID4X3>TK1>?8LYH60:^O6WFPA-&->-U*^ M/7)0@WFFU9&O7>H,1.D&)0 *!V'H:W9#L)#Z(T'&!U(66PU_ORFK)O]OJU1E M?Y7-_]CE=2X_OJOXNA6V>=%DQ4-^OX:[L>X,@TN+#6>8(.+KKC Q5+]O4@ 4 MX1$O$.4%8O7"[V4C@E_N)7OQ@/B/K13XL+D$2,& 8MU@"$:PGO4 C 5$[^!3 M$(:C:,1P)4BQ56_=?.Y-SHMYN8&SG0(>]W5S39 8@HP(FRC*=)&5 J@P&+W' ME?C#S"J-/C\C2WI M?#,'PE!/.@#D83WG3!")J7&#F2BAV-E(SBD5B.TRL,VYMZC@H%# IB*C =,5 M(( *J#&,0.(N,JP$3CAFHQ* V*X DZPJ1 ]2HWN^+"O>!14UV8^1#A00:(02 MW6I ['FAK@@!5(P#HIMMHJ*8C2A"K"0AMFO"C[VASP,&:"X@S[S("+*)BCV] MKH2H *D H*)H1.9CI0>Q71#^QAO$GT.]K,H-FI>%&#IV,+W6]EPE+Z! MC"=6Y7GNJ.*4+7'*EKIB&P9'25EBE[+)(#D/HB-D[0(.'!@O4V#J-RL T;O: M!, 07[]5 1 +1_HEHM0LL:O97[)<:/E"&KTM:RELSW. J34-!QR%) "$8**7 MKE:BH?E*TQ*[ICVM6R:FR-0+ZQF 8?K "V#\0.^. -!A_S3\2Z%:#R$0X-CIWYSR\U'>F8TR0H?4!#(ZP/C0#*$K&^FDE,(E= M8!Z.5:"1OO'LE7GZ+3P#4)1@?5 &4#&.8]U.$R6&K6#$4*4O26 =D/H4$($6 MX_%F(V[[=F+),D*CU]D;L/XA5BU[]DCEDBUQRI:Z8AM&32EF8E?,'[(ZGZ/7 MHI?>U8LV=&W,(/GPX0C5O_%_P%#N6X6'_>J%?O/-0)2G:VP018P;&42-/)DA M2F,3N\:>Y>N=? 9UHK/L9&/.VK>*CC@+0IG.@E"FLT#4F+.41"?Q2WJ#D:%A MO#^P%@1G]PX C9F)N.:__CD*2#'',3B!ISDQ+_E/Q<'W I[W/0 M:&LU\ M6-1HP>=KX:F%J0).\N9M=S9-.^KS6R>A$A"E/[Q.CZ&&?E'%$;471W?[%7:[ MNIW#1,V*HWFVGN_6_6PG'^TL0<>7N;8;#8?[5/Q3Y\7 V%QH#^A M 6%1H$_'0C#F>2//+JBJ5NB1%2:[^WI>Y=OV9EQR^'&4G>/L>\YI#>*4+77% M-EP9J6H09I_:L*Y-94[G,)RR)4[94E=LPRBH(H?9ZQ+K"E5L/$+$#.LK2F80 MC'J>_MP:@#%,J%ZE # :TGBDPV.J3&'V,N6D=:K,:67BE"UQRI:Z8AM&0U4F MS%Y.G+):E0&3(3$SL@] >7KMFP H3$-CU1,$P\'85#8[6 9N+PC^D<_'IH7L M+<]..:=K@)RRI:[8AC%010NS+U2WCS=.5Z@[94NV;INI8H*%#D8::T%R=L*Y9$N5CE.VQ"E;ZHIM^(*4JG3\%U0ZOM-*QRE;XI0M=<4V MC(*J=/R?KW1\Z$4 K"_/ % L-#H! (4QUI=6IA#,#T;?QE-UCN^@SO&=UCE. MV1*G;*DKMF$T5)WCO[S.\8$W&8)8KW, %&6QD7S JQ,!]O3< \H<;[3,\569 MX]O+G$]97C2\R(HY6.K86Y^==4Y+':=LJ2NV81P.7LE]0:GCNWT9U^W;N&Y? MQ_U_E#J^*G7\GR]U?* ^"?7INQF B@*FSR0 *$)C_;W>%((%-!IY&\-7Y8[O MH-SQG98[3MD2IVRI*[9A-%2YX[^\W.DHAL]U];2:0:C >$,$0+%(+]I3"!7Z M8UI'%CW#=^"5U Z.KD9"^\F\?LH999MR)_=(D<=R2K;.-APMRPK=KK.Z1N_; M*FE__*&;"[M S_-C)LUARVY+%?ESO2J?"I3=EX]K,I%R_Q*+A)H+_*57 C0,K3@5<4YVNRW3^%R^Q3T:U;L MLNK/?@>2MI7<2^3MD9Q+7>"K1!;H3)VW?/IFAIMS/[3>JN8"2?'JP,\Z&5P_M'D:U(!/^WF]$T7_;[Y/TH=T=2/O^%E_. M,/!]@B]3Z/OW?GR9B'0#?@F\RV2_%=-47=)^(Z=/[=8#-5KSI;@\[R(476JU MWQMI_Z$IM^U>/O=ETY2;]G#%,Q%C"1"_+TOAONZ#/$&_0]7-_P!02P,$% M @ 2V!A6.L;IF6% P 7PL !@ !X;"]W;W)K^3HTU^./AAJUQB>;KYD'1S*]9$IZCT%P*4+@:>??A8-&W_L[A M3XX[?30&NY)'*7_8R:_)R ML0IAA;"P#H]<6IYAEEHC2^%EQ>G5("SP>[]D7 M;NVTED>F<2JSOWABTI'WBP<)KEB1F2]R]PFK]70M7RPS[9ZPJWP##^)"&YE7 M8,H@YZ)\LZ>J#D> L'T&$%6 Z#F@>P;0K@#MYX#.&4"G G2NC="M -UK(_0J M0,_5OBR6J_2,&38>*KD#9;V)S0[<=CDT%9@+*ZRE4?25$\Z,IU(D)!-,@$9: M9CQAAB9+0R_2C]$@5_#'!A6S0M!P^U6P(N'D

W#TR12XJ&QRR[@_=P S[H ME*QZZ!O*SL;PXRJ3:9E)=":3-GR61*9A3ADE#?CY9?R'"WB?JE*7)MJ79AI= M)/R-B1:TPW<0!5&G(9_9]?!VTW+^7_3%?XY^4HQVK9.VX^NU[S)*?APZC1OHJ=2ZN;)HQK=^^"7O!QPG]4'E.9^?R[/]PD* .]83&. M/+HR-*HM>N.2NTF,KTDV?TVRQ2N1G6Q(M]Z0[NO)=MJ]1H%-3B\4V.3T0H&- M3F<4V/.>&?IU!?K_]K/!A&D>']8.+)>%/=KMF(YOT"Q'H"8%G'[A'IA(JO&D M.L];L"_E2YIC9.GMF'4J=]0Z/,HM'M#(E.!BK8]H#O!],"CH"%3RL0QW]AM<4G>V-H[!N><*D3(RVL [34 = X6U##5)ZE#V3/QW1X?]>M1 M5#-1CM<2M6!)07^7!F$&1CIX7-^J\?&MNN*"B9BS#'1]O[::5.X?7>@YJK5K MO3214;U+\=?6NKN;N*;FF7T:#F9A@WU.W6"3_;XWF/>:[/W!W'6/_B&=LO7\ MS-2:4V.0X8I2"UI]4K4JV[ER8N3&M1^/TE SXX8I=<"HK -]7TDJ736Q >J> M>OP/4$L#!!0 ( $M@85@& S?B$ L $YO 8 >&PO=V]R:W-H965T M&ULO9U=DYLX&H7_"N6=VDVJMF,D@;&SW5W5'R9\U,ZDTI/= MBZF](#;=S<8V'J#3R;\?83O&2*]E2$YRT^T/Z7DE="S@/0C.G_/B8_F8II7U M>;E8E1>#QZI:OQX.R]ECNDS*5_DZ76//T/GE:5._RYR#==6C3P%F^*#=_K>==67M@ MS9[**E_N*LL6++/5]G_R>;9$_6T5=7O+J%QN=;NI+966K^B=U5Q7RVTS6JRYO M\M5<_D#2N25?E?DBFR>5?'-7R7_REU.55GYOW3TF1?J8+^9I4?[#FO[YE%5? MK!?O5\G3/).E7UIGUON[6^O%+R^M7ZQL9?W^F#^5R6I>G@\KV<8ZTG"V:\_- MMCW\2'M^SZMD052[-5>[621E^?>_L9']KRO9D^52_EHWK:::,.W,NC[)\D^P MMM7E0,X^6KT:&7P;^'2+0S/X:B['5$YVR<):)]G\3 [G+%EG]*A$9M:[M)*3 MNI23G..R6581A/B$'.1NHGPJOFP[VJX_E%+?ZYWO]C&0N[@R M+3ZE@\OMT%"J1L*F2)B_A;D;6+U?_G0I1H[MCB;N^?#3H4[U@FS,F3OVVN5" M9.LB)"P&P5IZ%'L]BIYZ[*+!+7-TN,T%MQW6WN2WQM!]U86$^7H'I+J4Y@=$ M+\=<4151QF,39]PN%NG%SMA8EFP7BXEBW'7=R;Y8:XR=_1@[FWKBR!B'JUD] MCY*YQ(GM;Y+,TG9?6?9$O=\F#?E'XSZX0?(AH9(6(2$Q2!82\2C MO8A'WR]BHM'79BP]H#.-)_6_*(5-G1 M(R/&(%A+BMY>BIY1,YNC@[,Z6S2W9OER+4_2DUJ(E) \_5A]XJA",H;K*R0D MS$?" B0L[+)A(V3$& 1K26Z\E]S8*+E?T\I*DZ(^&R$S-V-M:WAB/%)D9@S1 M5V9(F(^$!4A8B(1%748I!D5LR6RRE]G$*+/;[%,V3U=R+SM/9PMY+$CN42L\94IO#\UQU M^HF(<39@BUI@L=SQMR!JO@GVG6?';K-J//)DH-@?H/0E![0HHS6>48>': M@IB$NCH6T 9&4%J,HK65V;@6[!MLB]-J%,0\Q-WQ6)V'H,8%E.8SRKIP;55C M7;P+:G-XKB>$.@_IY>0\Y+"Q.@]1Y0SS4.-?L)]I8#"H@P&E3:$T'TH+H+00 M2HN@M!A%:\N]<3+83[ RS#%ZJQQJ>4!I/M--#T?8JN<10(.&4%H$I<4H6EN^ MC8?!?HR)<W@#VI)4%O,=M7=-]230-':XFI< M"8:S)9B>/F=\HOH2YH"]!05U)J"T $H+.VW="!HS1M':XFO\"?9]!@73<]^" MJZ?KM^8@O04']2B@M !*"Z&TJ--8Q:B8;<$U3@5#6!4G($>\"D8DP87'5#_- M#.^M5JA; :4%4%H(I47=!BM&!6U?VMPX%OR'.A9F>N]+FZ&.!93F\\Z.!5'R MR.7-4,<"2HM1M+8L&\>"PQT+WM&Q,$?N+3*H8\$[.19$*3U32&T.RK$@RI&. M!5GN>*:0-XX%!RZOH$<>N[Z"< 6X8..1>EX[)4J2/W2?0HXFML<=K@YMYZ41 MV+41V,41/\)HX(W1P+]S?00M(FJ!Q)AK1H,Y>._I VHT$'V0.E/72% ]U:?N639!+2I(90606DQBM96 M<^,[\!^T>.($]TC^A.O)?J[N'F_-Z-ZJA[H55 ?4O3O4K>"Z6\''$_48 .I6 MH&AM239N!<>Y%5S/ISL>5^TO<\#>@H*Z%5!: *6%G;9N!(T9HVAM\35N!3>[ M%6^?BMFCE-[F%AJS@_LUD.K3T^%G3)[=N*K^QMJD<29<;87AU-RVWLJ"VA)0 M6@BE15!:?'I4V]IJC EN]A1..6%5ZY0F@^E!5!:"*5%'4ZH,;,O5U' R+;DCWP1R@]]R! MO8L3]C9.NA$@]<$GQ"1$6A#4)(1L8 2EQ2A:6YF-.R*,Z>C3BVYH-3K$/.0X MZI*56W/PWCJ#^AL[VJEY2"]%S$/$YJCM8#45090[XRYSU37*5#EA"T\];*&T*I?E"=P ;H.7+'UJX^-0?IJS@HS8?2 B@MA-*B3F,5 MHV*V!=>X&8[9S>ADO]TXQ&7]0K^EK#E6;]U!%TU :0&4%D)I4;?!BE%!V\)K MC ^GE_'1UT8ST_N>6CO$T@O:1B-*TC8:A:1MM*[($-KG"$J+4;2VFAIOQ3%[ M*]]@HSG44@["1C-'[CVI06T2H@]$^IKJJ9:^)@L1-AI1CK31J'(&&\VIS8KV M)TU"VSEY??;5,G^JGRF5S/__5-;/F;K/"ZN0G]6RH!0V/'BRU3(M'C8/7ROE M(;_$U)$./MT_X.UZ\V0LY7.?O7Y#?7[E.*\CQR&_<>4WF^>1#9O0VR?-_3LI M'K)5:2W2>]D,^Y4G>UYL']ZV?5/EZ\TSMS[D594O-R\?TV2>%G4!^?U]GE=? MW]0!]H_0N_P+4$L#!!0 ( $M@85B8TKQ.@@< +0B 8 >&PO=V]R M:W-H965T&ULK5IM;^,V$OXK@EL4N\!F+9)Z31,#V6S;ZP$M M@J;;^\Q(=,RN++JDY&3OU]^04B1;))7XX"^)9 _'S[P^0TI73T)^51O&FN!Y M6]7J>K%IFMWE-2[22CI5FTK98X#)/EEO)Z ML;HRG]W)U95HFXK7[$X&JMUNJ?SVB57BZ7J!%B\?_,$?-XW^8+FZVM%'=L^: M+[L["7?+04O)MZQ67-2!9.OKQ0VZO(W, B/Q%V=/ZN ZT*8\"/%5W_Q:7B]" MC8A5K&BT"@K_]NR65976!#C^Z94NAM_4"P^O7[3_;(P'8QZH8K>B^@\OF\WU M(EL$)5O3MFK^$$__8KU!L=97B$J9O\%3+QLN@J)5C=CVBP'!EM?=?_K<.^)@ M >AQ+\#] CQ=$'D6D'X!,89VR(Q9GVE#5U=2/ 522X,V?6%\8U:#-;S68;QO M)'S+85VSNA5U"4%A90!72E2\I WB 8/1'/:5[]#1V)4UF"S,S^ZU8E9K5O/?I6C/+]:[@\- ML(52DB6#T!&P> 6SP+[J0?5!:;DJH!,Y'4+1=!'">KB0U #?JB$ACZ[T'<_ M$1\ NT 9PA/X#BFBT\L%/QG@)[.9=5/^#4VBJ]1&0&,%^ 6OF '\XG#]C;XO M=!KNI-ASJ++@X=O;\S Y9QZ>2=F1O]+!7^ELN#\S4%IPVG%(709T*V3#_VL^ M<%F>6D$C280FD;6%,,ER=V2S 6DVB_2^$<77"TU195"(+?"VZE"S9WW-7& S M"T>4XG "UA8B4&MNL/D -G^UO!]A: @ 'Z_WK$])%\;<42N$3#WJD,JQ&R,* M1ZX+7PG^FDD)_N0U>)3I:F9NM@KM@&;3T/J1*3VO'#0_I1CT3]T.*DX?>.5OA.BLC'PN;QT)IYBBLW'29I:56Y+9:DO#4?61K,DM[HI"M%JS@8R8GQ/'RIF9@PGSL3N MZCA)ISAMJ0L$0XAG/$(C8:)YQKR3;$=Y^4([G:M%LV&RKQLG9IL1 4T\I2*' M6)QZJ B-Q(GFF7-P[HY^TYX]0'Q0WD[8-C=>D"RV&I-##,5IY@$^DBB:9]&! MGR3;,^BC3H@.9HQQ;A6@BV9QY"$G/%(HGJ?0WUUCY+M6&5)][QPH=47VS*"_ MF*<&;)-JFA\D<;][M M\,C4>)ZI_X^8.6VPZ3B/TFE).Z0N4!@EGCZ$1^;&I^VANS'S#7L7?%;*/I>V M8R^,E(U/H&R()\2N^68:'/NGY3L]=0^;5ZX75(DB6-/ M,$<>QZ_P>&_&X7P[X#:Y2@NP1TX/@WKLCITTCD-K6^:22^+0P]YX9&\\S][' M4\A;YG1LLW.26*5C"_F@CNR-Y]E[J/V^W)UEWIWMS&?6*3W:9G64X7AJEBWE"]+(^_CUW?.K07)"=K \)F%N@79- _Y8 MD'$<(.%)37G-:UH7;SG8G!TS3C[9/).V8R^,4P.9GQJ.^P%[9K+@76]3^A ' M\LZ;=,2F?)Q/2\DAA)+8,^R0<2X@\W/!$9<48KO5NWD-V G4R>N83%/-(>>I M#W)P>CY+JJO/7-=Y7>J)GCL9H59TG QCAKG0L\8>:,]SQ$=< M)]U1%EG1<,F%H>^8@(P$3>8)^M:'-J!-\, >>5V; , (Q207[I2RV3@/DWRZ M%7&(PY+ZD'YF;S#/WK U,[VAGT3MVUK&]DW6(96$2>H9U,G(TR69YX;[= M[2KS )%6AH,KH5K)ANE.4P:D5?<8&BK S1&S<\#)''$F;<<>&3F>S'/\KP=' MSL.D*]FZ]3PP)39E1R2RNJTM%4<'<_#QL[J1UJ-Y6O>$SS2P6M0FA,.V\89(#KK#' N;< :'X&N"D*V8*WS,PYTI4Y@'(:CZR'F22QZM,E ME5IG>LN#Y_];)A_-:Q$J,*=@W3/SX=/AU8L;\\+!Y/-/Z/*V>X%B5-.]S_$; ME= U55"Q-:@,/Z:03]HNT#^"^[[D'R[.M\Q_#1JDH/E7& MAO/!)L;ZU7@3R:::+15-UZ$IJJDWUTJX[;G@^F@??!.KS>1'HPOSFJY5@L5;^L;C[MQ M)Z74E;)!.RN\6IT/YM-7E\]I/2_XNU;;T+L6Y,G2N8]T\V-Y/IB005D,:7;"KO!O&:4M)642/MQK[XL6-5T'9*%.(;"D6*3O" MK<1"KZU>Z4+:*.9%X1H;M5V+&V=TH54X&T<80&+&159VF93-[E'V!W'M;-P$ M\8,M57FX?PS#.^MGK?67LP<%_EG:D3B9#L5L,GO^@+R3+AHG+._D'GE'O!3_ MFB]#]*B>?Q]S.,E[?EP>==2K4,M"G0]J"K2_4X.+;[^9OIR\?L#:YYVUSQ^2 M_K_.W?]-F;B400=:>"#D_4:A*0M7U=+N:'UC95/JJ$I1.!2(#>DJ0$PIZ?%* M6VD++8T(D*& #3&()X-'K!X\%1MYI\12*2N0DEIZK-26#?$EUBLT8-R(V]%B M)-;**B^-V=%K59-0N7>O]AKB:Z/(AC_.YS<0#I2$M*B\KGKZM4WHV88NPG-M M454-0U,0T0G"&#&=//L;KWC7&$5WDRF%[9U:-R9M7SS[QXAC[$O88'9#$K83 MI1/610@M3%,BK,;0OJ3G4/?*N8BE,-JK7QI-[I/1E :CHOIZ"$?B1\N27:TM M284BUWB D@6*TQ*V*:A'91$KHJ0\P')+!AO85S3>4Z1E^0%(V"T,NE1DMU6% M"H%JD#R08B6U%W6_Q'(,KE*-??O-Z6SZW>O0LZ!V0:?01 $P:4A8BR=#6! M[ERYF()>IF21,I(:-UXICJE%KX@J09LB:/M"%B_#QQ<>(6/$_?IY)-L('9KW%8E><;&VZ=/H+VU+ MP <-Z#9GK63UJ<8 SU5*+U8-2F2GI!^)?[H&,7.-*041DEQVO9BBH!#N#XU- M%( [FVJUAS-?J4MR?U_9G=^E#AC.H6TJ+# [PCBZ.5XUN349;,B$N458#%J[ M=CX*R&D!X"_B";E)JF:3UP?+^-GT]=-]+&"&3-'(T9X#E8PXF0Q[20,<5:$5 MF+=0)K(X-OJ+MR?M6[ DY0FAR.J>0LXO=>>!RG[1(1"4.R35[)(E"7'[O?E( MF,B8%7HY(=,J^5$)%:(&T*F4!1G ,^L,KQNTMURM8$RN+8HFH7E%8,ZIPGJ5 M\VVT7&H#7% A=0YEV[C0D&(L):R"XZ3[WEU)$7G2%O1CW&R'Q#%#O;I3MDD8 M0,T!D:C'AH%ROX<'%,:0*T?B)\"]F%+AT?N?&/P1M*N^&6\Z,Q9?@'(J6MI[ M6+2E"H772Y*&=Z%' OI3LB4!G(2M2O.W"4EH*@A:1]7U*V;/6VHXM,O:T:8E M$8LA255WTC0<;FBF]E:KB4# MU"1N -^5GP*.-1#_;O1(.M>4WM06KQ61"9H.U[>P4G78!TBY;^LS2TQ$J.A MFVQ8DGH9G)5+L( &99.ZO="^:"I$@RP9'J DZF*[T<6&D*'B-QP:!@HT!\7J M0U.NNJ!/L@ME)&;P)906];$GY#OE7=5]BT@,!RHMX2S M16QXDB);^:+2XC4Z!BB!(O;5OI0#"Z; $0/@:C< MDG+/)?'D/=A\(4XG+YZ^ZLNF#*"?^/PKYGMHZ)[]M8<1W,;MFY#8UA5_P@"? M%:.!N.66)E9/\:(C$\U71)Z'NN^=M\#]'>KZ/U2^66N13RN?(Q/C0C[$ >.S M=\7>N]X0X(G&=O=@KGMV(-7KP $@G]JA4!SZ5G2^,E[2SODS "2 MJ>R1,^?1G%ZYDMN;"YJ*Y0J93=EZ.7DY1/$EVQX./CJJW3)XRO2$#TL,^S2? M4@,@PODX1*4YZE?.GGDE?X =L#3V,I6H,N86:-(CXMRF]=[T'8M4YPQLC$>- M/RRL?$C(&>CHITA-+.\)&*8!W)6W2]M&H:L MH6=A&T8^[G:!;*&KB]*OCBL?DT.D/F/K-VZ;OA1L@=#[I)7]K'4T+ZM31P[, M?=Q[#\HCF@1CT@0'-N?N<#:'=N7Y-%^371TE*C6C(:-Z]IL&H;(/>/]XS^_I MV'OK*YU,)'PJNT-C['N&>"D^.]#IE(P_. 0M%=)OV=05II_X'L. )^;T!1^( M9GWX:3\-)6:>NI35$0L]$$ONY=(!'<00!#LL*<#[(Q53Q2,.@:$4[9<3.F?Y M;!EE=N](_VBR=_[@E"]DZ>I4V/MP')H ^==R)]+1_B2S&W"$DGDB$PW9,3VA M(;:([5GR,3/VV-?2<>^K-T!NS=_VF63:F#Z =T^[GP_FZ:OY?GGZ[>%:>F0Q M"*-6V#H9??=B('SZGI]NHJOY&_K212 J7VY @I6G!7A/7]7:&U+0_:AR\5]0 M2P,$% @ 2V!A6"[[=D$,#P ^2H !@ !X;"]W;W)K>Z#>GECW5>_U;K-;G=5[5^=;-NV M>7YVYHNMWBD_L8VN\61MW4ZU^.DV9[YQ6I7\TJXZFT^G%V<[9>J3UR_YWD?W M^J7MVLK4^J/+?+?;*;=_JRM[\^ID=A)O?#*;;4LWSEZ_;-1&7^GV'\U'AU]G M/972['3MC:TSI]>O3M[,GK]=TGI>\$^C;WQRG9$D*VN_TH\/Y:N3*3&D*UVT M1$'AS[5^IZN*"(&-7P+-DWY+>C&]CM3_S+)#EI7R^IVMOIBRW;XZ>7J2E7JM MNJK]9&_^JH,\YT2OL)7G_[,;6;N\/,F*SK=V%UX&!SM3RU]U&_20O/!T>L\+ M\_#"G/F6C9C+]ZI5KU\Z>Y,Y6@UJ=,&B\MM@SM1DE*O6X:G!>^WK3_I:UYW. M/NG";FI#FGIYUH(P/3XK I&W0F1^#Y%GV8^V;K<^^Z$N=3E^_PP,]5S-(U=O MYP\2_)NJ)]EBEF?SZ7SY +U%+^6"Z2V^(>7:V5WV#KPZ> ,TW6ZS=ZQC[;)_ MO5EYOO_O8PH0^LOC]"ERGOM&%?K5"4+#:W>M3U[_Z0^SB^F+![A?]MPO'Z+^ MO3;ZU42R#Q05A76EJ@LMZGAS]0\H?;8\G3[+LZ-J\V.]^>SQ9]N8(KN87CS) MLQN-4.4=_D-7\O[-5M?T!._7?@U=%T0+OF[76;O560/ZQNLRVUA;^LP"-*!" M4VB?M3:S'5ZHC*Y;GV<&+./?SG9UBW=52\A (>Z9$@A[4VJG6#YLJ6\;/"0R M8$L# )B$OBVVJMY ,NS5;JW7=[>>9%\TXMOA'6;!I**>S"DMKK\$9 M(6"K:U9EI)$S0P (4V^P\:ZI- "M%>Y479)&3(V'R1MT^RJ0/U7^5)U>R;/L M\9_^\'0^G[ZX4NJ*+V7>%/-LM.LP\E5IA U!!\81R7?89O+>_.C[WV,?O,7-AYK+CH._?CA M6E5=O_K+5H.L8]H/O@FSOC>D$7#S43O.?"3;SZO*;)B<%ZX6X.J];K4#,(^$ M^4R.KB3O?'1D.UZ_Q/HW4$OQC<4PVO+R/VP ME.#U!;BZ@< N%^R1/;>(K-H.DK?J*^%(!1QQ^VCSR()PVR%MNFK/(>@< 1/) M#&;W %955?M>R8ANK*HTJ;Y7<@A5@4,(L#)5!19WE).K?9[]TD$QM $)HNJZ M(Y*CN"8TF5V^\&)$;ZM.G,QI3F>D2=K%0($0H(P>-: T[4P:)>QI%<*4N6;F M%.Q)ZM^J:SW<:51+RF5]Q*Q RNKU.!EG'S5FC<3=))7D/E8WSM5 M'G)VK4P%%>E#=7]+#6Q>6Y4B?)KMV'U#'KK1O;Y"S@Z CCJ\V=I:CS)B(XB3 M=4V)J/(_OCX0**![3IO=JG,^H 5V0-=UVMCBJVZY\&&[ 4NQ21WD86/8 M+BUS1HEO@!S+& ]9#TLPXHN6]D[*@J15QB3[,XE*GIQN)2ZD =.0G\Q#R:[L MZ0WQ' !,X'D+$G0O=8-0>?@T\B7B*<:43V%1MFTD^>F2HVX%.-8!CJ"SIFNS M'8H#R4"TH>=FDA*3.+-07&G? LJAH31_]_C%!DC$!507(]@0AE&%DO6$8*W7 M)M5@S[/L2%S0:PG[!-NM;6&84 5CVV#LL4?$I%&2"S2I]_K4>RT717VI3LB% M_ARP"0SO4TR[=5I@'-ZH);4@=JC=R]"L(<'L^WZ-E^%B,U%&3&L+)YT0NV!-54]IB-GL'5JD6E?1;GVZS$*BL+"J=64>3H;M[JRIR0FHK4?IC M0ZC!U-?6%"RO[2GLU!Y\K@E7F7+;+X_.YY))1A#3Z[A.7M6UY&)""1*UJT-J M">)$/*;X8KT5D<_**%8TE;R/2PU:9-RP]1.2KSU2/D/,DB*WI"L42Z9D[PI" M9UME)5PWV%].L5/O!=8A1?:N+3CS^2RCZ5&)3[ [?A\/M MY2VV%BE(D#96R+Y/7@?<]!L)^")9!K>3 F0-,E%QA>27PYG-Y+"ID"G#@$?C MLB,8B#K \IJ?LR_=;6;RH9N)7G9/)1-M/DJC'\CWJ5>A]"8P M_YR@ E)60^.K8+XDE-BJQJ= ,4JCR'O HI:SV UY%2T,"7#L"F2PH?XD5A.: MG.MXLC8P.\G>E*61\I$,=2-&5DTC3:[ &@$U#,3%2\EY%F3U;6ATT=T?$7XH MFHVU451EM9+V^A7NRDZ_T MWE*9%-X.\X41!W#6P>$3/J#]M;D--6<,S:[&@JB=H84\(A/JB4T_GAIZ[5!N M$AX=1MIGM+*19*(:!V/?@K!#!,O'GDO('ZHZ )5KAZ+NSN:4EY+_0 M9^=BI'V[8A^/[+I9);MX 6AE(Q&81CC%B%I+6B/PPP)><3XB@WX!O:J MD+[RT!>D# S/'C,QE.)0I7]RUR4>98O+?':^Q,5RD<_0:7S2N] ?WS,F!1*- MO6&8>U+I%D\>V%9#3J7)2&SJU-#G4C FQ=5X@,+V-U+#=4@7[+>A:))\10_JS8YC\@PMKBT"P?SHJ$ M1LF#C#X6:+"AU;JEX=Q[XWL]E4-+FPI0)DO\N,4]*"UB)D"P;+3=.-5L]WF8 M^8;14KCNYT6>S@I$!CYOR8.Q\EA"2N8MM&LI6^U3U.4.4_EMMJ[LC12W"J5* M$0Y$('"- "UBNWE\LM\#<\(S(XX/1W7^.=ZC*4]ZEI_]1,EC=(='/ 3CR=4! MPR?\K98'Z>GR_HS?EEOIQ?XN(2B8(OGLZP]'+H M/]\A\1^<:1:J,:VJ^%!3!A=HCGD,6\'PH02QJS8X:9(GPC% G.ZM1RAU$ _B MPI8[JIZ%[]^*.QI^_0X<@@@-+*D6Y#?OYU .B'#7=E7).,. PP0(BLP8$O&T M'-!(B&/58P(W?:NHXLKI8$CF.W:')$$-X).'U2MR]GN"[757K0T-SX:=;4V% MUSK56+:C;Y2H* ZX,9PPHPSB>>7SC(_%+UZ$&MUS[5H1-,HPI^*Y2;H/%Y$\ M2X-;FH;18:@#CF6>,&T)M:&DN?WDR,YQTD^;Z'K+J(;T@8*]D)%D2EDJ*]+" M2M-Q$E=6DI:YQGYL79CDHQKHPJPD/']R+W"&ZFS=$>0R-]1'IWTOD[SKYH.S"GI7(\7[^%4#'S/$,I!3_8ZFJDZ31_( MC9R'BIH_C*/&Q/Q/4ZW/?"AQG.7V^"G!N"\0[WDTGUSTO0K283..-,<>H MB\0?^N\I[GHJ%3&/II/EF.1L,N]O_.8SCM^=[*+_FF?<89W(-%9Z5?=54^MZ MTA_Z_(J6_*K%G_ZT\.&UL MI91+;]- $,>_RL@@3E7\2%I*2"PE+14@%:*6QP%Q6-N3V.H^W-UUW'Q[9M>. M"2C- 2[V/F9^\Y_=G9FU2C^8$M'"D^#2S(/2VGH:AB8O43 S4C5*VEDK+9BE MJ=Z$IM;("N\D>)A$T44H6"6#=.;75CJ=J<;R2N)*@VF$8'JW1*[:>1 '^X6[ M:E-:MQ"FLYIM\![MUWJE:18.E*(2*$VE)&A#C>TV]\[I1+Q@Q>*?Z] M*FPY#RX#*'#-&F[O5/L>^WS.'2]7W/@OM)WM. D@;XQ5HG=P MX' 9/>.0] Z)U]T%\BJOF67I3*L6M+,FFAOX5+TWB:NDNY1[JVFW(C^;7F/. MF6;^A-0:KJMM5: L8,5V+.,X"RT%<:9AW@.7'3!Y!O@&;I6TI8%WLL#B3_^0 MQ T*D[W"97(2^)')$8SC,TBB9'*"-QXR'GO>^+F,^Q0-_%ADQFIZ%S^/I=E1 M)LR[9OXQ&<0PU M 4U)UF[)\:XX,P86P,BJ&R\A5T*0,'KL^<,(OI3X%ZUE!NI>*=G=8*8I[@[B MB^Y5@%5'N3YPJ7B!I)KB4P**DF$6K(O!E?&RLL;0<9''(3OIT*-CMQD>U)M MO?%=Q5 :C;1=Z0VK0^-:=/7ZV[SK>K=,;RII@..:7*/1Z_, =-=)NHE5M:_> M3%GJ!7Y84O-%[0QH?ZV4W4]<@*&=I[\ 4$L#!!0 ( $M@85BZ%^@370D M (LA 9 >&PO=V]R:W-H965T/=#2M0 MT[)X7A^_7%Z/)<__:YNCP7ME_2>W3+UK?Q&!W; L0T7@Q@^K<]2:1$'W>Z/] M@XX=8KFCDMV([#>>JO7%:#$B*5O1.E-?Q.;/S,8S17V)R*3^)!LS-_)')*FE M$KD5!@]R7IB1/EH<'('%/H'0"H3:;V-(>_F.*GIY7HD-J7 V:,,O.E0M#<[Q M A?E5E5PEX.Z)FDK+@ SX1Q;A ,HP6PUH&V.BC\ M?[$?G;0B&:-2$?:CIAEIX=TVWB&@L>T 32@7T*]\ER ] MK,&O'S7'*!+M%(=O:@V1KRF D8/+O 1R.=S$^>HGD2RI*Z[T?$%JR;19Y$SH MGP&=3[2(O@[.2,[46J1-,+7"E=H-=DP^B&$*(I+)$#P)S9(ZLVQTL:VECN0Y ME\;D>I]J5SVLSYWE%;I>P*;=2E"E*GY7*XI9"%@P"K!J4]NIC#K0I8W>LD G M8%S!#DR*.K\#NS#=4@IV<:F O6 ^ /TK.&[-'9 KK.-?F:92+2+[($5V4]R MQ]2&L:*E.V;!-F=A)?80SD&TR3GVJ%BA#"]:"9,4L%[L,6%@W*2OLY8?5VV^ M6*.V7!&G4#4I!%P"7-$8:. B-8OIQMS#'&K7MG(NW=6J9:-O!^P^$ [2NUZ, MR3N>]1%W,K-G4/*<0^4#^"&Z?73U-%BEA1+MN&B#0IK^#JT'5@-![K$ M@"U9:\+6VV7_3])*@'HP@Q;+C!;2VV$#;+VFYEO/]J=ONA]%%X!N51MB/)W3 M?'5B*<72[;3^NG;61[>A$''>5#>L^,]NJRQ]V=!6;+1R%VMY]M M@V"@I+C#\A*(A(DYG.M_(+K7!Z&[MV+N0)L*D"R$L@C\41!#"8%E2U/>5'

[T@+/K6NJT:^'248O.1TP(J'%:'EAR_U^D]_D#H2@$M M0*V$9J6M"0AYH]W&N@5%"O8#H+3MATQ;81 !S0,%V*66=FTP;7JS7NM= M4M228G-G2S>FD=,DY**&6OSF=*B/<)6=0A058[U'-0(/6C4\D;?/6N2O\ 3Q MS)0&G :X[>MW0XQ]1?QQ$+A#%#7#MQ[),Z$7'3;SP'R\AL_9FV;X*A3L^JM* MY)H"O*AQ201$2TV2:1.A.X1VF+O"8-+*(W,[< 3@/IUX"UF,<0>'!AZA//13HB?,V^Q M1 ?CY?28T,$XQ+<=>]_$PIO[L35A"/B"=@'S87SU,U>IZJ MT?^&JF\U-<,WSA $[7 07_VE.X1!0]L#%NU5NT#N-YTXKP9XNV6I39"]O)T& M4\W;P/(V"I_B[>MXC@B$<_@ V7B*%PC* 3"$WG*)21',#7=GFF;1%,T:9P_8C0Z$ MPM0I6V-LK7X6BK"#HI./8RO]'!18$H^#8ND%P,P(X9^U6]1!&XE8+&?3QMD#*O^!4)A*8+/8EL+G MH5AVO+ * (I%;,6?XP56G>.PF'O18D8BR!1_UA7N(=GKO27G*S369LY_6&^N M=]'LDM_F[Q?F/"= 5SS\.#.QFX?_1O;//+#D#.'3I;S/X,!R. B \ MG@G0X?6\_*?SC[R],D^=W7$AZJI$;5JDYIQ(:?;@HVZ!\.4&/C:<51L\V,-# M"MW8F:X.CZ;J*EE3>-B&4ALO L^'?A0USK#B>O-@/HR)AX=B)=-O?K.?GA99 MO=RMZ&FWP*O8B^.I%\8+K3 "CQ;Z6>\ K\;D-T>Y. M695PJ5]*)8HA6TIXMW5>,*GVL2LTY>]/7YK3ZSI01[I^ ;)/*.8NF99GQ M1)_6-L?25]KR]B)Z"->:0AL-&&'G#7-FWC0,O1B6K?'0[:81-#JD*QK2-?5F M\[FW@$YL0-=XZ-WKQ'E!GK/J7O\9 +X( &#-N_+VU_8O#:[,"_9NNODSA4^T MNN=@,F,K$/7'\^G('"4U%TJ4^G7[G5!*Y/KKFM&453@![J^$4,T%&FC__N+R MWU!+ P04 " !+8&%85*B9XS,- !9(P &0 'AL+W=O&V-<&KY=G1Y].K=":WG!?_1:NU[GP59LK#VCKY9H_9(VMC_W$C_@6V'+0OIU97-/^NT6KT=G8]$JI:R MSJM?[/I?*MHS)WF)S3W_7ZS#VOG)2"2UKVP1-T.#0IOPKWR(?NAM.)\^L6$6 M-\Q8[W 0:_F]K.3%&V?7PM%J2*,/;"KOAG+:4%!N*X>W&ONJB\OD]UI[31[R M;PXK2*3GATG<_2[LGCVQ^Z7X:$VU\N*]254ZW'\(35IU9HTZ[V;/"OQ1FHDX M/AJ+V71V\HR\X]:\8Y9W_(2\=[7'$^_%E2T6VLB0"285E]XCXWO6B_]>+GSE MD"7_V^6'<,S)[F.HD?S%& MS^[>K5M?I/BL4!R)K4TE4.5BT?@LZ7SF!3W,1+6BM9W3"E6M;"KLLI% B^#? M,7]W*;[FFS%OTZG"ZZ66BQPRR/T^B'(JY9#D>*5SR%6>WM<%/7<*I4^2\(6J M+Q5U2>=* \@ .%3??G,^.SI[[87RE4:58C.T26KG%-DCM1/W,J]9)KW9MB#% MEHGX%4^C 'I8.IN0![1)\CJEO4;F&X\/006&Y9NV0%23A()TK8>^7X=:3I8F#5:9G[I6IR?O7SVH"A*U68JDA1B'I[BF\CGT*^7^0T!@.&%=[M:SSL&HB M+L.2D".]+*M4LC(VM]F&#.B;EUA?T\ ]*@ M9Y1 ?J1X&!^T"WF6!R-3M"]-$$M]N%GFFUPJE=,VY:_KE4Y6H GX'\MEL5". MO)V&3$9-H>UR08.?N(A1C?V$* V*J7;[('43BX[%:N*3M[E.V1/("FD2#95] MA0<%%^[2V>()W'B_7"KF%>)6E5B_@"_FW+V. ^JA[Y32; 0$*1=B@;06MY5- M[L1- P.7F5-\F-@C/)M-7W^0#B'8L8+?'[W>#UD,_+B'(OGF8*7R5,1=E]?B M)UT@O0F'FS5(8GY$L,XJ@;7V,0+J\/3$CJ%(P9>J*+JD1Z*I=) MXP%TD0!K;39E#B5%_8Q $#*6VOFJOU<@+VM.-@/"D 5L/U[/N+R^KN)^+Q2 MK0EI4.5# ';2Y?)ZW"T6"1@[]4;)ICDSQK]-67@L'[.#86>M>7<)5QC2 6U! MICHK@M,0I>0NWP@\T026'F4*C-X(1%<32\]#*:YT&: -96Y]TT=0,Y)A'1%' M+.[4RN:4:C)QUH<&&9.2I4S$.ZS3!AX;K ML!5N4";9,$&*GJ.)"-M3E7"611N]I(:"II]H6_O.CR1U$@."V'PW!D+I/# N M!J3=OX'A2*,!CFQ1- M!OD@6)G OD MUL/(/8XWYU.70&Q<8G 4%RF> MU"DS+$80O&Y%4!>C&;3Z88OO(<&\?PV^(W@#Z9FBA7L??0I@X0 M01^:YV^8V[AUA&@T2C8M;-!'0H=[?.;1Z=EX.IVR!U_,IR?\):U=0P&K%1P1 M\IT0K ASF*(Y3&"*J@GTFD$JJ!$;)?;WNF?T;\/PZ'1'[8^\!GUXZD>U>S*N M=FIH$+*8+WS8D-)Q[/MXBPP#LO6)( D8 MY/O'=@ 07F7\+^>:9S/@A!IMF7*=#(E/B>_+P8)?V6';+IB=CT^.C]O=?6_LG1Z=[0/C M3'9 ]3]\-QN?3<_WH]!=/GPA]H['Q[/YOOBYG9FZ8U^(V7Q\-#W?I7;3,!H[ M98,OH286BBNZ&PV0EH(X+%WV'-"H38,(LJX=X9RBJS#:U0RD<#6@QQ8Z@>[+ MK?S8GNP"#8[GAIF'.&_',W^L<28<24DR>P($&UB*CL"!6SSQ%D1H8:7#I[9! M7%E73H@T?405:G3A.&)I8RSVHHP@9] SD#9TY1:I#7K-LEJ3TQINV)[2T,,Q ME=" 'K98+Z.V79')#ND#-P^%,K!?[)&0[>.>8RU M%4"B"5RYVG@,I?EN9U!"U<1X,EEP4+M>6:I"AN$?2(S#V0EUC&:$W=62]''4'J6VJ1/<2%:'3&@J'B@/\: M+"F.D"WE;#FRQ;!:(/D926MS!RYJ1 .0R-]"24[WH&]J&8!78$&D8"'+.$D3 M*V"=9>? 1@JF4E*(I QRAN]U' ^#*H[1,(1]%-HF85 MJ"<*%VT!;0QJ!W6#GE2-BT"NH&##A6V+L)4@Q% M5^,%'\7DAZ9/:F85LJMS&>]>UJ0'>X5 @.J&L)XF&L(1[=(#NI#98!O-980= MS?[0NKKTB>7'F$Y)3X3&FJ7.ZDAU"C#MT*6ZE'A4NS'L/%_1H!5.Z3:TU0VP MZY@K^@XP-88?5#STT*I!,T-$C]9)9E\@':'7VH9 \9P%^E01D91T-=0Q5B;J M[>W.5EEZ5Y=#;ZC,M3W[<1:!$W9MXRLY=>#.7$1#-7(E4\HB958229FV:O3N M'SIF#:<2#8'&GSCW&JK/E+SUA20?E#",G_4,#)X(G.?ISP/L,36\NM.@*#[M,IF*J;-^./N+& MIY-YRR[ID@ULZ*MH.?H0IEZ:O!F/"@G1=8&. ZTS\F^\7\7).*NE_J';C"[; M91_CQO?2&417W,@-R1_MQQHD]Q'?4/%]&=[[<(?MX5Z_E$E[FQBU'MP1QHM# M<%>7<2\GGB$C^R>NU0D/S"'HV&K$#T?H>S]86@K$XDTQ;MZ8D"^6B^DN^H'S?H MP?=3\=)3^G8941S^,X/DMLD7()>7-_OM4-V[/WYL$3%@F7M,*UTZQLXV/8I]W:G=:%%"A.]4\?M](E M'_UU2C>A[&7;:_J"Y@_Z,^;;HR=#TH)JF(R:!/(1"WI_!8QG!5QMKUUZE]<= M'=_S^T-C(-W5E%;1]KI@E]"U=FN[;AGKUC2.9H^DF_Z%NX'I./PWGW97!$?G MIW_EBH"7A6MKZC]AV,@WS]P<=*C_YR\/Z"^-W2W!\>3L[[HD^/H+@K_C4F!K MUGGF0N#?_%>8*/WEM!OEC\>G9]/!)-^;<(_P:O[T2#\;SP]GSM H8Q_U$$P@H(/OWQHG[:_ M&[D,/Y?HEH.*61\M MP/NE!7>-7^B ]M&PO=V]R:W-H965TJ74]KO-_PFQ<;VGAE9LM+Z.[U\ MSLX&8U)(E")UQ('C[UYV;$+]6E];]L$_;.9@.6-M;IJB6&!I54X9\_M'[H M$2S&!PB2EB#Q>@=!7LL/W/'S4Z,WS-!N<*,';ZJGAG)245"6SN"K!)T[_P"? M6"==8X0]'3EPI/51VE)?!NKD /4)N];*%9;]JC*1[=./H$FG3K)5YS)YD>'? MN!JR21RQ9)Q,7^ WZ'Z3@^;9%!I*U8B,?:N%X90+EG&5,7RKM>4E^V1T M4UOVCXN5=09I\L_G'!'D3)^70Z7SWM8\%6<#U(85YEX,SG_^*9Z/?WG!BFEG MQ?0E[O\U2*^G9H<<\DVQI:B=J%;"L'CA S")F"L$N])5S=4CR[R_0*9S)IUE M\7C\%R9^--(],JF< 'N'!_]-JH 75'A.I(72I5X_,NMXGDNU9KDT5<3N;JZ9 MT^R:0XL".^^6$?NLTF&$^+#/=ZPV.A>6ZA]1(J?*%"80+0-[QFML>) 0(\I' M=I0,8U1(69),J)%R6T2DZZ:0:<&.)N-Q-!Z/F;2L$&5&6X1-$8DANX.5O-*- MR&JFG)987T,=*2&4 YD@!=C"AA+9:PB9R%+'B7EMKO.XJWYJO4"* JI%-LL#=.$.VI+XG)G%54T'A1R!IC M@=-D(&U#:2C+TU9\L"R#ZSTAV0#.90,8(*$PO^8R8^(!W<.*4' :; Q S1B( M9]Q:X?H?V@6I6@M@LB*3\&1U*4E6QBYYR54JV-)W+&Y).X!&0XIN<<,'% H5 M_#YX=B7@3G('7(Q0@D]$,2/E4O]RP+U\C:Z&I(8^5K2Q@PYYHS)+0I!*?:\( MQ50]N'PEP14@B'U$5(.^K7Y?M1,^0P[P^"@5 M=)/P^X[;T+MW X_!O?=2-Q9!1XUIXT3'F.*-.@)P$C^XA!S0.FG(/C3&@Q$V M6@&G9@S ')#FN:($P12]>R#OH2&#H5!X41XC-&&:D>NH:0+R 2J^#AJH] N M82^*! "RM8"$/ _G/630UN^#A8)2_C\QHY1\1:4AA0VH[17R?LD$3,& %# 0 MD"@K:@R&_$B8#)R4,(GJG2&.4F=!= %:GWHH$>/A8.O.GJ>EM93 :1>PM!^P MO N8W85_5P:$11)CS;)968 QV0&%VN_;D#PMI(.E$\*S;2"^[>Q@/[@C\ J& M(! \^P-S9-7*S03PGQ.<<4/X8T.I]4H+*APJVQ7:;(RY@!H).>\HGB_:KA)Z M1&%$B!M8B]!++'"1*OH)2D]\QA U3*QWXXG^CO.Q9I#.V-<-S'&(.W3*4+ MS6=_S\&4(S SQ<-R?&6KDA>G2HPMA4"[76X &[H=SQ5[P^S-/OQ?^NN?H M0ZXET$7DWT,4^; _5[.OY,R]%2I4[\7>TVU;-D?LYY\629S\@J=)-%M,\3^- M3B8)_M'KD]D"U;U?:5N")#I)YB ZF9VPD^ADFK [[:@!!#UA>M?0^U)FQV/\ M'L<+DA MIC'[1.T(?NBWD$.6]SGMGI(H3J:]ELW&&OLVQ?C%#$EO.NV@M_,IV]) MT"S8'I.7)XC&_Y(QSXQ(SZ7SZ_*I7W<72/"23<91+VU\D_(BZ('F^7M>>@CK M>W4^.69WAF?=Q$#8DPKLQ101L;(;8+H)(M/-RN5-N2/H91D"$.K=P"M2D)6;OR%!(X(LJ[](- Q(N%?[KZ@DY@F_5YJGGG?&X[< MH.VA@=&D*,E"@R'L H,%)D:"UX_?/D&IW&UHV/-'9VB&16C&X]KH,QO MZ$V[G<\/J=QHH@%,497+(!4\HK M:>AT,\8QY='VBM'/MG1R:4\V75@"SF>[&/MV?+L,#'UZ_Y\-]Z1OEUXH;M3> MOK>XOQ4CP2FO)6'Y;AP8LM]I\$CU6LE_4<+Z4ROAY-K#]S/=AC MX0+D;<*$0FE!]T^,Y(=F[:Y6_L1P@2/@?M-+U[,R(B^[R?'YXTKK&Z)?7EUW0_ES=T.CWF4>JF[MKRPM\Q@:[O6Z MU>Y6]") MT 9\SS7.*NT+">CNBL__#5!+ P04 " !+8&%8])PDA$@% !!#@ &0 M 'AL+W=OY(2;$])U@[#-@7FZ3N'M[=\_#M M:JO-O#4DC5FU_YL5LSO]*U*Z3"6P.V+DMA=DLL]/:ZE_3:@8]RDSL>&,RO*K'! M.W2?JUM#O4&'DLD2E95:@<'U=6^17"[';.\-?I.XM7MMX$Q66M]SYWUVW8LY M("PP=8P@Z.\!;[ H&(C"^-I@]KHIV7&_W:+_Z'.G7%;"XHTNOLC,Y=>]60\R M7(NZFSKL.@F%K0N.&3]5[4W!2,2EWSM!727YN?N=T>G^VI+PR MN-$E<6T%E^MJX B=;09I@[0,2,-GD"[@@U8NM_"#RC []!]05%UHPS:TY?!% MP)^%ZL,HB6 8#\;_1 HB;W'@19U2.H?(IKHVL-3"9-QY)PVM.VTL MB"T-T70?[SY;$3-2GF$+^E#:@JB%_0E<_<&UF@7?%T *2"!ZEK6^RZ CR7>Y^++[), M,G#4^/]]FJ8ZE#3GG]):8ZUR[4X%$W"]A)^(5T@U59S M0=H%QS\C6(3D?1B87<*O/BP+232>3:(XCJDU22Y\RQ-\,8G&20)O7LV&R? M M?-*.U",.4-AE%GNS)V>N]EI( P^BJ#T5*-*\+8,'H$2 ^)>T%1-(PVA+G,>& MVDJU\>-+(NO^["[-=<$R"3"5D2D;E#K#PI?1G9ZVX_V;YMP#*M'E.@LB(GK6 M*%U-5!CR)/ZH]00:_'-)O%-X5"V"%WWX0M:8ZD8Y7,5T?^6EFH1LL/ 0I*Q] MU02%>#HH2E%51C_ZR4B,KY/^E,Z1HO!E)3,:&'4#9+[-99I'\#H.7V>>G2UI M1ZJTJ#D:J4B[E@4H5R,3T*^O]&"UK3Y^SCX..&8J&A29\V.3(D0B>U^3&170F9G5.A45)+( M[\.[[\QDV^[%,)Q&P\G(?TK&<32CHKU\H!V6P??HVLE1^&)S*&VE&>) @F$7 M"L*5=&I(NE&G3QM>*]36/_M.IB!001'3[?Z>GA-A!CJZ#Z++_!;((CY>#;$7 MCY?Z9.8E>4S^PM?G.(((:L6:V"CYY[$6CM=FK9ASS Y/V6:-MN?47F"\[,9/ M.^8Q#6&!;M%K+G4\0Q=)D)F@KZP_0A+4IW=.JS;*).F?)[!#07> 4[?$P=ZU MOD2S\8\72SG5RH4;?C?:O8\6X5GP9!X>5Q^$V1#O4.":7./^^:0')CQ80L?I MRC\25MK1D\,WB#[1T91&A2(6DXGB^OO>2E"W'RPS: MA\02EW//W8[(JZ4V#[8 <.RYE,I>=PKGJHM^WZ8%E-SV= 4*9W)M2N[PU2SZ MMC+ ,[^IE/UD,)CT2RY49W;EQ^[,[$K73@H%=X;9NBRY6=V"U,OKSK#3#'P2 MB\+10']V5?$%W(/[4MT9?.NO43)1@K)"*V8@O^[<#"]NQ[3>+_@J8&E;SXP\ MF6O]0"\?LNO.@ B!A-01 L>?)W@#4A(0TGB,F)VU2=K8?F[0WWO?T92\ENZ37OX.T9]3PDNUM/X_6X:UHTF'I;5UNHR;D4$I5/CE MSS$.K0W3P8$-2=R0>-[!D&?YECL^NS)ZR0RM1C1Z\*[ZW4A.*$K*O3,X*W"? MF[WGPK"O7-; =,[>"\55*KAD'Y1UIL;H.WO5=VB(EO?3"'H;0),#H.?LHU:N ML.R=RB#;WM]'@FN62;_1CK]\*FTIM M:P.6_7TS1Z^Q4/[9YW. '.^'I.:YL!5/X;J#W6'!/$%G]OJ7X61P>83P>$UX M? S]OZ;I*.A^RC]AB7T#5@*GF#%=&R;4$U@7IJA#,D;MQG)">O)(A0##35JL M6+8.-\L-+X%ZEKF".U89H8UPXCLF@JN,&:X>+$X!D_ $DMB@;#R 7YFBY3DQ MYG,AA5NQFLP*%7D)M6#<6G !2HJP3!"T:Q'KL1NFZG(.AN!SS+PVN"3/43.. M6.NBI536&9DA@FY5^6AYDTR;M<&5-R^01EIP*BPPPCJ1VA[[7 C;BDO;>X(4 MJJIQFU!.X[L!8'.C>19B@10MR[5$1;47[/4OTR297+(_?9B&]#I,+O^JM<.0 M>/:T&-.4889$BKD4K5R*1AFCOTAM&S Y"&A%*20WQ^$NV>,1)H=1XO90&QS+ M16D7H2]]5$N=@3S),*)/B$[IY*3S?O.R$&G!N)2(OE B1UO*-3&ES>WA4*(9 MX5#RS2;9$GXWN\(V1QLG<^!>B3*HM"416 I7X#2ZA\' 1:4-N:#V+L,7D\0# MK(VYW"@HKDM?NL2KRNAG@4<3*BD2&6[,BBS&0L&_&#M;:.-.R"13W'GA]D5@ MH4V_QSYZEWSEWT-:FY")&-/6I-U,U@X3]IVL1@'::%>(>.P?>$8-5 LXP2\L MG@J\)RB0+20*7AP5>'!X;F(>NMTZ]J5WWVMG+(.Y:P%T21:#4VU45(&"(X%M M'=K3V#_G7_+2O[)6(A45IG2ND6^//H\A 3M<:DLXP>!)JHW1TA ,= M';[HACSQ)8T-(OQ7",L(#VL;-1]WPX/4 J3FYGY/\'8CKLCDZ3 S;CY,% G'5'@]U A-$# M@9AT)Z-D-Q!AN G$<'#:3:;G!U@UL_L.Y/W6':H$L_ W191472L7KE/KT?5E M]";G*W\CFVN']SC\6>*$&0PMP M/M>8F_A"!M97]-F_4$L#!!0 ( $M@85@GFSY:;@, ,4' 9 >&PO M=V]R:W-H965TS M:[N']'_B+%3+'?,X961WP3WS2(Y3X#CAG72WYC]GWB(9Q;P M:B-=_(=]KUN2SCD861P7KQ@4!T,JLB[=Q19OF>>+>?6 M[,$&;4(+BQAJM"9R0H=+N?66I(+L_/+6FWH'-]AVMFXH.C?//<$&85X?(-8] M1/4"Q 5\--HW#CYHCOQG^YSH#)RJ(Z=U=1+P;Z8SF)0I5$4U/8$W&6*<1+S) M"W@?OG?"/\(_JSOG+97!O\_%V$-,GX<(K7'I6E;C(J':=VCO,5F^>56>%>]. M$)P.!*>GT'_O$OXG!'S2L.JV5$%07H14%E4*IK.P-LQR,!MX+RRUAK$.6.<; M8\5_R,$W2+UV1 EJ70O> *,&XER$3F(2JJR@8I0R])5K&&4D: ;T*\F<@Q74 M1JD@#+0R^(;0L'NDPN5(4)R*7$K:[3 X=&.7CDZLZ;8-A,%#.G9'H^E)RFAC M\9X)RL!V$%M1H\O@,['W0@4)\6'Z<1Q+],F14#D%90;LVN@^,)?&\,>8I\** M@2BF:7;1E/)O7IU7Y=MWQ- 13Q>.CM924 7R4(/!I&:N@0U-0]"(G%A_H;ZQ MY%JX,=U6,IW"_I"Y)P&'*BV*(OQ&N7^>H =&)RX286UKS8.@08;R$5Z79]GT M>(?DIA%U0YXX&;PNBZP:KECWWC3QD%]9SR-_;ALZ)U%&Q1(OC'&'S?!P?!R+W\ M4$L#!!0 ( $M@85B5*3\UE ( @& 9 >&PO=V]R:W-H965T\Y.FW525VTOL<^^^^X[7^X;K8V]<24BP5VEM!M')5%]%L#*JQ0JOD'[5"\M6W*'DLD+MI-%@L1A'T_[9;.C] M@\-OB6NWLP=?R=*8&V^0?!RBW-4R@,QC7\;S*A+Z0-W]UOT MSZ%VKF4I',Z-NI8YE>/H-((<"]$HNC3K+[BIY]CC94:Y\(5UZ_ON.(*L<62J M33 SJ*1N5W&W>8>=@-/DB8!T$Y &WFVBP/*C(#$96;,&Z[T9S6]"J2&:R4GM MFW)%EF\EQ]%D;BIN9NE?^1;A7&>FPE%,C.SOXVR#,FM1TB=0WL.%T50Z^*1S MS!_'Q\RHHY5N:[!H'\$:9(.#^ -NC(' 6_P@C+AS3?CW-LC^,[_ MOBG@I[@[@BF1E[@_MQ^K,U>+#,<1 MJX=["W'"+M6MW MSBB9"V+CBGCA827GGW(OG-1 )?(@N9\HK.8$#L*3:P^U+_^SJOE1HQ5>0QQ+3*-R6"*+ M&/\00A,S4__L:&N],9X5V%33(,?U&4SNHW6DG<]-VNA_<6XV\$'8E MF8;"@D.3GE<5V^I.:Y"IPZPO#;%RA&W)4HW6._!]80QM#9^@$__)?U!+ P04 M " !+8&%8EA6A"P\' "R#P &0 'AL+W=OR M%O9,M[+!SD:;6C@\FNWC&_NFC%5CY*]X_VWN!I/EDI5"T;JW3#C-Q< MSJ[#\YN$Y+W /Y72NKB@P!QA^# MS=GDDA2/UZ/UKSYVQ+(65M[JZHBJ]R#WO]5#O&D9"_7E?6_ M;-_+1JL9RSOK=#TH T&MFOY?/ UY.%)8!N\H1(-"Y''WCCS*S\*)JPNC]\R0 M-*S1PH?JM0%.-43*HS/85=!S5]^: D[,,WN46^3:V8NY@UG:G.>#B9O>1/2. MB16[TXTK+?O2%+)XJ3\'G E3-&*ZB3XT^#?1G+$XY"P*HN0#>_$48^SMQ>_8 M&T)C#[+5QJEFR_YUO4;0J(C_O!5N;RUYVQIUR;EM12XO9V@#*\U.SJY^_25< M!)\^P)I,6)./K/]_?'QHXFV K^RRK]>/-^SZ\99%RX"SUSGB3%HGUI5"<5F& M95,(4UB&08!N'*54TP\&WV%K=#W#O##"[]G!U1G[_NH=$T92]P![P81EN:Y; MW?@=O6&"M1T\YPPOE'L>+.]+E9>PT H8DPRZHLF5J%Z 4#"]$ZH"=&V1EGDQB=^)XR22#D>#@FNI3,J'U%/R>9L+Q%]@^GM;:X[ MA()X& QBQ"MDF\Q#.3\*0E^UA:L0U5,^@>66J,WRA$+ ME8:_GN5'&1L\>08ICN_X,2/*8_:,W-'!1#('[& +1X:OBCY#5R/=9YKG);64:ZF).>E:+;D%XS\Q"E?/#>B)C*]$@@LQ:X/ M$\3#7W'&?H<:P7K=RA3^.3L)3]ECU[;@][:DU-WY&O 'LW=HN/X"0Z M[?/4F\?V1&LE=_"S)>88]0(JM*V$HP0P#+*FZ1'L)"JA]YI[KRB"G)(%3,+R M@96A.HHN=QR-B 05M 5EI\TS'RS05EOI9]IR__YG^D0//[XDZ9=^YBE8;@AE MIZA*6XB5PHZHT( P*RI[A(:SO%*^3TP!0$-ZH,$/K8RI_ANU@S1#9>$8+!0U M"K6Y:+H-3L7.^(SKJJ,-JDHB4"&8MWM$@[\2-\*I6<[8=56-!6Z(N4Y2?0(6 MAE?!-D;7$$8(Y+9'#:4?.!(T:[3K:U(TSYX>\]N8V\%4WV+@6]

2XI5L!Z*IH;EL_ MOW'\ ;R3M:4SXU5/G+%O_138:*1F3SMT;$H^]=;:Z)^HW4+O>T$?TQ@2\M]8 MX:^HED8Q3KW^Z-)>UI5&]D2A.C!L^YN6I)L6PSVIPT5ZNBIY,2QB<$6>=&?Q MQIZ>HTK)RO$U[87RW\GTN[O>M#=[6#WT1)R_.P;^PJ*4!\&*%@N^2B,LLI2G MZ9(6*[Y<+H:^2:.,)5G*0IXN5OA=!&&OG<8+6F0\@024,A[ZQ3+DR3([NE/T MA?#O$SH*3C^"M.!A2(@RGBUB_(=+'J^\DXBG9-(#.DEY'"2G]!^$2_R'"5\M M@F&18D$84E+C64+_,4\\UHPOXHS=BE8Y%)!O!O16AR;_,%$4;YC@)XGIEU*0 M#%B2C*UBY"9-X2Q(27)!&5PE%$>Z7'GO"VQ_EKCLH&PO M=V]R:W-H965T$)-FG9C*VVD=8 M:6C:!#P@'MSDFI@Y=K O[?CWG)TV%*DKXB7VG>_[_%WNSO.M=0^^1B1X;+3Q M"U$3M;,D\46-C?0CVZ+AD[5UC20V797XUJ$L(ZC129:FYTDCE1'Y//IN73ZW M'6EE\-:![YI&NE]+U':[$&.Q=]RIJJ;@2/)Y*RN\1_K5]'AM]5=54KT0%P)*7,M.TYW=OL==/F>!K[#:QR]L M^]CL4D#1>;+-#LP*&F7Z53[N_L,!X")] I#M %G4W5\45;Z1)/.YLUMP(9K9 MPB:F&M$L3IE0E'MR?*H81_F-_&$=7&N%AOP\(:8,!TFQ@R][>/8$_!)NK*': MPUM38ODW/F$I@YYLKV>9G23\*,T()N.7D*79] 3?9,AO$ODF3_#=8\4M1'"' MK76D3 7?KE:>''?#]V/I]FS3XVQA0F:^E04N!(^ 1[=!D;]X-CY/7Y_0.AVT M3D^Q_[L6_P&'3Q8\IZL1BNCA_B]L9PA+X%&&QCH$JJ6!.:H>GHU9D UT]?;Y!M8\>O+/'\Q&W-#Q:Z M$,#G:VMI;X0+AB&ULE59-;QLW$/TKQ ;(R;5DV4X<1Q)@ M.RV2 @&,I&D/10\4=U;+FA\;DBM9_?5]0ZXVS'LS0^Y\Z\-= M;(F2N+?&Q475IM1=3B91M61E//8=.>PT/EB9L SK2>P"R3H[63.93:>O)E9J M5RWG^=UM6,Y]GXQV=!M$[*V587=-QF\7U4FU?_%)K]O$+R;+>2?7])G2E^XV M8#4946IMR47MG0C4+*JKD\OK,[;/!K]JVL:#9\%,5M[?\>)#O:BFG! 94HD1 M)/XV=$/&,!#2^#I@5F-(=CQ\WJ/_E+F#RTI&NO'F-UVG=E%=5**F1O8F??+; M]S3P.6<\Y4W,OV);;,]GE5!]3-X.SLC :E?^Y?V@PX'#Q?0)A]G@,,MYET Y MRW4\^*T(; TT?LA4LS>2TXZ+\CD%[&KXI>6-=TF[-3FE*4Z$$.7L\" _. M9>RDHD6%R8@4-E0M7[XX>35]^PR%LY'"V7/H_UZB_^$N?FD)&MA.NIVP'KQ] MD\B)U$HGG$]"HX[6Z89M-3131A?MUACPF$0M+6:U:*E\Q X(8P(0033!6R#I M4/_0R9!V<);:1H0 ;,+@81)[:407<*;POG9-X-2X/$+&Z)66B6J,0&I%'SDY MX(T)OWQQ,3MY_38R0-TK'$8/Z+0:TQ*TDL9@(6/FLR+BP^-KKP. D\?LW)%@ M\T[N2EOTH,S'E&J_L5[^E#86CPY2@ :O;0Q'&]DXCA6R@ M=%"]C4DZQ9NM!$/('?O5GY"!K;\/QJ]J9*2;G=BV!)" $@B=^:[DRM (]"R M,3/T2O4!Q(YR/;:^-S7(*K]V^J_",M-B>_JO1#DV-P3M(*; .5F25BFI'/A-)_4RH>:A2N=P"@1?;KE M? ;W$2YVI$8>7*6#+CA""PQ=VLH-E6;0KF@&H4SN-B3]/?J>D1XZW7E'18U[ MA&,GG24239]P>!3Y48^L+6*"04"G1X%;\TGPW3]2L[*&S%>#QH7!HTV MWFQ* AL9M._C?LRPBCR&0VJ04#O)_V M"PXP?E8M_P902P,$% @ 2V!A6 H_UR$ @ J@4 !D !X;"]W;W)K M&ULE93);MLP$(9?9: 6/0768F>M+)R_P?_R$Y'&^47ID2T<)+):29!*6U M]548FKS$BIF!JE'2S$+IBEGJZF5H:HVL\*)*A$D4G845XS)(QW[L0:=CU5C! M)3YH,$U5,;V=H5";21 'NX%'OBRM&PC3<L$?91;3YAE\^IX^5*&/^%31N; M7 :0-\:JJA.3@XK+]L]>NGW8$UQ$KPB23I!XW^U"WN4ULRP=:[4![:*)YAH^ M5:\F25L: MN)$%%G_K0W+36TIVEF;)4> =DP,8QB>01,GH"&_8ISCTO.$;4S3PZ^@8_4W'\7\$^"+A M%C/=4,E!TNWJ":A&PTPQ78!:P#775"1*&[K/N6 :"V#P3 J+6FPA9Z:$@J]Y M@=+'OX\&<0PU4G&7%.V&'&\NF#$P!491;7L&N:HJ*CZZQ_EJ %]+_(?&#=1L MRS)!% GW; OQ>>L1K#I(]$N62A1(?FEELJXH#6;!.KI0QAO*&D,[0XH..VRI M@T.'%.[53X5ZZ5\)0]X;:=M2ZD?[AVC:UM^?\/85NV=ZR:4!@0N21H/STP!T M^S*T':MJ7XV9LE3;OEG28XK:!=#\0BF[Z[@%^N&ULM5QK M#F8!C"3FUZ U)4?;NYHO-!Z;1:'2?/MT ]?I>F^]VH903#\NFM6_V%LYU+P\/;;E02VE' MNE,M?#/39BD=O#7S0]L9)2MZ:-D<'HW'9X=+6;=[;U_39]?F[6O=NZ9NU;41 MME\NI5F]4XV^?[,WV0L??*GG"XM[FWV6N!*IEI_QSZ^597;O%F[V)/5&HF^\9]T??_4'X] MIRBOU(VE?\4]CSV'&.KWT#\/[9=WR__+!VR%[X&+\R -'_H$CTILG(BW? M2R??OC;Z7A@<#=+P!2V5G@;EZA8WY<89^+:&Y]S;:Z.L:IUD$[65N.'=$7HF M;NIY6\_J4K9.7):E[EM7MW-QK9NZK)45S\.K_=>'#G1!B8>EG_<=SWOTR+PO MQ"?=NH45O[25JH;/'\(:XD*.PD+>'>T4^"^R'8GC22&.QDK/7H_3,[&KW9H M>Q*U/=DE_>T[:6N+>Y;OYS8E?X<8<;M0$#VE7G:R7:%!^E;V5>U4)4H-V]=: M?F7!3I7$CV=U*]NREHVP($-!$#MPE[V?&+VW+Q;R3HFI4JT @W72P,BZ)45, M!>,51(I;B*^CFY&8JU89V30K_%IU*%2F_>M,#>*[!EUV[^^7E]<@'. ,I#EE MZF4V?]TRS(5@<+#RNH4][PE#K'!:(!B(R?C@WVG$E[Y1^&X\0;-]4?.^X<=O M#OYS1%%C*M"A614H;"4J+5KM0&C9]!68M6GP.9YG./=,:P=#06FC?NMK7#XJ MC=O0**>>-N%(?&Q)LN[J%J7"1+HW@!XMP"T.(9VL^JE=A!%.XCZ YBTJW(!^ M96\,6EI6_P3(B@-M72G4NU6ELA91!5<@Q4S61G2YBWD;7+&/_>TO%T>3\UQ9.!1"#P; MLF@8O#@NAK;(+ "3V 6XXT(WL#SKE16X26[U1R?%5Z6T"S&#=)F6\!,R1A2O MZY8,%AJJ]X1$H\A9P_;5$%]U6T%"P$P:]BQ(5@\=9%KOI?C%K <762EI1N*_ M= \VTWU3"60.WNTRFX)#@;G_V;>;6? M; %J2+:&M_8EH%(CCL=%MFD 1TL;!/I'<">\.%)ZX]OC\"W0&640H5#K;$+: M7XS.P92YTX$A<.]@4YO5:$HE#554P-AI/5S>"7#46JXP42YG(+/L!?<*XP6 %IXP*>*R7C\UP!L-+^R M+L1%GJ^<*A>M;O1\A0:>S7 K9K59%K1#UT;?@3Z?E%OH"E+P[?4GGX%EUQG] M4(,4,(=X=C2: ,=M&A2)*@,.CC#< $H,F&HXIU%S2;F5\2S9H! 6H.U72)WB M X:#^P-.LBL:SF(TG.UTX"\ GVL,VN@67I<\Q[:0^&,2\V]N'+@(&,J*KQVN M$^Q_>?,5[ ^;/CD87Y#_38Y>H4=\+IWV_C!AY_P0;;)5Y#L-_X'$#YG^RUPV>@7$.+%L<6FM M\M >/_NW6D[K!K@ ./_,Z&7\QG+6N**:"?*R&.V)K[#10)F G:"]D/IAA@5O M($)E,MX('$9#K/TOAI2?M?2L"Z=OLEGA^W[IR:B8AM65:76%AQ;O:ZRW3&N) MGPVDFMJ2 7!-1D' ]"J.]&LKX]I0C*:0L!#DC3394+< CH2YVX.:3\E;N//6 M/;W2%4$.!1DZRQ7L+._6V?BL@ S'NNTV/D1Y>&1OOT#61J3O3C;PJ&Y]4(*% M/:U#UQSEGA-8;U@/X!EHZK*=XI2OI.V-^@D[AVU]=/NV62HN!G1T6Y4?.I8G M.WX'(@TPJB&HV=S?77/"FD0]@\P"X [;;NJYAW44&44 @"_JB^=1AGI/T"0)(JGGO(&FG3JGS7:!.RZ=06XI_7 M,[<+8&X]PYALK(8:0M]!C0&S*T-528=ZU3L*8JDE^7KPSLI68S9@FD_(#,315L?TNJSB CB_>0#"B+3TZ) MV!WE\!-*7*"WM:XX2FDZR/)#L;@\[SI3A8FYJ<$(8.!$#3&9;EL0L*8R5(!8 MRQFO&>YL6@BMS=<,:?&#:@7J1]VQ8R=S#%4 ^9_D2G"):<:_0MV'=L:]5(2X/%&XK M(H#/DM"0 !VJ%23"-H 8]0H8?V%*+B91#*BE8.M)A'HH%[*=*X^GZ,,;4X_$ M-_ UV'ZL4'L3%T/&L)ZQ0_R6Z F@&3:N ;7(E$$&U_X FN#1!3I10UZ1]84, M/(7NGIZ@WJD7?R#M@3RXX>]BW7 CY4V@]P&L?0T"X4=U0FGJC@DUV\_&"@12 MP+V"B@#^MWV'-68!$&M=!# J?:O,#'E<9>PFV&-+PJ%"%>H3?4]+N@]_\G3:/+!<JY!RK2ZABT>J^PV X9WR_F-A41 M,!7N'8T_@?%0C>GRB<&P:3^FP"D*=,[4TSY(C#$+KOR+!,]X0I+X53KD/6S. MJB_=FCEN,G<:#=Z)F5*I^D6O3$$2> J>9>!Z>LOU<0P<;N!A98G0R6F%+%(O ME8]RU=[54(Y@Q)"+PKCI*F_O8;C")Q)AWE0'G31NQ?[*>$%-7$BZO*+>*CO4 M03.8V(-6*6RE3+EK?>>=Y"/FO%8YG.:NEC /#$+W4\CC6_4*N0DLV'")X^=< M0&2U.JW^((PW@")^&Y"JPMCU6%PV5E-(8!";.YV[5(06A;IEO\PKD]HU" MTT#(,34$:E]E*SVM[=HTV$C-:SDQGEFZLX ML:+& RR@"AZ54#I4"H@]4 "XFK0FY2!%D_DII<9/.NG0N&2/D!5\BTP8)7=X-Q)M!VD&+&6Q9B%-T+-!DZXWD'UPYF_;DB7N:K+PAC:Z+7DN_TD( M'70[8'0]YQ7(?&3OI:S6-;N34.9-&[5N[J?,0-NK@=71XO-L1^[K\]"]BO;R M.=L#NFI4M]"M&F3$CA'',S1+ JNUKT%)PB6CKC!*@V2H#)&8W+'3!AR(&0SXP][4QH$=)PI:@"#>09IYC.F M%39@C(B,QEMR E"1X)*]EN@B^O7/\X/$R8VJE]/>V'2%K8(/$ER-&$\;#6=0I&[6^CDI/20G*6,1(?<*GHR?E4[$)X L=M MN@Z3717EI7CV ,;P#*4$0M? #3SSL'GD<\1CC$F;PR)/VW'R4Q5%W13@6'DX M IMUO8/"C9J*8$2PP0H# M"PW5\126/*MS"T:=>4;4 A_+U*?^OG:P,9X%P[1^LX<>,3B Z'+OM;GW_[0(=0(*JR($@G/83E,JWT(_/] R9^(%SDLM=5!/3O81*?? 2B9 M<98(Z?+F#I5JHKK ZQV M2,>@/I]*>/6]XJQW"=YQ,%T=X/^>+OIV3CBBEJ+MJ8N"@ ^Z:&,';10BD/@A M?!]6:WMP][ H)+&8O -&P"KI'@V>K>$TU"ZB%DJ(#NQJ0%VTM7X.EP\&8O$L MTZC0H@10 _^J[<)?<>"D0 :YE0^^$,X;D-Y8^)WPQU QG?E )6,A=28;C5)U M]\Z?-P&.X:'2',U0MW>Z+FF].DI8RA7H.4-<)07+6[P M=I5=SXY;F5:*]:I7H=MV/!:57"770475@RI[]OAOGO3);$]A=O!]<+@5/\6' MAG3UILH8LHW):TV;M9,#2);>[9B S$!,,%S)^66]9S-:+RJXRY#P:$@[_ 9A M!5C=T??D2YO%3)&JF>!ECS"9L.>#-/JQI0LY?/@)V&Y4(.D[W(R]RG=JA\.C M$Q>1? ? H3XDP+-O'7IS9CL\O,J3G]7ZEB*=_RPA_ G,;S-4@)2%!ZUA^[)0 MHEVM;0X4@S0*>0^PR%$6NT>OPH$^ 0Y=@3JZD7^BJIE,RG7464O*CL1E5=5, M'W&C[GF3L1>\2K"VT6!'L>K!%[I0W6]9?"+-JG+_L,%4KC33)/^W["P,-_$&V9PM9YQ[/ M'QX\YPRAV;?8/O;6227DEC4!GYC']E2JM3W=1#Q:C[1;=+,?FH"8QW]2@]X(QE:*'+L\UNJ^&G5;:).ZHAL;84Q"VCF#%T',1 M^3VK Z R+I&ZCA%F[HY0KD+Y[S@=*O053VOU-EW@FCL^+R>D)O#@Y+B90:7Q1 M2U\?/](F!20:>D/J>R)U"R)[0@KID<0,0F-FQK6:GR[N^ M>&4*_+EV%#Z;A^./S1![@DT]BR>(8=*=*M\05M6 K0_'9&SEDL)H,VX)B^=SO,*$![ZQ(;!=OX%WF2>7BX&^ M=K%J,GDQ.@W(,-QQ/FFS_JAMK:F)CCJ0=#KY:[KW^90B<>-:2,MB[Z^M>1?QWZ1#?<81$OG+87?K")02,Z\_OJ!6^6HNW:5EZ@4G89SO,*"6PC0 M,I2;C]W;]<"K6&W&MOO;5A M@O=Z"28!59_!<\7X9(PO)L7X_ )>G(V+LY,S?'%7%!V>#HM#@]QB>/SHN3HW-X<0Z)@EY<3&#H>:H_KR#Q MKYUIEK*KG6SH4),;%U <4QNV@8WW%$1/G7?2+$_X8X#0W1M,^!!- EFB$DTBVAB$8L M'$8]1W!3#Q(95X$'0]S?T4M($E@ [N\V+Z\SS@EJS_IF5F/S+,VL6R1>L]QB M8HD_+(>JU6WO>R7^^_U'@=.SLUF/D+--1[HB%.[;XZT<%9P5L\Z5OPRU MOL/9]JT=R-(=K;SN)9&;;IZ<-;_-MG$%C8X9 @VD5+_$KNK6@[X(@Z&IS@=C MY(PV$Y.6D=F@;"1\1 P( #'<\P2;M[H]"&^GU!KVK9]4^5-C>$?DHM2K.^P]:^ZF1=I1.?U-6/#0.'ZS]Q$!]R-Y5K5?%=8NN[%0Y^?*,EO!C\^ M^AQ_JS(2OVJZXU8;JCP;3;L1Z^2&YL$OJB)P!P?B][1LW_@#+I_(,6 MP%4* N[8'^RG9>)TOS"N=!JW2"CH)1FU 9O"S[R8T_4 _+P_28U2$'=N/N5Y:2 MHUQB:(Y_9+.N_-H$&X\F8QX$3I"$X!JV#* DGON8K.YJJPU$;@.U7%-DT5V( M=",PRY(L(7"AUK,OWZ#G15:0[6O\S39=0V0?=A]@< EA!%]&<.$$S!?ORW .*G M\2\I7/(?$$C#^<\P?)(0A+"N1LW@T?'H_'2/F]'AC=,=_3F!J79.+^GE0DFH MX7$ ?(^_6PYO<(+X]R7>_A]02P,$% @ 2V!A6 F'>OW @ S08 !D M !X;"]W;W)K&ULA57;;MLP#/T5PAN#J:^RT M2P(T[:[ AJ+MMH=A#XI-Q\9DR9/DIOW[47+BID66O=B43!Z>0XGT;"/5;UTC M&KAON=!SKS:F.PL"7=38,GTB.Q3TI9*J98:6:AWH3B$K75#+@S@,LZ!EC? 6 M,[=WI18SV1O>"+Q2H/NV9>IAB5QNYE[D[3:NFW5M[$:PF'5LC3=HOG57BE;! MB%(V+0K=2 $*J[EW'ITM)];?.7QO<*/W;+!*5E+^MHM/Y=P++2'D6!B+P.AU MAQ?(N04B&G^VF-Z8T@;NVSOT]TX[:5DQC1>2_VA*4\^]J0(>B1[C&0JY%XRKU^I:M..HW ML\!0!NL7%%NTY8 6_P/M%+Y(86H-[T2)Y=/X@)B-].(=O65\%/ S$R>01#[$ M89P>P4M&N8G#2_XCMU*RA0OBJNA:4,E-#1>NV*C@Y_E*N_U?APHPX*>'\6T+ MG>F.%3CWJ$1%GX]@C[=&2?'D-?W R= [)ZY+YDG(D"]2&N1]$. MC#ZT: J66OF2CU&[C$"I7"DKIR*.=+2'(_FJ1DI(D? MQ2D<43L9U4Z.JZ4!5/8X /*M6)=_7!(\5'$PXIO:Z1JMAT3#Z]> M3.,H?ZM'791NO4L'C0:FH9*"3,*@$L_W+.$S\]#2# MS$_24X@R/YU&$.7^U!U0//$GB8V,7; W8JA)UFZ0 M:BAD+\PP;<;=<5:?#R/JT7T8]%^86C=" \>*0L.3G Y-#<-S6!C9N8&UDH8Z MTIDU_6]060?Z7DEI=@N;8/R#+?X"4$L#!!0 ( $M@85C"$[-T? 4 )45 M 9 >&PO=V]R:W-H965T+"C+L(!'MASP-2,X M5D99.G L*QAD.,F-R4C]=LD@, POY)JDJ70$:7S7/HTZI#1LWE?>OZK:H989YN2: MIK\DL5B-C:&!8K+ 12KNZ>8'HNOQI;\Y3;FZHHV>:QEH7G!!,VT,&61)7H[X M5>/0Q\#1!H[*NPRDLOR"!9Z,&-T@)F>#-WFC2E76D%R2RT5Y$ S>)F G)C>8 MY4F^Y.B.,'1-LPR0>EAA1M#I(YZEA)^-!@+BR-F#N?8Y+7TZ>WQ&Z);F8L71 M31Z3>-=^ /G523I5DE.GT^&/.+] KFTBQW*\#G]N7;2K_+E]BBZK_?5JQ@4# MCOS65F_ISFMW)_?-)5_C.1D;L#$X82_$F'S\8 ?6YXYDO3I9K\O[Y 'V85RD M!-$%FF*>S-'>-6M+O=OYXXJ@!4UA:X)#)-2*(PY: -M=K)" UW.:K0N!U1Z" M%&8J!5*EL(84YF4*7 &)\QC%25H($G?,.DUR<$X+#M,Y(J]SLE8QU4SM**-% M+OC9I:YZK[-+]+ABA.R0#@%E"A"9FC7H)ZC\P)3K%'..KO0X???\)0&*)+/= MTDZ0=6';S<%UJ^$ICQLF*>4LRT$4)_:YC#PH':[9^FNG"_C./(:F,-()NA%_C&E M0W"H[VWMNR&&9FAY.D1)P(U2>/",7\#SDNR0D"/H>%P G67J0"DOM&0<6"+7 M,2VG>CA,5?\M35O7:>+MZ=>*!%P0KB K>?+!PE*#Q@<,XKDIK##DKN! MHID;17U@\+:;U(6%?T]:RW,;OJ-AJ'T?0]K(#2O2PA!5I/VCHXWY=1OS>[>Q M+[H_M/1AV0-J,C=:&T=/7";Y;?'IFN90B[2_)=!#XK:NUYE+>\.ND[I[.)B% M[(LMF?1J1+OTJJ) U',%0[ELE1II(=&*7*4BZ/P9W7PODA><$NB1-2L\;TN6 MRMZW/6U=:47S*Z\L07YBGROA*Q>\N:KAM4R?9HN#VA**58 MRZAN1P>A<+90;.T]3UL?@D*J_G%01*8-F\^5\ =U=^XA^KUI(?>[WJI:\ YC M804-7B@'CFG#4)IW@Z&DY3@L7-.Q0XE%%/A5LCV:6T\H2K'30J75_C 4T987 MV@% ,?2T^2%>2&$]#HO0=(L!K6L!O^LK$Y;!>UQ0S^5[_=K M:G_N)V4V/M]8M*1\IGRUH;+5,R]'_'XUW*1^KH"UP;.5,*]*_#X=]-!!V MZ.\F>Z1\MN"PE3*M1OUP. H YW@FP ?Y3I:_-_[0^55Y2(!P_&?!I3_IB]%" M?=&VR>N@<526$;94!X(E4=MV^GE@>4M9LL$OM!3L@!3 MZR*$CTY6'@*6#X*NU<';C I!,W6[(C@F3$Z ]PM*1?4@ ]0GL9._ 5!+ P04 M " !+8&%8 '*4#8\# !N" &0 'AL+W=O^O6HNV")-T^#/M 2R>)*$6J M)!4W^_4[2K9J=[:_[HO%E[OG[KD7GF=;I3^;"M'"UUI(,_%TC6SM-5E8!J-+.^4:A%$89@&->/26\RZLWN]F*G6"B[Q7H-IZYKI MEQ4*M9U[(V]_\,#+RKJ#8#%K6(F/:#\U]YIVP8"2\QJEX4J"QF+N+4=WJ[&3 M[P3^X+@U!VMP3#9*?7:;M_G<"YU#*#"S#H'1YQG7*(0#(C>^[#"]P:13/%SO MT=]TW(G+AAE<*_$GSVTU]Z8>Y%BP5M@'M?T-=WP2AY6&^XB9.#JB6T$FNM98 G:"039#F;5PT1G8&[A@Y*V M,O"+S#$_U@_(I<&O:._7*KH(^([)&XA'/D1A-+Z %P\\XPXO/H.W:@V=& -K M56^X9'U)R!R6QE#I'X0!_EINC-54+G^?BD-O9GS:C&NA.].P#.<>]8A!_8S> MXL<;;@@;FCV$73IXD]50B%$M387)9 YX)3B5)O Z/#K \R^6I) MSBK+!#2MSBIJ(A+F&;JN=NUI.HF"<0W/3+2XUV$]&W;(1ARP83T;^CJ-1VPL MUAO4D'1E$\,5EX2C6D.*YOH./ADL6D$!*1#6S%203BA4F6HE6=&8(7]V#>"# MI)(8)Q-8MUI3;/>.C"=PK^D]U/:E\P7)KX9>*-MK1!/X5:E\RX6 4>I/XP0^ M*ODZ4W6#%B'RPS"$&%Z0:3- 6\PJJ80J7^#V2."I"]CW(8BF_CB.!^W#:%RE MH\DUO%>R?&U1U\=WD3\)I]<[T%,Q? 57L1]'R35\1/L?LZ\@2OQ1.(7CE/\? M:7[72G1A<"F.+J;X=P+7>_3;\%MR8C^=A$>Y8:5&=)DT,**KY'R2(C\YRJ)[ MH4S]A#PZDZS;\%P6TL[ZJ:>IENE M?Y@"T<)+*:29>86UU6T0F*S DID;5:&DE;72);,TU)O 5!I9WH!*$42#P3 H M&9?>?-K,+?1\JFHKN,2%!E.7)=/_WJ-0VYD7>ON))[XIK)L(YM.*;? [VC^J MA:91T%G)>8G2<"5!XWKFW86W]XG;WVSXD^/6]/K@E*R4^N$&7_*9-W"$4&!F MG05&S3,^H!#.$-'XN;/I=2X=L-_?6_^UT4Y:5LS@@Q)_\=P6,V_L08YK5@O[ MI+:_X4Y/ZNQE2ICF"]MV;YIZD-7&JG(')@8EEVW+7G9QZ '&@S. : >(&MZM MHX;E1V;9?*K5%K3;3=9!)=-N0Y#MS-RW9J(S9B;PJ*0M#'R2.>;'^( H=;RB/:_[Z*+!WYF\@3CT M(1I$R05[<:#ONY6Q MFO+EGU.!:/TDI_VX.W1K*I;AS*-+8E _HS=__RX<#CY<4)%T*I)+UN>OF/KP M16:BSKGT6NUEPRF7'BQ&7[1KC+QAM> MM,PE?&):$LK 6JL2\CY/=3@(PL)R\7@+RT(C'J43?"6*QS,N*]PG[O6>\!G) M*OP"[]^-HS#Z0+W83\<)M8D_B2-JP\B/TC$\*&-!K>E5:2%[0.1/HB&!)ND$ M)OXDB6"I+$G;\23I^$+/H:&[TO>2C@;T'85CY\$?)R%\IN<0* [Y_L#(V3GE M?4N'7N2'4=*;Z:*X0@H5N@BK$L&REU=DQN,&'8\F3O\=7P^3:.4I;[:&+$Z^+/FSTR0J^.H M#N,1+#7+D>I(IFJWK#%#VDLOI@_T:A)/IY:D8>,\5_7*KFMQ /2RC Y@H;%B M/#]DE..@;('ZM?X.!P_'"V],JM@?#N(.VX_@6PU09I]ZO8)>W2E1;YKJ:J"1 MVY:@;K8KX'=MW3IL;ZO_(],;3FX%K@DZN!E1O=1M16T'5E5-%5LI2S6QZ1;T M$X+:;:#UM5)V/W .NM^:^7]02P,$% @ 2V!A6*#D_"&_ @ !P8 !D M !X;"]W;W)K&ULC53O;]HP$/U73JE4;1)K?@ = MI1 )Z*9U4CM4NNW#M \F.4A4Q\YLIRG__2NYO44CWH M#-' 4\&%GGJ9,>78]W628<'TF2Q1T,E&JH(96JJMKTN%+'6@@OM1$)S[!#VR^2_B18ZU?Q&"=K*5\L(OK=.H%5A!R3(QE8/1Z MQ 5R;HE(QI^6T^NNM,"7\9[]L_-.7M9,XT+RGWEJLJDW\B#%#:NXN9/U%VS] M#"U?(KEV3ZC;W,"#I-)&%BV8%!2Y:-[LJ?T._P.(6D#D=#<7.957S+!XHF0- MRF83FPV<586\H8S>H+R &RE,IN&32#%]C?=)7JW"8V_;0 M6)6#3OG@&'N\HIY,*XX@-_ /%SVXE0*+DLL= M(ESEBMI *IC53%$^9Z(',]L1N=D=!Q5C,M@,?.R M6[V8J=H*+O%6@ZFKBNF7%0JUGP=)VB#J7@ M%4K#E02-FWFP3"Y70V?O#7YPW)O>&EPF:Z4>W>9;,0]B1P@%YM8A,/H\XQ4* MX8"(QE.+&70AG6-_?4"_]KE3+FMF\$J)OWAARWDP#:# #:N%O5/[K]CF,W)X MN1+&_\*^L9U, LAK8U75.A.#BLOFRWZV=>@Y3.,3#FGKD'K>32#/\@NS;#'3 M:@_:61.:6_A4O3>1X](UY=YJTG+RLXMKQC7\8*)&4!NXYI+)G#,!WZ2QNJ;J M6P,?']A:H/DTBRQ%='Y1WJ*O&O3T!/H%W"AI2P._R0*+U_X1,>WHI@>ZJ_0L MX.],#B!+0DCC='@&+^O2SSQ>]M_I?^$F%\K4&@W\O5Q3^G1B_CF6BW5\(=YK767&YAQ0PWQW([&_UX;@\EPD8)&F^';/U9 M :^6%E2M@?WB*7H\;4D$]PA5C^_&\7T^\&4T]@?&:\>8H%SB= IJND&Z@^"A MESO-!62Q%V6AEW%9\)Q9I%C8QRXY:J;S\L6A.9T3,W]-6,Q+R9]J(DC<:D.\ MK*(YMZAI_)!NK[SL0WWDY%.JVE \\^GR+;<_:V4)Y%;SG##O^5;R#9&BVO37 M*R9H\A"NF"D!GVI.Z'[XWL,H"8?C(2T^O)NF2?KYU:I5?A_<#^!!^TJ^@'%5 M:XH\#,?IJ+,_?!OI#=./Z/O5]T@FX32]>./2BA^4I=OA/4RR\"*9GB#5*E]W MY/\78IJ$V2@]$;-5GBS$),SBMX5HI"<*,0['6?JV$(WX4(@D'H7I].($JX/V MV.1'O5N[0KWU;Y.!7-72-A=X)^V>OV5SZ_\R;]Y.2F#+I0&!&W*-!Y-1 +IY MCYJ-53O_!JR5I1?%+TMZPE$[ ])O%/6FW;@ W9^"Q;]02P,$% @ 2V!A M6"5,S5WK P >@@ !D !X;"]W;W)K&UL?59M M;^,V#/XKA#<,+2 TEFWYI4L"M+T;UF'=%>UM^[#M@Q(SB5%;\B2E:>_7'R4[ MN1S0YHM%2>3#AZ0D>KK3YLEN$!V\=*VRLVCC7'\YF=CE!CMI+W2/BG96VG32 MT=2L)[8W*.M@U+63)([S22<;%W>S*=ZZ]I&X;T!N^TZ:5ZOL=6[6<2C M_<)#L]XXOS"93WNYQD=T?_;WAF:3 TK==*ALHQ487,VB*WYYG7G]H/!7@SM[ M)(./9*'UDY__9<0.\6R MD!9O=/MW4[O-+"HCJ'$EMZU[T+M?<8Q'>+RE;FWXPF[0S40$RZUUNAN-B4'7 MJ&&4+V,>C@S*^!V#9#1( N_!46#Y03HYGQJ] ^.U"0:Y8ORZ SM M-F3GYK>J)B?F%1YQ3;EV%LX^RT6+]GPZ<83OM2;+$>MZP$K>P:K@3BNWL?!1 MU5A_;S\A7@=RR9[<=7(2\#>I+B#E#)(XR4[@I8=@TX"7OH,WQ@@/V&OC&K6& M?ZX6%#T=C?_>"G= R]Y&\]?ETO9RB;.([H-%\XS1_*![_?()K=N":G4*? M/]+UJ[C0R\+XW>M4XT 9^U]:^Q?TD^MO<;Q6X#<)*MW15O1?G M3P*#'<)&/B,LC'Y"!;7>#8J-TH-PJ'10(R&%L\9[TEM+*_;\$CX'E.-3]IWQ'Q[ZW=T M'6"_20_XC&J+E_"X)&_ M9RV5]/P4I9QQ[AD5K,A3&GG)TBHX29CPD('0F6!IG)W[,>8EC3QC51Z/@B#! MC!69'U.6!:X%R],";F3?.-D"OE 'J!NWI8-R,E$^7I[1)TO]UZ<@&[ED M!50IY48(T_8'I .Y;.3P9M-!D)V_JU_"PBGWE,W< M5R4J5RB'-BH%BH%J4Y4 @"S5C*1'Z* T=U;4=ZP$+ MI!:(8Y'H:KR M2%DQU$BP)/6!D4KA\U0Q'@(M6455>^NIF1SU@P[-.G0]"TN]56YH#8?50V.] M&OK)-_6A*]])LV[H1K>X(M/XHJ ^9H9.-TR<[D-W66A'O2J(&_HY0.,5:'^E MM=M/O(/#[\;\*U!+ P04 " !+8&%8LEN$/Q@7C,DJ[?F^B MTZY:6<$E3C2855$P_3Q H3:]J!5M-^[X8FG=1IQV2[; *=K[MAQ\3[@)\>-V7D&5\E,J0>WN,U[4=,)0H&9=0R,_M8X1"$< M$ MB\T*/-EC9AE M:5>K#6@736SNP7OCT50-EZZ+4ZOIE!/.IA.-!J5EP5.9PS2T$]0Y1L/1HD1PFG6#:@=74.23-IP_UT!*O7;>P[7G;K_'2FYVOR#TR\N9QQ>TSC-$N54X]6:.Q],Y9 [^_$0QN M+1;FSP'M@Y#CXG .-TNN3A=_RE=X=4AP2?=C0EC7]U'X\)RN.=T5&@7OB):L"_ M[&&*U+OUT.[[616_A(>)/V9ZP:4!@7."-AL?*;\.4S0LK"K]()HI2V/-/R[I MPX/:!=#Y7"F[7;@$]:&ULK9E=;^(X%(;_BI4=K6:D'?(% MH;" !"31=C65JE:S>[':"Y<XX3V!DFU)J,\K9[/AFQK4P)A7N.Q#;+,/\^@Y3MQY9KO30\D-5:Z@9[,MK@ M%3R"_+JYY^K.KB@)R8 *PBCBL!Q;4W<8N[Y.R"/^(K 7!]=(#^6)L6_ZYC89 M6X[N$:2PD!J!U<<.YI"FFJ3Z\5\)M:J:.O'P^H4>YX-7@WG" N8L_9LDYBU8*O*_:%_$]@<66FR%9%F9K'J0$5I\XN=2B(,$ MQ6E.\,H$[SBA^T:"7R;XEU;HE@G=2ROTRH3>I0E!F1#DVA=BY4J'6.+)B+,] MXCI:T?1%;E>>K00F5,^L1\G54Z+RY.0!=D"W@!Y@P5:4Y&Y_1M,DR2]QBFYI M,7WU@X\A2$Q2\4F%?'T,T<-V&_LPO3_>; MAO.^ZM'[JL?MZ=,-5^E.4WI-2[^:7'[.\Z^87/]\44'H5D(F_FV:+@6QVTS4 MZ^Q0;/ "QI9:2 7P'5B37W]Q ^?W)J],PD*3L,@D+#8$JWGFXG4[W2.G@Q(V3F+ !Y':\(P%/02L@?W)Z]BL)^ZT2WF8;3+CZ!2M1RD2C8/T3VYPCMM ?E*F MFTJFFU:9[@@EV39KDJU 4Y8HE\0^@1 L5T >HU440T M;J5:X=<:;I06GAFXB[X#YDWN&NU&;(I6]_=@-^VV+\CX^:T%N3WS:O-,TD*C MM,@H+39%JSOJO3KJ&5^72Z0IJTW20J.TR"@M-D6K6_UZ6N&V;I3?NS@;/;DP M2@O/#-S/%^>F7]F1T7[$IFB%P?;!L6<&?)4?4.N-UI;*XI"J:JT.P:?YT>]1 M^\P=SMV&]M =1L41]RN^.'&_PWQ%J$ I+%4II]-7FTA>'&(7-Y)M\D/7)R8E MR_++-> $N Y0SY>,R9<;7:#Z5\+D?U!+ P04 " !+8&%8I&V%N2L" 0 M!0 &0 'AL+W=OJJYT"FNC&GFA.B\@IKJ6]F L"NE5#4U-E1[HAL%M/"@FI,H"&:D MIDS@+/%S:Y4ELC6<"5@KI-NZINKW KCL4ASBX\2&[2OC)DB6-'0/6S /S5K9 MB(PL!:M!:"8%4E"F^#Z<+V.7[Q-^,.CTR1@Y)SLI'UWPI4AQX 0!A]PX!FI_ M!U@"YX[(RO@U<.)Q2P<\'1_9/WGOULN.:EA*_I,5IDKQ!XP**&G+S49VGV'P M,W5\N>3:?U$WY 88Y:TVLA[ 5D'-1/^G3T,=3@#AY (@&@#1OP+B > K1WIE MWM:*&IHE2G9(N6S+Y@:^-AYMW3#A3G%KE%UE%F>R#1Q M( VD,N]8+ZT[]&V M/U,D2[24PBA;;+2@G(H<-+I>@:&,ZQN;^+!=H>NK&W2%F$#?*]EJ*@J=$&.E MN0U(/LA8]#*B"S*^4G&+XO =BH)H<@:^?!U^WR@+#SP\?@XGMB!C5:*Q*I'G MBR_PO3 ]/V>IYYB)DUB&ULS59;3]LP%/XK5H8FD$ISH2VT:R-!V32FH54M; ^(!S<] M;2T<.[/=R_;K=^RD69%"B]#0>$E\.Y^_[UR2TUU)]:#G (:L4RYTSYL;DW5\ M7R=S2*FNRPP$[DRE2JG!J9KY.E- )\XHY7X4!"T_I4QX<=>M#53%UA&P"$Q%H+B:PE]X-PB(8^?!:A7 MWFD-M\<;]$]./(H94PU]R7^PB9GWO#./3&!*%]P,Y>HS%(*:%B^17+LG615G M X\D"VUD6A@C@Y2)_$W7A2.V#*+H"8.H,(@<[_PBQ_*2&AIWE5P194\CFATX MJI8YS9@#(Q(P-0+O0B ?)MS-F, MNB.'EV HX_J('! FR#7C')=UUS?(R2+[27'_17Y_],3]7ZBHDY.P1J(@:I#; MT24Y/#AZ#..CI%)75.J*'.[)'EU3)5/2E\(HC#_ZULQ)WWD5%+D['VNW?E_% M.\=O5./;8NGHC";0\[ :-*@E>/'[=V$K^+"#_4G)_F07>GRCJ- TS]M,,?0] MY5PFU,"$&(G5L E/MA4>68:G,@[YC6UWHZW591R&[7JSZR\KB#9*HHV=1 LW MU_9F3(U\7&=8B2C@AJ7VG)R2$6[I::ZS1D:&*D,PBP$CLV;ZON.2XCB(CH.P M2M%.:B^,4+,4WGQ.?OT#X>3N*V*3*P.IKDS$YBO(;)4R6WOBNU&GBH+"]!L# MSMSGXC=,JACGF&&XE6M!O1E6I]II2>7T>:FV+_MK!#8>-Z7']:-40T,F*ZGO MYA!&),5OR5SO<.U9J>?L/Y=.\^G2V4GMA3G5+H6WWTKIM%]!9AC\_;4&;R!C M=Y.H%DFJ]/E;783MR*ZIFC&A"8P/VIE&8SL;U*V6K&?P!02P,$% @ 2V!A6'I*FCY& P B \ !D M !X;"]W;W)K&ULK5==;]LV%/TKA%8,+=!&WY+M MV0::2,4ZH$"0K-LS(UW+0B72(VF[^_6=#68N%'++*Y3L&N-2DMG$#STO< M%M?$62_UW#U;+^E>-#6!>X;XOFTQ^_<6&GI<.;YSFGBHJZU0$^YZN<,5/(+X MNKMGY[RF"1OQ5PY&?72.5RA.EW]3@<[ER/+4B M:* 02@++OP/<0=,H);F.?WI19XBIB.?7)_5/.GF9S!/F<$>;O^M2;%?.S$$E M;/"^$0_T^#OT"<5*KZ -U[_HV&'3N8.*/1>T[!Y35'%<5@PH+*-$)\S8#@>N&OY.( MKX\9>OOF'7J#:H+^W-(]QZ3D2U?(-2EEM^CCWW;Q@Q_$#]$72L26HYR44!KX MV31_/L%WI1>#(<')D-M@4O /3&Y0Z+]'@1=$AO7FM+Y?]'SJZ-?F!$. MNR/4>N'T[N +TX/MJ)&9J@ZX!=_A E:./,$XL ,XZU]_\1/O-Y.K-L4RFV*Y M);$+_Z/!_VA*??#?9'_'3#13O0X.ZR".PV3I'LY]-:#2*$@O4=E+5)KZ8U3^ M$C7SH]DSZB+%>$@QGDPQHRUP41>F%">9/[O#;(IE-L5R2V(7]B>#_>OUGC:#Y^E1M021C-1X5N0/E)-/-' ME6Z"I;,X&I6Z>]99M, JW=)Q5- ]$=UGY# [M(T?=;,TFK_U%W>^83Y3;:;N M9)[ENQ[U"V9533AJ8"-#>3>I/)98U_9U T%WNJ]YHD)V2?IR*UME8 H@[V\H M%:>!"C TW^O_ %!+ P04 " !+8&%8RFKDTA<# !Z#@ &0 'AL+W=O M$WK,4@*.' M(B_9Q$@Y7X],D\4I%)CUR!I*L;,DM,!<3.G*9&L*.%&B(C<=R_+, F>EX8_5 MVISZ8[+A>5;"G"*V*0I,'Z>0D]W$L(W]PFVV2KE<,/WQ&J_@#OB7]9R*F=E0 MDJR DF6D1!26$^/*'D5#::\,OF:P8P=C)&^R(.1>3JZ3B6') T$.,9<$+'ZV M,(,\ER!QC)\UTVA<2N'A>$^/U-W%71:8P8SDW[*$IQ/CK8$26.)-SF_)[@/4 M]QE(7DQRIK[1KK+U+ /%&\9)48O%"8JLK'[Q0QV' X'=/R%P:H'S5# X(7!K M@7NNAWXMZ)_K85 +!N=Z\&J!IV)?!4M%.L <^V-*=HA*:T&3 Y4NI18!SDKY M8-UQ*G8SH>-^ '&.*599)DL49-LL@3)!<_R(%SF@BP XSG)VB=Z@E\A$+,44 MV-CDPK[<7-S97WSJ= (_ MDVT/.=9K\7'HY1V&;DNL=& MT1^,CL([:,([Z ZO^NNY0EB4W6H\;0M;)^2Y8=,)"W3"0IVP2!/L**U>DU9/ M9U'T=*97)RS0"0MUPB)-L*/T#IOT#O]G41R>4:)FG2=Z;EIUPD*=L$@3K$JK M>?!N7 !=J2Z&B11M2EZ]X32K3:-TI?J#)^LS>Q38+>NA:*RJ/N@WONK*;C!= M925#.2R%*ZLW%.6(5IU.->%DK=[,%X2+]WPU3$5S"%0:B/TE(7P_D0Z:=M/_ M!5!+ P04 " !+8&%8X75W&+(# #($0 &0 'AL+W=OKN=^3]F2/%\9ZR+WP#(-!+61 ^L39" M5"/;YND&2LSO: 5$OEE15F(AFVQM\XH!SFJGLK ]QXGL$N?$FH[KOD)<A),OLVEGY@N,2,Y67/T" PM:%E*M9\VF 'ZB&99EBOY<8$>B%[#:C&\BT'@ MO.#OQ[:0(U <.VVBS74T[T(T'WVB1&PX6I(,L@[_N-___GO^2;^_Z_4 ;)FZ M-G_>:_[F7B_Q5TSND.]^0)[C!8BKS/&.<2VNI_B7*?$M8WF+[(9T&;@T,JRD MGS*KF*0XFM*3JU,"@&ZAJ]XA7.(6) M)8LS![8#:_K3&S=R?NZ2TB0L-@E;FH0EAF!'$@>MQ$$??:I532G9 =-;F"H] M7JVG,D**JV M+-W([1O!2UIL9>%$[W+2U(/.72 \&TP4#%W'#8\SL#BW"X(@](+AL5WF?^@VL[:O,:W9Q7>>+C I-,EK7OI38Z3T7H><%9 M:L_MPF@P&#HGJ8BOY"VOY"6]D__!U [:U YZ4[LH,.>:-CLZS'3M6O->UJVE MPR0L-@E;FH0EAF!'Z@Y;=8>F]_VA28E-PF*3L*5)6&((=B3Q?2OQ?>\_<)SO M\@Q(QI&$KX !2:$NB%N>H4K*7A?&]^B_@]-ME^Z]46[5W20LUK#!01EU[IS3 M6FLR8F((IO6T#[XT2V#K^DZ RY/:E@A]@F][VVN'6?VU?=(_=T<+MZ,_=D=+ M?:OP/U[?<7S";)W+?;. E0SEW WD7L3TO8%N"%K5W[G/5,BOYOIQ S@#I@SD M^Q6EXK6A K27-]-O4$L#!!0 ( $M@85C&B]!R<@< *DJ 9 >&PO M=V]R:W-H965T**750U\:_?CNR/N..G[G\OK( MTG_YCM(,?8VCA-^,=EFVOQJ/^7I'XX!?LCU-Q)LM2^,@$[?ITYCO4QIL=F$,4UXR!*4TNW-Z!V^\NV)-,@1?X7TR$^ND0SE MD;%_Y7K]X]_/@13"/ M :=+%OT=;K+=S6@V0ANZ#0Y1]HD=?Z=E0/D$URSB^;_H6&*M$5H?>,;BTEC, M( Z3XF_PM23BQ #;+0:D-""JP:3%P"X-;-7 :3%P2@.G[PB3TF#2=P2W-'!S M[@NRXO.T!AQ^9:C,$$/ M29CQ\Y,'GW?LP(-D(QZ>->ZOQYF(1LYIO"YGOBQF3EIF;J./+,EV''G)AFX M>\]L/S?8CP6+%97DA:SZF]N0^'\V.C^=X_>(,.N MUI6=^[/[K*M\N9P7Z^DI* MF!SH!@D!D 9R!^4]"30/TT)@830YC4AAKQ/A%8A9D]^)0AT(:J'.K:AS>U#7 MCQVSIQ9VW#[+"P)IRPL"D:G"$0@B,$?3BJ-ICT_PF*LDL:J"9[&JGBA:%U6T MW%V%;.29V$IE'95T%H\A'I=3;3G8-IFKG$"HZ40E!4+-'/6C WWAEJ4SJVB9 M&6G)=XJBSKUK*!-031A]O7:K&-*9-Z0S?R!GC83,JX3,?X9-?SYD)H=TY@WI MS!_(62.3V*K[ LOX<:U"GJ7AXT$6'/J2UUYE>EEZ5DHN5LI++Y0'HFQ;*2]= MJ"8')[T1-G+P(*IIS4+$.*>].<#FO;+D0$=="!A128!AKLH""&NKLIC4-)"A M%."R=#4S;[<@2MMO092FYV!46]!U_X*-HGHP2; MN8X:,0"S)\ZD)>):6&.SLC[YRLM/7"J2^AL'HP?$K#;C%8 B\_E,#5]'N3-5 MB?L0RCT9L1E\+9^Q63]WES@P_%EW/=,ACK;4=0R>J77"!U V:=O7:YF*C=JI M"!R,;:Y_I4!J 93EV&J .FHVM;2%K:/<^6P*1TAJ]4;,ZFWHCK$-M=]]H=O;:=F-0;]Z@WORA MO#734LM,0GZ&[I$8Q>ZK\SFD-V]0;_Y0WIKYK!4T,2OH'^@@2\\='60OE >B MM ZR"]7DH%;.Q*RGZH]86FXAD%;E=)"K@OP. M4#/86DT3LYKNVS66;AH=D2JM *V:;;-J_KYNL71JJEW=$*\;XALAS9!K M16J;?_AL[1-+.]><4!T$)%0' 0G50>T)/3FA8=9G0_>(MOXK)IZI/]>N>J&\ M7BB_"]4D1HJVYI-:O]B=__%>GH:J-C 4Q.R09!S)ZVQ'$0]BBK8L+;N1=TBP M5E[?EK1=HE48Y552=W-J67(O7_,=.R8H>&3/M+:NU'3MIC9_&0P=DHUX+:>6 M'=G%.G\9%SV2M#B36VL^R3.Y?>8>?O;.?*LQWPS42\R8_ZC>LI%8R &JTZF+_P%02P,$% M @ 2V!A6 8 !($>!@ #AP !D !X;"]W;W)K&ULS5G?C]HX$/Y7+&YU:B5*8B<$LL'+[."(ZT4)HXR'4#)\4Q[8Q'NNTA&X_81B0Q)0\9 MX)LTQ=G/6Y*PW4T'=O8-G^*7E5 -SGBTQB_DD8BG]4,FWYQ22Q2GA/*849"1 MY4WG/;R>(RV@$7_'9,+BTM"8ZI\JQ' MD@BO@ )X+ MQA0\T5CP[D'#YQ7;<$PCV7AU]#YRA#1>F> L"D,GN:&HP5 /W#,J5AS,:$0B MB_RL73YLD7+>S9S?JWW^7_N_8@, MKW1#3^OSSG%#[4G=O?MUP?//O8]IE^N".[I(-I'RL\\[5OAAX61?_Y*:P9T@ M*?_'YB3Y,'S[,%08O^9KO" W'1FG.!13Z%Q>*6FQP7U,;Y7;L>2A$(V=[.!Q@5S36VP@9) ^MX*0G:=!R=.@ MU;)RYSV;J79]#4P-SF'*!JHQ90/5F+*"&I@:EDP-3Z^J/'09F8C-X%9=KXW^ MEU0VNZ2R^864'4U(6$Y(^/_8R<-+SN4EE7ZGA%=+*CAP#5TS2VH(!P. M[/$%'A1(\ (4=,%".^^MW-]5W:,J;RLML+:O(E1CI0Z" ]\DI0[RP[[)21WD MA6$#):BB!)V[/77!1R+:'0'5IL5WAT/3Y#K*0W!@VEQ'A3 ,3:/KJ('TO0:K MJQ(%MF;-%\]KB^Z.Y@;Z ]=DQ@8+S=QO9H/)XLPUN;%I&X9N SE5S@_;D_XB MK'/!%M\ ^;Z)MS@A5/"3)-1S;;^V'.H8Y :F_190+4)8,*'?8'J5U\/VQ/Z+ MZ1'E^<5^;ULTD-,]-_V'EFP<]F&-* L,P7HXM<%Y".K!<8C,K/4LU.PLU/P4ZIB'*L>'[4GY+Q6$A6ZS(@Q,&FRP M>DEHA=5K0ANLN2B$50X/VY/X5Y:%DT+=B<+%BJI5+E94K72QHYI M^\[ AD;RLQJ:V+%W>0Z8Y@6,DKA2DZ,'>:4F0&O0X%5&"$CS$V6B3I3!!TPW M./M9'LIJ*76\VMW+HT'YA$I-5%5)YRGJ@4?9Z4&PO=V]R:W-H965TUCTP$AT)*Q$NB)M M;_Y]24J6)9E6E-:'7A*1?#/DO!F2P_%DQY(?/"!$P,\XHORF%0BQOK8L[@4D MQKS#UH3*D15+8BQD,WFU^#HAV-="<60YMCVP8AS2UG2B^QZ3Z81M1!12\I@ MW\0Q3M[N2,1V-RW4VG<\A:^!4!W6=++&KV1)Q//Z,9$M*]?BAS&A/&04$K*Z M:=VB:Q>-E(!&_!&2'2]\@S+EA;$?JG'OW[1LM2(2$4\H%5C^VY(9B2*E2:[C M[TQI*Y]3"1:_]]I=;;PTY@5S,F/1GZ$O@IO6J 4^6>%-))[8[C/)#.HK?1Z+ MN/X+NPQKM\#;<,'B3%BN( YI^A__S(@H"*#N"0$G$W"J OT3 MU,H%L5Z)T0 MZ&4"O:8S]#.!?M,9!IG 0'.?DJ69GF.!IY.$[2!1:*E-?6AW:6E)<$A59"U% M(D=#*2>F"YS0D+YR>"0)S%@<2V\O YP0N()Y&&T$\2''K"4F'90A#;,(PE,KIY#':UOFZ3 M&-1AU-['7AM>WO8!IN.I#??4BS9^%F10"K+OOTO-<"](S/\R!4FZC)YY&>H, MO^9K[)&;ECRD.4FVI#7]]1>B25G)E[W\X;B0.UDY\3+<=W\RN2R=K:]G4[?D=MKM.F-G M8FV+OC"AAOUQ&;4PH4:]BB[7J NA'%6BI9_3TJ^E)3]*'Y?Z[/14V*:DWU7( M>8>0OF%Y*Y77-11*^Z.-( M7MY0;)/,U\;4/%4\*.QV1Z6=I;/% $+#"FAA /7&E4O--8"ZX['Y;$&%9Q*J M-?^)X"AB'M;/8;:"#369;T6,J*E[!=9? 8 M@JK\O:O%-4!.G,O(.7#G-+W#VO"5B/IH<9I$RS$(#:O9C0%DB!8#R#Z1[*'# M@P;5YMAGSX*SZ4J^'3G5^[D1:M$(Y;Z'*A-S>!V@^N?!^?)@=)RGFRAI@EHT M0KGOH):I>R=7,Z*.DC4CZBA;,Z-.&7YX :#ZI/W#J>T, M-4KHC:ACTQNE]&;4*=-54E_N.22OJ#Y[E7DYI)&04P X9ALJ.*AO$1#@."Y6 MWF[U+;ROPJ5;I9,7[8[5%"6S/::&>@'%9+ M$SMVI?LY,O0O M5-7>T'^+AM<+&6ZFD9$"!YR\AI1#1%9R>79G*/=UDE;>TX9@ M:UTI?F%"L%A_!@1+'RN '%\Q25_64!/DOW],_P%02P,$% @ 2V!A6.N^ MULTR!@ ^S0 !D !X;"]W;W)K&ULM9MK;]LV M%(;_"N$-0PMDL21;LI,Y!A+KEF$%@@;=/@S[0$N,+50279**VW\_ZA)=8IJQ MV],OB43K/(<47Y/4:W&QI^PSWQ(BT-23BT^Z!R;-Q2XF3C.0\H3EBY.EF=&M>AY95 M!E17_)V0/>\=H[(I:TH_ER?W\R(FE:DF0]OC3049NS M#.P?O]#]JO&R,6O,R8JF_R2QV-Z,YB,4DR=D:9!=\B*:\NHOVM?7 M.L8(1047-&N"90VR)*__XZ_-C>@%F-,C 5838)T:,&D")J\#[",!TR9@>FH& MNPFP3\W@- '.J1EF3<#LU(!Y$S"O>K?NCJHO72SP_OE^,A4Q?0L91D\JM4UE'4DW0!YJ++4=>'I-8$>_KXZ\T\6/9[+;M MUDO;[RPM\)'L+I%A7R#+L":*^JSTX7\6^26RYE6XI;H=;X1C&3XQJ_"I(MP[ M/5Q5>?_'L@<_ECW4A]_NF PW5.&#GIRT*IY4O,D1WEW!90GGJ"=G].]?L@S= M"Y+Q_Q15O*N14S6RG#.N^0Y'Y&8D)P5.V#,9+7_[Q72,/U12@82YD# /$N9# MP@)(6 @$&\AOVLIOJJ,O'PH6;>4$BN@36C=2O$"Y7'G(@@CSK9RBI2Z99 POX8Y%:Q>* Q+FV@=W=NI,KB8'M]:#S.K7,/O-K %DUO"P MK=:5;<_[60<][[0][^A['K/GA*OZ71MW;K]#PEQ(F <)\R%A 20L!((--#9K M-3:#7QO-(.4'"7,A81XDS(>$!9"P$ @VD-^\E=]<.\3=9PQ%]IZW&NS"!A'B3,AX0% MD+ 0"#:0V54KLZN?N 2_4BTG%6 M&5J5M7,I[LVE$>6"HR2/"G9$7GKJN=,I*,UM:/T5M>G,#E?QH%E]15;Y_':X MB@?-&D+1ANKI6:WF=S_G-:'.H!OF$_MP"-(G.;O[347WSQ5#GP>:US\Y;P": M-X2B#25@=1*PM!)X%)BM*6;J84(;>_8P 4ES06D>*,T'I06@M!"*-M1;YXN; M/\$8-T&=<5":"TKS0&D^*"T I850M*$..X/J T'Y06@-)"*-I029TQ;NJ=\57YR![1G"E!:"T$(HV%%;GAIM:MW/Y 7]-LB(KM262?$-R,9294F&@=GA# M&_PFJ3*;7-"T'BC-!Z4%H+00BC946&=XFWK'NUWK1#1;)WFEJ@M$,,MI(4J3 M.Z'J<0S2C%V]4 >^]NO?V M@ ;IR:Y,A7VN'M! '6]0F@]*"T!I(11M^)9DYWI;>M?[F+(N$"//)"\($EN9 M=TM3Y;BFIY\K-DOA5RO79Z!I/5":#TH+0&DA%&THMLXDM_0F^3&QE1,GBFF: M8E;^I,>+-8]8LA/U._25#)7B@W2/5Y;"I7\M.\B$'BC-!Z4%H+00BC:476?, M6WIC?E5D18K+?13=2NW(\Z:>=+:D0&WZAM87Z&M3"C2A_W;" #1A"$6K=3+N M[9S("-M4NVC*E7N1B_KU\[:TW:ES6^U/>57NFM>>J2CWS>N@WH?3X>MM01\P MVR0Y1REYDJF,RYF&ULM9Q=;]LV%(;_"N$50PLTL41]Q.D2 VG$;1VZ+FC: M[6+8!2/3ME!9="DZ:8#]^%&R8IJ6?"(-IS>-[>@\I-[#'/(EK5X\2/6E7 JA MR;=57I27HZ76ZS?C<9DNQ8J7IW(M"O.;N50KKLU;M1B7:R7XK Y:Y6/J>?%X MQ;-B-+VH/[M1TPNYT7E6B!M%RLUJQ=7C6Y'+A\N1/WKZX&.V6.KJ@_'T8LT7 MXE;HS^L;9=Z-=Y19MA)%FFFN]$4DWI9:K)MCT8)45 MVY_\6R/$7H ?'@F@30#M&Q T 4'?@+ )"/L&1$U ?>OC[;W7PB5<\^F%D@]$ M55<;6O6B5K^.-GIE1350;K4RO\U,G)Y>I5\W69E522O)";G*1E(C3/\O*5N?SS;4)>OGA%7I"L()^6C+7I M6<4?ITTOWFY[08_TXC=>G)+ ?TVH1\..\&LX_%:L3XD7U>%!1W@"AU^ME6G= M.QK.GNG\QG2>3NIPZH:/339V*:&[E-":%QSAO=V4YI.R)'NY(7^_-Y^1=UJL MRG^Z]-TBPVYD56W>E&N>BLN1*2>E4/=B-/WQ!S_V?NI2&Q.68,(8$LS)2[#+ M2P#1I[](.7O(\KQ+_FUD7$=6M?E^&L;!N1E,]_NZ@ORANK:;I.=1-'&;9$A- M.H*%.\%"6#"N[K/.:@#VMF+ $$\:08([XT4[\"+^*1)AYP80EF#"&!'/R M$N_R$H-_%->\7'9)#T8-E3YNU8;XS"T,"69[# GF"'JV$_0,%/0J3>6FT*59 MMJ8BN^=WN7A-"J&[1 9)0T7>PJ+]FA\=JHS9($.".2I/=BI/X&&[44H4FO"R M%+JSIH/Q0[6=M+4]E!:S/88$PP)YNCL>];K>/][!=>$[M=,/YYXWL$2KKDL M[KTL%B=:J-6S2F-ZMNN&YBA-S[S)H=28C3(LFBNU-8$^[ *WU6-/YJJ2;%9' M*@BJ,VQHCMQ!0%O%&M7T8=%2[0O-BD1FC#MA)F#$X&Y/V;JEWN+A/ M4-MD6#179>LJ?=A6?B[%?)-O@>^SN>@4&=5,/M.A@#P*KKJ2G:#V@V'1W-,; MZS+I,R[S:6)X6LQKD2X+FDP+,&)P-VIH4SMN3 FJ;#(OFJFQ]+X5];Y]) 48, M%AGN$# IH/:#8=%%Y7&:/O8-HC/CHEK/2V%/6WO,Q*8,UAI3%J"2F.T?8@; M1T>'L?6U%+:1O;?N8]_)A?UCKVT#F#$X&[A?XT5UN4'[6\'^L<5-8,UK )O7/KL& M,&*PQJ@>%I7&GA$KZMK1<(6W?C6 #W/WIX9^N\DP<' :4,TJ*HUAT=S46+,: MQ-]A6D!UL*BT!)7&L&AN=JS7#6"OVV]:0#6]J+0$E<8:FG/\>7SE:DUO )O> M7O,"JM]%I26H-/:,6)T[W:[PU@,'L =VYX7J(4&AB!)Y_>1>N,=U1"C MTA)4&L.BN8\]6><<>OAS0XCJHU%I"2J-8='<[%B_'<)^N]?< #,&9P/57J/2 M6$-SO_A^9&H(K6L.X>/;W&ULU9QK;^.X%8;_"N$NBED@.Y;D6Y(F!I+HCDXWF.RV M'XI^4"0ZUHXD>DDZV0#[XTM=8EFV3-OHBP+S);%DGN=0\GO(0QY;-V^,?Q-+ M2B7Y(\\*<3M82KFZ'@Y%O*1Y)#ZS%2W4.PO&\TBJ0_XR%"M.HZ0RRK.A91C3 M81ZEQ6!^4YU[Y/,;MI996M!'3L0ZSR/^?D\S]G8[, #.O ZM<6E0M?AG2M_$UFM27LHS8]_* M@R"Y'1AECVA&8UDB(O7OE3[0+"M)JA^_-]#!QF=IN/WZ@^Y6%Z\NYCD2](%E M_TH3N;P=7 Y(0A?1.I-?V9M/FPN:E+R89:+Z2]Z:ML: Q&LA6=X8JQ[D:5'_ MC_YH;L26@64=,+ : ^M4@U%C,#K58-P8C$\UF#0&DU,-IHW!]%2#66,P.]7@ MLC&XW#4P#QA<-097IWHPC8]/SJ@45'_DE5[L2$;S&\[>""_;*U[YHA)=9:]D MDA9E?#Q)KMY-E9VI#21K&C3^[]F<=\&>2+ZR02T&<(J%)C[VCMQ\=L_?T M]E<:^Z&Z=YL;:'W_U,S,D%L0QK1'Y]LLFG'W[LZ=>#'O-$5PIS M>11CGX 9&4C0R"_/OOJ@#M3T+BA_I8/Y7_]B3HV_]<40$F8C80X2 MYB)A'A+F(V$!$A:"8)V@&V^";JRCSVT:J]Q4T')NI!$O5+P(LN L)ZP-%+8@ MR78,M6_UA8W6X;EA@X392)A3PZ85K$SE7^?&S?!U.Q;V6_QT>=EMX_6TL2:3 M;B._I]%XMM,H0%Y<"()U)#G92'*BE>37,F$KE,S46B&-4]FG,2WA7(TA8382 MYM2PR=8';XUGYHZ&7*1+[R27/M)E@(2%D[U8L:S9N.U_1Y+3C22G6DG^+)>4 MJU4-YRHO(5D:/:>9RD-H[_BG19VK323,1L*/21'@,D M+)SN*7,T'1T0YFPCS)E^^O[(>E_*K/>"%$P>F*HOR(L:58E:$2>-39]VM=[. MU2X29B-A#A+F(F'>;$_CYGBT._KN-]I)/0)DGT(0K"/PRXW +X\D Z]IM:&I MOJ?:OP9O[/.S1ZQ-D"1M)L*,V!TEPHS8/2?"@M:&B=N#&,G95,B/+9E;K5 M2MW"[?SH66=K'DFSH30'2G.A- ]*\Z&TH*$=TSS(9U?S;1W6U%:2_8MF M@5#F+HMRO? 4993\27YY_-(;#-#R*91F0VD.E.9":1Z4YD-I 906HFC=H&GK MJ.;X^UIZF] Z+)1F0VD.E.9":1Z4YD-I 906HFC=^&N+QJ:^:NS\OD[ENUJ! M2ZKPDGQ2:W$5++$*Q;[O.-WK<6>'QW[9U.Q.ZO;Q)@ZT3RZ4YD%I/I060&DA MBM85^6N9NSVB>UF=XM*'N@R@M!!%Z\JWK4B;^I*TRC14HIX6,:\2 M?350,TXXS:H*0#E4=^1=?25#K)]_H[$DDA&YI 5A:RFD6A&4^7U:)#0OTD4: MUS]8B+,HS?N'=6@)&TJSH32GH75RI?VH@%:G3W'I0UT&4%J(HG6CHJT\F]H: MVZ%-HW)_Z.M3KYJAM6$HS8;2'"C-A=(\*,V'T@(H+431NC^U:FO$EO%][0]9 MT HSE&9#:0Z4YD)I'I3F0VD!E!:B:-WX:VO6EKYF_1"))5&!(M*D"9'>H.BI M2>ZE 0]Z5V>+'5J-AM)<*,V#TGPH+8#20A2M*_:V:FWIJ]8/VSK?7GTL698\ M1_$WLN*L_F)M[TK#VB]3CL=[40"M3T-I#I3F0FD>E.9#:0&4%J)HW2AHZ]B6 MOHY]3A24M8*4]?TJ__Z(%],R2!*]]\71@][T[!"!5JVA-!=*\Z T'TH+H+00 M1>N&2%NUMK15.?COA_3NSEY40(O.4)K3T#J9XGAOCPKJTSO)IP_U&4!I(8I6 MRWVX]?"8G/*7ZF%%0F7YZT+6SYW8G-T\$.FN>@S0SGG'O';-GO.>>>W7CSMJ M\?73E[Y$_"55TT9&%\J5\7DV&1!>/]"H/I!L53VZYIE)R?+JY9)&:C8J&ZCW M%XS)CX/2P>:Q4O/_ E!+ P04 " !+8&%8,Y9TPW,$ "C$P &0 'AL M+W=OACTP%FT+E427I.,4V!_?(RW+MDC)Z>8][,66J.\^\KX[GDX< MKAG_+!:42O12Y*48.0LIEQ>N*Z8+6A!QSI:TA"\X$JNB(/SK%N1@9SMPG\T74@VXX^&2 MS.D#E9^6=QSNW)HES0I:BHR5B-/9R+G$%Q,<*@.-^#VC:[%WC90K3XQ]5CZ;7-,\5$ZSC2T7JU',JP_WK+?O/VGEPYHD(>LWR/[)4 M+D9.[*"4SL@JE_=L_0NM'(H4WY3E0O^B=87U'#1="6:D2Y4%R>)J!G1PG$"8A,[GB5*#W:$)XF95S-..L0$DFIJR46;FB M*?IM23E1L17H;4(ER7+Q#@P^/23H[9MWZ W*2O2X8"M!RE0,70EK4S.XTVH= M5YMU^"WK"- M3+40:%*F-+78)]WV@PY[%S2IA?&WPESYG82_DO(=:68G]^A!6@ M&YA-_&5+ILUR0_MR57&]$$LRI2,'JJ>@_)DZXQ]_P#WO)ULD3TF6G))LAI#O52>A[W(%^?]^4U(6%P"$E,2-3K M'V(F)@9'?HTY<#&J78PZ7:RJ'50TR%8H9[KJI?LIR>J4/$,E)#J;09W;ZD*M M=6XS9;2WSO>&)"8FC!J2F! <8[^AB0D*_,"N2:_6I->I2_'^!3 M%<'W8+HM-Q#@EA>L50)\7(*CD,0"\;$?-A7H(CITW]^Y[[^NP="=Q<[7[Y7! M/RZ#"8GCI@XFQ@_ZS<2WH,)^U*+$[@,"=_:JK^PF*Y+]N8W>R8(Q^DD+QFPH M+:#6CA+ONF;>=] MB"'?G AM;B1;ZB./)R8E*_3E@I*4<@6 YS/&Y/9&35"?RXV_ 5!+ P04 M" !+8&%8T2H\ZWL# !=# &0 'AL+W=O7U/7L(.1GM0/0Y"'GA9H[.ZW+:]=5R0YR MJBY$"07>R83,J<:IW+JJE$!3"\JY&WA>Y.:4%4X\LVLK&<]$I3DK8"6)JO*< MRJ^WP,5A[OC.X\('MMUIL^#&LY)N80WZ8[F2.'-;EI3E4"@F"B(AFSLW_O7" MMP ;\1>#@^J,B4EE(\1G,[E+YXYG% &'1!L*BI<]+(!SPX0ZOC2D3OM, ^R. M']G_L,EC,ANJ8"'X)Y;JW=R9.B2%C%9L?HAG&F M&09F4N1DR50B"LV*"E+R9PF2FA>CR,LE:,JX>H5\']=+\O+%*_*"L(+<[T2E MD%+-7(W2C0 W:63>UC*#,S+?TN*"A/Z(!%XP[H$OAN$WI42X9^'A,=Q%PUK7 M@M:UP/*%9_CNBD3D0-:::L":UB-R2SDM$ERR>\_X=I.FS!A"N76*"V4]WGPU MTU(H7'\M156J$4$Z7J6LV)[U].]WJ(#@R$C:M42TEO2Y4%-'EMJ< M7_O8F[G[;FJG$6'DA6W0D>1Q*WG\39)Y9X-\G^Z:_W) ]VE$Z$_[95^VLB\' M99\IM5%3GD9T9JIU33F0?\G]ZGV?],%G?&_A/1/9D1U1:T?T MCSOO&^XAR3TAYT]\O],U^3_XS&\>,/2QZ@DY/?7=3N]G&N_W5&X9'B\<,D1Y M%Q-,7=:];#W1HK3MX$9H;"[M<(?]/T@3@/&ULQ59K3]LP%/TK5B9-( %Y],W:2&W9@VEL%87MP[0/)KEM+!([L]V6_OO9 M3AH2"-&0(O&EM9U[C\\Y]S:]XQWC]R("D.@AB:F86)&4Z;EMBR""!(LSE@)5 M3U:,)UBJ+5_;(N6 0Y.4Q+;G.'T[P81:_MB<+;@_9AL9$PH+CL0F23#?SR!F MNXGE6H>#:[*.I#ZP_7&*U[ $>9LNN-K9!4I($J"",(HXK";6U#V?NXY.,!$_ M">Q$:8VTE#O&[O7F,IQ8CF8$,0120V#UM84YQ+%&4CS^YJ!6<:=.+*\/Z)^, M>"7F#@N8L_@7"64TL886"F&%-[&\9KLOD OJ:;R Q<)\HET>ZU@HV C)DCQ9 M,4@(S;[Q0VY$*4'AU"=X>8+W-*'[0D(G3^@8H1DS(^L"2^R/.=LAKJ,5FEX8 M;TRV4D.H+N-2\I6D:80_YD@?>J=!)- M.<=T#7I]@KXS"DD:LST NB!(R#TZN@")22R.T2D2 M&E:,;:G(:PIVD!.=942]%XB.T!6C,A+H(PTAK.;;2G2AW#LHGWF-@%\Q/4,= M]P1YCM>MX3/___1. YU.48B.P>N\5(B2W9\9"P7"-*QXO 2^)0$(=*.*('#V M,_C]3>&@2PF)^%-G:G9IM_Y2_8XX%RD.8&*IEX!0%X#EOW_G]IT/=8ZT!%;Q MIUOXTVU"]V^8Q#'"NKT$6BL'I#+JB-"\H8[KQ&>(/8.HWV=;W^T-G:[KCNUM M65==G#MR'*>(JU#N%91[C91_I+I$M;W>F/C:LK0$5M'8+S3VWZ)M^VWZTQ)8 MQ9]!X<^@];8=/&_'[K!7;L=,5TU<4]L."\K#1LK7R]O:GFW,>FU-6@*K"!P5 M D=OT;.C-OUI":SBC^L\#@5.ZUV;0Y;;<=1[_JZM"7O:KW9IG$F K\V4)U# M-E1F_^_%:3%)3LW\].1\IB=,,R8]PF3CZ17F:T(%BF&E()VS@>+#LXDOVTB6 MFJ'ICDDU@IEEI*9DX#I /5\Q)@\;?4$Q=_O_ %!+ P04 " !+8&%8\S^) MJ60$ !Q% &0 'AL+W=OAZ ,MC6TA$NDE:3OIUWRX>Y!I D<04GG&-\#PRY*+E"KL MBI4M-P)HE"FEB>WV>D,[I3&SYM-L[$;,IWRKDIC!C2!RFZ94/%U"PO M!V[CU5KI 7L^W= 5W(&ZW]P([-DE2A2GP&3,&1&PG%D7SGG@>%HAD_@SAKVL MM(D.9<'Y@^Y<1S.KISV"!$*E(2C^[> *DD0CH1_?"E"KM*D5J^UG])^SX#&8 M!95PQ9.O<:36,VMLD0B6=)NH6[[_!8J !AHOY(G,?LD^EQU-+!)NI>)IH8P> MI#'+_^EC041% 7',"FZAX-85^J\H>(6"5U-P7U/H%PK]]UH8% I9Z'8>>T:< M3Q6=3P7?$Z&E$4TW,O8S;>0K9KI0[I3 KS'JJ?F=XN'#Z252'9$KGF+]2:HS M>$I^IT)0G45RXH.B<2(_DE-R?^>3DP\?R0<2,_)ES;>2LDA.;86^:$0[+.Q> MYG;=5^QZY#-G:BU)P"*(#/I^N_ZD1=]&#DHBW&\XFX/;=O M\.?J_>J>*9S_9CWX;NL'9'AE57@9GO=:5:RI $-5D NL";8"7"D463R1JMP- M?IX+C MU-Y5Z38(>74AORG4'[DUH: IY$V<22ET$/:@#'O0&O8UPV"!*/I(%L!@&2MR M4D3\T11RCC:H^' ZG-0B;LKT:^$.&I$T4(*FS'!DCG58QCI\.\6$;W1:)>85 M1!CK=)_@XBSUW)3&D%M!CYU\78+YPP;1[M =>#4BFU).OS>NE. !F:.2S%$K MF5^XH@EN:TK$> X*R8XF6R!\V>37Q&DK]K&<=@GFCYHSL3X/FR*#\2O3<%RR M.6YE\YX)"/F*Q?_4EY^02X5GS(0J_*(XV;(=2-V6E6HV43PVI+VY.K6Z=2QW M[S(9=&3R@.=)R?.D(YYO[^X)U9NS\;@V>1>YK;X<2^ZDN8\8R.W(Y &Y3N_E M>-QKI?=K=M- ND.!-ZVF<;)]*/I V[1-1!*])&7O M OWX4I=(5B2/+50!_&+K,G-X9CCD'%##K9 O:L681M\#/U0C:Z7U^J+34;,5 M"Z@Z%VL6FC<+(0.JS:U<=M1:,CI/G *_0VS;ZP24A]9XF#Q[D..AB+3/0_8@ MD8J"@,H?5\P7VY&%K=<'CWRYTO&#SGBXIDLV8?IY_2#-72='F?. A8J+$$FV M&%F7^.+:(;%#8O&5LZW:N49Q*%,A7N*;N_G(LF-&S&Q:^'_QN5Z-K+Z%YFQ!(U\_BNUO+ O(C?%F MPE?)+]IFMK:%9I'2(LB<#8. A^D__9XE8L42?:5^Q)!8H%L>TG#& MJ8_N0J5E9.9+*W1VPS3EOOJ(?D'/DQMT]N$C^H!XB)Y6(E(TG*MA1QLN,6)G MEHU[E8Y+]HS[.PW/D8,_(6*3;HW[->Q^N9;&W4[XYG7*?:\X4^LRHBB2;(U-\CVP62NA=J36=L9)FUJ9C<,&O\\T_8LW^M2U5+8*7$ M.7GB' A]?$W5"K%O$=]0/RZ6NF!3!"]!B+>5S=C%7<_,^F8WBJI5'SLNR:U* M]+HYO2Y([S.5+Z9XISY#*IZB9"KK.*8P[L[HN-)Z\.U*^*>FJ4<^Q MW?J"'N0D!R#)/R.AV3R-^4'RF9E-T\$N$Q6!TFU"I6^--D)W<[.9\1GUTT=9 M.9S=LPWS$?Y8%QDX?-/I; FLE"EL%YK /JF5D-%I*7=MH963MR.H\/_NB!F$ M>Z EUI@!/1$78@>#DN#XKICA'&J+=6;[^R(NM 6&Q<7>SICY'6J--690;\2% MJL"PK&AU,T'_HN.[+4RL\5)I":VT]AE0B#5.7DMHY>05 @T?4&@- MNFX&=:#MUECM[[NXD%48%!_C"5^&?&'J/]3HBUXQB;Y,XW0D^\]=N([RQ9!F MA]2V5WB0QG/W'GH)%X()]T^K\$$!USAY+:&5DU<(.0PKN:,:[*!2RO;;:H=, MRH<(A7 BH+8XOK%F.! _T*3,K] F!-8F>QLJJ2J-"A_(I,QGY]0%%B+-MX9& MS1(>O?$QRWNL?>0-Z20-\0[K7)O]1RK+;1R\@K)16#) M=4R+S"# ,H=,RM0*Z4/@PZ+C6V3U%*C"#S(I\RO4!8'5Q?X6>5A2@";EX_5" M4CBPI&BV+31JC_#(34N^+;1RG@IIX^"3VB\<4&DU3EY+:.7D%3K,@758D_:8 M07G .@!-4HJ=G4^6\?=BLRTL>:B0SQ;&QS[OF44DTT^PZ8T6Z^0KYE1H+8+D M&PO=V]R:W-H965TSR8=H'!YR "IC9)EFE_?C90"FDU!NJUP\-%[_/P>\Q MQ]CS R:W-$:(@5]9FM.%%C-67.HZ#6.407J."Y3S.UM,,LCX*=GIM" (1I4H M2W7+,"9Z!I-<\^;5M6OBS7')TB1'UP30,LL@N;M"*3XL-%.[OW"3[&(F+NC> MO( [M$;L2W%-^)G>4J(D0SE-< X(VBZTI7D9F+805"V^)NA .\= =&6#\:TX M>1\M-$,\$4I1R 0"\I\]6J$T%23^'#\;J-;&%,+N\3W];=5YWID-I&B%TV]) MQ.*%=J&!"&UAF;(;?'B'F@ZY@A?BE%;_P:%N.S4T$):4X:P1\R?(DKS^A;\: M(SH"SAD66(W ^E>!W0CL8\'T"8'3")QC@?.$P&T$5=?UNN^5<3YDT)L3? !$ MM.8T<5"Y7ZFY7TDN!LJ:$7XWX3KFK1D.;\$-*DH2QMQP"DY\Q&"2TE/P&GQ9 M^^#DY2EX"9(T;G.>&2AU\,FRE4=Q7HBB@T^X9S%% 1YA*(!_4JN MG_U-[\OUECN5$'3N66N<=6_?) [E\6>[. M@3D3/83O.!GF;"[,[!*(:4 ;\%G7K1H2>Y /;Z^?^0"\)ZA MC/X8&CTUW1FFBUIY20L8HH7&BR%%9(\T[]4+)T)5C59JYCR ,-.2AEC1W8*F&^2EB@"-9+ MR*1-R.2_UIZ)RA2IA/DJ88$B6"]%TS9%4^6U1TH&<52C5(8, M%,%Z?E^T?E_\Q>^.S[0J3EV[P0G_FJLOGPY9+X6/M;Z&N=TYQ+6=F6L?F:\R M:* (UC-_UIH_DYI?3P;@^,,:7*

A2&./S8U*F*\2 M%BB"]1)H&@]K(N._3BD-7E&6E-)\I;1 %:V?J,[BU92^:\NB('C/*UI>9AM$ M1*J::73.5-)\I;2@H75+,B]%XJ\MR?UT6 _IL)3/\W+D:-^M MH=7(HYE^J-G$.6X6J'JVOIT/BVI3NB!\[C0NIX]V5NFRNJ')QF"3 J5K9KVS M498ALJMV*"D?KV7.ZCVS]FJ["[JL]O[TA^;U%NHG2'9)3D&*MEQJG$]Y7TB] M*UF?,%Q4VVX;S!C.JL,8P0@1T8#?WV+,[D]$@'9OV/L#4$L#!!0 ( $M@ M85AE-9:"8@( &4% 9 >&PO=V]R:W-H965T,RRA+_=Y<9ZE:6\$ESC68=5TSO9NB4-MQU(_V&PM> M5M9MQ%G:L!+OT7YJYII6<8=2\!JEX4J"QM4XFO2OIR/G[QT^<]R: QO<399* M/;C%K!A'/2<(!>;6(3#Z;? &A7! ).-'BQEUE"[PT-ZCO_-WI[LLF<$;);[P MPE;CZ%4$!:[86MB%VK[']CY>8*Z$\5_8!M_1(()\;:RJVV!24',9_NRQS<-! MP&!X(B!I Q*O.Q!YE;?,LBS5:@O:>1.:,_Q5?32)X](5Y=YJ.N449[.9+(A$ M[^ >2\JU-? 2)D7!7Q)687'^/NE?]MZT!?>31 M71]OLB2--T<$C3I!H_\4%(H"N:L*-%KE: PP&B!>TJF*!5FC?V1=_24K/GCZ M->K2-[B!7*VE#5W0[78S9!):Y[=[&$!W3)=<&A"XHM#>Q17QZM#486%5XQMI MJ2RUI3M0!0 M@QL !D !X;"]W;W)K&ULM5E;?T'>$9GN6?RTVE'+PDB99<65L.-]>FF:QW-"4%!=L2S-QYXGE*>'B-%^; MQ3:G9%4%I8F)+,LU4Q)GQGQ67;O+YS.VXTF\/*".9]MR9H^4/YE>Y>+,[-E6<4IS8J892"G3U?&)W@9(50&5(C?8[HO MCHY!*>61L:_ER?XIR$UVC;+P./C _M/ ME7@AYI$4=,&2/^(5WUP9O@%6](GL$G[/]C_31A N^98L*:I?L*^Q'C; <% M.#\<@INL'HAE0L]"RDF<%!_%_2\/(3C[\!%\ '$&?MNP74&R53$SN7B>DM5< M-FU?UVVC@;9M<,LROBE E*WH2A,?CL<'(_&FZ(>V,]"A,Z[1*.$O)+L -OP! M( LYFN=9O#WX#N,@GNZ93F/LW5O//SYJX"# M&T[3XF]=YFMN1\]=SGZ7Q98LZ94AIK>"YL_4F'__'72M'W7=/B59."59-!%9 M+T%.FR!GC'U^3Y]IMJ/:%Z^.=*O(LE8\SQ'&MCLSGX_[58/R'.3U4:&*\CPH MHR(5Y4/'[U ]B;B5B$IE>*],;E1E2\2XLXWH:$84#D+2<7_ZM+NCT>LI#0-=V M),4JR/.E7@E5C.TZ4)*L@I!]U"\]R7XKV1^5')$\$X.X:(8O>*1B(J7-F :< MO.@3[:L90C:2A*L@Q_+D7*N@ +H24Z2"_, 92';0*@]&E3_LMMOD%2PVPK*" M6Y()[UD6%9W:4:)3*\:49.&49-%$9+UL0*MS>]8W+.H-^40YFI0MG)0MFHJM MGZ8C4P[?7=J;T-X,A2U+>N47.I@;8.FE#S4P#V,L39V1#A;XOJN?'2#JA**I M"GS#U*M[$"JR590G2K.L6D5!WP[D*J^!(82'3 WLG#4<]85OKO0-3:]]* M6 M,="1Y:H81ZZ@D8[(M9P!K9U)A>,N]>1RW_#U!&==87CWO6=11]JK*4/+5F^QNY:@9)WC>&U;&S+':"!E7/%0 ]T?A:. M&]K/?$-SK<;1N)/KR)1LX:1LT51L_0QT5AMZW[+.>HL-QKUBF\N]@U-/X>29@TFL.4\ M:T 0RT5/ T(6'D@SZHPK&C>N)U=[I!I+Z,G%7@>"LJ?3@#"2'9T&9#L#?@YU M+A:-N]AWEOJ&]?B;V3G"GOPQ1P=S+-G&A#H8% 99_L"AQ=F>,M#-HTV%E.;K M:C>G $NVRWC]%;F]VNX8?:KV2:3KU_!R 3770W@9U?M!'7V]/75+\G6<%2"A M3Z(IZZ+4JFZ?&N+'0>:&E%9V)[C3.V2YI45S,W8/0_F;"^+ MO()[3L2^+"G_^PX*=EQ8KO4X\#'?9E(/V,%\1[?P /+WW3U7/;NEI'D)EY.XCA:8&9]R.(J3-M%;63'V67?>I O+T2N" M92(ZCZ.\ 2BD*3 MU#J^-%"KC:F%I^U'>FPVKS:SH@*6K/@C3V6VL*XLDL*&[@OYD1U?0[.AB>:M M62',+SG6.1=9[(5G9B-4*RKRJ_^G7YD6<"-SQ,P*O$7CG"OQ&X#\53)X1 MC!O!^-P(DT8P.3?"M!%,SXTP:P0SDZSZ[9K4A%328,[9D7 ]6]%TP^37J%5& M\DI;\4%R]317.AD\[%<"ONRADB0ZZ-\7(4B:%^(E>45^)C81&>4@YK94P;3$ M7C?@L 9[SX!]\IY5,A,DJE)(>_3QL/YZ0&^K3;8[]1YW>N<- F-8C8CG_DH\ MQQOWK&/_%SWYS]$[J?!;T_F& MYY]KNC_?J1GDC812_-6SO+L:-^['Z=/Z1NSH&A:6.HX%\ -8P2\_N5/GM[X\ M8\)"3%B$"8LQ80D2K..6<>N6\1 ]6%*1D30_Y"E4J5#WS+I01U)*=L#)FI6E MNM#,(45>Y!79B_J!&7G9YZ7!8)=Z"1,6UK"9@>E/B$/@C%QW;A]./7+.I+AO MDN]W)R7?F=3)U:3-U60X5P45@MP26J6D;M_UY6 0N6H]<77KKD'_(TW.FSPZ#W$OM@ D+,6$1)BS&A"5(L(YM MKEO;7.->1->8;L&$A9BP"!,68\(2)%C'+:[SK53B_,BKJ(DV?'TLA]=TJ4]0 M:1$J+4:E)5BTVBOV286M!+XUQ5.ALKZO9%WW:$?; NVM*4L^&0_=F\CM&8]U M0==4]+[AZVKP>\JW>25( 1L5RAG-U+<[KPNL=4>RG:GOK9B4K#3-#&@*7$]0 MSS>,R<>.#M"6N8-_ 5!+ P04 " !+8&%8) !6QEJ())BV1*Y]38KEZ$9:$934L@Y2+L=3IQF%,NR7@HJ_PZ-V4P M5Y4T(])O0X&[?4Y'I!N_)X&3FZB4C='!=BV'2\;.DGU#&A"_WA;="OR,./,33EG=:T\)F,<;#3,GM MFD3$!:PNS5EP3\6(3*C@,\V!E=&]BK;6;$.K)=LF]90TW0RK@/ZNVI.>U>V]R+=H.#W MRGRJ['!DW8?:9#>:97Q5]U=9:P!3[^+JM"C$^J/@"YDS-_AG)QP/Z887+)7F M#S8;E,K$:&-!G 4&Y%O<*03VZ3!K.+"<-GTECQ-F7QT4K#RAL[L(7Y/WSZ?LHQ6 MPDQ;<$2V[:\LY56>M$_=P$0T3VW;7V!XW;@]!]I<7*9LQ=))T]6+6=T,;,-F M;2X@'"+7]>5',([#_ A@6![, <9Q+"S/_S2> 3H>AV'>!EYD@'(&*,>Q?,BD M_F!Y_)S$7OZ1)DD4Q3$VHY.)U\$$F[RK<_K(U_@502P,$% @ 2V!A6)>*NQS $P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W M\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'1UHZ6RSH4B7I)REOWXG*6ZI1#GTY>(G2Z1,?SJ*]Y&T/MQ;=[>R]D[\ M5VGC9\DVA-W9:.2++532_VYW8+!F;5TE YZZS'PZJJ0R MR<_ZQO3L5>>;526H6'6=(>:TA$I8RJU'I9,NHI;<$$5SXJ7#>2-7/FV),C5M42067(Z MQ@;7ROG07M&V+Y%Q#WAQ=U8'>ZET #>7 ?YPMMXILVF:P;L81;?1QN'PV07Q MS/U*&.UZK0J8VZ*NP(0NC@YT VC\5NU\(HRL8)9FL,)=E2TC)X\IP7@H!1YYJU6)'*7X)+4T!8@(,B4@TR-"_IM&D!D! MF1T%1; O(M+^3"@<+5527=@[!KL52;"/(= ?F.%_(:]F!J$-=0V(U137T$]IX >\\+-H=" M2]<%#P,V5WN%75YB]GZ0+H"D M8I@=M?RA@3=F54.-O>8K?BPX=1*VS5&Z.4*";,IK@R98V]^""6L&DN[06- MDL.$V0Y_RZ\6TYI63Z$H,4R8S8#*#YAR 9__WN.54AY(F3VPK%<>OM5XD?B, M1@TQ%Y7^4^;T3TY">G/.E%QC,!MA8!HBWMPTHO>_Q8R4(5)F0[RH^HXTQJ1$ MD3*+(A;^8 PI/:3,>HC-/PA'*2)E5L1+4X!'T!B3LD7*; MR)M ?TI0[4F9W M/)/:8']3(DF914+GQGBIFU%JR9C5,I0;3\1Y6;:',L:D3),QFV88\T=(8TS* M--D13'."9\W&*V;W&)/HJIM2U^C/N;.+WGE(5R9@OU)IAT-"D+Y:^X X:8 MCX^J6#M;-4D^QJ0LE#-;Z GF1>UCU13PMSBD+YK;3*-[,(4BE>PN,G#)0 M_NI+H%Y&BC$I ^7,!AK"?#QLLF;\OR1EH.DK;[$-]O>4DL^T>^?@\*)!"6ME MH/R"K7LL+Z0N%DXT']T_)/FTV>=/@@*FC1NNWB\ M7%FU_:')EV6_#EVSW#7K&'0RF8;^YXSJ9?9SYFAQ[N)?)K:KU7897]OEYR$> M\R^#PU?;[](FQER-%DV_CGE>A=/^?CJ%ZT'&E\G5Z.UC7O5O'U*%TD$*05H^ MR"#(R@BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$>BOJ MK01Z&^IM!'H;ZFT$>AOJ;01ZVV"SA$!O0[V-0&]#O8U ;T.]C4!O0[V-0&]# MO8U ;T.]C4!O1[V=0&]'O9U ;T>]G4!O1[V=0&\?;'83Z.VHMQ/H[:BW$^CM MJ+<3Z.VHMQ/H[:BW$^A=H]XU@=XUZEW_I]XIG_UW7VSI;#)^VUGRO6U5UGZ2+$.P#XSY;$F5 M]JFQ5,>1N7&5#O'1+9C5V4HOB(G!8,0R4P>J0S\T-9+I^(GF>EV&WO,VOO:% MJ2>)H](GON[ M,:N__CG:W--*%_4QG[5_H*>?4$L! A0#% @ 2V!A6 =!36*! L0 M ! ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 M" !+8&%8S:",X^X K @ $0 @ &O 9&]C4')O<',O M8V]R92YX;6Q02P$"% ,4 " !+8&%8F5R<(Q & "<)P $P M @ ', 0 >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( $M@85C% M[8QX-08 *@C 8 " @0T( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ M2V!A6!H1ILY?! WQ !@ ("!L14 'AL+W=O&PO=V]R M:W-H965T&UL4$L! A0#% @ 2V!A6 8#-^(0"P 3F\ M !@ ("!?RD 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A6"[[=D$,#P ^2H !@ ("! M]44 'AL+W=O&UL4$L! A0#% @ 2V!A6+H7Z!-="0 BR$ !D M ("!_%< 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ 2V!A6/2<)(1(!0 00X !D ("!\G< 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A M6)4I/S64 @ " 8 !D ("!+8< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A6#G9Y2$H! 8@D M !D ("!MI, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A6 F'>OW @ S08 !D M ("!NK 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ 2V!A6%N??&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A6"5, MS5WK P >@@ !D ("!T,< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A6*1MA;DK @ $ 4 !D M ("!,], 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ 2V!A6,IJY-(7 P >@X !D ("! M2]P 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ 2V!A6 8 !($>!@ #AP !D ("!*^L 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 2V!A6-$J/.M[ P 70P !D M ("!?!$! 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ 2V!A6+:2+ /_! %!\ !D ("!%AT! M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M2V!A6*)O2>M0!0 @QL !D ("!_"@! 'AL+W=O&UL4$L! A0#% @ 2V!A6)>*NQS $P( L M ( !F#4! %]R96QS+RYR96QS4$L! A0#% @ 2V!A6(R>>=9-! M]R$ \ ( !@38! 'AL+W=O : " ?LZ 0!X;"]? M 3 " ?P\ 0!;0V]N=&5N=%]4>7!E&UL4$L%!@ 0 [ #L %! / ^ 0 $! end XML 63 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 64 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 66 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.0.1 html 166 236 1 true 36 0 false 6 false false R1.htm 0000001 - Document - Cover Page Sheet http://www.amsoftware.com/role/CoverPage Cover Page Cover 1 false false R2.htm 0000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) Sheet http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited Condensed Consolidated Balance Sheets (Unaudited) Statements 2 false false R3.htm 0000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) Sheet http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) Statements 3 false false R4.htm 0000004 - Statement - Condensed Consolidated Statements of Operations (Unaudited) Sheet http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited Condensed Consolidated Statements of Operations (Unaudited) Statements 4 false false R5.htm 0000005 - Statement - Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical) Sheet http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical) Statements 5 false false R6.htm 0000006 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) Sheet http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited Condensed Consolidated Statements of Shareholders' Equity (Unaudited) Statements 6 false false R7.htm 0000007 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) Sheet http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited Condensed Consolidated Statements of Cash Flows (Unaudited) Statements 7 false false R8.htm 0000008 - Disclosure - Presentation and Summary of Significant Accounting Policies Sheet http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPolicies Presentation and Summary of Significant Accounting Policies Notes 8 false false R9.htm 0000009 - Disclosure - Revenue Recognition Sheet http://www.amsoftware.com/role/RevenueRecognition Revenue Recognition Notes 9 false false R10.htm 0000010 - Disclosure - Declaration of Dividend Payable Sheet http://www.amsoftware.com/role/DeclarationofDividendPayable Declaration of Dividend Payable Notes 10 false false R11.htm 0000011 - Disclosure - Earnings Per Common Share Sheet http://www.amsoftware.com/role/EarningsPerCommonShare Earnings Per Common Share Notes 11 false false R12.htm 0000012 - Disclosure - Acquisitions Sheet http://www.amsoftware.com/role/Acquisitions Acquisitions Notes 12 false false R13.htm 0000013 - Disclosure - Divestitures Sheet http://www.amsoftware.com/role/Divestitures Divestitures Notes 13 false false R14.htm 0000014 - Disclosure - Stock-Based Compensation Sheet http://www.amsoftware.com/role/StockBasedCompensation Stock-Based Compensation Notes 14 false false R15.htm 0000015 - Disclosure - Fair Value of Financial Instruments Sheet http://www.amsoftware.com/role/FairValueofFinancialInstruments Fair Value of Financial Instruments Notes 15 false false R16.htm 0000016 - Disclosure - Stock Repurchases Sheet http://www.amsoftware.com/role/StockRepurchases Stock Repurchases Notes 16 false false R17.htm 0000017 - Disclosure - Comprehensive Income Sheet http://www.amsoftware.com/role/ComprehensiveIncome Comprehensive Income Notes 17 false false R18.htm 0000018 - Disclosure - Industry Segments Sheet http://www.amsoftware.com/role/IndustrySegments Industry Segments Notes 18 false false R19.htm 0000019 - Disclosure - Major Clients Sheet http://www.amsoftware.com/role/MajorClients Major Clients Notes 19 false false R20.htm 0000020 - Disclosure - Contingencies Sheet http://www.amsoftware.com/role/Contingencies Contingencies Notes 20 false false R21.htm 0000021 - Disclosure - Subsequent Event Sheet http://www.amsoftware.com/role/SubsequentEvent Subsequent Event Notes 21 false false R22.htm 9954471 - Disclosure - Presentation and Summary of Significant Accounting Policies (Policies) Sheet http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies Presentation and Summary of Significant Accounting Policies (Policies) Policies http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPolicies 22 false false R23.htm 9954472 - Disclosure - Revenue Recognition (Tables) Sheet http://www.amsoftware.com/role/RevenueRecognitionTables Revenue Recognition (Tables) Tables http://www.amsoftware.com/role/RevenueRecognition 23 false false R24.htm 9954473 - Disclosure - Earnings Per Common Share (Tables) Sheet http://www.amsoftware.com/role/EarningsPerCommonShareTables Earnings Per Common Share (Tables) Tables http://www.amsoftware.com/role/EarningsPerCommonShare 24 false false R25.htm 9954474 - Disclosure - Acquisitions (Tables) Sheet http://www.amsoftware.com/role/AcquisitionsTables Acquisitions (Tables) Tables http://www.amsoftware.com/role/Acquisitions 25 false false R26.htm 9954475 - Disclosure - Divestitures (Tables) Sheet http://www.amsoftware.com/role/DivestituresTables Divestitures (Tables) Tables http://www.amsoftware.com/role/Divestitures 26 false false R27.htm 9954476 - Disclosure - Stock-Based Compensation (Tables) Sheet http://www.amsoftware.com/role/StockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://www.amsoftware.com/role/StockBasedCompensation 27 false false R28.htm 9954477 - Disclosure - Fair Value of Financial Instruments (Tables) Sheet http://www.amsoftware.com/role/FairValueofFinancialInstrumentsTables Fair Value of Financial Instruments (Tables) Tables http://www.amsoftware.com/role/FairValueofFinancialInstruments 28 false false R29.htm 9954478 - Disclosure - Industry Segments (Tables) Sheet http://www.amsoftware.com/role/IndustrySegmentsTables Industry Segments (Tables) Tables http://www.amsoftware.com/role/IndustrySegments 29 false false R30.htm 9954479 - Disclosure - Presentation and Summary of Significant Accounting Policies - Additional Information (Details) Sheet http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails Presentation and Summary of Significant Accounting Policies - Additional Information (Details) Details 30 false false R31.htm 9954480 - Disclosure - Revenue Recognition - Additional Information (Details) Sheet http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails Revenue Recognition - Additional Information (Details) Details 31 false false R32.htm 9954481 - Disclosure - Revenue Recognition - Summary of Contract Balances (Details) Sheet http://www.amsoftware.com/role/RevenueRecognitionSummaryofContractBalancesDetails Revenue Recognition - Summary of Contract Balances (Details) Details 32 false false R33.htm 9954482 - Disclosure - Revenue Recognition - Remaining Performance Obligation (Details) Sheet http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails Revenue Recognition - Remaining Performance Obligation (Details) Details 33 false false R34.htm 9954483 - Disclosure - Revenue Recognition - Disaggregated Revenue (Details) Sheet http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails Revenue Recognition - Disaggregated Revenue (Details) Details 34 false false R35.htm 9954484 - Disclosure - Declaration of Dividend Payable (Details) Sheet http://www.amsoftware.com/role/DeclarationofDividendPayableDetails Declaration of Dividend Payable (Details) Details http://www.amsoftware.com/role/DeclarationofDividendPayable 35 false false R36.htm 9954485 - Disclosure - Earnings Per Common Share - Additional Information (Details) Sheet http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails Earnings Per Common Share - Additional Information (Details) Details 36 false false R37.htm 9954486 - Disclosure - Earnings Per Common Share - Basic Earnings Per Common Share (Details) Sheet http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails Earnings Per Common Share - Basic Earnings Per Common Share (Details) Details 37 false false R38.htm 9954487 - Disclosure - Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details) Sheet http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details) Details 38 false false R39.htm 9954488 - Disclosure - Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details) Sheet http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details) Details 39 false false R40.htm 9954489 - Disclosure - Acquisitions - Additional Information (Details) Sheet http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails Acquisitions - Additional Information (Details) Details 40 false false R41.htm 9954490 - Disclosure - Acquisitions - Allocation of Total Purchase Price (Details) Sheet http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails Acquisitions - Allocation of Total Purchase Price (Details) Details 41 false false R42.htm 9954491 - Disclosure - Divestitures - Additional Information (Details) Sheet http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails Divestitures - Additional Information (Details) Details 42 false false R43.htm 9954492 - Disclosure - Divestitures - Earning from Discontinued Operations (Details) Sheet http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails Divestitures - Earning from Discontinued Operations (Details) Details 43 false false R44.htm 9954493 - Disclosure - Divestitures - Current Assets and Current Liabilities from Discontinued Operations (Details) Sheet http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails Divestitures - Current Assets and Current Liabilities from Discontinued Operations (Details) Details 44 false false R45.htm 9954494 - Disclosure - Stock-Based Compensation- Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity (Details) Sheet http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails Stock-Based Compensation- Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity (Details) Details 45 false false R46.htm 9954495 - Disclosure - Stock-Based Compensation- Narrative (Details) Sheet http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails Stock-Based Compensation- Narrative (Details) Details 46 false false R47.htm 9954496 - Disclosure - Fair Value of Financial Instruments (Details) Sheet http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails Fair Value of Financial Instruments (Details) Details http://www.amsoftware.com/role/FairValueofFinancialInstrumentsTables 47 false false R48.htm 9954497 - Disclosure - Stock Repurchases (Details) Sheet http://www.amsoftware.com/role/StockRepurchasesDetails Stock Repurchases (Details) Details http://www.amsoftware.com/role/StockRepurchases 48 false false R49.htm 9954498 - Disclosure - Industry Segments - Additional Information (Details) Sheet http://www.amsoftware.com/role/IndustrySegmentsAdditionalInformationDetails Industry Segments - Additional Information (Details) Details 49 false false R50.htm 9954499 - Disclosure - Industry Segments - Segment Information (Details) Sheet http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails Industry Segments - Segment Information (Details) Details 50 false false R51.htm 9954500 - Disclosure - Subsequent Event (Details) Sheet http://www.amsoftware.com/role/SubsequentEventDetails Subsequent Event (Details) Details http://www.amsoftware.com/role/SubsequentEvent 51 false false All Reports Book All Reports amswa-20240131.htm amswa-20240131.xsd amswa-20240131_cal.xml amswa-20240131_def.xml amswa-20240131_lab.xml amswa-20240131_pre.xml http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 69 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "amswa-20240131.htm": { "nsprefix": "amswa", "nsuri": "http://www.amsoftware.com/20240131", "dts": { "inline": { "local": [ "amswa-20240131.htm" ] }, "schema": { "local": [ "amswa-20240131.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd" ] }, "calculationLink": { "local": [ "amswa-20240131_cal.xml" ] }, "definitionLink": { "local": [ "amswa-20240131_def.xml" ] }, "labelLink": { "local": [ "amswa-20240131_lab.xml" ] }, "presentationLink": { "local": [ "amswa-20240131_pre.xml" ] } }, "keyStandard": 213, "keyCustom": 23, "axisStandard": 17, "axisCustom": 0, "memberStandard": 26, "memberCustom": 10, "hidden": { "total": 7, "http://xbrl.sec.gov/dei/2023": 5, "http://www.amsoftware.com/20240131": 1, "http://fasb.org/us-gaap/2023": 1 }, "contextCount": 166, "entityCount": 1, "segmentCount": 36, "elementCount": 379, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 803, "http://xbrl.sec.gov/dei/2023": 30 }, "report": { "R1": { "role": "http://www.amsoftware.com/role/CoverPage", "longName": "0000001 - Document - Cover Page", "shortName": "Cover Page", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "longName": "0000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "longName": "0000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "longName": "0000004 - Statement - Condensed Consolidated Statements of Operations (Unaudited)", "shortName": "Condensed Consolidated Statements of Operations (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-27", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R5": { "role": "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "longName": "0000005 - Statement - Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)", "shortName": "Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:EarningsPerShareDiluted", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": null }, "R6": { "role": "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "longName": "0000006 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)", "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-64", "name": "us-gaap:CommonStockSharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-64", "name": "us-gaap:CommonStockSharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "longName": "0000007 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)", "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R8": { "role": "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPolicies", "longName": "0000008 - Disclosure - Presentation and Summary of Significant Accounting Policies", "shortName": "Presentation and Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.amsoftware.com/role/RevenueRecognition", "longName": "0000009 - Disclosure - Revenue Recognition", "shortName": "Revenue Recognition", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.amsoftware.com/role/DeclarationofDividendPayable", "longName": "0000010 - Disclosure - Declaration of Dividend Payable", "shortName": "Declaration of Dividend Payable", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "c-1", "name": "amswa:DeclarationOfDividendPayableDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "amswa:DeclarationOfDividendPayableDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.amsoftware.com/role/EarningsPerCommonShare", "longName": "0000011 - Disclosure - Earnings Per Common Share", "shortName": "Earnings Per Common Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.amsoftware.com/role/Acquisitions", "longName": "0000012 - Disclosure - Acquisitions", "shortName": "Acquisitions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.amsoftware.com/role/Divestitures", "longName": "0000013 - Disclosure - Divestitures", "shortName": "Divestitures", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.amsoftware.com/role/StockBasedCompensation", "longName": "0000014 - Disclosure - Stock-Based Compensation", "shortName": "Stock-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.amsoftware.com/role/FairValueofFinancialInstruments", "longName": "0000015 - Disclosure - Fair Value of Financial Instruments", "shortName": "Fair Value of Financial Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.amsoftware.com/role/StockRepurchases", "longName": "0000016 - Disclosure - Stock Repurchases", "shortName": "Stock Repurchases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:TreasuryStockTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:TreasuryStockTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.amsoftware.com/role/ComprehensiveIncome", "longName": "0000017 - Disclosure - Comprehensive Income", "shortName": "Comprehensive Income", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ComprehensiveIncomeNoteTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ComprehensiveIncomeNoteTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.amsoftware.com/role/IndustrySegments", "longName": "0000018 - Disclosure - Industry Segments", "shortName": "Industry Segments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.amsoftware.com/role/MajorClients", "longName": "0000019 - Disclosure - Major Clients", "shortName": "Major Clients", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "c-1", "name": "amswa:MajorClientsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "amswa:MajorClientsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.amsoftware.com/role/Contingencies", "longName": "0000020 - Disclosure - Contingencies", "shortName": "Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.amsoftware.com/role/SubsequentEvent", "longName": "0000021 - Disclosure - Subsequent Event", "shortName": "Subsequent Event", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies", "longName": "9954471 - Disclosure - Presentation and Summary of Significant Accounting Policies (Policies)", "shortName": "Presentation and Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "22", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.amsoftware.com/role/RevenueRecognitionTables", "longName": "9954472 - Disclosure - Revenue Recognition (Tables)", "shortName": "Revenue Recognition (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.amsoftware.com/role/EarningsPerCommonShareTables", "longName": "9954473 - Disclosure - Earnings Per Common Share (Tables)", "shortName": "Earnings Per Common Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicByCommonClassTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicByCommonClassTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.amsoftware.com/role/AcquisitionsTables", "longName": "9954474 - Disclosure - Acquisitions (Tables)", "shortName": "Acquisitions (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.amsoftware.com/role/DivestituresTables", "longName": "9954475 - Disclosure - Divestitures (Tables)", "shortName": "Divestitures (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.amsoftware.com/role/StockBasedCompensationTables", "longName": "9954476 - Disclosure - Stock-Based Compensation (Tables)", "shortName": "Stock-Based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationNonemployeeDirectorStockAwardPlanActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationNonemployeeDirectorStockAwardPlanActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsTables", "longName": "9954477 - Disclosure - Fair Value of Financial Instruments (Tables)", "shortName": "Fair Value of Financial Instruments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.amsoftware.com/role/IndustrySegmentsTables", "longName": "9954478 - Disclosure - Industry Segments (Tables)", "shortName": "Industry Segments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails", "longName": "9954479 - Disclosure - Presentation and Summary of Significant Accounting Policies - Additional Information (Details)", "shortName": "Presentation and Summary of Significant Accounting Policies - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "30", "firstAnchor": { "contextRef": "c-118", "name": "amswa:EquityOwnershipPercentage", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": null }, "R31": { "role": "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails", "longName": "9954480 - Disclosure - Revenue Recognition - Additional Information (Details)", "shortName": "Revenue Recognition - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.amsoftware.com/role/RevenueRecognitionSummaryofContractBalancesDetails", "longName": "9954481 - Disclosure - Revenue Recognition - Summary of Contract Balances (Details)", "shortName": "Revenue Recognition - Summary of Contract Balances (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:ContractWithCustomerLiability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:ContractWithCustomerLiability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails", "longName": "9954482 - Disclosure - Revenue Recognition - Remaining Performance Obligation (Details)", "shortName": "Revenue Recognition - Remaining Performance Obligation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails", "longName": "9954483 - Disclosure - Revenue Recognition - Disaggregated Revenue (Details)", "shortName": "Revenue Recognition - Disaggregated Revenue (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-87", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R35": { "role": "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails", "longName": "9954484 - Disclosure - Declaration of Dividend Payable (Details)", "shortName": "Declaration of Dividend Payable (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": null }, "R36": { "role": "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails", "longName": "9954485 - Disclosure - Earnings Per Common Share - Additional Information (Details)", "shortName": "Earnings Per Common Share - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "c-1", "name": "amswa:ConvertibleStockConversionRatio", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-27", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R37": { "role": "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "longName": "9954486 - Disclosure - Earnings Per Common Share - Basic Earnings Per Common Share (Details)", "shortName": "Earnings Per Common Share - Basic Earnings Per Common Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:IncomeLossFromContinuingOperationsPerBasicShare", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-98", "name": "us-gaap:EarningsPerShareBasicDistributed", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R38": { "role": "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "longName": "9954487 - Disclosure - Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details)", "shortName": "Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-98", "name": "us-gaap:DilutiveSecurities", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R39": { "role": "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails", "longName": "9954488 - Disclosure - Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details)", "shortName": "Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-30", "name": "amswa:ReallocationOfUndistributedEarnings", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R40": { "role": "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "longName": "9954489 - Disclosure - Acquisitions - Additional Information (Details)", "shortName": "Acquisitions - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-101", "name": "us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R41": { "role": "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails", "longName": "9954490 - Disclosure - Acquisitions - Allocation of Total Purchase Price (Details)", "shortName": "Acquisitions - Allocation of Total Purchase Price (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:Goodwill", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-101", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R42": { "role": "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "longName": "9954491 - Disclosure - Divestitures - Additional Information (Details)", "shortName": "Divestitures - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodBeforeIncomeTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-121", "name": "us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodBeforeIncomeTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R43": { "role": "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "longName": "9954492 - Disclosure - Divestitures - Earning from Discontinued Operations (Details)", "shortName": "Divestitures - Earning from Discontinued Operations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-124", "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R44": { "role": "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "longName": "9954493 - Disclosure - Divestitures - Current Assets and Current Liabilities from Discontinued Operations (Details)", "shortName": "Divestitures - Current Assets and Current Liabilities from Discontinued Operations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-120", "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R45": { "role": "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails", "longName": "9954494 - Disclosure - Stock-Based Compensation- Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity (Details)", "shortName": "Stock-Based Compensation- Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails", "longName": "9954495 - Disclosure - Stock-Based Compensation- Narrative (Details)", "shortName": "Stock-Based Compensation- Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:ShareBasedCompensation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-27", "name": "us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R47": { "role": "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails", "longName": "9954496 - Disclosure - Fair Value of Financial Instruments (Details)", "shortName": "Fair Value of Financial Instruments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.amsoftware.com/role/StockRepurchasesDetails", "longName": "9954497 - Disclosure - Stock Repurchases (Details)", "shortName": "Stock Repurchases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:TreasuryStockValueAcquiredCostMethod", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-97", "name": "us-gaap:TreasuryStockSharesAcquired", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R49": { "role": "http://www.amsoftware.com/role/IndustrySegmentsAdditionalInformationDetails", "longName": "9954498 - Disclosure - Industry Segments - Additional Information (Details)", "shortName": "Industry Segments - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails", "longName": "9954499 - Disclosure - Industry Segments - Segment Information (Details)", "shortName": "Industry Segments - Segment Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-27", "name": "amswa:PaymentsToAcquirePropertyPlantAndEquipmentIncludingGainLossOnDispositionOfPropertyPlantEquipment", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } }, "R51": { "role": "http://www.amsoftware.com/role/SubsequentEventDetails", "longName": "9954500 - Disclosure - Subsequent Event (Details)", "shortName": "Subsequent Event (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-27", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-166", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "amswa-20240131.htm", "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Accounting Policies [Abstract]", "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Accounts Payable, Current", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r15", "r679" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Billed", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r251", "r252" ] }, "us-gaap_AccountsReceivableNetCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrentAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Trade accounts receivable, net", "label": "Accounts Receivable, after Allowance for Credit Loss, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment, accumulated depreciation", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r41", "r156", "r508" ] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Additional paid-in capital", "label": "Additional Paid in Capital, Common Stock", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r94" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Additional paid-in capital", "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r414", "r415", "r416", "r554", "r716", "r717", "r718", "r744", "r761" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r54", "r55", "r380" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments to reconcile net earnings to net cash provided by operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AllOtherSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllOtherSegmentsMember", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Other Segments [Member]", "documentation": "Operating segments classified as other. Excludes intersegment elimination and reconciling items." } } }, "auth_ref": [ "r218", "r234", "r235", "r236", "r237", "r238" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Allowance for doubtful accounts receivable", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r164", "r253", "r292" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Amendment Flag", "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of acquisition-related intangibles", "label": "Amortization of Intangible Assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r36", "r40" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Options to purchase excluded (in shares)", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r210" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r130", "r160", "r176", "r221", "r236", "r242", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r429", "r431", "r448", "r503", "r591", "r679", "r691", "r737", "r738", "r746" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "ASSETS", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r152", "r165", "r176", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r429", "r431", "r448", "r679", "r737", "r738", "r746" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets:", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsFairValueDisclosure", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "label": "Assets, Fair Value Disclosure", "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r67" ] }, "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 }, "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets of discontinued operations", "totalLabel": "Current assets of discontinued operations", "label": "Disposal Group, Including Discontinued Operation, Assets, Current", "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r2", "r73", "r87", "r116", "r117", "r150", "r151" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails": { "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "U.S. Treasury securities", "label": "Debt Securities, Available-for-Sale", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r256", "r298", "r498", "r724" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type", "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Basis of Presentation", "label": "Basis of Accounting, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition, Acquiree [Domain]", "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r426", "r675", "r676" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition [Axis]", "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r58", "r60", "r426", "r675", "r676" ] }, "us-gaap_BusinessAcquisitionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionLineItems", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition [Line Items]", "label": "Business Acquisition [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r426" ] }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Issued and outstanding shares acquired (in percent)", "label": "Business Acquisition, Percentage of Voting Interests Acquired", "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination." } } }, "auth_ref": [ "r59" ] }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationAcquisitionRelatedCosts", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business acquisition costs incurred", "label": "Business Combination, Acquisition Related Costs", "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities." } } }, "auth_ref": [ "r57" ] }, "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationAndAssetAcquisitionAbstract", "lang": { "en-us": { "role": { "label": "Business Combination and Asset Acquisition [Abstract]" } } }, "auth_ref": [] }, "amswa_BusinessCombinationConsiderationTransferredAdditionalConsideration": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "BusinessCombinationConsiderationTransferredAdditionalConsideration", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional consideration", "label": "Business Combination, Consideration Transferred, Additional Consideration", "documentation": "Business Combination, Consideration Transferred, Additional Consideration" } } }, "auth_ref": [] }, "amswa_BusinessCombinationConsiderationTransferredAdditionalConsiderationPerDollarOfSubscriptionRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "BusinessCombinationConsiderationTransferredAdditionalConsiderationPerDollarOfSubscriptionRevenue", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional consideration per dollar of subscription revenue", "label": "Business Combination, Consideration Transferred, Additional Consideration per Dollar of Subscription Revenue", "documentation": "Business Combination, Consideration Transferred, Additional Consideration per Dollar of Subscription Revenue" } } }, "auth_ref": [] }, "amswa_BusinessCombinationConsiderationTransferredAdditionalConsiderationRevenueThreshold": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "BusinessCombinationConsiderationTransferredAdditionalConsiderationRevenueThreshold", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional consideration, revenue threshold", "label": "Business Combination, Consideration Transferred, Additional Consideration, Revenue Threshold", "documentation": "Business Combination, Consideration Transferred, Additional Consideration, Revenue Threshold" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum contingent consideration", "label": "Business Combination, Contingent Consideration Arrangements, Range of Outcomes, Value, High", "documentation": "For contingent consideration arrangements recognized in connection with a business combination, this element represents an estimate of the high-end of the potential range (undiscounted) of the consideration which may be paid." } } }, "auth_ref": [ "r65" ] }, "amswa_BusinessCombinationCumulativeEarnoutPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "BusinessCombinationCumulativeEarnoutPaid", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cumulative earnout paid", "label": "Business Combination, Cumulative Earnout Paid", "documentation": "Business Combination, Cumulative Earnout Paid" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationDisclosureTextBlock", "presentation": [ "http://www.amsoftware.com/role/Acquisitions" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisitions", "label": "Business Combination Disclosure [Text Block]", "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)." } } }, "auth_ref": [ "r125", "r427" ] }, "amswa_BusinessCombinationEarnoutPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "BusinessCombinationEarnoutPeriod", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business combination, earnout period", "label": "Business Combination, Earnout Period", "documentation": "Business combination, earnout period" } } }, "auth_ref": [] }, "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets acquired", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Acquired Including Goodwill", "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Acquired Including Goodwill" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssets", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets", "documentation": "Amount of assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables", "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Current liabilities", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities", "documentation": "Amount of liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles", "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date." } } }, "auth_ref": [ "r61", "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Total liabilities assumed", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities", "documentation": "Amount of liabilities assumed at the acquisition date." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilities", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Long-term liabilities", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities", "documentation": "Amount of liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets", "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment, net", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date." } } }, "auth_ref": [ "r61", "r62" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Net assets acquired", "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net", "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed." } } }, "auth_ref": [ "r62" ] }, "us-gaap_BusinessCombinationsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationsPolicy", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisitions", "label": "Business Combinations Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy." } } }, "auth_ref": [ "r56" ] }, "us-gaap_CapitalizedComputerSoftwareAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedComputerSoftwareAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Capitalized software, accumulated amortization", "label": "Capitalized Computer Software, Accumulated Amortization", "documentation": "For each balance sheet presented, the amount of accumulated amortization for capitalized computer software costs." } } }, "auth_ref": [ "r763" ] }, "us-gaap_CapitalizedComputerSoftwareNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedComputerSoftwareNet", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Capitalized software, net of accumulated amortization of $43,534 at January\u00a031, 2024 and $43,202 at April\u00a030, 2023", "label": "Capitalized Computer Software, Net", "documentation": "The carrying amount of capitalized computer software costs net of accumulated amortization as of the balance sheet date." } } }, "auth_ref": [ "r648" ] }, "us-gaap_CapitalizedContractCostAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedContractCostAmortization", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of sales commissions", "label": "Capitalized Contract Cost, Amortization", "documentation": "Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer." } } }, "auth_ref": [ "r303" ] }, "us-gaap_CapitalizedContractCostImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedContractCostImpairmentLoss", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment loss", "label": "Capitalized Contract Cost, Impairment Loss", "documentation": "Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer." } } }, "auth_ref": [ "r303" ] }, "us-gaap_CapitalizedContractCostNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedContractCostNet", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred commissions", "label": "Capitalized Contract Cost, Net", "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer." } } }, "auth_ref": [ "r302" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "label": "Cash and Cash Equivalents, at Carrying Value", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r26", "r154", "r653" ] }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsFairValueDisclosure", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails": { "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash equivalents", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash and cash equivalents at beginning of period", "periodEndLabel": "Cash and cash equivalents at end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r26", "r111", "r175" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net change in cash and cash equivalents", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r1", "r111" ] }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental disclosures of noncash operating, investing and financing activities:", "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Net cash provided by investing activities of discontinued operations", "label": "Cash Provided by (Used in) Investing Activities, Discontinued Operations", "documentation": "Amount of cash inflow (outflow) of investing activities of discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r86", "r111" ] }, "us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Net cash provided by operating activities of discontinued operations", "label": "Cash Provided by (Used in) Operating Activities, Discontinued Operations", "documentation": "Amount of cash inflow (outflow) of operating activities of discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r86", "r111" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "amswa_ClassAAndClassBMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ClassAAndClassBMember", "presentation": [ "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails", "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class A and Class B", "label": "Class A and Class B [Member]", "documentation": "Class A and Class B" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfStockDomain", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "http://www.amsoftware.com/role/CoverPage", "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails", "http://www.amsoftware.com/role/StockRepurchasesDetails", "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Stock [Domain]", "label": "Class of Stock [Domain]", "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock." } } }, "auth_ref": [ "r146", "r161", "r162", "r163", "r176", "r197", "r198", "r206", "r209", "r215", "r216", "r287", "r328", "r330", "r331", "r332", "r335", "r336", "r339", "r340", "r342", "r343", "r345", "r448", "r549", "r550", "r551", "r552", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r579", "r600", "r617", "r629", "r630", "r631", "r632", "r633", "r699", "r713", "r720" ] }, "us-gaap_ClassOfStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfStockLineItems", "presentation": [ "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Stock [Line Items]", "label": "Class of Stock [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r161", "r162", "r163", "r215", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r549", "r550", "r551", "r552", "r664", "r699", "r713" ] }, "us-gaap_ClassOfTreasuryStockTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfTreasuryStockTable", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Treasury Stock [Table]", "label": "Class of Treasury Stock [Table]", "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock." } } }, "auth_ref": [ "r49", "r50", "r51", "r52" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and contingencies", "label": "Commitments and Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r20", "r69", "r504", "r578" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Abstract]", "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.amsoftware.com/role/Contingencies" ], "lang": { "en-us": { "role": { "terseLabel": "Contingencies", "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r119", "r322", "r323", "r635", "r734" ] }, "us-gaap_CommonClassAMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonClassAMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "http://www.amsoftware.com/role/CoverPage", "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class\u00a0A Common Shares", "label": "Common Class A [Member]", "documentation": "Classification of common stock representing ownership interest in a corporation." } } }, "auth_ref": [ "r761" ] }, "us-gaap_CommonClassBMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonClassBMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "http://www.amsoftware.com/role/CoverPage", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class\u00a0B Common Shares", "label": "Common Class B [Member]", "documentation": "Classification of common stock that has different rights than Common Class A, representing ownership interest in a corporation." } } }, "auth_ref": [ "r761" ] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails", "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash dividends declared per common share (in usd per share)", "label": "Common Stock, Dividends, Per Share, Declared", "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r122" ] }, "amswa_CommonStockDividendsPreferencePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "CommonStockDividendsPreferencePerShare", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Dividends preference (in usd per share)", "label": "Common Stock, Dividends Preference, Per Share", "documentation": "Common Stock, Dividends Preference, Per Share" } } }, "auth_ref": [] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r682", "r683", "r684", "r686", "r687", "r688", "r689", "r716", "r717", "r744", "r760", "r761" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, par value (in usd per share)", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r93" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares authorized (in shares)", "label": "Common Stock, Shares Authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r93", "r579" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares issued (in shares)", "label": "Common Stock, Shares, Issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r93" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares outstanding (in shares)", "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "label": "Common Stock, Shares, Outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r10", "r93", "r579", "r597", "r761", "r762" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock value", "label": "Common Stock, Value, Issued", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r93", "r505", "r679" ] }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTaxAbstract", "lang": { "en-us": { "role": { "terseLabel": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNoteTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNoteTextBlock", "presentation": [ "http://www.amsoftware.com/role/ComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Comprehensive Income", "label": "Comprehensive Income (Loss) Note [Text Block]", "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income." } } }, "auth_ref": [ "r99", "r171", "r499", "r513" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Principles of Consolidation", "label": "Consolidation, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r66", "r654" ] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Contract Balances", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability." } } }, "auth_ref": [ "r740" ] }, "us-gaap_ContractWithCustomerAssetNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetAbstract", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionSummaryofContractBalancesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract Balances:", "label": "Contract with Customer, Asset, after Allowance for Credit Loss [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiability", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionSummaryofContractBalancesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred revenue", "label": "Contract with Customer, Liability", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r347", "r348", "r367" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue", "label": "Contract with Customer, Liability, Current", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r347", "r348", "r367" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue recognized", "label": "Contract with Customer, Liability, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r368" ] }, "amswa_ContractualPeriodOfMaintenanceContract": { "xbrltype": "durationItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ContractualPeriodOfMaintenanceContract", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contractual period of maintenance contract", "label": "Contractual Period Of Maintenance Contract", "documentation": "Contractual period of maintenance contract." } } }, "auth_ref": [] }, "amswa_ConvertibleStockConversionRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ConvertibleStockConversionRatio", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share conversion ratio", "label": "Convertible Stock, Conversion Ratio", "documentation": "Convertible Stock, Conversion Ratio" } } }, "auth_ref": [] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenues", "label": "Cost of Goods and Services Sold", "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities." } } }, "auth_ref": [ "r105", "r494" ] }, "us-gaap_CostOfRevenueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenueAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenues:", "label": "Cost of Revenue [Abstract]" } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Current Fiscal Year End Date", "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer relationships", "label": "Customer Relationships [Member]", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r64" ] }, "amswa_DeclarationOfDividendPayableDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "DeclarationOfDividendPayableDisclosureTextBlock", "presentation": [ "http://www.amsoftware.com/role/DeclarationofDividendPayable" ], "lang": { "en-us": { "role": { "terseLabel": "Declaration of Dividend Payable", "label": "Declaration Of Dividend Payable Disclosure [Text Block]", "documentation": "This text block may be used to disclose all or some of the information related to dividends declared and their payments, as of the financial reporting date." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income taxes", "label": "Deferred Income Tax Expense (Benefit)", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r7", "r124", "r143", "r422", "r423", "r715" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r7", "r226" ] }, "amswa_DepreciationDepletionAndAmortizationContinuingAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "DepreciationDepletionAndAmortizationContinuingAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion And Amortization, Continuing And Discontinued Operations", "documentation": "Depreciation, Depletion And Amortization, Continuing And Discontinued Operations" } } }, "auth_ref": [] }, "us-gaap_DilutiveSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DilutiveSecurities", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Undistributed and distributed earnings, class B conversion", "label": "Dilutive Securities, Effect on Basic Earnings Per Share", "documentation": "Amount of increase (decrease) to net income used for calculating diluted earnings per share (EPS), resulting from the assumed exercise stock options, restrictive stock units (RSUs), convertible preferred stock of an employee stock ownership plan (ESOP), and other dilutive convertible securities." } } }, "auth_ref": [ "r28" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregation of Revenue [Table]", "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r366", "r665", "r666", "r667", "r668", "r669", "r670", "r671" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenue by Geography", "label": "Disaggregation of Revenue [Table Text Block]", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r741" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensation" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-Based Compensation", "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r378", "r382", "r410", "r411", "r413", "r678" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Disclosure of Compensation Related Costs, Share-based Payments [Abstract]", "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Gain on disposal of discontinued operations", "label": "Discontinued Operation, Gain (Loss) from Disposal of Discontinued Operation, before Income Tax", "documentation": "Amount before tax of gain (loss) not previously recognized resulting from the disposal of a discontinued operation." } } }, "auth_ref": [ "r74", "r76", "r78" ] }, "us-gaap_DiscontinuedOperationGainLossOnDisposalOfDiscontinuedOperationNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationGainLossOnDisposalOfDiscontinuedOperationNetOfTax", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Gain on sale of discontinued operations", "label": "Discontinued Operation, Gain (Loss) on Disposal of Discontinued Operation, Net of Tax", "documentation": "Amount after tax of gain (loss) not previously recognized resulting from the disposal of a discontinued operation." } } }, "auth_ref": [ "r74", "r76", "r78", "r89" ] }, "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Earnings from operations of discontinued operations", "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax", "documentation": "Amount before tax of income (loss) from a discontinued operation. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal." } } }, "auth_ref": [ "r74", "r75", "r76", "r77", "r78", "r84", "r102", "r757" ] }, "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationDisclosuresAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Discontinued operations (Note F)", "label": "Discontinued Operation, Income (Loss) from Discontinued Operation Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodBeforeIncomeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodBeforeIncomeTax", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings from operations of discontinued operations", "negatedTerseLabel": "Decrease in earnings from operations of discontinued operations", "label": "Discontinued Operation, Income (Loss) from Discontinued Operation During Phase-out Period, before Income Tax", "documentation": "Amount before tax of income (loss) from operations classified as a discontinued operation. Excludes gain (loss) on disposal and provision for gain (loss) until its disposal." } } }, "auth_ref": [ "r74", "r75", "r84" ] }, "us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Gain on disposal of discontinued operations", "label": "Discontinued Operation, Provision for Loss (Gain) on Disposal, before Income Tax", "documentation": "Amount before tax of (gain) loss recognized for the (reversal of write-down) write-down to fair value, less cost to sell, of a discontinued operation." } } }, "auth_ref": [ "r74", "r76", "r78" ] }, "us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationTaxEffectOfDiscontinuedOperation", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax", "weight": -1.0, "order": 1.0 }, "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax expense", "label": "Discontinued Operation, Tax Effect of Discontinued Operation", "documentation": "Amount of tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal." } } }, "auth_ref": [ "r75", "r76", "r77", "r78", "r84", "r89", "r418", "r421", "r424" ] }, "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract", "lang": { "en-us": { "role": { "label": "Discontinued Operations and Disposal Groups [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DiscontinuedOperationsDisposedOfBySaleMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationsDisposedOfBySaleMember", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Discontinued Operations, Disposed of by Sale", "label": "Discontinued Operations, Disposed of by Sale [Member]", "documentation": "Component or group of components disposed of by sale and representing a strategic shift that has or will have a major effect on operations and financial results." } } }, "auth_ref": [ "r4" ] }, "us-gaap_DisposalGroupClassificationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupClassificationAxis", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disposal Group Classification [Axis]", "label": "Disposal Group Classification [Axis]", "documentation": "Information by disposal group classification." } } }, "auth_ref": [ "r150" ] }, "us-gaap_DisposalGroupClassificationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupClassificationDomain", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disposal Group Classification [Domain]", "label": "Disposal Group Classification [Domain]", "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations." } } }, "auth_ref": [] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Trade accounts receivable, less allowance for doubtful accounts", "label": "Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net", "documentation": "Amount classified as accounts, notes and loans receivable attributable to disposal group held for sale or disposed of." } } }, "auth_ref": [ "r2", "r73", "r87", "r117" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "label": "Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents", "documentation": "Amount classified as cash and cash equivalents attributable to disposal group held for sale or disposed of." } } }, "auth_ref": [ "r2", "r73", "r87", "r117" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationConsideration", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash consideration", "label": "Disposal Group, Including Discontinued Operation, Consideration", "documentation": "Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation." } } }, "auth_ref": [] }, "amswa_DisposalGroupIncludingDiscontinuedOperationConsiderationSubjectToHoldbackProvisions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "DisposalGroupIncludingDiscontinuedOperationConsiderationSubjectToHoldbackProvisions", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consideration subject to holdback provisions", "label": "Disposal Group, Including Discontinued Operation, Consideration Subject To Holdback Provisions", "documentation": "Disposal Group, Including Discontinued Operation, Consideration Subject To Holdback Provisions" } } }, "auth_ref": [] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenue", "label": "Disposal Group, Including Discontinued Operation, Costs of Goods Sold", "documentation": "Amount of costs of goods sold attributable to disposal group, including, but not limited to, discontinued operation." } } }, "auth_ref": [ "r85", "r151" ] }, "amswa_DisposalGroupIncludingDiscontinuedOperationHoldbackProvisionsPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "DisposalGroupIncludingDiscontinuedOperationHoldbackProvisionsPeriod", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consideration subject to holdback provisions period", "label": "Disposal Group, Including Discontinued Operation, Holdback Provisions Period", "documentation": "Disposal group including discontinued operation holdback provisions period" } } }, "auth_ref": [] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingExpense", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total operating expenses", "label": "Disposal Group, Including Discontinued Operation, Operating Expense", "documentation": "Amount of operating expense attributable to disposal group, including, but not limited to, discontinued operation." } } }, "auth_ref": [ "r85" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expenses and other current assets", "label": "Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current", "documentation": "Amount classified as prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r2", "r73", "r87", "r116", "r117" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationRevenue", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue", "label": "Disposal Group, Including Discontinued Operation, Revenue", "documentation": "Amount of revenue attributable to disposal group, including, but not limited to, discontinued operation." } } }, "auth_ref": [ "r85", "r151" ] }, "us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupNotDiscontinuedOperationGainLossOnDisposal", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 13.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Gain on sale of business", "terseLabel": "Disposal group, not discontinued operation, gain on disposal", "label": "Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal", "documentation": "Amount before tax of gain (loss) recognized on the sale or disposal of a disposal group. Excludes discontinued operations." } } }, "auth_ref": [ "r318", "r712", "r732" ] }, "us-gaap_DisposalGroupNotDiscontinuedOperationsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupNotDiscontinuedOperationsMember", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Discontinued Operations", "label": "Disposal Group, Not Discontinued Operations [Member]", "documentation": "Disposal group that is not classified as discontinued operations." } } }, "auth_ref": [] }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "presentation": [ "http://www.amsoftware.com/role/Divestitures" ], "lang": { "en-us": { "role": { "terseLabel": "Divestitures", "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]", "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component." } } }, "auth_ref": [ "r72", "r115" ] }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disposal Group Name [Domain]", "label": "Disposal Group Name [Domain]", "documentation": "Name of disposal group." } } }, "auth_ref": [ "r675", "r676" ] }, "us-gaap_DistributedEarnings": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DistributedEarnings", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Distributed earnings", "label": "Distributed Earnings", "documentation": "The total amount of dividends declared in the period for each class of stock and the contractual amount of dividends (or interest on participating income bonds) that must be paid for the period (for example, unpaid cumulative dividends). Dividends declared in the current period do not include dividends declared in respect of prior-period unpaid cumulative dividends. Preferred dividends that are cumulative only if earned are deducted only to the extent that they are earned." } } }, "auth_ref": [ "r203" ] }, "us-gaap_DividendsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Dividends [Abstract]", "label": "Dividends [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsCommonStock", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Dividends declared", "label": "Dividends, Common Stock", "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK)." } } }, "auth_ref": [ "r5", "r122" ] }, "us-gaap_DividendsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPayableCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Dividends payable", "verboseLabel": "Accrual of dividends payable", "label": "Dividends Payable, Current", "documentation": "Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17" ] }, "amswa_DocumentAndEntityInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "DocumentAndEntityInformationAbstract", "lang": { "en-us": { "role": { "terseLabel": "Document And Entity Information [Abstract]", "label": "Document And Entity Information [Abstract]", "documentation": "Document and entity information." } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Period Focus", "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Year Focus", "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentInformationLineItems", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Information [Line Items]", "label": "Document Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "dei_DocumentInformationTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentInformationTable", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Information [Table]", "label": "Document Information [Table]", "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Period End Date", "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Quarterly Report", "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r695" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Transition Report", "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r696" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Type", "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "amswa_DomesticMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "DomesticMember", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Domestic", "label": "Domestic [Member]", "documentation": "Domestic." } } }, "auth_ref": [] }, "amswa_EarningsPerCommonShareFromContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "EarningsPerCommonShareFromContinuingOperationsAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings per common share from continuing operations (a):", "label": "Earnings Per Common Share from Continuing Operations [Abstract]", "documentation": "Earnings Per Common Share from Continuing Operations" } } }, "auth_ref": [] }, "amswa_EarningsPerCommonShareFromDiscontinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "EarningsPerCommonShareFromDiscontinuingOperationsAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings per common share from discontinued operations (a):", "label": "Earnings Per Common Share from Discontinuing Operations [Abstract]", "documentation": "Earnings Per Common Share from Discontinuing Operations" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings per common share: (a)", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (in usd per share)", "totalLabel": "Total (in usd per share)", "verboseLabel": "Basic EPS (in usd per share)", "label": "Earnings Per Share, Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r172", "r182", "r183", "r185", "r186", "r188", "r194", "r197", "r206", "r208", "r209", "r213", "r442", "r443", "r500", "r515", "r656" ] }, "us-gaap_EarningsPerShareBasicDistributed": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasicDistributed", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails": { "parentTag": "us-gaap_EarningsPerShareBasic", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Distributed earnings (in usd per share)", "label": "Earnings Per Share, Basic, Distributed", "documentation": "Dividends declared in the period and the contractual amount of dividends (or interest on participating income bonds) that must be paid per security." } } }, "auth_ref": [ "r721" ] }, "us-gaap_EarningsPerShareBasicLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasicLineItems", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]", "label": "Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r197", "r198", "r206" ] }, "us-gaap_EarningsPerShareBasicUndistributed": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasicUndistributed", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails": { "parentTag": "us-gaap_EarningsPerShareBasic", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Undistributed losses (in usd per share)", "label": "Earnings Per Share, Basic, Undistributed", "documentation": "The earnings attributable to each security on the basis that all of the earnings for the period had been distributed (to the extent that each security may share in earnings). This is the earnings amount which reflects the participation rights in undistributed earnings of each security." } } }, "auth_ref": [ "r721" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Diluted (in usd per share)", "verboseLabel": "Diluted (in usd per share)", "terseLabel": "Diluted EPS (in usd per share)", "label": "Earnings Per Share, Diluted", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r172", "r182", "r183", "r185", "r186", "r188", "r197", "r206", "r208", "r209", "r213", "r442", "r443", "r500", "r515", "r656" ] }, "us-gaap_EarningsPerShareDilutedLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDilutedLineItems", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]", "label": "Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r197", "r198", "r206" ] }, "amswa_EarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "EarningsPerShareLineItems", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share [Line Items]", "label": "Earnings Per Share [Line Items]", "documentation": "Earnings Per Share [Line Items]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShare" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Common Share", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r193", "r210", "r211", "r212" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued compensation and related costs", "label": "Employee-related Liabilities, Current", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized compensation cost related to RSU awards", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r412" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average period for unrecognized compensation cost", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r412" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized compensation cost related to unvested stock option", "label": "Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount", "documentation": "Amount of cost to be recognized for option under share-based payment arrangement." } } }, "auth_ref": [ "r743" ] }, "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax benefit (expense)", "label": "Share-Based Payment Arrangement, Expense, Tax Benefit", "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement." } } }, "auth_ref": [ "r409" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Options", "label": "Employee Stock Option [Member]", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line One", "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, City or Town", "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Postal Zip Code", "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, State or Province", "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Central Index Key", "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r693" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Common Stock, Shares Outstanding", "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Current Reporting Status", "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r693" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Filer Category", "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r693" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Incorporation, State or Country Code", "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Interactive Data Current", "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r697" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Registrant Name", "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r693" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Shell Company", "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r693" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Small Business", "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r693" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Tax Identification Number", "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r693" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Equity [Abstract]", "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityClassOfTreasuryStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityClassOfTreasuryStockLineItems", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Equity, Class of Treasury Stock [Line Items]", "label": "Equity, Class of Treasury Stock [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component [Domain]", "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r10", "r147", "r168", "r169", "r170", "r177", "r178", "r179", "r181", "r189", "r191", "r214", "r288", "r291", "r346", "r414", "r415", "r416", "r419", "r420", "r433", "r434", "r435", "r436", "r437", "r438", "r441", "r449", "r450", "r451", "r452", "r453", "r454", "r458", "r535", "r536", "r537", "r554", "r617" ] }, "amswa_EquityOwnershipPercentage": { "xbrltype": "pureItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "EquityOwnershipPercentage", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Equity interest (in percent)", "label": "Equity Ownership, Percentage", "documentation": "Equity ownership percentage" } } }, "auth_ref": [] }, "us-gaap_EscrowDeposit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EscrowDeposit", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Escrow deposit", "label": "Escrow Deposit", "documentation": "The designation of funds furnished by a borrower to a lender to assure future payments of the borrower's real estate taxes and insurance obligations with respect to a mortgaged property. Escrow deposits may be made for a variety of other purposes such as earnest money and contingent payments. This element excludes replacement reserves which are an escrow separately provided for within the US GAAP taxonomy." } } }, "auth_ref": [ "r68", "r636" ] }, "amswa_EscrowDepositNotSubjectToOutstandingIndemnificationClaimsAmountOfEqualIncrementsForRelease": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "EscrowDepositNotSubjectToOutstandingIndemnificationClaimsAmountOfEqualIncrementsForRelease", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Equal increments for release of escrow deposit not subject to then outstanding indemnification claims", "label": "Escrow Deposit Not Subject To Outstanding Indemnification Claims, Amount Of Equal Increments For Release", "documentation": "Escrow Deposit Not Subject To Outstanding Indemnification Claims, Amount Of Equal Increments For Release" } } }, "auth_ref": [] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r445", "r446", "r447" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Measurements, Recurring and Nonrecurring [Table]", "label": "Fair Value, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r445", "r446", "r447" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Axis]", "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r337", "r371", "r372", "r373", "r374", "r375", "r376", "r446", "r465", "r466", "r467", "r662", "r663", "r672", "r673", "r674" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "terseLabel": "Fair Value Disclosures [Abstract]", "label": "Fair Value Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstruments" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value of Financial Instruments", "label": "Fair Value Disclosures [Text Block]", "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information." } } }, "auth_ref": [ "r444" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Quoted\u00a0Prices in Active Markets\u00a0for Identical\u00a0Assets (Level 1)", "label": "Fair Value, Inputs, Level 1 [Member]", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r337", "r371", "r376", "r446", "r465", "r672", "r673", "r674" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Significant Other Observable Inputs (Level\u00a02)", "label": "Fair Value, Inputs, Level 2 [Member]", "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets." } } }, "auth_ref": [ "r337", "r371", "r376", "r446", "r466", "r662", "r663", "r672", "r673", "r674" ] }, "us-gaap_FairValueInputsLevel3Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel3Member", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Significant Unobservable Inputs (Level\u00a03)", "label": "Fair Value, Inputs, Level 3 [Member]", "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing." } } }, "auth_ref": [ "r337", "r371", "r372", "r373", "r374", "r375", "r376", "r446", "r467", "r662", "r663", "r672", "r673", "r674" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Domain]", "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r337", "r371", "r372", "r373", "r374", "r375", "r376", "r465", "r466", "r467", "r662", "r663", "r672", "r673", "r674" ] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instrument [Axis]", "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r293", "r294", "r295", "r296", "r297", "r299", "r300", "r301", "r338", "r344", "r439", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r490", "r491", "r514", "r660", "r702", "r703", "r704", "r705", "r706", "r707", "r708", "r725", "r726", "r727", "r728" ] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Useful\u00a0Life", "label": "Finite-Lived Intangible Asset, Useful Life", "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Other intangibles, accumulated amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r158", "r316" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r314", "r315", "r316", "r317", "r495", "r496" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r37", "r39" ] }, "amswa_ForeignMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ForeignMember", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "International", "label": "Foreign [Member]", "documentation": "Foreign." } } }, "auth_ref": [] }, "us-gaap_GainLossOnInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnInvestments", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Net gain on investments", "label": "Gain (Loss) on Investments", "documentation": "Amount of realized and unrealized gain (loss) on investment." } } }, "auth_ref": [ "r107", "r698" ] }, "amswa_GarvisAILimitedMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "GarvisAILimitedMember", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Garvis", "label": "Garvis AI Limited [Member]", "documentation": "Garvis AI Limited" } } }, "auth_ref": [] }, "us-gaap_GeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "General and administrative", "label": "General and Administrative Expense", "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line." } } }, "auth_ref": [ "r106", "r602" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails": { "parentTag": "amswa_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAcquiredIncludingGoodwill", "weight": 1.0, "order": 2.0 }, "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "label": "Goodwill", "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r157", "r304", "r497", "r661", "r679", "r730", "r731" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Gross margin", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r104", "r176", "r221", "r235", "r241", "r244", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r448", "r658", "r737" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Earnings before income taxes", "terseLabel": "Earnings\\(loss) before income taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r0", "r101", "r135", "r221", "r235", "r241", "r244", "r501", "r510", "r658" ] }, "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net earnings from continuing operations", "label": "Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest", "documentation": "Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r128", "r176", "r180", "r221", "r235", "r241", "r244", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r443", "r448", "r510", "r658", "r737" ] }, "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsPerBasicShare", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails_1": { "parentTag": "us-gaap_EarningsPerShareBasic", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (in usd per share)", "label": "Income (Loss) from Continuing Operations, Per Basic Share", "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r100", "r134", "r136", "r172", "r180", "r182", "r183", "r185", "r186", "r197", "r206", "r208", "r443", "r500", "r758" ] }, "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsPerDilutedShare", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_EarningsPerShareDiluted", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (in usd per share)", "label": "Income (Loss) from Continuing Operations, Per Diluted Share", "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r100", "r172", "r180", "r182", "r183", "r185", "r186", "r197", "r206", "r208", "r209", "r443", "r500", "r758" ] }, "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromDiscontinuedOperationsNetOfTax", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 }, "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 8.0 }, "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Earnings (loss) from discontinued operations, net of income taxes", "negatedLabel": "Earnings from discontinued operations, net of tax", "label": "Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest", "documentation": "Amount after tax of income (loss) from a discontinued operation including the portion attributable to the noncontrolling interest. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal." } } }, "auth_ref": [ "r74", "r75", "r76", "r77", "r78", "r89", "r151", "r425", "r511" ] }, "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails_1": { "parentTag": "us-gaap_EarningsPerShareBasic", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (in usd per share)", "verboseLabel": "Total from discontinued operations (in usd per share)", "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share", "documentation": "Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation." } } }, "auth_ref": [ "r102", "r172", "r198", "r206", "r208", "r755", "r758" ] }, "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_EarningsPerShareDiluted", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (in usd per share)", "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share", "documentation": "Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation." } } }, "auth_ref": [ "r129", "r198", "r206", "r208" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disposal Group Name [Axis]", "label": "Disposal Group Name [Axis]", "documentation": "Information by name of disposal group." } } }, "auth_ref": [ "r675", "r676" ] }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]", "label": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disposal Groups, Including Discontinued Operations [Table]", "label": "Disposal Groups, Including Discontinued Operations [Table]", "documentation": "Disclosure of information about a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component." } } }, "auth_ref": [ "r9", "r12", "r14", "r73", "r79", "r80", "r81", "r82", "r83", "r88", "r90", "r91", "r118" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax expense", "label": "Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r140", "r144", "r190", "r191", "r229", "r418", "r421", "r516" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income taxes, net of refunds", "label": "Income Taxes Paid, Net", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r27" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable and other liabilities", "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities", "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 12.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Accounts receivable, net", "label": "Increase (Decrease) in Accounts Receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredRevenue", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue", "label": "Increase (Decrease) in Deferred Revenue", "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r649" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in operating assets and liabilities:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Prepaid expenses and other assets", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "amswa_IncrementalCommonSharesAttributableToConversionOfCommonStock": { "xbrltype": "sharesItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "IncrementalCommonSharesAttributableToConversionOfCommonStock", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class B common share conversion (in shares)", "label": "Incremental Common Shares Attributable to Conversion of Common Stock", "documentation": "Dilutive impact on our earnings per share for the period as a result of conversion of Class B to Class A common stock." } } }, "auth_ref": [] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Other intangibles, net of accumulated amortization of $16,258 at January\u00a031, 2024 and $14,062 at April\u00a030, 2023", "label": "Intangible Assets, Net (Excluding Goodwill)", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r35", "r38" ] }, "us-gaap_InvestmentIncomeNonoperating": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentIncomeNonoperating", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Interest income", "label": "Investment Income, Nonoperating", "documentation": "The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations." } } }, "auth_ref": [ "r108" ] }, "us-gaap_InvestmentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsFairValueDisclosure", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails": { "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Marketable securities", "label": "Investments, Fair Value Disclosure", "documentation": "Fair value portion of investment securities, including, but not limited to, marketable securities, derivative financial instruments, and investments accounted for under the equity method." } } }, "auth_ref": [ "r445" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "label": "Liabilities", "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future." } } }, "auth_ref": [ "r16", "r176", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r430", "r431", "r432", "r448", "r577", "r657", "r691", "r737", "r746", "r747" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and shareholders\u2019 equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r98", "r131", "r507", "r679", "r714", "r729", "r745" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r18", "r153", "r176", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r430", "r431", "r432", "r448", "r679", "r737", "r746", "r747" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities:", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities of discontinued operations", "label": "Disposal Group, Including Discontinued Operation, Liabilities, Current", "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r2", "r73", "r87", "r116", "r117", "r150", "r151" ] }, "us-gaap_LicenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LicenseMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "License", "label": "License [Member]", "documentation": "Right to use intangible asset. Intangible asset includes, but is not limited to, patent, copyright, technology, manufacturing process, software or trademark." } } }, "auth_ref": [ "r742" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermInvestments", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Investments\u2014noncurrent", "label": "Long-Term Investments", "documentation": "The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle)." } } }, "auth_ref": [ "r155" ] }, "us-gaap_MaintenanceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MaintenanceMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Maintenance", "label": "Maintenance [Member]", "documentation": "Process of preserving asset, including, but not limited to, building, machinery and software." } } }, "auth_ref": [ "r742" ] }, "amswa_MajorClientsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "MajorClientsTextBlock", "presentation": [ "http://www.amsoftware.com/role/MajorClients" ], "lang": { "en-us": { "role": { "terseLabel": "Major Clients", "label": "Major Clients [Text Block]", "documentation": "Major Clients [Text Block]" } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum", "label": "Maximum [Member]" } } }, "auth_ref": [ "r324", "r325", "r326", "r327", "r377", "r492", "r534", "r569", "r570", "r620", "r622", "r624", "r625", "r627", "r646", "r647", "r659", "r664", "r677", "r681", "r739", "r748", "r749", "r750", "r751", "r752", "r753" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum", "label": "Minimum [Member]" } } }, "auth_ref": [ "r324", "r325", "r326", "r327", "r377", "r492", "r534", "r569", "r570", "r620", "r622", "r624", "r625", "r627", "r646", "r647", "r659", "r664", "r677", "r681", "r739", "r748", "r749", "r750", "r751", "r752", "r753" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in financing activities of continuing operations", "label": "Net Cash Provided by (Used in) Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r174" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from financing activities:", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r174" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from investing activities:", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperations", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in investing activities of continuing operations", "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations", "documentation": "Amount of cash inflow (outflow) of investing activities, excluding discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r711" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r111", "r112", "r113" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from operating activities:", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) operating activities of continuing operations", "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations", "documentation": "Amount of cash inflow (outflow) from operating activities, excluding discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r111", "r112", "r113" ] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 11.0 }, "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net earnings", "terseLabel": "Net earnings", "label": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r103", "r113", "r137", "r151", "r166", "r167", "r170", "r176", "r180", "r182", "r183", "r185", "r186", "r190", "r191", "r203", "r221", "r235", "r241", "r244", "r287", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r443", "r448", "r512", "r599", "r615", "r616", "r658", "r690", "r737" ] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted", "weight": 1.0, "order": 1.0 }, "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted", "weight": 1.0, "order": 1.0 }, "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "verboseLabel": "Undistributed and distributed earnings", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders." } } }, "auth_ref": [ "r173", "r182", "r183", "r185", "r186", "r194", "r195", "r205", "r209", "r221", "r235", "r241", "r244", "r658" ] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersDiluted", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Diluted EPS, Net earnings", "label": "Net Income (Loss) Available to Common Stockholders, Diluted", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities, and addition from assumption of issuance of common shares for dilutive potential common shares; of income (loss) available to common shareholders." } } }, "auth_ref": [ "r173", "r196", "r199", "r200", "r201", "r202", "r205", "r209" ] }, "us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total from continuing operations", "label": "Net Income (Loss) from Continuing Operations Available to Common Shareholders, Basic", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) from continuing operations available to common shareholders." } } }, "auth_ref": [ "r195", "r209" ] }, "us-gaap_NetIncomeLossFromDiscontinuedOperationsAvailableToCommonShareholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossFromDiscontinuedOperationsAvailableToCommonShareholdersBasic", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total from discontinued operations", "label": "Net Income (Loss) from Discontinued Operations Available to Common Shareholders, Basic", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) from discontinued operations available to common shareholders." } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Recent Accounting Pronouncements", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "us-gaap_NoncompeteAgreementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncompeteAgreementsMember", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-compete agreements", "label": "Noncompete Agreements [Member]", "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party." } } }, "auth_ref": [ "r63" ] }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpenseAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other income:", "label": "Nonoperating Income (Expense) [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfOperatingSegments", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of major operating segments", "label": "Number of Operating Segments", "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues." } } }, "auth_ref": [ "r723" ] }, "amswa_NumberOfSupplyChainProcessAreas": { "xbrltype": "integerItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "NumberOfSupplyChainProcessAreas", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of supply chain process areas", "label": "Number Of Supply Chain Process Areas", "documentation": "Number Of Supply Chain Process Areas" } } }, "auth_ref": [] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total operating expenses", "label": "Operating Expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Operating income", "verboseLabel": "Operating income\\(loss)", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r221", "r235", "r241", "r244", "r658" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Presentation and Summary of Significant Accounting Policies", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure." } } }, "auth_ref": [ "r71", "r127", "r545", "r546" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r159" ] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other current liabilities", "label": "Other Liabilities, Current", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r17", "r679" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other long-term liabilities", "label": "Other Liabilities, Noncurrent", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r19" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other, net", "label": "Other Nonoperating Income (Expense)", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r109" ] }, "amswa_OtherRevenuesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "OtherRevenuesLineItems", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other Revenues [Line Items]", "label": "Other Revenues [Line Items]", "documentation": "Other revenues." } } }, "auth_ref": [] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchases of common stock", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r25" ] }, "us-gaap_PaymentsOfDividends": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividends", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Dividends paid", "label": "Payments of Dividends", "documentation": "Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests." } } }, "auth_ref": [ "r25" ] }, "us-gaap_PaymentsToAcquireBusinessesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesGross", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash consideration paid", "label": "Payments to Acquire Businesses, Gross", "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price." } } }, "auth_ref": [ "r24", "r428" ] }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchase of business, net of cash acquired", "terseLabel": "Purchase of business, net of cash acquired", "label": "Payments to Acquire Businesses, Net of Cash Acquired", "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase." } } }, "auth_ref": [ "r24" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of property and equipment, net of disposals", "label": "Payments to Acquire Property, Plant, and Equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r110" ] }, "amswa_PaymentsToAcquirePropertyPlantAndEquipmentIncludingGainLossOnDispositionOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "PaymentsToAcquirePropertyPlantAndEquipmentIncludingGainLossOnDispositionOfPropertyPlantEquipment", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Capital expenditures", "label": "Payments to Acquire Property, Plant, and Equipment, Including Gain (Loss) on Disposition of Property Plant Equipment", "documentation": "Payments to Acquire Property, Plant, and Equipment, Including Gain (Loss) on Disposition of Property Plant Equipment" } } }, "auth_ref": [] }, "amswa_PaymentsToAcquireSecuritiesTrading": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "PaymentsToAcquireSecuritiesTrading", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of trading securities", "label": "Payments To Acquire Securities, Trading", "documentation": "Payments To Acquire Securities, Trading" } } }, "auth_ref": [] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expenses and other current assets", "label": "Prepaid Expense and Other Assets, Current", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r710" ] }, "us-gaap_ProceedsFromDivestitureOfBusinesses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromDivestitureOfBusinesses", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from sale of business", "label": "Proceeds from Divestiture of Businesses", "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period." } } }, "auth_ref": [ "r23" ] }, "amswa_ProceedsFromSaleAndMaturityOfSecuritiesTrading": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ProceedsFromSaleAndMaturityOfSecuritiesTrading", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from maturities and sales of trading securities", "label": "Proceeds From Sale And Maturity Of Securities, Trading", "documentation": "Proceeds From Sale And Maturity Of Securities, Trading" } } }, "auth_ref": [] }, "us-gaap_ProceedsFromSaleOfEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfEquityMethodInvestments", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from sale of equity method investments", "label": "Proceeds from Sale of Equity Method Investments", "documentation": "The cash inflow associated with the sale of equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence." } } }, "auth_ref": [ "r23" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from exercise of stock options", "label": "Proceeds from Stock Options Exercised", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r3", "r11" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service [Axis]", "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r246", "r494", "r528", "r529", "r530", "r531", "r532", "r533", "r651", "r665", "r680", "r701", "r735", "r736", "r741", "r759" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service [Domain]", "label": "Product and Service [Domain]" } } }, "auth_ref": [ "r246", "r494", "r528", "r529", "r530", "r531", "r532", "r533", "r651", "r665", "r680", "r701", "r735", "r736", "r741", "r759" ] }, "amswa_ProfessionalServicesAndOtherMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ProfessionalServicesAndOtherMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Professional services and other", "label": "Professional Services And Other [Member]", "documentation": "Deferred professional services." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Property and equipment, net of accumulated depreciation of $32,454 at January\u00a031, 2024 and $32,371 at April\u00a030, 2023", "label": "Property, Plant and Equipment, Net", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r8", "r502", "r509", "r679" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Range [Axis]", "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r324", "r325", "r326", "r327", "r370", "r377", "r405", "r406", "r407", "r468", "r492", "r534", "r569", "r570", "r620", "r622", "r624", "r625", "r627", "r646", "r647", "r659", "r664", "r677", "r681", "r684", "r733", "r739", "r749", "r750", "r751", "r752", "r753" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Range [Domain]", "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r324", "r325", "r326", "r327", "r370", "r377", "r405", "r406", "r407", "r468", "r492", "r534", "r569", "r570", "r620", "r622", "r624", "r625", "r627", "r646", "r647", "r659", "r664", "r677", "r681", "r684", "r733", "r739", "r749", "r750", "r751", "r752", "r753" ] }, "amswa_ReallocationOfUndistributedEarnings": { "xbrltype": "monetaryItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ReallocationOfUndistributedEarnings", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Reallocation of undistributed earnings/losses from Class\u00a0A Common Shares to Class\u00a0B Common Shares", "label": "Reallocation of undistributed earnings", "documentation": "Reallocation of undistributed earnings." } } }, "auth_ref": [] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Research and development", "label": "Research and Development Expense", "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use." } } }, "auth_ref": [ "r70", "r417", "r754" ] }, "srt_RestatementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementAxis", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revision of Prior Period [Axis]", "label": "Revision of Prior Period [Axis]" } } }, "auth_ref": [ "r148", "r177", "r178", "r179", "r180", "r181", "r182", "r183", "r184", "r185", "r187", "r188", "r189", "r190", "r191", "r192", "r213", "r289", "r290", "r420", "r440", "r441", "r442", "r443", "r456", "r457", "r458", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r547" ] }, "srt_RestatementDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementDomain", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revision of Prior Period [Domain]", "label": "Revision of Prior Period [Domain]" } } }, "auth_ref": [ "r148", "r177", "r178", "r179", "r180", "r181", "r182", "r183", "r184", "r185", "r187", "r188", "r189", "r190", "r191", "r192", "r213", "r289", "r290", "r420", "r440", "r441", "r442", "r443", "r456", "r457", "r458", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r547" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "RSUs", "label": "Restricted Stock Units (RSUs) [Member]", "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met." } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Retained deficit", "negatedTerseLabel": "Retained deficit", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r95", "r122", "r506", "r539", "r544", "r553", "r580", "r679" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Retained deficit", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r147", "r177", "r178", "r179", "r181", "r189", "r191", "r288", "r291", "r414", "r415", "r416", "r419", "r420", "r433", "r435", "r436", "r438", "r441", "r535", "r537", "r554", "r761" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "terseLabel": "Revenue from Contract with Customer [Abstract]", "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails", "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenues", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r222", "r223", "r234", "r239", "r240", "r246", "r248", "r250", "r365", "r366", "r494" ] }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue Recognition", "label": "Revenue from Contract with Customer [Policy Text Block]", "documentation": "Disclosure of accounting policy for revenue from contract with customer." } } }, "auth_ref": [ "r145", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r650" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognition" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue Recognition", "label": "Revenue from Contract with Customer [Text Block]", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r145", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r369" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Transaction price allocated to remaining performance obligations", "label": "Revenue, Remaining Performance Obligation, Amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r141" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails", "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenue Recognition [Line Items]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, remaining performance obligation, expected timing of satisfaction, period", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r142" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r142" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationPercentage", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionRemainingPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remaining revenue to be recognized", "label": "Revenue, Remaining Performance Obligation, Percentage", "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue." } } }, "auth_ref": [ "r700" ] }, "us-gaap_RevenuesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenuesAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenues:", "verboseLabel": "Revenues:", "label": "Revenues [Abstract]" } } }, "auth_ref": [] }, "srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RevisionOfPriorPeriodErrorCorrectionAdjustmentMember", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revision of Prior Period, Error Correction, Adjustment", "label": "Revision of Prior Period, Error Correction, Adjustment [Member]" } } }, "auth_ref": [ "r182", "r183", "r184", "r188", "r189", "r190", "r191" ] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]", "label": "Schedule of Business Acquisitions, by Acquisition [Table]", "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities." } } }, "auth_ref": [ "r58", "r60", "r426" ] }, "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "presentation": [ "http://www.amsoftware.com/role/DivestituresTables" ], "lang": { "en-us": { "role": { "terseLabel": "Disposal Groups, Including Discontinued Operations", "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]", "documentation": "Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component." } } }, "auth_ref": [ "r9", "r12", "r14", "r73", "r79", "r80", "r81", "r82", "r83", "r88", "r90", "r91", "r118" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Diluted Earnings Per Share for Class A Common Shares Using If-Converted Method", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r722" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicByCommonClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicByCommonClassTable", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table]", "label": "Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table]", "documentation": "The table contains disclosure pertaining to an entity's basic earnings per share." } } }, "auth_ref": [ "r29", "r30", "r197", "r198", "r206" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicByCommonClassTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicByCommonClassTextBlock", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Basic Earnings Per Common Share", "label": "Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table Text Block]", "documentation": "Tabular disclosure of the effect of income (loss) on basic earnings per share." } } }, "auth_ref": [ "r29", "r30", "r719" ] }, "us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareDilutedByCommonClassTable", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table]", "label": "Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table]", "documentation": "Complete disclosure pertaining to an entity's diluted earnings per share." } } }, "auth_ref": [ "r29", "r30", "r197", "r198", "r206" ] }, "us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareDilutedByCommonClassTextBlock", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Diluted Earnings Per Share for Class B Common Shares Using Two-Class Method", "label": "Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table Text Block]", "documentation": "Tabular disclosure of the effect of income (loss) on an entity's diluted earnings per share." } } }, "auth_ref": [ "r29", "r30", "r719" ] }, "amswa_ScheduleOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ScheduleOfEarningsPerShareTable", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Earnings Per Share [Table]", "label": "Schedule Of Earnings Per Share [Table]", "documentation": "Schedule Of Earnings Per Share [Table]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEquityMethodInvestmentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEquityMethodInvestmentsLineItems", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Equity Method Investments [Line Items]", "label": "Schedule of Equity Method Investments [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r176", "r284", "r285", "r286", "r287", "r448" ] }, "us-gaap_ScheduleOfEquityMethodInvestmentsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEquityMethodInvestmentsTable", "presentation": [ "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Equity Method Investments [Table]", "label": "Schedule of Equity Method Investments [Table]", "documentation": "Summarization of information required and determined to be disclosed concerning equity method investments in common stock. The summarized information includes: (a) the name of each investee or group of investees for which combined disclosure is appropriate, (2) the percentage ownership of common stock, (3) the difference, if any, between the carrying amount of an investment and the value of the underlying equity in the net assets and the accounting treatment of difference, if any, and (4) the aggregate value of each identified investment based on its quoted market price, if available." } } }, "auth_ref": [ "r151", "r176", "r284", "r285", "r286", "r287", "r448" ] }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Assets and Liabilities Measured at Fair Value on Recurring Basis", "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]", "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)." } } }, "auth_ref": [ "r445", "r446" ] }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed", "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree." } } }, "auth_ref": [ "r126" ] }, "amswa_ScheduleOfRevenueRecognitionTable": { "xbrltype": "stringItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ScheduleOfRevenueRecognitionTable", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Revenue Recognition [Table]", "label": "Schedule Of Revenue Recognition [Table]", "documentation": "Schedule Of Revenue Recognition [Table]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]", "label": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r31", "r32", "r33", "r34" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Segment Operating Profit or Loss", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r31", "r32", "r33", "r34" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r379", "r381", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408" ] }, "us-gaap_ScheduleOfShareBasedCompensationNonemployeeDirectorStockAwardPlanActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationNonemployeeDirectorStockAwardPlanActivityTableTextBlock", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity", "label": "Share-Based Payment Arrangement, Nonemployee Director Award Plan, Activity [Table Text Block]", "documentation": "Tabular disclosure of the number and weighted-average exercise prices (or conversion ratios) for stock awards granted to nonemployee directors that were outstanding at the beginning and end of the year, and the number of awards that were granted, exercised or converted, forfeited, and expired during the year." } } }, "auth_ref": [ "r53" ] }, "us-gaap_ScheduleOfShareBasedGoodsAndNonemployeeServicesTransactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedGoodsAndNonemployeeServicesTransactionTable", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-Based Goods and Nonemployee Services Transaction [Table]", "label": "Schedule of Share-Based Goods and Nonemployee Services Transaction [Table]", "documentation": "Details pertaining to each transaction in which an entity acquires goods or services other than employee services in exchange for equity securities of the company, including the purpose of the transaction, identification and quantity of the securities issued, the accounting made, disclosure of amounts by which report lines were affected, and noncash effects on the statement of cash flows." } } }, "auth_ref": [ "r138", "r139" ] }, "us-gaap_ScheduleOfStockByClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfStockByClassTable", "presentation": [ "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock by Class [Table]", "label": "Schedule of Stock by Class [Table]", "documentation": "Schedule detailing information related to equity by class of stock. Class of stock includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. It also includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity." } } }, "auth_ref": [ "r42", "r43", "r44", "r45", "r46", "r47", "r48", "r120", "r121", "r122", "r161", "r162", "r163", "r215", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r549", "r550", "r551", "r552", "r664", "r699", "r713" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Title of 12(b) Security", "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r692" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Security Exchange Name", "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r694" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segments [Domain]", "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r218", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r231", "r232", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r244", "r250", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r320", "r321", "r517", "r518", "r519", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r661", "r701", "r759" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Domain]", "label": "Geographical [Domain]" } } }, "auth_ref": [ "r248", "r249", "r566", "r567", "r568", "r621", "r623", "r626", "r628", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r652", "r666", "r684", "r741", "r759" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting [Abstract]", "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.amsoftware.com/role/IndustrySegments" ], "lang": { "en-us": { "role": { "terseLabel": "Industry Segments", "label": "Segment Reporting Disclosure [Text Block]", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r217", "r218", "r219", "r220", "r221", "r233", "r238", "r242", "r243", "r244", "r245", "r246", "r247", "r250" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting Information [Line Items]", "label": "Segment Reporting Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SellingAndMarketingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingAndMarketingExpense", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Sales and marketing", "label": "Selling and Marketing Expense", "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation expense", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r379", "r381", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total intrinsic value of options exercised", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value", "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares." } } }, "auth_ref": [ "r401" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total awards granted (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r390" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Options to purchase outstanding (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r386", "r387" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "All Award Types", "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408" ] }, "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionLineItems", "presentation": [ "http://www.amsoftware.com/role/StockBasedCompensationShareBasedPaymentArrangementNonemployeeDirectorAwardPlanActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-Based Goods and Nonemployee Services Transaction [Line Items]", "label": "Share-Based Goods and Nonemployee Services Transaction [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_ShareRepurchaseProgramAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareRepurchaseProgramAxis", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program [Axis]", "label": "Share Repurchase Program [Axis]", "documentation": "Information by share repurchase program." } } }, "auth_ref": [] }, "us-gaap_ShareRepurchaseProgramDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareRepurchaseProgramDomain", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program [Domain]", "label": "Share Repurchase Program [Domain]", "documentation": "Name of the share repurchase program." } } }, "auth_ref": [] }, "us-gaap_ShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermInvestments", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Investments", "label": "Short-Term Investments", "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current." } } }, "auth_ref": [ "r132", "r133", "r709" ] }, "amswa_StarboardSolutionsCorpMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "StarboardSolutionsCorpMember", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAdditionalInformationDetails", "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Starboard", "label": "Starboard Solutions Corp. [Member]", "documentation": "Starboard Solutions Corp." } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segments [Axis]", "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r149", "r218", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r231", "r232", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r244", "r250", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r319", "r320", "r321", "r517", "r518", "r519", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r661", "r701", "r759" ] }, "us-gaap_StatementClassOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementClassOfStockAxis", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "http://www.amsoftware.com/role/CoverPage", "http://www.amsoftware.com/role/DeclarationofDividendPayableDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareAdditionalInformationDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails", "http://www.amsoftware.com/role/StockRepurchasesDetails", "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Stock [Axis]", "label": "Class of Stock [Axis]", "documentation": "Information by the different classes of stock of the entity." } } }, "auth_ref": [ "r146", "r161", "r162", "r163", "r176", "r197", "r198", "r206", "r209", "r215", "r216", "r287", "r328", "r330", "r331", "r332", "r335", "r336", "r339", "r340", "r342", "r343", "r345", "r448", "r549", "r550", "r551", "r552", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r579", "r600", "r617", "r629", "r630", "r631", "r632", "r633", "r699", "r713", "r720" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r10", "r21", "r147", "r168", "r169", "r170", "r177", "r178", "r179", "r181", "r189", "r191", "r214", "r288", "r291", "r346", "r414", "r415", "r416", "r419", "r420", "r433", "r434", "r435", "r436", "r437", "r438", "r441", "r449", "r450", "r451", "r452", "r453", "r454", "r458", "r535", "r536", "r537", "r554", "r617" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.amsoftware.com/role/RevenueRecognitionDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Axis]", "label": "Geographical [Axis]" } } }, "auth_ref": [ "r248", "r249", "r566", "r567", "r568", "r621", "r623", "r626", "r628", "r634", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r652", "r666", "r684", "r741", "r759" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Line Items]", "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r177", "r178", "r179", "r214", "r494", "r548", "r565", "r571", "r572", "r573", "r574", "r575", "r576", "r579", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r592", "r593", "r594", "r595", "r596", "r598", "r601", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r617", "r685" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r177", "r178", "r179", "r214", "r494", "r548", "r565", "r571", "r572", "r573", "r574", "r575", "r576", "r579", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r592", "r593", "r594", "r595", "r596", "r598", "r601", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r617", "r685" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "http://www.amsoftware.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Proceeds from stock options exercised (in shares)", "terseLabel": "Stock options exercised (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r10", "r92", "r93", "r122", "r391" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from stock options exercised", "label": "Stock Issued During Period, Value, Stock Options Exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r10", "r21", "r122" ] }, "amswa_StockRepurchasePlanAugustNineteenTwentyZeroTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "StockRepurchasePlanAugustNineteenTwentyZeroTwoMember", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares Stock Repurchase Plan, August 19, 2002", "label": "Stock Repurchase Plan August Nineteen Twenty Zero Two [Member]", "documentation": "Stock repurchase plan august 19, 2002." } } }, "auth_ref": [] }, "us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Approved number of shares to be repurchased (in shares)", "label": "Stock Repurchase Program, Number of Shares Authorized to be Repurchased", "documentation": "The number of shares authorized to be repurchased by an entity's Board of Directors under a stock repurchase plan." } } }, "auth_ref": [] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total shareholders\u2019 equity", "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r93", "r96", "r97", "r114", "r581", "r597", "r618", "r619", "r679", "r691", "r714", "r729", "r745", "r761" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shareholders\u2019 equity:", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SubscriptionAndCirculationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubscriptionAndCirculationMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Subscription fees", "label": "Subscription and Circulation [Member]", "documentation": "Right to receive or access periodic material for specified period of time." } } }, "auth_ref": [ "r742" ] }, "us-gaap_SubsequentEventLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventLineItems", "presentation": [ "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Line Items]", "label": "Subsequent Event [Line Items]", "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event." } } }, "auth_ref": [ "r455", "r460" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event", "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r455", "r460" ] }, "us-gaap_SubsequentEventTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTable", "presentation": [ "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Table]", "label": "Subsequent Event [Table]", "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued." } } }, "auth_ref": [ "r455", "r460" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Axis]", "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r455", "r460" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.amsoftware.com/role/SubsequentEventDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Domain]", "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r455", "r460" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events [Abstract]", "label": "Subsequent Events [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.amsoftware.com/role/SubsequentEvent" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event", "label": "Subsequent Events [Text Block]", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r459", "r461" ] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental disclosure of cash flow information:", "label": "Supplemental Cash Flow Information [Abstract]" } } }, "auth_ref": [] }, "amswa_SupplyChainManagementSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "SupplyChainManagementSegmentMember", "presentation": [ "http://www.amsoftware.com/role/IndustrySegmentsSegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Supply Chain Management", "label": "Supply Chain Management Segment [Member]", "documentation": "Supply chain management segment." } } }, "auth_ref": [] }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TechnologyBasedIntangibleAssetsMember", "presentation": [ "http://www.amsoftware.com/role/AcquisitionsAllocationofTotalPurchasePriceDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current technology", "label": "Technology-Based Intangible Assets [Member]", "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights." } } }, "auth_ref": [ "r13" ] }, "amswa_ThePovenMethodMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "ThePovenMethodMember", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails", "http://www.amsoftware.com/role/DivestituresCurrentAssetsandCurrentLiabilitiesfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/DivestituresEarningfromDiscontinuedOperationsDetails", "http://www.amsoftware.com/role/PresentationandSummaryofSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "TPM", "label": "The Poven Method [Member]", "documentation": "The Poven Method" } } }, "auth_ref": [] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.amsoftware.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instruments [Domain]", "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r338", "r344", "r439", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r490", "r491", "r514", "r702", "r703", "r704", "r705", "r706", "r707", "r708", "r725", "r726", "r727", "r728" ] }, "amswa_TransportationRatingSolutionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "TransportationRatingSolutionsMember", "presentation": [ "http://www.amsoftware.com/role/DivestituresAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "TRS", "label": "Transportation Rating Solutions [Member]", "documentation": "Transportation Rating Solutions" } } }, "auth_ref": [] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Treasury stock", "label": "Treasury Stock, Common [Member]", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r49" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Class A treasury stock shares (in shares)", "label": "Treasury Stock, Common, Shares", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r49" ] }, "us-gaap_TreasuryStockCommonValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonValue", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Class\u00a0A treasury stock, 5,534,953 shares at January\u00a031, 2024 and 4,588,632 shares at April\u00a030, 2023, at cost", "label": "Treasury Stock, Common, Value", "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r22", "r49", "r52" ] }, "us-gaap_TreasuryStockSharesAcquired": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockSharesAcquired", "presentation": [ "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock shares repurchased (in shares)", "label": "Treasury Stock, Shares, Acquired", "documentation": "Number of shares that have been repurchased during the period and are being held in treasury." } } }, "auth_ref": [ "r10", "r93", "r122" ] }, "us-gaap_TreasuryStockTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockTextBlock", "presentation": [ "http://www.amsoftware.com/role/StockRepurchases" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Repurchases", "label": "Treasury Stock [Text Block]", "documentation": "The entire disclosure for treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock." } } }, "auth_ref": [ "r123" ] }, "us-gaap_TreasuryStockValueAcquiredCostMethod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockValueAcquiredCostMethod", "crdr": "debit", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofShareholdersEquityUnaudited", "http://www.amsoftware.com/role/StockRepurchasesDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchases of common stock", "terseLabel": "Cost of common stock repurchased", "label": "Treasury Stock, Value, Acquired, Cost Method", "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method." } } }, "auth_ref": [ "r10", "r49", "r122" ] }, "us-gaap_USTreasurySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "USTreasurySecuritiesMember", "presentation": [ "http://www.amsoftware.com/role/FairValueofFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "US Treasury Securities", "label": "US Treasury Securities [Member]", "documentation": "This category includes information about debt securities issued by the United States Department of the Treasury and backed by the United States government. Such securities primarily consist of treasury bills (short-term maturities - one year or less), treasury notes (intermediate term maturities - two to ten years), and treasury bonds (long-term maturities - ten to thirty years)." } } }, "auth_ref": [ "r655", "r672", "r674", "r756" ] }, "us-gaap_UnbilledContractsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnbilledContractsReceivable", "crdr": "debit", "calculation": { "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled", "label": "Unbilled Contracts Receivable", "documentation": "Unbilled amounts due for services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the entity and, at a minimum, one other party. An example would be amounts associated with contracts or programs where the recognized revenue for performance thereunder exceeds the amounts billed under the terms thereof as of the date of the balance sheet." } } }, "auth_ref": [ "r493" ] }, "us-gaap_UndistributedEarnings": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UndistributedEarnings", "crdr": "credit", "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Undistributed losses", "label": "Undistributed Earnings, Basic", "documentation": "The earnings that is allocated to common stock and participating securities to the extent that each security may share in earnings as if all of the earnings for the period had been distributed." } } }, "auth_ref": [ "r204", "r207" ] }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": "amswa_WeightedAverageNumberOfSharesIncludingCommonStockEquivalentsDiluted", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock equivalents (in shares)", "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment", "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation." } } }, "auth_ref": [ "r722" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (in shares)", "totalLabel": "Class A common shares diluted (in shares)", "verboseLabel": "Diluted EPS for class\u00a0B common shares (in shares)", "label": "Weighted Average Number of Shares Outstanding, Diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r196", "r209" ] }, "amswa_WeightedAverageNumberOfSharesIncludingCommonStockEquivalentsDiluted": { "xbrltype": "sharesItemType", "nsuri": "http://www.amsoftware.com/20240131", "localname": "WeightedAverageNumberOfSharesIncludingCommonStockEquivalentsDiluted", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Weighted average shares including common stock equivalents, diluted (in shares)", "label": "Weighted Average Number Of Shares Including Common Stock Equivalents Diluted", "documentation": "Weighted average number of shares including common stock equivalents diluted." } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shares used in the calculation of earnings per common share:", "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails": { "parentTag": "amswa_WeightedAverageNumberOfSharesIncludingCommonStockEquivalentsDiluted", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.amsoftware.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.amsoftware.com/role/EarningsPerCommonShareBasicEarningsPerCommonShareDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassACommonSharesUsingIfConvertedMethodDetails", "http://www.amsoftware.com/role/EarningsPerCommonShareDilutedEarningsperShareforClassBCommonSharesUsingTwoClassMethodDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic (in shares)", "terseLabel": "Basic weighted average common shares outstanding (in shares)", "label": "Weighted Average Number of Shares Outstanding, Basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r194", "r209" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "SubTopic": "20", "Topic": "205", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-10" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "SubTopic": "20", "Topic": "205", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1B" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "SubTopic": "405", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481071/942-405-45-2" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "20", "Topic": "205", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13", "SubTopic": "20", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-13" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "205", "SubTopic": "20", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-3" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.30)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(CFRR 211.02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480244/480-10-S99-1" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481142/505-10-45-2" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-10" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-4" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-5" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-2" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-3" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "05", "Paragraph": "4", "Subparagraph": "(a)-(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479515/805-10-05-4" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "25", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-23" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "55", "Paragraph": "37", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479303/805-10-55-37" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "985", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205-20/tableOfContent" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-11" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3A" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3B" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-4" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-3A" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-4A" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-4B" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5A" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5D" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//220/tableOfContent" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-1" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7(c),9(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-9" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3A" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//505-30/tableOfContent" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//805/tableOfContent" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Paragraph": "1", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 5.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479836/810-10-S99-5" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-4" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 6.B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-5" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-12" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-11" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "66", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-66" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-11" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-14" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-16" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-5" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479130/326-30-45-1" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-4" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-7" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-9" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479483/340-40-50-3" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479483/340-40-50-3" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "730", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482916/730-10-50-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482551/740-270-45-3" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//855/tableOfContent" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481444/860-30-45-1" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-7" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-2" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-1" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-2" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-3" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "27", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1" }, "r649": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r650": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r651": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r652": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r653": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r654": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r655": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(ii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r656": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r657": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r658": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r659": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r660": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479081/326-30-55-8" }, "r661": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r662": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r663": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r664": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r665": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r666": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r667": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r668": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r669": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r670": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r671": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r672": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r673": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r674": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r675": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r676": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r677": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r678": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r679": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r680": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2" }, "r681": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r682": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r684": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r685": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r686": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r687": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r688": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r689": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r690": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r691": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r692": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r693": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r694": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r695": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r696": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r698": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r699": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3" }, "r700": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r701": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r702": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r703": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r704": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r705": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r706": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r707": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r708": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r709": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r710": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r711": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r712": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r713": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r714": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r715": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r716": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r717": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r718": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r719": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3" }, "r720": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "55", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55" }, "r721": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r722": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r723": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18" }, "r724": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-1" }, "r725": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r726": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r727": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r728": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r729": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r730": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r731": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r732": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-5" }, "r733": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r734": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r735": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r736": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r737": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r738": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r739": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r740": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r741": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r742": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r743": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r744": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r745": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r746": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r747": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r748": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r749": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r750": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r751": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r752": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r753": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r754": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "912", "SubTopic": "730", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482517/912-730-25-1" }, "r755": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r756": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-2" }, "r757": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r758": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r759": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r760": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r761": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r762": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r763": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1" } } } ZIP 70 0001628280-24-008149-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001628280-24-008149-xbrl.zip M4$L#!!0 ( $M@85AY[>J,%D8! &--%0 2 86US=V$M,C R-# Q,S$N M:'1M['UI=^)*DO;W^14Z=,]TU1S 6EE<=7D/Y7+=]DR5[;9=T]/SI8^0$J.^ M0N)J\7)__1N1DEB,, A)D!)Y3[?+!BV9$4]$QI:1G__?R]06GHCG6Z[SRU^D MMO@7@3B&:UK.XR]_&=Y?7%W]Y?\-_NWS)(#+X%+'/P_]UJ.NSWYI3()@=GYV M-M;]4=OU'L_B+\YD458:T<7SBYZ?G]O/"KU,ZO?[9R_XP/BB<\MW55GJKES\ M,O)L>KDLBLI9?$5R@^\%ZZ^'#Y=??:Y/_6=]Y9GPB3L.GG6/M UWBA>KHJ1( MR0TOMN7\MGG$^.U\Q"]!RR?&RL7P=_O1?3JS'+B2_.^7N^]G@:<[_MCUIGH MY(472EI+[+46K[1>-DU:4I8>-!^A;Z6-#T@DG?WOC^_WQH1,]9;E^('N&&1^ M%SS57-RX3-G.6?1EKWB"6++5%N M2?+R/*SW0+(\[W-;!P0WB-/Z>=\8?)X0W1Q\GI) %_#^%OD]M)Y^:5RX3D"< MH/7P.H/;C.BO7QH!>0G.*$+/!O_V;__V.; "FPPHH%H):CZ?19]^/HN>/7+- MU\%GTWH2_.#5)K\T3,N?V?KKN>,Z!$9@O9SCA<2+?K5,DSCT5_C^.IP2SS*B M ;P$=V3\2\-H 4HF7!A#V?&R]$+,UUFVD MMV7^TABWY$YC0#_X?+;RA@PO_.H:(7V?Y1NZ_0^B>]_@$W_^AFYC@*0HZ@6W M<+EKKKZBUQC\3=G_!9<.<.CU E[AZ?:58Y*7_R:O\X?W&P,1_NM*BBIK^[_D M(O2\%2I=.N97/2"K+#+AD]84GC)IF?I\#(K8&*AGBICI[3TU>3W%XSE"V-.- M($QH>#/^H5L(9)2%Y-ODE:H*1+V5_I'IE7T-1,JWSAW+!MGP0I*,(-;XYW?D MB3@AN0/M8SFPSG%5M-LOO@F23U^X>$O\4M\-/?H754?G,:7HP!$:R>>$@B_YRS+Q[[%% M/($.BJ2N'!=7_[T*RK$7V3_)V\Y&QEWNEDD,LF0SP;\H@*)/K3A)>]S&S+L((?9#J" M5Y@6?$OMFCE0[P.8$MYS8>N^#Q@,7..WX8OE-P;))1?N% 25?C^,'O3Y+/7Y MH>.%1';GX YX\_I/26Z'WID$(^,?ID\ M(ODN^1N?DK+7/1>1B48&_>H&.=$!Z,=B+5\*;4Y],#U]@3P MVOWXX5?BN&#ZI#UV5W6]\HBSU=%OE9\N1UG)NF^5WKUZT+O<5;1 +=KG]#XH MOB61@05YQ=N1=_=VWN NF[P:_9K1RI=!\R*XQ]+SB_]5PS M-((;[YYX3Y9!5M%['XY\P[-FZ,H/'?/"\HS0IDY_\5A^X]Y*TN'=6XDY_Y9A M%LF[LT@ID$7,N; ,L^@X02*I=*^W1BS*MK(5QJ+27>[B6?0=/G%\4L^%A[E M 2O\.-(JPYQ+S0H_CK2D,.=RL\*/(ZT?S+GDF_D195/ANS'Q\5K=CK_V8:&_ M"2;$J^62(I?NQ->(1<=99>0*102.SJ(C);PK%!$X.HN.LQ;)%8P(+!7RU'/Q MJ6 (X' \.=)J4T&?_Y!RF^?T5T>.D^=T7T9NF^;C7D M0F'.H60F#<^ M"K,^9)L?]FHZIE(+ST"CB@45GBG,N:CE"")G=4MASO/-2/.A M:5H!C;+>ZI9YY5SH,RO0[[DST*T-XYE+9&0G_ MX-&2UU>J;B+-4QG:L^#*ES,UM2;>>:VL) 8\3Y7]N CZRP+S&(_3'#L19D% M+M4D7% K5;NZ\ZRHG5!J36(/=75(BV0U^[$'1A;*DNA?]8# 01W2(@E?]4C MH1W2(FG/0HZ]I*DQ5R+.K:155A<6>]!J$GNHKY54'*MY..&X].<1@B,1GGVG MGS4KJ3C:,]9&K]UGIZ5Q$ YGU9U;_@X8?LC,8M[T!5A5-5S[P?.KQR) M2SQRP-Z:6$ZGN0Z/')P,JWGDX+CTYY&#(Q&>1PZ.1_N:Y._K:DK(!;9:KTDD MI:ZF1)&LYL&1X]*_ZO&. ^\=*([P58]?''[O0'&T9V[O0&%3Z];$"Z^5E<3 MSMLN=]DKQ"SNWU>!2^P' TY/U99S:DVW)K&'NCJD1;*:_=@#(PME2?2O>D#@ MT'L'"B-\U2,!1]@[4!CMV0\&G)XIX1^_FU67_?()1A8C!IC58S_TPH "98%1 M58^%'+QT["A<8C8(?5%M[&!\OV$D&#HF N5]]7R#=O%(R7]+Z_P MQ\SU=?M7SPUG/CS"#DW@'5X#T[:)B06_>)@"@&$]ZW8)W:-7#:U^0896C]F8#0?5 4#U M5JWU=X\:]O<^B/8- ID+)6&;^#O=>8Q[P^.?/RS'FH;3>JXKS 5XTAB@O]27 M 4>*\ 2O,V)N5EYW!/1A2.[(%&PK4**WQ!N[WA2U\,W(MAZICKI\F1$C(.:# M-85+P!V&3_VQ;N!W]PGY(C9^+N?!;=/%Y\0\D2G[RGW3''Y+!&2H+K#'7-P* M!7B^D/]*W$=/GTU@';275^"OL-K[@674'*< MI;#/7,B()9X<)ZW?9RXZM!-/OKD>L1[KN=>SSUPHB"&6'&*-=3.U=6XJXMP8K\V9KU,()+RJ#Q@Z)B'.[=-%G>3]I5+ M38)4[1S'QF8M.L,F=XUC[DLAV_A+[E$""\\7MH^=8B%1R9!;_JWI/E#Z^^@X46)!97D=QY6T8@+F:7PQ"3 M1.8B$JP0/"7%KNTH#LN7YA,'YH(3C'+G&"N])#(7IV"4.\>PDB61N?((5KA3 MCD\OB"'@@QL1Q;??Q]8ONK]_(P? ^&)@-4VPA M. 941Z[NF?>N'=)ZS@O7FY7O;W5:X1MY%)!J&(V ,11=91]Y-).,<@WE^:R?V5F8V$<@H=5 M;$5&^F3F(GUT=SSQ$S0M]LC?D2<++[D9W\($O5LZS4O/ R/&]3Q"J[R'YK_ M>L'[ZAFID)F+^56%74>)6JX;;,K'SZC=G0'E\U#V^X'25/(S,; MN.00/#0$CV4V,!LRY1 \@OMZC$2HS&R$ED/P\%KP.-8X#PV?,@3+:>4NR3PT M'*'*TQVXU0OH5W?PTWF<)[6. ;+%A==ND#[^DD$&MIY43)6PPH._'&3O>+4+ MF&WM?;"X--=BJC 7..:(9 F1A_X<2W:8C;$R'QQBPH!E-CY9+?8=*_PA-USYB\?B=/Q%[EXORB*V<6 M!CZ]0JI,0:G*;!2F"#[(U>$#L[&'(OB@5(B.8>GV%1#; M"Q>UJO_$<]]>':+DL/[8Y_#LT "'A78:TG]8I# M;)2&(V&'].-;+!PJ>ZPQ&]?AL&&IZ"!TK @S\4CGJ)G2M9/$+(F_31Z2?)G\ MC4]9?V(XF]FOP$++V?14>L4%7K'+D]]"G-D0VJ*R/FZV>!\]8J4L_GXQ^1^Z MHS_2&^(+ZUE/IC$;:V.=84>J(.LP&Y1CG6%'JAGK,!N]8YUA1ZH2ZS ;:=O" ML'F9NVW?!!/B)=_6<^7J,!L+8Y--QUJOF(U6L5?Q7;YT5UQ8 M+^?>4M=]0?<,S[57^8VWM%WO\4P61>4LON)LK!M!:^RZ@>,&I"&,/7=Z1\;^ M+XUQ2U9Z O[LXT]-I#\E^HE,?RKT9_1Y]$GT;8?^[-*?*OVIX4^9/D>-?M*[ M5/H$E5ZCTGM5^AR5WJO2MZOT7K73$&S+^>WN_4G1&>%U#2%PXVDX+:DAN)Y) MO%\::'6?O:%52<13*-D4C?ZDA%0H>11*/(623=&Z]&?TK4)_1^(IHDI_TJGW MHI_1Y_2:#OV]T\U!$GD+2:)/?#?T#.)'?TZ(;E)A,*VGP6?X0=6/94@R<%;5 MU+ZBJLI(Z_O.-RIY;0FQ'JJW.YJL^#3 MLV4&DW-)%/^]02\=?/9GNI/<8+BVZYW_"=74>/QI#+AOC?6I9;^>_^4!Y-\7 MKLFS<.=.=>!6/2F1F+,/'(^)?&GW8@OM@8/.@CFPCN6+A ;0&KX.00ZFBV]:CX] E #=P8CAZDMO=L 0A(/;@HH=>,;1E2H6D!(6Y_YY#SYY9-I M^3-;?SVW'$H.>M.G^/$C-PC,G7MRYEN8J^4>2/IW51)_WE]]7#Y5;A_&#Y2\, MK[\*E_][\=?A]:^7PL7-CQ]7]_=7-]<;I[ JRLH&75'LI.2=)O5W'59TYS%P MG:;PM7W1%F01M."VB:!T= XRB]U8\\^W_^TR@8TZ^Q@S^'9S]T- 4Q,D^#J< MPD,,(3;?[W Q-]!,=73TT4QBG7]U#5HJ@RY3@ZYA8[A@((FMOU%K;/&4E"6O MIKPL?+QOS97T\7[XH7N_"3<.^;C+0+5H::J 5:""W=W99A3L9E\H;5%5WWU4 MO(YO6MZ2=5>>O>#*NXQ5FXS72>#.2E>G:[9KY)EDEN"_A>#M@^'^>D>PMQIX MB:XWU0,P2E^"\['U0LQ6X(5S(9<;@__X4[^K=CYME// K! 9UV2*DO%O/X=W M#Y=WW_\AW%W>WMP]"+<_[^Y_#J\?A(<; =;A!UAL!4D1;NX$2?M@?A1NO@D/ M?[T4EI;H^?(\O'C KR4P[5=(]+Z)M"2RW8,HQ]V4S3?7$X()$7Y/4"-$(1^! M@/=G[K& Q.>Q1'&D5?"9\$EK"H^8X&TM4W]MO1+=:Q$G :/2&/R7[L!07O_C M3U)'_*1(30&^AN>[1'6\YWHW.-W<[*O/*.GU.<9%K!+FEW!FZ-[$_G1:+(*#^C2.B?I"O4/,0%9W6D" M6=EY1QXM'Y$?7,,W"4L[C<'PQ^7=U<7P6KB_^?;P]^'=95.XNKYH[\Q@5G#_ MX?)%-P(Z;PRY>_/Y"KHO^#-B8$;5%"Q'L )?,";4RMO)L:P\;H_A&<-BU!:C ME3V+[23UVMV>4HCQQ.:CU+;4*>9)BM+N]WK9C1BI M.^S?[LWB!!XM2KAP0R?P7B]<<]49@Q$9Y_1TS9GG/N%S%EY8MS'XE;B ?;U\ MBS&2GM+)FVY]1TYFODE5'3(/^LM57'D3=6I+0O++,W\6LNR1B_U'G7'^H/^_;$J MDO*6'H<6E*-R^>H.G+ZH7[U'>;HJ";$3\3$-YF\2Q)*VEB&6M#6JS+.\^XOVY6;K M_"0U=TS#"_CUQGMPG^?K-Q;A# ,;G(""%_":4(PJ]QOO%@P?4.*[VT62Q VC MDP/+K0MHL/_/FD4F=(P$N3%01$4\K$54 NUV7"AC6F"$8>:!S%@SW1;("S'" MP'K"P ,LF<3G1@_SC 0<"PCD%)NF:G'M#[L+-"Z10X_H*R*L@+DAKF46/V:( M&']W@:6W$]=Y$S&6U,9 [D@M5>E)[ 04MR(DHNHB8OH??^K)4O>3+P3$)C.< MIN#0>38%*SGD3="!K$ C\YUBE4TSVU1 >Y3;6,UK+%H4Q;%=XA%3F(6>'V*0 M-W %N *=E4A;2?*'T4=4TYCQ&1K!^8;2YP/F.>4475_'>3#*<_)B3'3G$3YPA.>)!9\L5.AV0YUYVN2M*(F7EE=)'E%9 MF9LO6I1.!ZK1?8R'B"$P8.?O3+=8MB+1FA.-YI3O_SZL.[6RX^LR%L,H _\V MUH)"^B;,T@4Y'MY_'?Y-^-5V1^!IWH,!:@0"UD63X"V!4]RT_3:K,&6/YC=C M*Y^_?VN'Q]OOHH\L!T/UY[)*-W,>/DQ&IW7EF)@J(,+H53 FQ/A-F&+I_O.$ MT*P1VN!+!1D?I(\15B>Z+XPM&^QXW;;A"BSC0_/^]]!"XQYL^A&)+X 'K]KW M"F::: %;]$%LZB^Y"8FXH?F/2R%6L0DF? OF %XZ\XA!J'$@R=$S:$FN+WR M)X-T"GX(*Z4_<;%2)"D5"R9Z\'8^S_KJH''$TA?*-!P$[T>[L3QQ ^CG1/H2.AP,1W0%Z,GF/JKWXY^7?^9-O"HJ MHT2%'NA!Z,^U4*\Q^ ?QT[5-\I/6S6\:S[6[=K&ZDPM4-^ CWX'E4RL( "E4 MEWNN@^N9_2H06-M>A2M43KI!HXE?]4"/BOC>B,3B&8[?/L5L0=@$NNF##_(B@&P9@%WP.X"ZRTT/UEOJI $1OI5\.V@UI]2@\ M>NYS 'ZI.P4:O*)6UP5_"B(!8_ 2E91\W08%3^C03#*V'%K%2Z/Q&*.3898; M!DB_ECXEEVV]8,/HDJM0F\=7;AQJNR(6V_ / M'B7JBMT]2OLZ_? 9/;#$YJ=8FNRZR63*1Z36V?C2G>!0CEH^N] MSC?O8J7/NKCRVI3J32K>@KVUTK#S3BN:';O)U/&R&JW"UVG.0^WP7E%3?D"4K%)95U $J;_2ME]$3%Z^T(B9UA(]JC& M9C#5,GXGY8%5Q*F9&&NV\Y$PW@C9/H2U2:/Z$V/8\V_4!&$HS65%KBAT219M3I_\@?@JA=TML9K8< M<18[R[NRO;7>^WU=*1*JB0SD7[1; +GIX]&.ON"& 94L%+&D2#/FM>7[(7IB M\98#6JY+:(K3B$H1?2Q%;&)7D_@.&U[C!R"@F 8W:"80&\Q5*:.X9[<0!;XH MJ)N&*K>E;K;LY,;TG=)6MXQJB]4_THW?8(T(';,5X]4P"!F//S%A2^0M3;Z( M(+V#Z50M.A1B\N\S90]?5PW>WRPI/CT0OI&1ATTN!;F7]+?5PUX\!D:9DN%6-\X-R44QL#16HJ_5Y34^7$FDL&.!"BI[XY260O6=Y/ MTS,ARU^*EV66UKU#R?*>"]_Q()!17)4#B*O6&$A-<"6:6J^[)JT1;]Z(;*; MRP8_K"+[5OGI/"=V.L^;H$)W/:BPV^:B-P>HS=PHWA8?Y?9$UHY46S"!OEE< MW**/@-)AL'[+MI.Y,I\&)\X/VIK,<3/3'TEKY!']MY8^#HAWKMO/^JN/E.1G MQK%W9MSVD]D.U*(A/>:UH94P/=/I_N>7^ZNO5\.[JZ.>1[7;1+[!RBI$)_YD MCU(?=>3QF2?QH16I1TBP?&3$QE@J>:E7RPQ)!#V:;=_!ID=U.^V.6DSWC7Y; M[K_??&/_3EX'#%+MU ?MO=7C%I;%)$M24".S=\,.9:^>6>=?YNJ9<2P95D\% M&><%PA5-GLB?OLT3FE=.Y"O!HU.6T\TU2^N]3-=Y75+A[5I(*KZ_A1>?2[WW M$EMEV3E'1$W&L61 30?6EX!,XZQK>P,^EGG:85[>3X9S"Q&?'SSO"Q]^.GIH M6@$Q/QY=VDNJ7=M#+Q!%)A(CZ#K:6#*@JX^]?["2 &MCX#<:$*';$+[H-H". M"/<30@!N42(>D;;!W*[J]'&3\W#F6;:@B'0N.$=EBW(L%-N[IV&XXLS&6X5K MQN.+8S4U(U9O;M",2XLPJ,2;&8E>L^AA\P!O(;1[ L5?5:=_#;=4>@+"#YGDA/7ZN[T\(6CAK+:X4[/\2.KU8SR*A(V4 I@3($K;-#YJ>DSFCV7 M/@GS+-H.*5$>]:\$'KI'5R>\^H$I4/3DY>H'>9?JA_P\Y9PKB',_=$=_I%I[ MOEW\J^4;H>_C[A.:OG5T^]6WJ$F_4/:X&D0-(O":.^*']MN,#=?Y=0&)?/S M.5?Z3*%"DE:TOL*U?K58]S?LOF,%=*<1U>#P@9W\C0N [?HA=AD9CMPP.2Q* MN+/\W[A6KPT(%&[+' M==_)HVY':SD]4I$OYO7AK2IR;]U.^J/'N_7N"=&Z%F!1:)(VD^?MM.* MC7"NU^N# J[7.2S>M@ 2>6:[PJS[2L8ZK47Z.8=3]P7_&]/B9@@B\5(7&=71L.U=8=KZVJQ[O)E8HVLU!,AN))F9"P967IP)A=AZ6L$VWHI&Z'=P^+ MXT^NKH?7%U?#[\+5];>;NQ_#AZN;Z_53E'84LTYC*QW6R?!IQ9/KSL^4LK ; M37#>ZLI'(]5R5;VP?%3I\L^T_CA[4["?1L'#Z^)T<@RG<)\![[UWQ\&S[I&F M<.48;5I![(O@Q/9[GS&1SXW+->6^E+6<\]ZZIMI2<79;.K+MAX 4-!]'ZS(KZ[!P1,G1, M_.=R 8]A<*%[WBN0XW]T.R0-(2J; .?_)3AWPFG+=&FL#!\+<@-D(52",#XP M;F'_54UK]C2P+U9'.HB"#7E8DPC>SBPJ9BGA E)7 =&.("!R8] 7FZ+69T1 M"C)G*K B7CE/Q ^F:6O@?.)RMHFGBGNU96++HG$_<;W@@7C3)6IF%0&E,9#E MIII_C7@'BF6L$;L8I1Q 6Y1J$0!2 4 * $AB!$ EA #VJTXI%00/GFX203<, MF$G@"QXQ"*R)(YLT!9OXOJ#;MOM,\P]XF([IAJ-@'-J+&]RQ\.<"-=$P>=TW MU_L:OVP8O^MN/K;8F4T!D89:2%Q#D* '0OJ).>A,99K %DG(.P$L?Y5ZJ1.@ M(:MX^-&IULKYSJ4WI<59"K^_2-M%Z;)LNWRQ;!O/*.%FRY[*8DVNKDDP%ZUL MJT^7FB_=?H>1U8>;+PX:]JFV'&Q1 MJ D%:3]G>-R20&05@WYC(#4556$D(%*D4<-AM$6=%@5SLT'&X] M,M,M4R O,ZQ)BQI2N733I;&22N3FZ[[:-B;Q943AH6/2/:U#2M7]C ]5:@PZ MS7XWM];E1BR#<-JB=4N D]P8=)L]Y20CNK]N_ HEF5XYAATB4KTODGI\HF"H\8^N%F*T_B.>FR(W2 M&,0[&1BQ6[CY>\AH0D$0VZZ?U<9 :79$5IRL(JWCCA1M:V-65S^X@6X7: OO M5*]84X':26?O*2,:>)!BOZFF9(7VLV)V9E0%+.93!MU.6GQ/T'4 =&J_V>_E M#EP< G2UMZN7JA)BNPPX$JMN;DKOJY:_N\[CNS4?[]K(76XCUQD[6[1K*G;6 M,-)K#-1>[D0:6]8MX_5 MQY&&8)7&N_%#08S9$Y3<$B \0C=,,)I:-.-R2:9 M>T>,_7I=? [S;!7X:..9RZ0+@_Z.?)J&]MW0G@N\MDX%D7[CYX M5.E5C :<@JR#N*\ZRZ M"4O-N_VF*!?E#.[&%D8[:'*!.B6!VJF:/JM 81E]7VMV\N_=*%V@2G"B6&L8 M__UJ^.7J^]7#U>6],+S^*MS_=7AW^=>;[U\O[^YI*7?WDW#YMY]7#__(TUU\ MB44*\ $[SMEDE4?':CR>96BUWU.1[%6V+7UDV59@D3V[RI]"'SJV>WTD[:^$ MF?Z*35KR.%%U6\_3IEB?57O'!GNW$2[VVPS7Z6(/'S'_/@YV8CY<(.HJ$#LV M"LPG$#V:XJE;6Y5J+'0>-E(QW"DVR8FJ([!P@)Y53+_P]TP1G$8^=,MZ<3F= MV>XK(7<1.;\O3,,]):6/DJ))K&P!Y,GU ^K:HL'4%1L#M2EVG_;@63B]"'.2T$XW5/L=! ++I-B5O4M034 MMFW%)0"J0[L(2#(K@#K%?#9OP%U&U\ %?_"!#LV]"KB%U10;U??<2G;8:F[L.[NK60U M&!7JIO13.M*R9C!R'X6)A2$'UE3JG"C*>KLOUK!6>]/Z?J)[9.+:0#\_V;F( M9UT$KWP+6S6SXQ?N=.KB6UWCM_UXN(OB/,;]A^YJF3PXOK^%%Y_+*C6TCL5< M6_?]2$D.F^\W>;PE'A7NMVJ]LZS6Y?4$+J+G'L%SJWLWWGV %>?_H]LA63PP M5NCB7*%K[Z\LFX;2+6$HG<:@+:UODE]O+#G3/>$)']86AF$P<3UZYL#&:?CX M/O]=8EY=?WMG#G3 _N)5NRV:BXEUWZ%Q^N"ZAQM<#U9TL0G8Q__O0/QHP.=9 MR9UY1E>^'V:?#1Y]U %;6&FJ_?6PO?"A[%'?A($?Z XJG8Q#[^/)15)3Z?>: MFKIN7M$&N1]CZ@L6)0[=]>4NWOA^7]FRY6,OAO6EB&%BMRFGS#HSPS*/.@?# MY.BH*:G7[*2HK5T9QEOD9O=ONMM*F>9,IFM.1B>G3RN,._G[R/.@*8/8Z92+ MG:BT^#2/VV#>\/ZRI^'=*][:[>]I>/=+&,IA#>_^P6S;?G;#NW>XP?5HT_72 M#>_,,]K/CNN73^K]3350!)F'EQFF>]%-$J7R1Y:'<#+VO>G)4E/KK>\YW^.# M/!Y,BJG\"6E#%R/L8F8Y@2LL!UJ$.*06T4' 1AF;Y0>H,2+>6VI+X@9RZU/_ M6<>R^>3UE.+1WSX\^ XK,5?H#2N8@31_=CW3)TX:N95WT+!A?(<<'E@WKD.V M<[D%CVW!E<)(]RT_AS]S&ELS^EEMTK=FIR1BV]9>45F9BN7Y:HZ.7GYT=%A" MQ^EL(A_"@)'0N@VFLV6V+$?';WNW\YC2]!9)>.?%QF$M2D-%EET3L M[=?K-KOYFYGQB ^#@-K6#J]X0/6HNFUVY=PJEZTP4 54[AT)=/C0!):/+<,* M3FR'^>9\R2Z:UH?QPV]O)22AZ:7N.4"/Y:,#OT94SBPAV!-/;793=J)]Y,9J MI4&UIFT/!BKPU $3W0^\UJFQJ%ETZ\! _ M/@YPT&4[?E"V8)VQRY P5V M8DLDHEF5XXMOG3N6_4LC\-!:6$\AQ1,:.N;%\G06(,1BFO7$[Q%V&)5%):T( M*O4V4ND$S9SE-G0H*+N;/3LJL$CIK!UD=YJG=A9)FOJLSKOONP:A+F"M[A=V M?FZ!_&3TB#$NQ5R*B][17H@4RV)AA_8>68JIU7$6X!D92>!V*5VP])Q_A7Y@ MC5\/CP69;F8G1- -/-),=UZQ$-1Q WAZX"(.3.+X]%PSAQ*&'G(VMAP=3"^, MI6"-.[7*XD:IH:.'I@47M5<#UDOSCM^MRI$9-7-]6@)P3H]0LY[(IV?+#"8) M3I=NC/DG+F[11S"H,-A\RQ*-H\.0CT3BM]O*EG[B:!'YEB')LMQ7-;6OJ*HR MTOJ]CJ0HXK@[(J;:'XW^*:\$_;681I MT >4=^S\C%X*BL;G,WV0\/\8X!/61#$:Q^#SR#L;I"'SJ!*T=G8XG<1P"O<9 M\-Y[=QP\@RO3%*X8?E,@+P:!91/F$GF? DQ5SS8+NG@N%@"Z4L-L M;'WFD_/DET])BS#+H6.B-WV:ZMXCJ+UXU4"5]]9#Q_=%7\?:L"^U^UH?%6(< M*XA?'.O*-LSQ;/US56MWU/2OQ+:4^OFF1TE*6U3[F1ZU^7-5T8H9E-CNR0H? MU Z#DMMRYWTD'&A3:#G.16\GWR+=2)]/MI]KLI%F.,YTUY1>%&X#ZX (/^"Z MB2]<@G(WDQH509&:&\D@9:Q78YX.U_#);F3(*P/[MD;*DGEAF]98\Y2G256& M,/Z)DUG)0V9.20[8XP*V]OG@N^@P.S]7W\5RT'7XE"L?7([!G\3^)_YH+]D MSN](C8&D-B6)E9,)#Y!LY0+#TMPR"8Q\?('!/C!*4Q1S-\7C L,%IG2!48XO M,'@J@]24E:(.C^,"PP6F/('94B5W"(%1Z>GC2O[6F04)S.FTJ?EN&9@-YCUI M-LO'EOJSO>1C702TQD#NKK?9XTUH:H"@+7V'#Z%A<1M14Y0XP&H)L"U-T0M2 M4=W&H)MRL@)'4 T0M*71X"%45 ]6P*8HLP*PTXG'WWKN&+@6-2N$9SR!31AM MVG+Q&-$3:Z.526RV=&\]A-C@L3=--:6;5F5C#1Q@/?-KLPC1+4$V/&3/(K:&/2:'76]ZQP'6 T 5D:6)"/ ,(6B M-/O]W/OV.<)81-CQLRA*!Q#6:2J]W*6##,8HE2[+=F345,J+J^UYI\P]9:B, M1%%&&>I&W6>53A7Z&?)6FH?#YO%34 JFH+I--;\3Q+%9*VPR$"3M@WO>;4H< MFAR:JVKS^"E(503/7FJJA857>8OB?"V*_0";^'A\:RH?'-^:6NS65)[8VWDO M)^JAF_&OKFO2QIQQ7=&]:^]X4/K2 B-A"4)?K=&.38ZCG;A*6*-9H M7Q;'T=E#[F[+!I,.GFZ9>UGE0&$1*%N2C]F TH65,[_]Q8'"(E"V M9 *S :77&&AJ[L8"#!9LL&U?\4UE96TJ*]#]Z..6RTYAIYIR-Y8E'&W;.U8< MCC21[D'L\W!(+7%TL#B_)M$2<:FH@[N+H8)D*#3,5S4[^/=H<1RSB*$>H/R..-$S!]WBGNWKB*$*+_7A_7U$G67 $U@.!VS91%0?!CD@AV.D4%9JLPEZI M"EBUOWJN[PO1F=UY I9\LB38^SLFN(WA&?Z)XQH:62)GDBMCN;$B?@ =:R6EY%] :_ M[NN"VI$]O&OFV.^2.AYKYBT@;DXMQ_(# M3P^LI_TV YW(OKAM:?.(J" 0PQ62[BL5"EI[/:VH&JB*.=]U!].V?'C!8%(I MF/(OU1Q,#()I6Z*[8"QIU.[K=GE[SCJ":6L*NV T=6CUCJ*QTDR@]N&]X=2% MD?RA4R2X8T$W?@\MW\(_6QZQ]8"8@N4$NO-HC>P]=PR=B(NTQ2))56QQY&>S&_,##?2^=ILQ; W#@93)" M\R-/II5 WNGLQYXS5K 7L951/7>P0WU7Y=#CT-O'(,V!O"[M::_PAA,<>7M9I#F@UVL,NLU. M866+;)FD5:MIO,'C:F(K=+^CU'?Q _G]A[__=+KR7X$&\X@?%.!,U5V];_&7 MKIPGH"/N28ST^[7KS%,K::J\#ZJ<-[NN)U2VN#\9H=(7 2HB*_E1#I4#NBOO M(R6;\=B7T&/N*_QHS#H":9OW42B2,!O8E+NL;.<\G;,SJ) ZS"8'^ MDF^?TTDG6K9&XI+\RC?/G5[ O983 CWB!(SK^%\H,Z+K'I 5ER^!IP-)+4?W M7J\",O5!MO"MGDM[3B1ATLQ*NHN[H&4E=\=%GBNL%X2W1@C9@7 />S>)7=[K MGD,X4^22'03W\70Q*?_!.AS!M4+P]I I*Q"61=PAU^Q7H]JM]H4?5W,C/MDS MQZ.Q.:UUD)[8=_U"')+]L I9Q+UQ3;''P["U!-%.]G(*B-9Q(H,QD/^P>HX2 M!E&RDTF:7],HJ&EX,ZIZ8F@WHS _B%0$4:]7U%$ M B"R[)-F"&#:%V91;Q>8-/H<55[^7-+D:Z0E@X0H[1-+<8K,4UQD&@6>- MPD ?V>3!++\F#KZ^6'_O8 MQ%QRL84/UVY A&\?^=[9&MU_.GMGY[5]41AI"=CN6##3,<\WV.X=4UG6(O/5 M9'6Y2;WD:^CA8C/1?7(3!K,],,YP;[#&6_O7$6C;/+8#(TUN M#-3\N7.^K(UZ(M4!^]BH2/HE2:+DOQFG7KJ_ M72HIA=FEO"Z%1>3M8Y<>!GDJ1UZ=D;>/H5H4\+9'>B6Z#5J26=G:RK%W=-OU M,%JOPYK6.YW :T'[+T[$_=O'9,7ZUO&8&,$&N4D3B&YCT&&E(Q2/(!S=]MP' M0KC5F)]%6D<([6-$[H.@?F.@=7A7U3I":"];< \,R2*>=594,29+$4JV-V;, MT^D?;##>/T9)]0TA2MH"$4.8N?OIQ.3*L7V#/:GZD,\^]&$"\-O[E5VITN1? M$Q"T],"_+*7:AVO%/\5PJ@*N>ZT@5UY5?G:@88:IJ,V9'&U51UNFRO)M8,L6 MFY3I3N&>5-0F3P[&JH,Q6_5T=M6G-@:*7%1SV?+@=IJ[C?F68KZE>/\X+2!I M[X/#9)GN!!8+*R4\_DI4QK8E+E=UE*LMWD8^N:);=V6I]!V!7*ZX7+$E5UO\ MJGQBU:4=._NE]YSE8L7%BBVQVN8AYI.K7K2!O?2CBUE)>[#K&,ZS'>#7PPRG M4\"%/]$]\DY/*N&#_C'70;-+_%* *:8;CFRRRK!C[2/E0RM[:*=3'_9%]RTC M3Z*VIHMI39;,6^+=HZ9\/X(B9^], 0^FT(F?'B^?XF+Y[#<&8CM_.)^=\A(N M%+47BE[)0J&(*!1B4:X:%PHN%*4+A52V3$@H$S)?*+A,5$8F5@,/90B%3(6" ME7/L3V?K]U?+#@-BYDC_;_(MZRCM&6=?0T50@!L50VZC*E"*<:2R\>I(A5%< MSKB69;9,SM1C?C,L9ES,FIGTD9V^;F&G%N'MGW)*^WK!M;_\$]GK!06&IV%UVW_*A,3"TTXG89$M@ITRSIJMK MW9?0+)&7]S<'O0G&;FEKM+3$=EEK:W0 DY5+#DMS*SV64I+D]+CD<,FIG.1D MB8YD$IQU :'54V*-CDWFTE%WZ<@4U,@G'FI41U54<(.1"$8%G*VLZ?'=/=[>\7,!,^Q\AS@?&M\A MSG>(\SU.&6,WB5Y-;J2PKS7LWW>U]H6]RF'/$# X[+/Y M1/NBGA8G*%D/ >6HYZAGPGG9%_8=QF!?^Q90E".^$/K@O5B.$$R( ,,R0IM6 M%@ON>'[P[7J=*N\!Q8=61@^HZJ5X4RM1YS.34V=6]8/1J0[PLQZ _'?Z;&(. M88[Z([D.IR/BW8PC-703!GZ@.TBBN(HAV\EX6K&^YF.A13'2UC)D[CHE2,;'EX-ER(=&GD.BI7$VP!(EMAZ:6BHF.&*F)K($F M1AR,"MA(&\K@4J"^S<:,J+=F9N:).%1?>/:SNY:WBR[+4&;QD:CX*$I1E=6% ML/I()=D\4W)Z 0_IT(;V?U5L8HI7([NT4?'(\1_3I(GI/ MH[TP2*L :;4IBI6'-'4$S@(='@C_FM;3X#/]<6 ,R(B!?Z[\-R=A,J@WOD\+ M_8QSN;N*['^%?F"-7Z./+,PHMVQ_4%/&GD69OF(NTTEZ56&@"0L>L& MCAN0"#\.*N3DHSL7AS,)@MGYV=GS\W/[9>39;==[/)-%43GSX.NSY-K#RR;, MY=,*O26M+?:0FM3=I%6#)3'KCVC.@6^B)_XCX[@CYRG\CB$2N9H_A/_$% G0VA?_2G5#W7B,>*%)3D$59I9.!7Y1FCFG)14UKTS[='&-3BAK; MIHV4ZI[CY9#ER])3E771U%LC0'.7C<,=PKO?@4N"#@! M'RF1@0IQ]\;0T4/3@HO:&Q>N^-VJW.YJ,+Z9ZUO(P'./8-K[B7QZMLQ@DAA$ M2S?&9H&XN$4?P: *!MO6:*Q :,DWI%(K*Y28_DGCA:Q;1F2+,M]55/[BJHJ M(ZW?ZTB*(HZ[(V*J_='HGS)HPOBFB;

6/H8)GNOVL_[JHU&S MC#T WANZOR791L*,Q^4MJI0_H!?C_7I @=N@A. M7!L0&&G6[B?A\O?0"EZ%#S\3%?N1^;E^H$5-;@C/,/VF0%X, LY99(S"M/5L M,Z#NV9NR,YB)K<]\E3O/;&*PBJO[>9&7Q?]'6L M&?N]MJ;T4#G&":+XQ;'>;,/\SM8_ET&[]KJI7X$1F_KYID?UVZJB9GK2YL^5 MOE+(F+1VKYOM2>6/J=?N]_J,C8E%.G7;?2W]FV..219[C(VIUY;5;!)<_ICZ M;:WW/IWB5/8;(UO2:,BGD U_Y01&>SO%1=/#B8LHLK0((Z^$$#$62-=8(1GB M.Y..%IKC3'MM_8QV.L8%OUC)O4.][[8J4L]]SH !]L@QA+&B::[;U'*=Z9;9 MLASZNZ'/K ^?X=([\R^K@2[(X$.'YJ"2<:68060"WV0^]5XJ@K4)V MB@1R@UC6_'6'A'Y.J%.R0K:37HGZ;Q:+/D1A>XO-X;NE3LT-5%IJOVB"M49J,[-#1[FI.A4N]J_+Q3K!<-4&N(P3Y1OSEH3W,6M M?,V.)M9''+A>78&05KI>[4J-@=3LR5)3Z_'#0KA:94LLTM2JEEVMKFM.&5#? M8^6$$(YWCO?->.^4;D8H( Q=K=G-W(Z,"P07B$+F]B&31*QU /!A O!;":*A M-@9@&JE2;TTRULXMYD+!A>*(0K'60Z \H=! *+2FEM)HB@L%"\"ILU!DDHDM M6[8+$(4.F$Z*#+[S^@)1Z=,&V>VN=.NY0"G3%\:>.XW*-05WAA3W!?)"/,/R M]^R]E$*)>H:55'%+6(D*QI7OA\3\&GI C%L8EQLW,:!?WD04OTP(OIO@++:6 M=KN-@:HT@2P%G>7"P/%'!8E;A>"5HG-7L;5!YZY#ZW]T.R0;D+6N=7N-P7H* MJ+0*C7KJC'@3VGI-B)A'+V'/H5:<5FS+#U:HRCW549R+!R-7%EP]G#VL*#+MWG3S.ER MF2U=7OM\^34)YOVI3RPMSH.&G#VVA_&HJJ8LY=Y[R:'#)9NSIUCG.9]DJVQ)=NVST%^M)\LDCNDC3VW= M(^9_\@0TC^MQ]G#VYO'.+:VE_D.9S6,-S>.NM'Z> M;14W$=<YO06(MP=9H3[H G>8QQD_;9UZ3YMW'<(!6WOZULA M@14RN[5T>M% MW5)/0KBX9M]1LY??N;K7+[##:A6PQQ4[5^R;)&S/?JU]L9!^K5QZV,(1EYZM MTK-'M^-L9E$?-]=TNTU-X>+%Q:L&XI4MTKW67;FTMIE]F?:2[:<4A.P>%.,B MQA;8N(AM%['#M6ON*P5TIN4BQA;83E/$,DG8+AUU\@F6BGUNE6:OG_N(@-+% MZT )G\H=Y:ON?)1O#J;E;0&X[_U\9'QD?&25']EIGS*JG%BY>M9<3;_T7$U? MHUGXOMSGIXRR+47\C(LTH2C%]J>U7)W\EC\[XL#UZC*$M&W'012@5[O\E%&N M5ED5BQ2UJNURC,76K'6/GS+*\5X-O.]R4D$^,P++H'J=II3_R!\N$%P@2D]; M:6M[H,I*6RFB2--6DK:^5%1Q+Q07BOH*Q5J5=GE"(8';*3:5[KK?R86"!>#4 M62@RR<0>!:X910%[IBIJ4]58,9UJWS5UIU-&]VLODT**FL:5M&,?,ZJ(2F.@ MUO24T7IBC'=7X^SA[.'LJ25[,IF5:Y7IA1^3IX@J+(]%[8?E\.'2S=G#V<,J M>S+UR%G;LU""\M484KZU;P[+CRCEC;PX>SA[.'LX>SA[F#? MGF_C!UKIX@= M+'#4>NL-#SD:V40C5Q:SA[.'LX>SA[.'NJPIYL1?1;_*$'C^A^Z+W2E!7U8(8& M^#D>^CY^\(,$$W?'0L@EGZ;7&&A-59;R-T;C:&(*3=N\ZU+0U&<&3;5/7%^3 M0""ZY\!@?9ZLYC% SA[.'LX>SA[.'LZ>TV5/)G]K2WM6KK'C%Y_I>'Y3A[ M.'LX>SA[.'LX>TZ7/=D2C%LG*:O'3P%Q]'#AKC1["LWW M%B+<"C/"?=#\[@&.M=(/#E$D-3HX1%$*/#CD^$<0 MYFAH>9I'$&:;?$6E+,WD+/L8$D72BCV&A&GAXII]-\W>*?WH$D7J%']T"=/8 MXXJ=*_9-$K;?02B*U"WR(!0N/8S@B$O/5NDI^U@51:)G#'6;766]&)N+%Q>O MRHE7IF!8YW"'M$C]QD!6FUUIO1XD\WD47,08 1L7L>TB=K@C7V017'RMV>WG MB3MS$6,+;*Y(1)$350'8*3B5*VQ\0 M3S,:W9N9IDQV>9H& 19[A\%D[PTDNZF0O-BEL4Y>JL+]GOM<1&TJ>P1XN7T@/"S-P](;$C_EQZ6C;09J M[2H7LHD=7PUV7 VVG2=>P&J@UKC8DR\&?#'8>S'0"B@#E35>!KIM\*A:[4[*M%-2W*$O+EHV4)VN]QD#6FIK6Y[+&9:T>LI9)U$K?8RWWL5!4;HKEA^2*D+,# M=<0\*D!N/1R&&S+E$_F M*H2O%*WNHZ\LLUY:G*8Z1>_OE2=J5"=F=+N\SCP.H5: M4SA[.'LX>QAACWYUE[V&%.D1SLT_Q7Z MP90X@?_@+EH$W.J6>>5<1'T!:""9KO472TO]'>X3]JV W!/OR3)(9-;=$<-] M=.A3J(67V9C#3M3-OEI0N)!+;^6EE[.'LX=I%;O- 69.Q6J;5&RM3X8\*IZN M22 0W7-@O)OW\=8SEL1#?9P]G#VXIT:/,)7'>3P/%L;5G,GQ^JB6RU=6_?DNOJQG-XN(VSA[.' MLX>SA[.'LX>S9XD]F?8+;_-%BSB^7,$ST:2FI*RWFLF\49C#ATOW2;,GDW1O MX^.])]"IG7I:ZV<>_^2%2W-O#?(0YTRNT,5:7T=H:J2)O;:FJGJ>9O M;IN)9T<*0I8(..8$<_>F&=DF7U$I2SM9;>WLPJ([9J@2;6&KG81P<+B53GQRA0%4]<:/9?6$Q-$>0!&8%]:-P)W#X9Q$6,+;%S$MHO8 MX5H\@S3G;SO+18PML)VFB&62L+7&SH4+%O9.5Y1FKZ\P;R36*]&SYUG-:BDG M$Q=6M[_O_7QD?&1\9)4?V2G4H6\Z87:_)'QUBU*R-@ _0*J]1U/M?;';E-6B MCCACH+HI-WB8DZ',9TW4U,!?%8I2#/P^38[WBSI,@@%QX'IU!4+E)[HUL?@3 M61G $5>KM56K1:2F-:G(DU(YWCG>R\-[Z+OVK M*8V!#)*1 M/,^C;H< /[*S@,A2[^A'=FI8]]-IREI1U0D,E/@4)'(5@E>:*;)+94O.$SNU M+H"'=\3C'?$X>]AGSTDKP^(/GUM7ACU0AKUU;XRKP].4-\X>SAZFE6+QAQBO MZ\0^Z,3\E1$%P><4:N?XB9N\W19G#VD3-RMV'%Q'; S49E<6 M^8F;7'HY>SA[V%>Q%3O3N"-MTK \BUU:%COTC FPUQ?<,?K+4]>)SA[.'LX>SA[.'LZ>JK G4WUZ3WS?)7KPB.Z'WBO-(E$G9FB J^.A M^^,'/T@P<7>L,%QR:W!CD]B4E?7NX9D[BW$X,06G+0YV*6A2V$'3*>23KTD@ M$-US8+P^SR'S2"!G#VPKT1_/)F[9)WGAVMBS>SP]21;;:NG=Z&XIY\)6S MA[.'LX>SA[.'LX>S9^_$WQ;3N(@CZSN=Z,CZ3@%'"''X<.D^:?84F81=E\[ B,\GBB1UZR%%.T2!XN-&HOF]/7'DE(\TU_JE=WKOQ"=H*$I3 M[:_7,.P72RJ H8RV?2P+JLS)>^9ND450IJ+"F]9DEQ[-TFUVEJ'/>N-1RJ:V?U&:*6W;D@QV7T<4S9-1F5RK@#!DN MN5QR3UURUXY5+4]RU<9 T9K=OLHEETLNE]Q\EO(>YW9F%%=Z&H_4%%/DM5*& M,LTRG@7ZR";PKVD]#3[#CV2T2\_!+E+6^/7PS)>1^?^)W!^[;N"X 8F8X+1D MY%KTT9V+HYD$P>S\[.SY^;G],O+LMNL]GLFBJ)QY\/591%$4<=T?$5/NCT3_E7B.Y:>(E,YCICZ0U\HC^ M6TL?PP3/=?M9?_51%)?H,+6)(1Y> M!6/2F1F+,/%P&?C3=A9)8F/P@+H/&Z-=X!)")4&?2_8QP"=DT#GO:>P#25 W M=1+#*=QGP'OOW7'PK'ND*5PY1EO0'5.X#T>^95JZ9Y'-:H>5B5S,5>C%L@J] MGRM."AW=GPC?;/?9%S[\=/30M.":C\S/[8/E",'$#>$9IK]YN%/=>P2%A-8' M:"(8*S47%FJ>VB8P9EN?^>0\^>63:?DS6W\]MQSZ9GK3I_A9\=J BNV-:4)I M$WT=Z[Q^OZUU)%1[<354_.)8([9A)F?KGW?5=D_JIGXEMJ74SS<]2A+;'37; MHS9_KO0*'%3_W4=5>O-4;\?ZSC1;>S[9?J[)1K)YG.FN"6S4IP0^$7[ 91-? MN 2]9"9EU_&;@@.+GSL6 OWEQ%I% M%KE;;R$?WX#87Y=H?3,G-8C1S?A!?\DL03U:$BZM5YYF3J4SD!/GH-I=\69# MU3IP+O+[WY>"P.1U/8NEX(DQ8>@0X9E@VH5HV<3'P&_S;0&=TYKFXT=<4 M1J\%>J.[[,$^QOU%KKY*EV4D?"4SX+Y%A92FB?2I"T/[XQ0/]BUR6_P26>%W MF^ O0\<<+E$WZP+;$^DN0;6H(G&^RK($J&V+;"F(DAH#&9R>BO0=3%*;,%"R M&8!E7E6DA<#VNK#IK'>!O.#OY,1Z)1:X-- =MU_>'ON8673E@@YT9"=RQR&T M\V)0$(84-"CZ$BO1W].QNC&3\ZA;C@ XL)PG$OMB)V9O%QG9^A6HB1&(&^=J M0<_, J%B"$M)V8;)0UC51L\VA;H!/NL(P4[=#$0X3\<0_4K&Q// "K5HE!$3 M &0_17D:IL/6P$1$SBAF^Z"_7$;V_!?BD+$5I$&^ TYB_GX2W,ZLAE[>]J?^S 5Z_@JT MF5V[06KR:V%<))=G%A>:6U65 AH,<,.4I=5Z:]2W"'R-K1=BMOX@GIL&K?Z\ M7W,UHL ULFW?*N0-Q2\G9NT6K)]WD9>;<>J%^Y;"]$7,JTARGJX2W%ZNIKHN M'&[O:N^^5)CVYN9TUDT:$]UYA,>A#E]4Q/@^P1X'CBG8ECZR[/Q[-8Z]':/4 M'1<=*=IHSRR7;T//F.@^H3N. T_'&0@^,4*/6+9]#^0=.N:/B.BO-^/\ M4J0V!IUFMUM4*VH>N6()6%MTW M?:MD^Y8*J>A OIZTOAN6&\#E&L!DIEMF4F0=&;YN,"%>'%@Z,4NWX+VO;P0E MIG92VA!7-("IM[@9AA<2\_N"\AFU,LP'0\,] MC8& 'C>/CU/ >""@X>%K3:W+0 [BI SG>96X1YZ($^ZW/;&ZALR!5'-"Y;N( MR)F%0P:#IBGW>15CW2"50POGQ92""E=6\Q22,V@A=_N,*]SKM,8P'T*?;M3Y MF-HB!G-W<=$3?E%,?>-IG/.\5UM(;")[&W/GR^M/'S=OW"1\&<[9TB^SZ'6H;YP2A.'U(-5'VK8\Y6&AUJ59&''= MTZQ^\+R.KD$I'D!%K:RC. &9!:R'C>/5_ 5:69EX )M__[,Q3A"MQ_8),@.W M#RN#V%0[!92VE K:DSOC)NJ#5417X9,[XZ9>C3'9=EA7]H.!A0,J*7BE]0'D M]]":X4Z4^6$%9KS?DU<*[&_#K.WNN8UI?FOK3C!TS,N$["G:'D^:U93U$AJ> M]:\V9K8YFUE D\U^D"3:A%O3CH^I^BT*E8UB)HO"E^2I ?6$]PJ%Y8K'* M4E>"+S&E272Z"!J4\3=F9K&6&P-9:XHIS?5Y;4*U495YK2@25@IN@=1$!JK! M3\A"7]E%7$BSN^J:547JWZ4]G5\MZJP'H4=NQ@N!21,!W 7CIF>6I9P*8UA'=" M/4"E5XK@%5-^(T5' M_NHC;9]*KSVA]KX_4%SG:NX/E.0/E&+VGX)1 M5;SEGU6)R]C$6FF*_3+MIR,8^N64=W',EN((9 :M= "CGR&[G]WEX6UYU]AR M=,,*3#?D=YC9Y74Z ;:5RE3#G4[Q9"%D MZ8E%SG=D%A/X9GQ!J4OE);-\J-1"E14&*@AY7.R@JC8CEMX-?LFU M3H:SK6B_6NBV.B:V![1X16=^[8KG8<4DS:Q..[2?@YQRR@ OW*PV>';5IWG0 M$S6ZEB3>/NK(R8.T\!!O&,522N%;PJ$8R"#LLXE;IGX6 &KF*<,C@S* M/FUET%&JO2&<^>U>S ^PANEY>D(I+J_1'C3'C'[!G/1E'*.ZI%IMBKO,VV?+"V%T7+C:M!((>""/R:#D. M=;;&PHSR_<22!UG$3]M>![FWT&66(1FL6+'9Z1?5@K=B7E3-H=;9H>;V<%C# M%*^$8&-E6^=I-,O:I+4)'DZT25^7N&\IC41'E:@_ES3Y^N@1E24UHC8&FI9Z M*M-^I2+'#PF^X[=P.>1RN"2'/98$$<_:AN5LVW5AJNW[HD7EK+BQ2%RPGDAD M?:ZFH\?N*YJ?O94,:-!3D\W0P]!%,"&Q+8QZ,-<>@V/+<:D[!9@_U._*,=PI M$0+]A2RZZ7ED#--;RUOD#@57WXBJJ:FT_5AO ,D#8N06E, UR1Y^[C0&:E-1 M<^]69R=)PJ6AKM*PK2BN ''HXBF=:DHGS$IOX& :W1M,5%H!!QR@9NK\W)3F M\DY[QRQ^9R6W>HY\]KP7 @QH%YQ%H3D]HYI;/:>BY[<$:N<5S_'AY1>AY^W1 MS5SI1=W,6=FLQTT?+A)[QTR+DHD^RD0W_UFV1=H_9P'."/Z%)6'P&7XDKYWJ MWJ/ET$B?1H.@T>!&'MX9#_2=>[JKV/]7"&;%^/7P8)"I%40(F#!@O\*[7]&> M<=P GAZX" 3@+&X5@-]H.%D/R-SR@<72#^ #NALDWA07.GIH6G!1>R,9XG>K M?]5!6,26=F+,+$0U7XI^TLPH-O'E!EH!F)W32C6E]]KA2. 3YA310W MJZLU:3V\!'53)S'\<7EW=3&\%NYOOCW\?7AWV12NKB_:PO#ZJW#_\\O]U=>K MX=W5Y?U&M:[1R M*U)3D$5971_UCGI/;6Q>3>-%H0?#6EI?>\=97S= MRW$]M9U.(5'&.N1UE6+ MZL9[U!WK#ZJ&%MB /X:.>>L1'^,5^.?-> Z6!5:^SL,8#_"*+S;=WQ[;6*K8 M$.;-'X=!_!D.@( ]-D, >2'!=D&+E]!8QWTX!>J^HE:[!X):8S"9G$ GQDL M+QH1N85!&K3SX,I4WZ@7^"Y^?_3L^;A:TMPHW9%(7W3?\F_&BR'0$;Q&/U.F M+J5,75J?>DZ(11]9*-G!N:S2I?9(L*,$0HXM<1>".0)_B1*"X8X\AC:]/5+.]ZW_;5,Y]M!;LE^; M^,17P731"X GXVX#H*U- V/1RU8',';=('(8/!*=UD-'CKRP24"VT[$M7#GT MR>[,,SP#6E 5L3(3R_ MT ?_%$M0O]S(29R>/)RXP800Q?_&(< G9>B>ZUA7^X(9#0#6T3+M?-&(]+ M),:]?J[SK]")XBE4[A'$2UIH"V"1!@O(SR>/68G0]Q-I@POL5]3K^$*C$<^M);*:=1=M?? MNPQ$( ER$=AKO[X)0;PU3&JS^&VTJM"\H4MCM#HMJ[",VC16[?X20I%'4_TW M(F!*#-8#$F%2]_UP.HN7H@EH09WN38LE#;&%*]\4%SX*7+B>Q.BW+7UDV32/ M%FF4-QFY:(Z/^.Z-=T4OPIDDXIUEFLF"FC90CSP1L!VC(X=!53C8\6VI]"FZ MAR[FM BJ+:"G)T@HAOC]LM_WOK>7K%V1"..]JR)L@L7J62-\&GSG+]GCRQ9% M;(]'3'@FD:V2M/V( $$WG(7>+DOT#:H?4!Z/+MXT0M.RB4\E3[H=4FK#<^9( M:,9*B&9-1V% M;!M3:DJ#%QU&83RP]<#T.XE"V>1=#PPMOARR>8I!O"=4 I;QV;SVB]V1:\&\A>QXU4Y%ZY!TYB$4H7L=PZ<$U3)^AK0G\IMU'%&TPF7MW M'#R#G#3!OS#:PH?$SGG[_=S60=FSX"'/8"?;KRWW&36P'X[ /;! CZ!O!I2Q M$_,BT@3Q4Y=L5GP6N%1@.RZK9NK)Q5,%)6%391(M.!Z04(^]MX5'25!?.G3^ MD7&Y@,/FW$JU\0!^X#VZQM,1:*#(G@,-C>U$7,1$[!=NS%TZ(=[X-GW9DY?3 MEW*B=O2I_ZR?7U(7Z 8X[?D3:W8++$)?[Y',$Y0M>:%\/Z#P,)H"A\:#[<_X@@ MZ'K/?:&Z&33VG[,D;GO*2N)6>[<',4SV9AR1(QI%="K =/>-+9T%H=3&0&YO M*F0#X-C42HW:H[31'P%?RZ/+V#+)//*HTZA$Y/4MQ*0I^"0RJ(1ON' '.?3( M%B(4RN^0RCC(K^L1S*X A M&.\K+TE^-Y.Y-'4P\AT30.T+/V?42?G0&-[_!%$';2>UQ)Y0^_ '$M,&$Q8G'_,Z%S4V@D M9^%BN&F$"RU=?S\\N#,0])ZH?3QGC!E+,\6% ;/+J%B%X<)SF'_V?"7,2K#%X4>#(@ !XUF/LPL21N.@1S3AH$K]Z6<@Q8$'?L#3"A(Q)X7U$ MR,0NG%-I9[K2C(^/I3G1Z"?N@;K?<$TP/#.@%Z'Q7TDC0;NY65%G*0Z MH^AII"'HZS!2N/)8G%X,G1%!!\FV@ A X$7HGX;S4B;D"ZZ1) $Q%N[%(T/. M+B:R'#Y>3'XE.27HICN+@+T@Q^H0X/D_]%.B44P@AOY.CZJ3>TZ'W, ZZ M]"!6%.18_WF58MY1&T)26V*?(;,M]MK9-=NBHM8/M24\NKC@P&* N2?+B-)T5 W;=%EN)A8)S09&5IY' MQA@)]A/+AM:01-#&M!BM)<#'K&OG56V]\ZKW$JO>-R]K M:)Q,!-^")OP,SYI%69MH'?#GJ43P;Y^) M;>._?CC#%1?8RY(,/^J;IX UL+-T:>J]KV.']+ZATUE9NX1DNA MNH3K*3$#6E7F8H4'96! 9DN[Y^M-K'N8K" )+>$*A[((YLVK2V/7?4ZG"VJ' M%$0=F:W-AT@+.946MXE]]BM5+E2R$P,-_[B,:H_BJ_\^(33>&D3IU,UW@MKY M:J'$ H5OB4?SC8C*FQ&0X\U!1R> 0P5H_Y5@T6825(QA^+!(N )!@7:G1!45 MJ#($Y62\3Q)<(#B8%F33D&Q!X%FC,*';W),$X^!2A[5V"[V*K&TY0G)XPZ8_ M/8A;'X)J,D,C6%5*U:WGR4B'3<&1^R6CJ_UN*$0295$N$\;+YM^8D$6A&=J- M"S,V29/@K:@%0C\J19N;MM$6DJ3H-6Z,B'H$1AO'$XCS9'FN0ZNIT8B$ZT:O MRQM,T*"&3W2,,GMF:Z9[P6L4AHXB$W0OD>_'ZV'H)R7!R1C<*&SAMQQ"L&8_ M*DYUG^)E\@K=?-K?SQ.>+!W> Q?A DPPH>J03Y@:@0E[4=(]?N<$;%_'7'$(TV>@Z1.F$X'6&&1"Z+2/>:"1@DA4\22#] MG,BQ,1T%7F "(\NV88AT!PC6X?T> F'P!32@3VNE[=?TO224B3020K,!'HFW M]^"+B1N0E5C%+%KEX\0@ MW:>@1_'HQ3#C31311BX;SW:*^LX!]T&V_2A;.4X>A>PB3[B9 80_H?1\O8B& MM!*>()[G>DN[4J*DL.>1R'PM($#!]41N/0'6X)C0W7VX VC9N;U!9_;X^F.^ M BY5#?A4^ &:U#R*5BF:G<9U+'O$;E$"X!%K.@H]?[%MU0V#ULPU?B/!8L]5 M5 WOD#<[+1>!QQ57?V%BN-2F SJ_3>[0K48>62BG:%O-4MRO+7S#J:(&6WY5 MI#JBK768\9^A2VC.G[=8OV.#)3+')O (_&Q9_.,HF;^\TDM/H"!1%T@\'9E%__7K[A$Z0!(@$(F &)M^18*../P.]Y\' MRISGDL,BX@M!+KC>3YXFP?-0J%@)D]4M!BN4]G)C>T4DW,?O!=-LO*(N^("9 M_1PEXXQ@RA,[O8+QF/D;<11X6VKX5#/J(@*G.%^#UXK-7J6(E*J]QC880"$B(M&"*++KT MNWBU>2+E/7XPA5NQ0ABPT>,;^]?-U+: V6[Q-*[?&,*Z"RJBL_I-^3G]SFKI M4!2EAT'S3IWWD]2XHE]72F=P#+=6Z($0M,#I3!)W!HTA%TB4X+:>?)-XBJF" MV32=K?B*U)(!XPO6LQE5PN[L/S[!($C4)J(^"D7 2]#S%8K:M"C'+B+IM/>< M=Y*WU8%F&!F,@B3IH;W#3QZ#502:X;&3E.Z*3G28_I8 MCVO0M#:A<60B/Y$B3Z>$XA$A5AH!Y7!5Y8=8_LND)7U:Q? %*!.EDO)A"I*$ MS2*>.:V6$(ZP9ZV=?YLSPE(@']9SPZ>I@-81<^"_C_E,A/?XY+F^'XG'$1N; MZ)N_L#BI"1^0360B$J;,8)'R1#7&A".T7E5'.#P>,B*WYDBSI.LK "B4DP M"$^\<<9D5'++XBR']Z(8_K0;]XC5]M1_VW:>79OZ.B "LMBEN;F, #0X:D9\ M>8)<$F=31R+$9]%U$9P&CZ1$12ZA(P(#,7X!]Z;10([ -K)%'&\LA$CRDMJ< MMU&5TOIA1P'"J%APY6'*&)8UK,8VAA[71K!7<(9X*%^G<*J4656+A MQCPZL)[+VUH_ N)96XG)NAHT$AN4LJ>)7[-'3\WD[$EPNB;6;%Q.TB>14T+%=V80U"N3Z:J%!_+?HGT"F>9-_GDZ":I M8J'\%;A\K<1]82XY^E^LIAT>ML(AS[#.L"('1H>1)K*:^/5 2 +&<<26 M+F&T,0&Q^9BIHQ$H.B)LF2I7Q:+;7YM:3-3>5MY(Y2G#*71BO#7$0(';B7!>8%; M='-=>VT18S;B#'Q+FJA!!9T)$ M^L'V]8(DT)]Y.85P^;M1E+04Y6." ;#C&=YJG:!5#DU+W0RFE5>B&Z&P+$4L M\D?\ZK*(6ATP;O3^5DBME)_ \2U-/Q/F7O<>(S Z=$@0/B\'UO9+5PSQQX*]6M'KC,7/KN-/KQ#S+F9N;RU'6)D MNNG=ZAO1D%]O7H@OY#\G-GZKS>U\T4=1O%G\W(*?_IS]OJ>V!FTC]Z=V2\W] MONA1JM92V[U2CRK^7N_GOV2O00TV/DKTGEQS0C6=Y/=:OSK/?>&?M4;BF^W4 M"W-#LU+N?[Y.U[;^-CB#=JJIB@+BC-R'E9XJQ?U&=VT+RGE!4#=V3"/MK."T M-C5UK=\ZD0A30'I%JZ2OK%(^9:E&AK(&ZVM#DN6,%^8-QU,)X1&6_S9O48J( M(Y*'(/A9,0D=\RHYP&L?X*Z='NO;8GC=!9!MA:^FA^KF%JH;G8>RC50[&O@* MO:8JNPM+SJ@_9W1>DS/TQM#0FZI6%\[(Z3'\:EUJ=FM67-\0:D65IS_87%0D M%)1OGS8MX6XUU!_D2"0%\U6X "U.#FD<$UL@4B1]&L8__0U#H8*X M>!?P%(2'+GV71^/2V;38@&+NPD)3@#0+OUKTAC@W=F9/TBV.Z)VM=9(N>DI2 M]AKD;B4>ZZ#'RT/!/($]3C&GLPD\KJ(V%:+PEUDK.72KUR1Y#GR =QAIY!_S MX[3\3YZ1_(1M !!K-"X.R1_S"NUY6Y< 0Z,KO17X.TN%A(W-(>$XZBO&DA(P MB7PI'0DV&D-5';0ZFT/!.>3,,>E\OCSKQ9G(BBN=)LIVV>CF=MDHM12;NV]T M.HUA)QL __>DC=^V+8]YQX%Q;TGV[^XU@T^BA2!/)KN?/)!@XB/E10)J;D$ M'5TD,^W"%FOKEH XWV@FJ$!\QE8*(9F?#GF,TE'.^'BT(MW^T?9C^6'5(R$\ MS9!6:GC^:H+X.JZ\.)@#]?;$W"?/7$R735&++4K_Q.>XGL^/8*V!CA%[I"D$ M:#-*$N.GMP*-.EBNM[A+=?.D) ,"1^8:%HC- 94ZCI*U#SD?2FV1C0VMQ285 MG0CU*NZ3)(IPA_+QC5[]R&Y@ MM-KM3MD3.[W?:@_*':<5'HYU6OU.V9.YHN\-3:MJ4-U!MVZ#4EO&H*JSS4H' M=82SS9T.+5\OS+5^XI0?"SL[K4G 0J^6QP64=Q.YX-C+F"EY9\D#?%RTD^Z/WHV7KK+UNIVP=R3#GSC#]TS/, !A&;;9[?",*DU>A%P8- MM'(SSN7[,V<.]?3,H36&G:8Q.%B9U*>X0!)80F#:Z0E,!^G;U(V!)+!+)##] M] 2&&;3=IM$O0E.0%';6%+:EUNXU**P#%-9K]FM3@7=HZ+Z,Z[5Z'JS#:"TW MQ 2^/^U^&GRA+ELE2W,YG*J=/OK>[3:&6J?9T:N*C52QQ36-J4C&EHR](V.? M_I2@VP/&[C4-K2<96S*V9.QJ&+L&X:=^8]CK-57)UY*O)5]7IK!K<$HY: S[ M:M/HGSMCGQ+3XP@T1D\\O!0W[O;QP?6#4[?Z6,%A6-#<_B4Z8MK.V.,M2V? M(P*=UQT%HK0\A;(A6B5'G3 G*_ .:[7VO/#+O,JZA]!MV=P). A MV-P3L9WISN(1\N;I\*T;SBS"9B"0!GH PC?8JU@2\*N5(#CPA\-5;Q 0@OTR M$8RXB6W?>*@-C_ENZ(UY4\CT=G)H:N3W$<,. M\P1-S3%\""+^C>N))L_8N$(T8A*_ORU$]Q#PUI,0T0XD8=2$,%!U,8&*@MLX M8I%"S/1OD&V)MF[W0+8EJL=89%LB:[<&1(>W&JI'"X_-S@T'T, M0&=/[$!T72:?Q$\])IE&2I2/9R9\15![)LP4Y^:0.0?N[4WTYXB:CHN>A$E+ M.FHYOL%)XH!D-$3XP?&9Z DDGHK32K^%.I*+]N%YXC'ICBZ=S4#\7 M\;*2=V!GBO0/_(LF=9+%3H7/#-N;V >U6WQT<7_SAQSD-RZA$>5TYN!T5"5F MW8?85[,BEQT]]F\L* M4UP/!I[6RYZI*U*P$YU1JZ)U7&[K:&.JM;$%6-/15 M>F@I=YS;S*A7?58.(-I@J;FNG8WO.MGT2$K/6FL,VZULRLK^&[:M9)MGWM'*^\FPP54CDN=ENHT]!/#/G+=?GBCW"]'H#(3S\W_ N: ME;P*:&7@V_95[/] M6OOJ3:8/6NKY*,"B-RCB%9D#IW5\SCQGC=YS0<[:O:-\ Z<'P8I!IT1Z!3M@ MOG=-S^+KAM%IU_.1SV%!T:M)]2XD"%0K6ENX?J/._';6O_8!>FW)'BI-_ M?D_6*6*3XVN%H[4R7;18%YR@;BI76$L@=>6]UQZ\=2=$7HX8B1^TD7>D/.>[5+DCGI4\\I,%#PXO*0"3\$6>6Y M=4[$M151%M>A] +>0S?%:&N7!M2@.8 9-'D#UI*@[6J!9.)*[$,R"A)._&_T M9W_@UF:!S.$E+\#K/G/RQ!4X-:[#,M+J!IYR@UV@J3]L2_D; 9KGA5?N,.%B MQE?RBP-292'BLDT\)XX$ER^"85QN8A_<6!3EKR+\,YO%S;;-/85\+Q?^/EK( M' 'O8?R'.6.6/#*[9AT4\>TLU'\BIA-9'S<,IK7+I2T^20[^O4R>@>*[]#(E M=X.-R4P_4-@?V.8WIM;UER<;1*2:#%QL_!TV-($+PUG07 D3(B.A2Q=&S8]9 M))F29]!QX7PQLY-^T7CEB@RC519M3,2)Y.>[A_?*W<,'1>N"A7#DB'QA)DV^ M+,F._90G!I%'[L$NVQZ/;L$P;$KI,$4NR1SVSE[,6%KFX?7!4@'Y !Y'0->[ M>.A+ZT_'E^UW("9OZ!;Z6WVGS%DP=:UH5T/T\W-V_8P;'&QQ1RJ/:H M^0^]:EWQ14LHBI]RB>&&@1^ <((7@'@ Z1,ZV$Z(W@/W M)>_VTMU?,%41C/<1"UXP20,I'R9K!KN?F1[I,W[2("OAPPXK:6W9(4D,/JW]G#;3Q,3N@!/ M^;2PND\I0LB.XE*EP$=[MDKF*6VWLHR^#6\W/9YD520CFD2ABU1R59K$L1XH2K:BMEC^%NXOM?L>B MYB^)N92\@0F9[;A9DV[]A?""A>E%"7@H#?,%[*5R6&4T\WXGFBE4OAF"L5RX M$W-O^;Y613@@[H$8+7$Y&D%4=U#Z/ M.@ONKL!1F+E@QZ\J\%AS1P)H[4TH7> 9B] #*>/P7H@B@S@:WLHDQ.J+MPM9 M&"

AA/F17.V/UD/=!$%N3[)3=7Z(4Y MH:=>3@BHEPT]78Z(>5S)4B?K&)0J'P56RK*G=F#^V]MLM'4EN+8S:NV93IO/<8B MTWFMY#PF[Y1&+T[R)06^ETAX[<.TG"!76FENK1W;.*%7;E+8:1G=7MDFA1VM MU=8WMZ;;NHM MN 5)X *:4GW@X2=,M;TCVX"[Z_21O'C_$'K<:9U*MR.ZY$UX7_TFR'5^'6*7 MZ[PG/5\\F/W'G!!W6<#7G:GCTO"92L__?$&8"M,!^KGI $49GN35IF@N+Q6@ M7Y JO!\:<1G1=0HP;,E5&+E^C"/_Z]Q4PT)$?9+.PN; M]%92ST503\:,JY1Z.G6AGHJB_)P0!G4VW#B*O@,5ZDL4DBUTSBVTY *B Q>@D6Y,L)EGL2EELRS% !2Q&Y]F']]<[.HM5 M="1P7BXF^/]Q>Y'&[(8.FDI&NF9'VR43*8Z2.9"3)2-?,2/N4'^0Q4O=, M J"2D20CU:;4((^1>F?"2-=SDG!0;7H6N4"'25MNB,A7%R\42L[^?*7"9D?O M1E\7!RF:BB3#;JU']412]!M#O6ETLCTO]POX[+A))PH[2@:3#%;L .[(8%D> M&C2&6CO;M%ARD.2@2^>@5<_O*"H*@5_5=K/3[4L.DQQV=1RVZA+NJZ-4M3'L M5E8?>40.NIX3O\KJSG-6X +.R05$C71$LF1%\^1V^S_RC@RRW0] M\!@.=QDDR]6+^"3+'7H <"HEV&\,N\W^X."D3,F1]:)-R9&''A@<40D.&D-C M4%696HVRSL[VC.%(]>N'YZB>-XN5]OSRZ_7*JKV6G"5[\)O2SWA*S_],_=I-J.N#\F#1*9K+P8W6J=&4>C!,6-G-.5$813*79*Y")':U MY*BHPJ:_;F(<; M^Q]7UH9\(U+?SOY2 6!?+H.LK'H>BU#OJG;VK&]W^+Y\0I3M>>M!/1F'H%+J MZ4GJN6CJR5J\E9)/O\"UE.1S&>23,>DJI9Y!7:CG*H%Y#D.>E>TBKZ#08\\3 M@.TP7_!@$A'BZ1G18+3)+AG4'E;@E"$5R6(7S&);S@$J8#%5LIADL6MFL6VG M 17P&)UK:T<_>I,\)GFLGCRVY4R@ A:CT^UCU#JI(#,/"*-*!KLN!EOU '=DL"P/Z8VA5MEI@^2@VI"2Y*"M M'+3F^AU'1QF-H=IN=O2#[5G)8I+%:C'M4DI*KT1)=1K#[CDHJ>LY\\O#<#BD M1 2R>4K%E_**'TP,+O23JY M,#K),5[+$4I).[9/L18C&VN1A'3>A)0UT0X5. ,,*=1 ,UU/@+XR,(:LB7Q% M!WCE)E]O$5!EJ'ZEZV91>5VV&R<>\AW2![?;!CG2' SZM6_6^;J!$\F1%\^1 MVV+[E7%DENFPY5=/MIZ6+'=E++?U,.!46E!K#+O-;E>RI&3)*V/);8<'1]2" M>F.H#P[.BCXZRUW/>4-Y*(@R,9X#Y,IYLUAIUR^_>F\_)C,:PYQX8MW2/%\Y MW'BUI%C:Y]F?%+=4E:9(M#J\ DFG%T*GY1V%*F5F%]O$'[V-A23&,R'&TB;R M:PC-ZDKQ90W'B8KTI;]]A?YV*6<@*S("=_SSH$@7I1BTC8.UFXQTU8L&)>=5 MZOOLPGE9YAK(JU6J^-YS>#?C8#4[*>9+V+9KU2SNE>6JVG M7M4Y37V]2]H@A5_"+,6$@9E/#.:*.ZGX&$WP%3<,_,!T<$85'=:4KB$[(X;B MBU;61_N[V(([O@/?POF(>?<3BN?X]\D&[*?+L.!>;0[T@Y59N:T\KPCD]1'E M-O?EN$2I@V?3[!\#,$;2Y/G2Y%:[_[A$:9"D[ _:DBHE5>YN$A^7*#MG(RF% MP1P-(5KR#E!<)8ZJO/^,[R?B^'. SN*K,[V&3/__QYQBV<]#XB9QJ$K'J<._ MP-?1F.:F]V0[$9.D6>"?H1_8DZ407,._C#R<6_K!%3V&,SO($ICM>%U-KDN@ MA_&46>&,W4]R ?ON'.NC/<,*P$=RUN%)[V?@J"="IMM0XA/FNT!\A^]A() 6 M\*; "UECK\D=;Y][N?LL9JI\^OZ HE;Y,#-]G\O*.X5'*10NFI6_^5AQ%TR9 M\F5R\\%U4++!G5]9,'6M77:U7Z>)/TX]QI2O<-W45SXY%LSDKR90M[=4P*I1 MM+9F[#(GM7 WB7ECSN=Z!"8W,Q<^NXT^O+-L?S$SE[>V0T.DF]Z)YW-=<0L: M(1,%P1?RG]^]V%8PO1T,6KUV#[6UB,&(%_-?U19,^<_9[[M:2S/TW)_:+37W M^Z)'J>U65\__J>A1Q=]W]$L?U.:7;PFF[:AN-H36Q@PDI/7FP?55ZL%=,D.54DSGW7\S-_BO0ZBS$Y4G19\IB M$_JK-)7R%,>.*LGT*LFT.FKTJ0@'K"?V0,;AYX=V"P/+[IO-(::)KV&LR>0?50\:'&/H3=ISE+($_Y= MP(^T(PLT8L;[24K;E];M5>4_2E*3#NH%G'SOGMZVITDB<^NQF8F! M@W=15CAM6.I&,=-VDLF[?7VZH^(*55TK'TK]=QJ7O"U -]R, M/&;^O#$G,-A;<_9B+GU<]'2QA>WI4<%!65ICA8RS>CK:.VL%7_AMT:C MZ!Y>&G86-5'?X)N+*HDRU,X>)5&&-JBLT*=K5%1]I/?[%SZHGBR)DB511UU0 M61(E2Z)D293,@B\1N^V=-J%LT!CVF[VVS-2YRDR=@NCK%IH\:DG4H(W=.9IM M399$265PX[5Q-V3)5%'-2EV*HD:8%+RX.#>Z-)K.#6![*/B7[,D"D8B2Z+.BM3. MVD&MO?:3)5$RU[SN%L312Z(&_<9PT%0/[ZMW_A4DLB3JA(?R595$#094$M7O MRI(HJ::DFJII#*C;;A\C!E2'DJBRI0!%=1?[/.>URR2VMX[199W$190DU')0 MLDY"UDD<=T%EG82LDSA:G<1UF=([S/]\[>6RG=N/FVO2;1/\;MO0CWW$6A-' MMY)S_"L)SVRAS&/63'3;''!WH!_][+\FA"EU@]0-A;&4017%$]TV 0RW*X[? M'X>C+C^A1M9/G/S<6J85U,%DV*=^HMM&=.CVP20?93\*]92=-L#64MQ7J1VUKYJ[96?K*602:IUMR". M74O11>!PO:FIYY[5*FLI:F[OO$XM15=5J99BT#VX./G\"5JJ*:FF:AH"4K5C MA( NOY;BO#I.R$J*RRA:J.6@9"6%K*0X[H+*2@I922$[3APC5?92[.1U^QCN M.&FRB:HWAMWFH%]_G#IY>/]J$9FM1'G4^@G5H/J)_D#VG)#JX,+505'89(T# M]ZZ;4#D*:<5->67BC"R:.,<#:ID_4 M#8:^J";7;&&H#F?1T+I1TUIDHTFDX M-S>V)]W8*Z;(DMKI9.42:I^72_1EXXFKI-,*/;X-)^4#Z?/5Q.>3G2>.:U7L M5"ZA8<+BX=#/TG,X-87LI>5?LUY"4V6]Q'G1VEE[J;77?[)>0B:BUMZ&.'K! MA*8UAKVFWI=8_;)@XJ3'\U553&@Z&-1&LWTXAM'Y4[145%)1U340I!G'" 35 MH60")X2K9CNA23,Z:4.*O.?P%0?)"X0S7M_A]2U]&$^9%<[8_:1@<]\ON35" M!O0C/.G]C-S3:*,[G(A@.4#H!^([? \#HEC FP(O9(V5V=6F)F2#D[ :-/.5 MO_FP-DHP9Q=519"02MTHF+N=W&*.@)5A@PIOR>2=O[ZLI155M;4%2_UW MZB59\T_L9N0Q\^>-.8'!WIJS%W/IHYQ)4PV0S-H:KD^_<)*3R=$FRGO1&S#(& MH]$_L);\D6JVW G&Q .>$67&PO04A*1DA$FQF(^%?9H5$[&,(CA',&N-HGN, MOGYC9.[!;SN-,RB'Z[5[>Y3#:89>69&7GO]3^8AZQ)O.OKC+_*C^>OHWHCEKMIO4J MRADX!XJ4POZ:A7U1Q%NOIM9-ZV.X6ZT_(UU\WN,/9LYF[I@'-MP)$$'*L5*8 MV,\_ST"'PTLGGCO?D!JB1,Y5;DQ89D^6MJ5X7EQZC^XG*ZYOQ'"KJFQB_V+6 MS;^8Y^9IL4&<2R5SW\Z$EF0IIMP>F9JX]=11IB;*C(^Z!SO6V,ZND%RQ27'>,V6XCNJ"DNNB%37*2POPIA7QA;T:J*K7! Y_KC',HD%YGD MY/3+)12:YR-/%FBGH2I-<>D<(>)QC4H!,^3'*122Y2#=4\$#,X1B"FODDN%26G;,Z5>>WLE.TH3+(A^65D@M1R M4#(]1::GR/04F9YRINDIUV5)[S#_\S67,V:R>NPD%:,-7F[OZ#@L-7%D99[* MCJ&7+71WU#P5XSC516<=6I%2_X*E?F&01*T$D,6@.J#VP9VW7D/&RW05F:YR M$KO*A_'#ISWR5K+Z2P?])3-3SH1L9&:*W!Z9F7*LS!1IMUZPW7J\:$5QCHF! M10R]HQ?5U,0[K"1>(4,6KY M8G1>*6A1$\J4\E_*_XKB%L7)'4;W["(7T2"B M1>P QQQXH)<:]EI"2GK<.YX*GN^[7CM%YKSP6V2"S&7DHM1R4#)!1B;(''=! M98*,3)"1^"VRI+]$L$D_>FI,KS'4!T=W/NK@S)E0_5G)9D00SLJ,V%>S8RJ,!.F@UT/9";,F9"-S(21 MVR,S821&BRR.KXTNKCY_IJ,VAD;[X/34\\>TV"/D(3%:J@J(5)5UT]$D1HO$ M:)%JJ-[!EHY^C&#+:3%:3I$$\H_4_ZVF>^#"XN;93D@N>MXWJ900\51#:_4P M7V/A^C9><^NQ&5S\S-Y%9_]$.JD;Q9JWDUO,$:PP['OA+9G3U=?G %H\=2U# M)OW?:9RVM0 E=3/RF/GSQIS 8&_-V8NY]''[TRDUMG.SMH;KTR^;A53 FLS9C4:8>"I@_V6-5T[2!T3$&NF'HH\Z@WU5UO3WI MC9AE#$:C?ZCMQO"1,I/<"3AA0#U. /Z7&>=OG8*0E$RF57%F&?_O&BL*L6CT M]9M.H^C7KM:YT0HYZ;62T?)7X#_NYB"6 U\Q+1P(>,WH,9.H!OFZ33+M,J/= MLO2$-,)$BJUY>_PK&XC0"6XU@YCV1,OW&18KF#+X'Z)>@>&K.)C=-^?9?2R= MW<<59-2B37EA"OLUGH5XA;O Y:3 ]R+TQE,SCR<*XT&O-5>?*24]"JV7MCK: MZU;''9"2A98&J*D'-@X]4$/,_R16Y;/GSL$;7H2!B%2O&RF<I]HUF3\W"Z6TX>VDJ\)\%&^-H9\LF+<=$ MT/@I!?4F_JHEL^0QO;Z9Z??@KWX-2:_;&!I-P^@T-:-?"7]I@QK.$O.)@+GZ M33!Y]F>PEO+W%$4 DP$-<+I0:"T44VCG$1N;H<^(#]DOYHUM^&/AV6.@6+"G M@JD;W^D#E<&=3V#X@M$+/P%7X&TF#]LHH%Y_LH#?S.]EFPYC+5A0YXD_8;&8 M@3>%-MP"N,*U6LH=O3Y7PS61VJ>FI9A XH$YPPM+[KRQ<>,CH QFX08SQZ<= MOO,\TWEB<[ -WB^32[Z;2_SJ[L7TK'N^3JE8%8]EE2:"/DK9CJ8UC3Q5$FV' MF[R'R-\L7#.]BC7;+!-.OVB#QK#3[/9ZS7X[AW-R%JVUBQ6*3]_NA&",L1(3 M]$2E(Y]:$3G XL,CQEE39'6[WX<^/,3W8;-'MD/K]='VQS/7#SWV"#>^G[GC MG_'F=-N"!WHW_B.T>=3 C_90C&C-TB_PB/A# M+)Q MRIR!VK!0Q(@G" '5I+\]9#TT ?$V&V=J3VR2_: J&#J,^"@/U!;*M!G\9,]( M\^+OL'7P/6@A#X,&J-M&*$^4<('O-1V3RQHZ!N^] T,.EA5D"%=FH,(]AO,Q M;4]Y-FD96'!+2WE$G<@?@%\N/'>,*V [I%;A7L><+1&!AX\!B9!. MWFC@0AN":O-< 7(& Q3B'T+CTW-M:$!GUFW#Q.AHM# M=?"AM%!-,9)X"TBEXX] 4:CUW=7EM1V0>T]VLM)\AD_1J)Z8 XH MH"Q,+\ 'X?/])?S^A!L!JC^@77#<(%H."R_/#G?;"%)K(C84'@/4GMX-VU^9 M5,I:@(5T/2(O5%ZIC6"_T!2"SQY[9B (X$U?-HY$>;&#J3*QX3$,B.X9MY>; M2?#\?^%#Q7; Y,!>FH0S?A58*OR2.#0GM[8]0.\4HSM MQ@]'_MBSN7DV84195O3J^+DF+)(+ _!R!K_V@LRMR6+>4/B6+HL>@G/(N0!' MN4)CIO5L^ZX'G#MC3^:LF>+N)FTX?Q^.G8]3/ '7$??#\?GH.)W-^"2M.2RY M'W@44HXN\R-:XM8@_?DRM<=3Q0_A/_1<>BP,#E?;XI0,/!7. F)H=\$\(:.B M^:-$B:08BV]?(5W0"!8?)GRB0P%:": *TQG;,&2P' (2,"+7,%=N9*V*M!*[ M! 6A:F@R3";V )6!4PVI1-9FV3[@QUH.DN% OJXWTP-"R[F"?E??O>6\"E+R&99[MH1AS2Q%W'7W1?G=G@,3 MH[:)K@%6I:]0>=&07._)=(BMD0@]]@0D2&.D #2-?F:^$.U\ F5%E K_^SN8 MG/[:.*-!M7# ?F@ZL;PLG,?J\L3$66B/.\(>7C-8VILKZ"/[)<7;X)KB\0HH MR?O)?[O(N%]H;X"=[L0H8L,:#*;8S,$#]'8[8U/_>Z0ZN4MA@WH6*YKV3+@W M09+17-@!<1%2 'S!5P@W"OZ!)V*I\H-I/B"?>4&XX(IF;#K"Z@!F@WWQGG!W MG*>0G$[78K,;+O=A[VVWZ07A*%3NV0%!WW!;9A M-H/;/]+*W7WY7RWE[U,6[XS%5_@W;D/@$M]]:287*V.*&H#8I1WSG";\&TE@ M'R[G$4'8OM"FNQ>PPQA.00O$M.RG.:<%(-+QS]E2@6]LU,L^: 0P!Y8*L!@( M<7XV";)[:B^X%@6-XOJ1R0+BV20+ M@.2.PGXYE0P(*>ZW-;3$@&>DI+>0_7 MV7-\ONG_Q-'\$:)!B&J%!L@\H%[VBXTI2.3S20"+W$2_@M:V?\)2H]'F^"_X M#;P_!'T2V&-[0>H%GNG97.?!(LUNP."$Y0"S\=GFMAVXT$ X8%2,EV2+BY5# M]QAN1Q'@\X ?SM$WT78!^W)LNZ&?K",^M24V!/;F?S5!&=JS( ["@NL6@LPD M6VP$FAA$CF5%4ALO^-U]0D-\J7S$M0%Q#W\'#\"S3#TA7Z1/P;[_F]ELA[5]FJ?K\ZZMA,1)?_1 M%9KL?6SJ?6/!_>0##";1<;M$EKJ)_M,;0ZW3RBI 'F.#;9O!7TT@Z-$_P21" M&APS+R"R!E/U!J,BW(!& J%AE..2$UGMY80[>]G(ZD7HM':/&H'A!@%9 MOY"]$%-[3.O;Z,=CDQG(:3\G7$4._:YA2&+5C/.KO*%H AA?<*/_]G9S.$"F MX*VGX!DR!:\>8Y$I>%9R>)1WI*07)^9Q"9PCE_/2]3)2]96!UMJMKJ&7!EKK MM :#;C7P86!;E\1L*_[>,#J5#4K/_^DXF&;57G86N%5_HX,4;OC];D_8=6%8 MH4NZ%^A SD3/O7 LUP/9 M:<*Q/< G8@JB^<@K)NIB6 M4U43X1I4@Y6Y?WO%S"H&ZR6CD=SQ-H=$YF*=KB&^QS_V7KW)%;@9W\:7RK2&_YC!I#]Q+XTKU[O5IU^\> MAL2#)3^^!;)9\(,IJ6!KP[#1%GV?F<"VW&RF76.UE+<1JF:76;?;VJQE=25=:&ZKZ<:OR1IU:7Y M%]-,WP] ML!C[34/7*S(9:]%05@9?#K2*4LF*5V86O:EMR%3L3>J'/'[&!(,<7*6W5V+Z M7$_DYG?7>;K!DIR#F?5\8SCU9=9OKC/.X=>2RGF X9Q>.UOIL#L[GW >A#6$9U]"H'@+3&[FF!Y]B!)0/KK=H(=C15WL\M9]@ MCARVR'8<%^YU/7S."BB*PX(7U_LIL'N V2?!"Y)"A$ 5OR4"H6IBJ?,*"%4, M^V&*T2;%T&8"^L%QS@1^;'K^RAM\R/KK-F!S72I])'./D8P&3"1"PAI0V! 3+Q30"3!Y1XAYGDV M<\9,>9DB/#-^ZQ-F%@-I .^!*V8(&)3"'WHV/0(':KP@J(X]:22X1JT4Z;K M$PAAA'H:+E@=^+,-=#:+0 9CI*@8L0OQ=N>PP(2E$#H_'??%4:+R?) U\"62FV%N+ ),X8A0(V7 )7^*@[MKPP_T*@[C[",L&(3N7^%B=378DQA-!%->+Q6I@$_PX3H^]2$^6298$27K!4@CA#2%G(# +_ M M% '_?2'(@.-J(Y2_/Q%KAS>(K5G!+19@QDJ ^)R!\$+,+:CR2(Y;&O^9M2\$&3,P$58T/B9A[ M]3+E#5Z %GWC@SD;AQQ[,G[&*K>3V(9U;:*9C;ZO "YF M'U^&CA@!RYMD!A,.Z=W=][?V"'3L(TIIZ9U MF+5M@E?(T ,F_N7;YZIG#KOR$2%NO/O)0XI&Q()D)0"L148"]!I#UV$Y<'WT M8%*B!1Q(-$-\GUR;2ZI<4Z.E5E[#U)UV^CO13DI9(Y-MU38MY0N7HKGK&:][ M#H>"[S!C!- +9MZ%K?5@I[4&+S%%L4(]([0V]P4LL8 $CY]=P B4MUC/HX>V MMI^((+RPX=?_Z2= 5N!1>\]V)&53^NT=_@%^MNL1E/.RF,%B_X6C:$2RW1>6 M7K(3T;NX"Q,#$ZBQT \=WM3RR0#G.NR M2D%METPD_1 /*S)S8% Y&*2#=F.8U:JO!2*KEC^)*<1>S4Y-S9M:64-(U8XY M1*V2(9X,BG>@(X)M54B\ZLF0> <(*=SO5H_$2]?RQA6K3?0* 7H3+W]WC%[L MJ+0O&.\6GW1?,-X!V.MZJZ@Z_T18O/O@\!9@,.;A-O8(M_%BPE"K:+BG0,!= M.S#:AGXK6]!OQK_M2/S;>HQ%XM]::8E9C(ZKYZ+C&KE2%F5JIZCSY2OCW@Y: M/0(4+X5[VP-IWZX(][;=ZFZ!F-W]^XZN5S>HS2^7N+<2]_: +,![:@XH(?A* M&OU'S0VG/4G*7@JA^ ;=QG!PI07Z.Q7'7F(V^!&@OLZW:JU2%MZW\'O0PWJ, M;N_*H8*NI\#L6VY>L-2>&\*4G1.!WF29%8_3#F?5\U2:%X1JHV;"KM6@V@P& MC6'GNE!MCHKJ=26VA7H6J(;@ &,9?$>B&IX/_17)O^.@&O;:JD0U%/+/A[UG MWFH;:VGD;9"!IT(VS(HY E^61M[9$%B1D#L.=&&OC7G;UV7D2>C"TP68Z@Y= MV&L;P _-SN&Q9(E&UG:]E5A+9Z!5/KPKPVK)" MIY-[>B7A%2_-R#@V4M%&)):=[(X+QRLJMT#UEGMU$'L5HQ;UVETRORJ+RE5' M#&=KGVV#+MH%S&AC=EQ1\M[%I#)O2#$TBHY F\HX'TEIG!M,JQ>2TCI%9%,V M:0FV)Z!VP+"IA!I>7U_3SG]N;2D47Q>C'\$!<7US]AOPY\*/O5'X.LY$O5^( MBC/_8UR$\0B/?#]SQS\30=C+)*_"=_A"!D)S@8GA7L@:PX_V,VX]H<"LAW%V MJ480#\UYE79P-<*)-BV]V$JRVA;6#OEKB;Q%1HD"9 M*':PH:X:]#,\)1O-7JE5U59C.=AC,UC>OSC,0TGVG7F8UVH^L5B[8[5+1&R8 MXWE(#>*6"JCOG@O.CN5_ M]MSY RS'_80OV%<&([6^.,B]I#!*EDCUV@CCW5)W13"!K>=54.6FIQ54CD;3 M^^2//??E(Z-ZEI)UDEO.J-HZ>L_T;J$\&: E[5 M-9Z9]AR5JNT+J")< #=2NJC^7*H&7G@L!G$)S%^(9G0'7T=/%2\C\+"HH&ZU M'-G!AQ/*%#X")<+< 4M9U#J)<<3UT/!Z1MAZHO(LJ9'E: \5[8[@S/3>?'.# M!S[P1_<^&?&7U0%_H/'>T;2)4LT9\)''39K/KO>#C[_T1JO$]@4;';] <7GI MM*J!%./%CWJ7ETDJ"#H%5H]O>LNX@@R+X,4R17M(<%($5H;07J1^>4DV;#05 M5HLR;5Z[[5+&]WBE^7KJAP3[B.\5BGO]-,Q!^]]70D+%FKA@@.)"NR',W/76T/-B=*\8[\N,2OAB$"[D+Z%?"6?K MUX(*)&&E[K[<@%#U@]5GSI.*RH6 ZFKE6)07H8V_9"%?4B O EH 5_,IM/DU M$1:,)2Q'I)\91G5G>+(7&^[ *GO'9=F!L6!^=/*U%RXLP"["\ MSXA(";09YKHI$@>M>&A"MB\7PS,$6-=2@V.QY7&>.FA6TG0U3(H0D[F3R M5\!PC(%+>?#GXL_A$$,LV1H(CO$.&J*P^!_> M_N< MU5*L!4,H8MM165M4R^!A8)T[?,KQ4K/NZ!>J9__=]0^@\^,EB8&_8'/1@[9I"\7 HD(NF;W:BJ HL%5\6";EE72;5 M*!DTSXZK@)I^B-7[)-C\;BR ?9CUD:]GZ;%V$'\I2Q#;_3V.VAM)W5@R9K$I M=H]J/8RGS K1>2T5W^(<$>M580:0%7#GI("KDCB8GPV$87;G>G1*[68#89=C M0ZXB9X U[[,9UY6)[DO'1=)NSJ<5/5.D6=#F!,5W^TI&^"&' ZI6YFVO7*AO MM-2.5K907^^VVFJY*OK"FGBC96B]B@KU#4T.ZI4'I;=THW,T2(/!>8(0/)*I M\Y5;.)_0PB'QD;)R"O.;+GMAOJ'EM_.Z5 .&L7-;GWHO';K:.U#-]ME>S7+I MAS+9)2Z*I*$#:.B5[&/GH8_?3NQ? MS+KY%_/XJGV$ MR.GT#&8.[(P]+) ]> M+0]6YXUD>3#+:]W&L%,9'+GDLYI0G.2SU_3%=N&S7F/84^L?@95\)OFLMI[H M9IMR!T\4@3":?:,(OZ$^;'@-!R&_89DZ4$^Z!KN@=J8R_->+%C'E)G])(F:[ MVYH5)M\]]]G&2NW/KH?%ITB.]TXDC396EV[V7@=5'Q>=7MMO"+I*5I2L6,Y[ M?3U6U-N2%24K7BTK9AS<,J@,!_#D=D-<5_&86]4.3L>5;%DO I5L684__(H: M4CL?#7D-Y[8QDL2(MA11)F!/.4BB/+N5<;:JG> =L)<.$"ZZ/,>5_'BU_+B/ M)[P//V;YSF@,^_*H2;+A [V,?&NJ#E-4E#5TD#>UC3N]#0X/&L-/M22*Z2"+:QP#<@X@, M1#GHR!JS$YQ5O)F!I?YV(_AU4W$8H1X< 7[5^\XC^39*^392CV50SE5 P>EXBB0 M9%?)KE?+KENM&$=0LK-DYZMEYRWN^:':UV@,=>W@^.!I M^96<^3]3PZ*HD5*FY_M:G_>55DMB=PR-&B:]H\[ <,TM;XO\S$1C([%[J1O% M1-O)+>8(YA4&Q;=DNA."6VH'B53 FLS9C4:8>\OJ? M[+&J:=K Z!@#W3#T46?0[ZJZWI[T1LPR!J/1/[ S^"/U\L+&KB@GG,#_RY_- MN(G8*0@IV[.XN+U9ILE9MH79AN9H:RPN>U MK3QBD[S+ZUO7[;6 :R^X&QL,2L__J8IN;-G+B8,B0P(^2$Z^7$_M'Y\0LQW4;PZY^<.J53)*N M K/9,RVFF.,QS /<9X^-&>P<>)M-9<9\\*?1*P<7G)&3;+GA*)B$L_@&F5'] M*DKN3BSW-S=@/O#8[RY,XD>\5]]84$;A5=<64F8_UI+PJI/I90EOA^/4/C4; MJ4T)P#6X:=\]MC!!*T: _.2RN<&4>6OAT[W$>[[Z-<E$G\I-)YG.?)25 MN22)O\7H^CTASV-;7M6!'U:WU?4VRR1[2_8^S* [F+VS;(P%#(?W[3HM"Q<4 M,!06+.R38_OZN5Z4KTPA-.6C_%P,RZ0 +U!JOQMZRJ,' M8UFX7L#3N'_P-L$/6%Q">=AO&H\_'AIOE5'HPU!\7WF9VN,I\J-O^SPLYCHW M"X_-;7C7Q*.A*O[47BSP07[\('SY[X^_-Y7 "\<_9ZYIT9&'9]HSNAQ'"$^W M@ZF-,_2"J7)'136F$KC*Y_O?8%"3X,7TF$*,#".#+V%D)AB7'!,=!_/?;&8F M5^)+S<7"W?]T9Q:*Q!C$WM]M M'=K).B"6G]%N HMEUH**%/BKD&*>3<]V0U^9BI !G Z7\ M9:60:WUA]/;>2Y&=]'=X@[O:/1V$P?C6"CW+7"9S[<&>:^WU$C,%KO%3I1G( MT!;0-H&J3%/LWE*PAL-*)")> OGO[A.JV24^)9HZ?H9%1>:V@:/OOMQ,;,\/5I\) M8M!\XE()'A_@4O#QQF)K 9-E:WMJ*B^N]Q-?/#87-G8V-RV4T'RZ?V>8*^,^ M.2!-0;C $[!*XY?R1/WE)@<) ETM(0B^N4$N*6"S!JR@3!HVE)8#_9*&DJ[5 M8]P#E%_9_((M HVSJ4TY4&@469%^X-I>H$G"WT3X8_@+R&Z)] $"R,)S=0L_ MD05E8NW2 Z@YQC4-$,3]:KD1/B28 O>08@**9\H[89/TQ6&)DU-C_+8 M1-1?H93G6X03395,B;7!^Q\^?%5\]D1\L58:EVOOX39MKPLDZJO"G#J1C?A; M:XN8S\,DF[D^R,[[R0<@+J H6K0?6+#+K \N6$ /4S TWH/$LKZ;2R*M1WCB M^YD[_AF3?[?=B,6C=1>([_!]#%AE@06*7L@:PX< [KJAARGI]V7+C'>H5^0O MR'FM=DEUBE\XP7,5\P?P)W ;C15+ MU#;3,AUI**]<7=MNZ9UVV>K:GM;2VINK3WN/*OOU,L,3\H%\]JL/^LYK9ES=BQ9Y5?SO@-+=*OW"+]M&Z1[E,<>])( M>24[N4/-:D[U M[TX3WK?0]QP7[22EOK!TIRJ+Y^8=F2S,NMV%8DJ7 M:]4LP6*'P5648L$/$0?UV/]-DC'[W_M%;F;%M1;C<-,\&Q?3TW&Q=L95R750 M[CQ@-AZU?+_,^/W$D&+U?R-'XHO#0[V_>:Z_+=0=&>(:(AL:_4YNB%N6@ET( M]1DUI3["U>RH@QI17T6*_(PE.@:@9!789H;JU)2AC,9PT&D::M'1K:P&.WO2 MZYZ6]-+)AQ'550Z?4I-ZL5H)\7RW[-&E8^D5Y^P06WPU4VP]Q?R G,CSY[R: MBOPNV5#]=A52OT(B. /+7])Z$:VO)F;5B-A[U3L,IR+V2I-C*SFLNYA#>@(3 M-FU/>39G(9U7,W,\C4Y=25EBE@\FJLTI3T<<>T>GVZ1'%4R4X?EN[V= /#2B_?VK[@8NIK#-\O!FGJHGC=;08QNGTA+'K!XK'DTSP^#U]2,T/I"DI MX;"UCYE=W2Z(73JGM,>SF:UJ> M@"@$(64TFXFL2*W3B _H8-&QA4Y.M#YZ8VCLLCS,&]L(N62%7B3=>=YG7KHG MY_4HYY,6E-=<@)FV8)B1!,O74FHATKKXU$WT*Y M)UH?L+^ZO3U%>F$"_XX2/1;H7%;?C"@M>T6HQS0*\@ZN\DST>6[0_U'@:O N M7/ V:3!4A ,#6Y"'+7)H9U0W$^6B@L9 .+ ;JN*BZI:=4O=7\3FNJ[=43_:6 MJL=8KJZW5''-Q4555WP\1)R^1,GP2K61?93&7^C!?'@\:DDJR:DQ6Y3ZV0]?YI>Q<';X\\''&ZP!)O]/#VZ5I#"=W.U*&15,S9%!1L2 M1ESW%FE@*EI+NS8\2L8=(ML)8'Z^/4X"!_X\1*DP%VP"ZHG3[473N/!= ; MPTX_W]Y>M_[NB"5RZ:T)"Y,J--[HYH<.6G[,6JTS$NY^=$R<(L.2NV!L]IEW MLMJ_N6*,/*.8UCG].U8Y?G.#_\/@I=&DTV*IK O>-\K5,)]JCJ7GA1@-1DZH M>UNP856X"F@"1LX%+WN/B8W[$Z;"=386N[%^\7QX8(Y M)X0]T +H71?DN?X=C^E-GV!O0@]<#U1A'/DC]A+,]*'^U 95ZHVG2XI0\WT" M_P:V$C%G>"W_ I2:!TKA7Z(L'(S9GSXY%S,&VAMW1'@>'+W&'<'HGSD4W5() M?1X!Y^-")R?5(#F-EPIO2@8&IJ@"QL=(P!J((G1S,D'CH/AM31%TCP^XE@L> M2R=P,->+7[A4(J2>,6A_>#RL-VSFF#PWVT^M2WKV^$C;680!!O?!1.'G9R,/ M8;UH+?S5 OA]TUI$4L\-)GG>&IWM5'>C]D]&CP MS9[ NYP@DAZ$B9+ZF@MCRR.@$WI5)-9F3-)D+6E2%S3YW\FN1X1 \<&8&I2 MC:>._4?(4G3A.@P);TZP10:V.&)QI&H'N@E$WEB3F@ MEV>PTO[8LWE82> )>O-$Q5AD$\VP=.@"4(\/XGMQ@(31-A.UJHMLFY41(,8 M8^28MB@:AQ\BR^<_>Q%Z?HB;279#>KRQK7'&&TE/O,7C6WN\@SM![;H_9;MT MGTK* !]_6&L<'J5OK!C1P+]/&(UR",/1'<&"\SWDUO4WY%M,UM(#]0_M9Z:*4YPV*C(/4 P@7CQ)-^ M*MA&4Q,&L&J=9MY M[@CC56)HA#OIQ?QLH;='EB&JEQ5SC=XO=(&RM-G,PNZ6($5:F:#$/CAR<6B% M-_#!9JB)GODJ5-B]\P,GAN+D/2;E%*#']?OKH9:S8N(2]@.1CX](?S[)[M K MTM0R8*"_UJ#<$C^J&L):6_W9K6 +W-M\Q>'U8NT%+ZP[* MPMKI_9:F:=4@R.FMKK8906[W[_5^1;!VI!LZT? M*MHZ8O5A"&D7M]\[3/9R$/)XQ)"OR'>R+^E<#C0BP>HR^HN;ER();.)Z].67 M*$ H2?G;?_TAKOE9[_ MF0*.Y%8-;LEN1J*ZN3]H##MJT^AF6\7L!UQ51GJ= DQ- MLI]DORS[:4=AOXUM:@?MJC'C).O5B@(EZ^W$>OH)6$^5K"=9[]I9SSB1R3G0 MSLGD/.N@[8Y40T?HCQZ=.:8/WV5+@PUZ:PO[W#V;]@RC4)]=[P$X(,G<^,A& M0?)7:>XAS*6NUJD)6KSL55 M676.05:;K2&C,FM(TE0M::K[^C15'2"ZI*E: MTM06*,VCJ;]NO=3?Q1]GY.8_RN8H^X?ROR0YW54X4P@$V&OVM2*$1=GOY+RI M:4MDN@PU;=;8_;JU,)&4]*J!UNHH:2 IZ9(I:4O@HU+]UF^W:Z;?+K&Q4CY- M$.S0*7J)7-H90Y5+JY A:F/8TYL#1&LZZX8Y%<0P)/]*_GTE MUV1'_MUD2_;;6M5Q1,F[DG_J6:^SI;_X45BO)UE/LMZUL]Z6 MRKSCF9S]E8$S6(59+5MN2T"JO M;>VKU0$W29JJ)4UM2XXZ DU5AT@D::J6-'4:N)"^JM5+_5W#B88LF:XXFE]M M29FJ-X9JM]G5J_*G:A"OD-2T>W"ZJD+7OEH=<(ZDI#I2TK98:W645!UF'+/UX#4.YLN(/%6&%VIVFUC\8=T'6;DD&E@R\ MHV]21=VE6AV2D^1=R;N2=W?T!BOAW>JPLR3O2MZ5O+N3_UV9V:RU+\5LWN*S M1W7-,$%6S.W7>%5.M;F@A&_A'"A]S/]&^K0=WE7]@'IT7L8D.'!(A5O9'NM( MG/98U31M8'2,@6X8^J@SZ'=576]/>B-F&8/1Z!]=H[&U/+Z_.II^47'\<>5! MIGY*0WGPI:7\966AU_7W.M='"5P/@3O^^0@7OI_!AX2752Y%8)>8=1>([_ Q M#/A^ 0\*O) UAG2[\H,M0F\\-7T\Z5O?[_2&K.U]\K:;_/=IC4/W@W]E.U@G M>ZL9K5X'-.RKRVS:HWM'N0N?8%A<&*H#+*-N:TW%#3WEO6MZEN).E(^VQ\:! MZ_F*&093UX,76$HP98H7+S)>%BZ4P%5@$BCJ<"W-F5*H%/RIZ>'I^;I-MZ(9 MOGS[O$XDM+O)YG[WW"?/G,/6CIAW/WF@I][%HWQTW[/D8FLW]=%-2 XV6VNU M,ZI#@:V8X73X+'#RN& ?9J8O.D??P<3F<[P"Q]M2_LZ4J?G,E+EI,5@B2WF! M)\!?/QDNI)]>2A^^ /HD^GF5IC<*-$$ MAD:$]V[A^K19MQZ;F5C4+1 NA%)/W2AHO)W<8HY PX5!\2U%DO&UZ5P=K"U0 MZK]3+QK-PGQB-R.00C]OS D,]M:XYB"+;(=)9IA4 "SF(@PBS0#&XL MR& QN';PFZ1#(OF&S]PJ2$ETPOB!4?%TCCSSWCN0B> P^#Y^%3UB9O\1VO"B M)=TRQIKFR(NKZ4-/%]M9;O716H:MG1JCZ>PJQ9,L^2$ M>B>84 >]UE;VN#BV.^SY KY2X-/$QML1_,9H*7>TS7\U0=9X2P$5H1(RCM%4 M2 8K)G#E&L7[9$_8;NC#=B<67E.QG?$L1*^5,\H2R8DXQP0@,8$0P MD)),,^B](L]T&\-.LZ,;S4%'W\0S1V&3P2F(JM<8ZIU6%CPN(JJ6M"$W:CVM M76Q#EO#J>PUI>$K#\Q4,SYJ;EOE!H[^6#1I]<.>@O:;,\4'L?'% 7+-O;L!R MPD?]G'!./QL^6GF@PI^X7P0)'WY!L:(HA.&X@; ,0-L#>\#0?/Z)PMV@#BWE M(8!_*'^.\U!V2>$19/Z;8_@+9K-$,R-T3+ W\ 'C^+GC]',GMF,Z8QO,"S]Y M@P^C8:BH4R^Q^4O0]G? NV"FY\ +R-+Q48E8N>_?:3;W"\:%BZ^\N.',4D9, M\<,1# AH ,RK)3W7!RJ5&G6+1E6KT*B]MM2H4J-*C5J@4?]W68WZP)Y0UOU@ M"]<#6?64G+[F*-5!CE(=9)7J%\>"1?"6BGCXGFA9!SF+L@0\0 M-#KWB)%BS)$;!GB @E(+?O,%W;4B]9WZ3@%?']QQL"TP?.&3)>$ZD;HWE44( M;QXKB&J+X41Z,@\H^6QAPL-8RBY)#\*&1T=EI& 4F %^PY[!GR>SPF-/X MB:D+"PS@T"\4PIFZ+W0\-P,&QB&#(>2&WA@/E!RRAG@,%2^% = DP*R"]<)X M++Z0EHFBLS3,3[_8.$3+1+F?3.PQAI;@.=_AL3:R%OV57/TY7B!Q=4OY^]2> MB0?&C\>8BHWV%RW\L^G9#)8<_D@6>,X"$!C1J./%IF 4CPS3,TWY&,3FK"T"7LQ$%#NZ/]FEA>=.[ !W :2D M+_:9V\<^G8;R%))[-<"#4T8P0BHB?T2E\/"!*:-P:-HG] ]A8N45ER M$R<_7+'8$A?V+.'\1J-,[QZ&^( ;\9ID[+!;X2R(#S"+ W;\>9GHZ): 770L M&_-<)/Y7@E<@%<88P'IQ@:>9$RL7':R&X,7-BZ,@N-#7W,#2= :CW&)-_8229&% M.?=?S)@H^";1'GWW7*!N_PX#QIM)(Q,"U[7&T(>).#D,QJF AHCR#5^!A&+Z MZ4,!^,$*QT$3A@PK3.<%\+3 ]99-\03\:3%SE_A3P)X\DF>)9)Z)E4)"6GDE MN-UFZIB/L]B*9(MXET37&UL0X1T9DT ?#^XD>$'Q2.XMZ918%B3O?=/X].-[ MXVTD3F$^SS9*87&8$0T-(_P>J!X_-:2F,I[9I C<)Q420@DP:U&8B/T1PD.1V&W2*OCB!;$2 M'LR!R>63Z459/G; YCZ:>QE!W,IX0"4\MO&46>&,@618\]V^) ;2^Z7X,>O% MZ?JZOW8Y%/2%FT43%]CHA8XRT1I/CBY'GON3@<1Q7_B%1"D1H0##.CX7BC[: MIN &<%O>I6N#J<=$C!'>JX!=%TS!AG30',L]A*5KL4\)<#B^S@UA:I;_]G8_ M]E7UFC1#TEN&IN[1#*G?[E;53U SI)HVEL@OE,@O M/(AG-=A_5G/;LF;L-.TR'DD8?N4R\%-:!BH@_G;H5[(1LN),%^4;ZH6=UF1_ M G^]XJA*R#M5>W8QK6)0MUFZ =JJTVRWJZI(/P-@ M",DQ=9I;.8[9 I#T&AS3 8[I-@>']UN1'",YYN@3 MK?:1'%,;JI(<$W',EE9$K\$Q/>"80;/?[]:$8RJ*7YR!5\8[T\MN#,7LL:6E MTE[LD>6 ?F/8T7HU@:B6<.?5DM"6#DH5D="@,31Z!W>VD2142Q+:TC#I%92T M@6A^S4[WX,B)I+!:4M@65,C7H# 5*:S;5FM"88?&YO= ;[UJ?-;K06#5>J=G M-HTBX1V]*I_K$L"3KZ^#>>GY7Q 3GOXXRD#PL%[3.-SS*[N/Y\:'5\V$E\J! MIX\\&D9CV.LUU>,SH.0^R7WUXC[M](?+1JCO;J>6M3-TYD8Q4)*.VFBUND&1T[F2423(\(AEI8*@: MS4$WVS-+TM&YTU$FE?"(=*1S.NK4@(YDOJ \JCU-OF N(V5YQ<#3UH,K!&2F M0[T(2;+/H9E^5>@A+)-O]@S)79*[KHR[CA_#ZW0;0[UIR%1UR5S7QES;DO2J MX"XZ1.WJ9Y^#%R%JPQ18,3->XU5RX>3"R84[BZODPLF%DPMW%E?)A9,+)Q?N M+*ZZ^.J=#^8"N\ORGF26'80>\Z^O=$<.3=;MR+H=F8-:1=T.[_KYW5Q2I]9' M]V[\1VA[[+N'W0.#Y?>9Z01WCO4)OEW@)5^BUIR_ 2EA'.[>^0A:R/6IZ>3] M9.7&^*Z\>%R_,=0.QD"2^=N2=TY6XG,ZWAE@.I#D'>=HFJ@D_$.#&AH MZ))Y)/.< ?,4)!V\%O.4.V'M"F#+NO"6+$'B4[[,9.U*X,U/IX4TA+&N"0*L MK RHEMCTNA&;WA@.=(F9?IG45H"9?CIJ,\ ,Z$AJNTQJ*\!/KZE%2NGJ[8Z$ M6I<)M!>>0%M0.G4Z+8 @7E6UAI.9[#4A2V#\&U5AZ4E.K E- M2D[_ZDA$E(UX9(Q85=]749QQ@%6;W\ "&K!.KZU5RX>3"R84[ MBZODPLE2@'P+Y"-;>*#$33(_3,=2S+D+0_L7?2%K N309$V K F0Z67[UP2D M!2Q\GC'\ /[874K.8L '<,;&_&]F"< .U_'+^E\]:L!M=+6:9)') M#$W)0ON6!E3&0EDN41O#;J^J&(7D$:^]@YF")G[6DNBVIC7?T2BZ@!1J0U@J&%)5+4DJHU9^DX: M56'*27:L"6%*=CPLP_Y4_*CB\8!^!A4O%Y\K^91U9"R],>PWVX.ZP%Q*QI*,53[YLHZ,98##V&[JG8-3'21G22 M["_9_^K9ORA_N([\3]D7 Z-B>.Y7YW^* _PY,.%5\*]E/P^C"7T+Y[#C8_ZW MR,.F11[^!2ZC=;#'JJ9IL C&0#<,?=09]+NJKK"%K#.DIBGA, M=CL$8=&BKFU-\B9XZJ%+SK^R'0N&<:L9K5X'1/ZK"Q':AF^NX@.5 SN,:544 M6WAU]>L<&4FDZ.M M#&GX=YE'F6NNCKKKHH,I<^N/.Y'5!7DSO'XN;2$W/&-O.Q MM&KF^J''BAWX0IGYBOEDVHX/)I\Y!VGGD]H9NS[\ J9I.,-55B9@\<*3;,^Z M69A>L(2;37ON(Q_:0 6S&1L'(2B]A>@^ ]]./-R>.>E+WW>Q] XTW8L=3)70 M)PX.D@'_CS_U-;7WSL<'6.$X\%M*>CI3VP]<#TW(&?QA^C2?$8/9>8S:Y5B@ M=)6Y^1,5[%)9B&XZ"@D9Q0_'TV3V8TX$[@BVD9OM+>4_W1?0UEXS/:28"GUZ MM@N>@]#D8]L;AW,_,)TQ_C@U88:PW'XX^BSW:=*+X; M"8(M:<#@>(!_ 2]O943897#$%T=!!P7GOKJU+Z;GF4@@L#$1&] &;"))Q25' MCS8:-S^PB1QMA^Q!ST)RX/2-3_&!^UYPE<7M\>/\!;AUT>X@[:5HNPF$+7AO M:CXS3N*VPRE!(1N.D_KZTZ,9V8)_L0$&W^-?\#J\R::-5R9A &*7$Q50&5$, MO!-FX '_^F2M%CU\F1G:W+182[D3:\QGD%YG('#;>79GSWP SZ9GNZ$?"0_X M"^WJ:&B1GPQO"3TN(48A7,!\6*4OXIJ%[1!13^#=4>D9?R=*JCENCY6TPQ)2 M!AX&OX#Y!AQ@SV8D/6@2)GX/M 62R[1 ,"%;#)!)G;%\-U!1F]^-@UCZLXLE$HP M&M3ML/A"!Z%YO"(!HQ?H_/EE0@*5$FN>5W/MX0>]BO #5JK*\(,,/]0K_" " M_#=XV'7;T[8+BQN\Z$1V!AZP_W]__[R[?? ME(?'N\=/7S]]>WRX4+?R<0K4D5A#'ENX'GD,GUUOKJCMF_]2W@1X#9*8UG[W M7_&E/^A2^EI]]Y;L(8R]H-<%/I9U,W/=G^@1@7L9,!["X)H3O@.+ BT6[L"E M'1/FT>$A>)_-Q%SP W15G\ ?$U?"$Q8SF#31KTL1"/$H]ISXO\); _MMS#P< M6^Q1@J_V$_RP_^.&8 0Y23B#NU>I 8^6F>F\@&4C?$TS7A7T5L?V NYKB@6) M?L&(DF.M?XNC7_\N<@&RWX>SS .>//=E_;NYNJ>@R_KA@$>5\/6WCG9G4OMZPOC 3:@'(8Q#XP/@)\> MPCXB;5+,PYS [Z8W@N$T4=##HM9*>BP=C4!7N%[F"^,%.'HI4TR=O]Q<^*VC,Z.Z@]M7\R<434 MT'UW.B/D_[7WYMUM(\?>\%?!<>+[RL^!: +G="GH#4/WB4^52OTU'7B8U@VY+I%PSEWCN)6X*6 MI4K93#!@B\BN&*Y.;PG)4-8K>,P5O ,M&*!] 3+EST0&2,I659//YVXT]>.[ M*3I.TIU+<\QW/G-#4WCDIDS2"@O9E+N]CWEBY9:3X_]8C&""!1CDDP6F .9XH,D8IHHRR%[FP5=TS\!^I L$WXA!SJ7[>H<>G8L;T+F:8 M!>:<=K-,V(%2(X'(-\\P[3MA(GDD_5 L71@Q*OJ >3!1*:+< WCKV $!#I)4 M+ Q*EIO@0-(PP7A=:"$S3DQ&2^^41@0WJX%(=Q'C(U$R'Q<\9Y%.-U4N$9_X M>^.V06MPY_K#+,MF/&F1<0;7'6_ :\?\#JL[LPD;3.C<\P"NC3T9.LB:![0B ML AW,7KOQD/79:/FO!H-,DY%A? PF'UC3.B>^0N%?*[F7+F92V#28J0 M1PZ:'P;%!="@QV>Y;(%\)Q/[;LYB2=/\,C^?1(HH^+-2QN,!;ZDGC6&XKC\7 MZ7@,KD>B[""I)>!! "MAJE&ST8C/J8)FV:(%VO+1U ,IO<.B"*G3?SJ*ZJ,I ML CW[K)QJ96A80CI+F"J!H!V \QBIA/WN"03\]1>HLQH$Z-4#]QU\2A-$B7DY%S>-XCW"M95!9J.*&Q'#4DOAVR$"Z)YYBF+H*./SS_0<378T_\3HMKKHE&R@!F=A%F;+%1RYB&B_P9"EX@ M P*X*1TDLRW@:K 7,D!O MX/-!@. ;%S^1L;Y?E2*YOD>^Y \JZ@>;B?^P9M?<,MO0+W>VX?+B^NOUEZL+ MX_H?ES?_N+K\HWKF@V6+VC79%2 +-%":J5_(8Z+8ROCB>\ T<,$G$%[C1/+- MU9=/28*!@K"H5&#\4HIEJ/8//P"5=:GVMNLX0L$DV:7Z JIVD+? 9HG;) B9 M:;RP84E//,-0E#/:@DARRK^)G1H#_*C[J63O7V+_ <70:E@HZE@C@.*5M%:T M&O;2YQTSK=^CR["=:\3"R&BFU[([4.P^Z")C"B/A@2BPE=D3NO4:A!MW#.S= MV$3HDS\NK]\9OJ=Z25 S255PB@\\30KW0,LXN*V/N'K^[Q[9+;>H8]3.=4_F M-9@%,#I0/,CG=\E>2P8*[<_XJ31HEO:YB8-U-$88SVFS@5==3!V/"49(Z*#X M@Y*GU@>[ ]0VC:DJGR751&-,*W:-$QO80MY@#=[!9@5CO:/MJ-7H*[)*TG-0 MU+2-XV:=^F^@/3">8@:@06ESH3=0!=(/L.:1/E^9+D)HXX^^!E& MBBFRQ95*PK!"6OK8>P"M0_LBP>N#7( QZX#=ILPT&6AB'Y?\K9&&4D)0P.+!D$T@T&B3\[*=US(@%?M1OMQZ6BDW(#V*@. M[H!CV*M+[,;MJ'3^0&*,L71549E$, +J*]X0VMIU?H#?-_5]JI%CF!D#QF)B MG;'&&\C(QZK$6QBRL )W.6U&5E_@P\HN0!9<-%;&#>-:\$\\1SXQ%=/E!B6, M4A=&12L?!V0R@4TFH\AI!CGCBQN??3!N B4_4NY$"P$,-@R1[83[ A^!U1W/ MTMIBJ74IC";>CG81W,YG((4L<+!X7^A,12;RQX1+3&8UT8F:%[#4&-W3,;($ M=1&X9">A17D;!3XX %@F%8!4Q@%9>I1 G/EX;3R3 QCZ+E$F)[_$S:+.#*1I M!*YV>"IZ7(UP[K@NNFUA0F-D;D%E]'>H)! S*!20YWC##V V,@SON(\$HU97 M(YSZHQ^A5'ORA[#QD?Y)[2K,/F)PH:+A#2IVSO+W$7^)8S=@B8-X+@N.9>\A MB&L(ZA9IE%%9RYP )'!]K",@W9GHD.SB?^3H:TI])_HX0JH#-1Y\'B9[ KS8 M!$4=\@?TME'YJE%AB",.R&F(V$]8[!]J@Z*T$DX\CA1S,#?TI<4N>1T>P^:T MMPK3^4UY=7)9XQ MTEDJD1D#]D[W..[=.R Z)$[$LL"1Z*;Q)-J1XR\O=9!EM91BP]&4ZE:HFEZV MX."@9]3I,D.SD^=E3@:U)DX2! %?*9Z#CTYL ?KX ]\M0FR7!]),G=&4 MG#OARU&_A:=>@J:/V'R-^5U]*L!>N%N+U3(?\=.G&H@M!CC6"1 M36,('?(BM_VC1P3M#YHQE0$7$ M/(U<@5C13(5LKD3()BW(63,(*W$ M(L&T=&%PMC"XO;DP6-?XZAK?@M3X'B&TLWY;5/UUJ.QE,%4&M-7NDTN-_'_4 M/"(JWD 7L4#L)"(HG\NWKZMNH5@=HU"D*XQ)>+OCCTFG@@_JQK*7##9(TLE@ M*Z6-<7$ .V#(*YN\NO #--DCGM NL>"B -MP9)=PTN)-?HIP F#S %IA!B"8 MX0X6)<%H'('Z7<8F,*"0%JU*^C:,1][O2/<9[$PT/2>Q-U)A_D>RC,;R1L;( MJ:)?G:6T"M@F7#*@B.GF'[.<(!IA/<&?/LK-\[@HMY;CVCA/'%]9=OYU__M\+A8K%%G%-#([SX5BW\ Z.LDI(D8IW?.-B9#L-?K4&OF>^R M!U,90TBRLEW<HAY#4KGTI$'FKRST#H2;\X#H!XC;)$MM,9 H\\)GQHGUSMAP:B<]^,1^9] ) M+8(=;B^^I"].] DVQ,"(1GZJ4C"SI0(9N&NJD:O$>C)@V;K@PB8]6AB7-]^2 MIOM\UI.+8:BA5W615T55K2/"4[':#[Q7=&Y85D?0$NX<]F2HM:<_^2C&%\0"I\2W&!'%"T(0X$@ M[P0TAH@X&&+%U]B<8&5P(6J8(HP MBB1)O]*4(AKAC8'13WFZ3D2+AG%-9129Q69SF!(,RQ@'8FDXFQDD%B($!!0C M!QF,-D01$8%1L(*Q/^,_F-J6S2$2G83*2)"#8$"@AW$QT% &>ZVBDOHIYJXP M ;.$AI46X7:&&R-8.: M@Z0YX9284PF""0+KRC!RVFQI?$N^ODJ%)ZF92+^58Q VB7J;/T9C3 M?WD!#$=3,+9=>I+'89L-?L#@4>%(^6M:EP1>QV+D\AR\20B[YT@D=-,/82YCX#BPUI("+BJ5IG1@I=$<3IV)\)WI M$3R0M:'"DT[?+_8\0L019>LTH7!I1K!3&G^(TCC:@&46"A-X0:X E?08-0]Z M3J)R,,6$@TIX'3..(DB-=8]2.2QR7 ??A%.21GCB2!HMR<(0)=@\PC#\$'79 M!!&]0*^-&\9OV#5!HP/:.B*Z(*""*&G!,+D6J&AW^,-Q79[?"HT(5(:T;AD) M;$"T_\'Y7((8$=K6S/&<&3HC#PHI:7F,?#9$X0%"WE$88F6Q0;LS:?> #6Q9#^LFXS' Y?/I(G14U41"2:GU5'^P2*6(T:\86^FS M,A(#FR>F@8GA2?6)[3%KZB0[HBH63+=(62!+&ASVE?]D:);IU$!Q0/0JF.60 M8R6MK([,E*7:72HVP+)',).>5:&IDS(S- M2KMO-)4(=F)4:3FJ%&RRDIUA+*JTJ%Q%KG4(M PG L6FJ@H\Q\$8BH#OJ+L> M([LR#J<0"VDSE[T[Q!1J MC[%!BA(I+(@\+'E&=DE"BXC09YNB\%M(;H$JY@6,-\.$^-_53-#76V\9W"9) MAF/*)?F3*VORF:PY\(_GN34AE!D."W7EA?B,, G)R=4R_N$[HQ1Z&MC1GV'6 M(Q,[\)>L4!%7DK:H]."IPPM;TLBR7Q/WRE1A4K"9!:.I@PUQ!+U+_H8,S:D> M-5E@G>)K)_5OX,EA.3D=*8&>*Y4!/GAR^JI\BOP[V?.'C44J3B"2W.$(_#'A MDJP+3*@4>JCJY?FXJDX&K#3F&F1D_"?5N0%!NIUFXEQ04$[P6OZB?M.@5HV M6B>HU<)=",?/,%Z M9L] ,^&:MKDR_&L0C'R\\QA\1#YE(!B_ I*6I#V-/,Q1;/ M*9_1\-)!2*<['P[-!R]"(ZTHD*X_?#5. MD86T#D6",D^TND&S*]E!@PD5?( MP@?*'YRR\5ATNB"2?)"T,OWC_"9I9J'UTQSSN>LOEM-0 J-.3)Q@%*5]:IBWIXEL#B MT]8,!HQJ!U;-.*H]+1NHE?4U!O;B+P2FB2=/X3#30*J,PB=A5JG(*5PNBC]D MZ45&^U*BP84 Y$/$JT MW8@=Q"(F:'[/9?S&5LGA*&" 8@#FP[ M%>VF]_P4BSD-7-ZE-:?925 $3H3WXN1@$.$<*'/\O MJ#Q48(S "Y7#DHP7BUXF7)X)(A<7W$VTGS Q)%^:G(*#W4:TRE@@\R2KAUD. MRI)K*/)LF6G)<=&2/?"5R8G32N0(*ZQ@4C =@MLAV T_J0J14 \LS)5'^Z2! M\9B$',#N"I )ZBF5\=* ID?$L'K,R#S/X)-=9Q?VN#'-%)4ISVVD![C+955: M!BF-L$R\>QY&"0@*_SFGK03W2W+JRP#Z8/&O*.(; M+F2%'>T6J764.G 3 B0&S8?.=5I2K_F^F'S_,0=-=2$[-6Y5I\8W 6I5""G M4!XVF*_3KWF$+3+ZEYM.)#X75>,D_1_Y&G>EI7G2M"J[5(1)D<38X E)?TJN MER;I,:'-/VFII(.JZ%@PJJ'5PE!08EB3*FG$"S<6K#4B%-!> @RX0>>'K0FD356CI.34!FJ 8]@D-,;J5C MHF88A><*'(),3&5N8@F6K(4QOF _0G*D'AU 1PWBB^P$S61 $ZSED@1!HVN"YCG4N/GP!'_ 5SDS*L)*2P:=A:E114E5QDT!N_ M9SB@"!K%P50X;:4)=$$V\80!,%EAEV?>[#&IF=,S,59V+XHUR3NE)MQ 9=G2 MVEC-JT7G55'Z_)N(BQ2!4].]S_'P@S1)O*[W.-M_D6N[4W&,-. E3+.D9D"5 M;B9G!0\Y*7,O%/G!1)8_B(:;GPQW6HR]S!)0EV41&G+LNQ'P/NR.0$I0&:B= M":MU Q6D0;]+QGHH7)0#39''FKJ++#RI &)1'5A5C;L'1S#Y4_9_$!GM0M"G>!U,O]Z>WFA\J\' M99(CM8+?B*[\* 9#MKZ,%-=8Z!K#![# M)+FYNKW^:EQ_,FXN;W___/T6?[W^=GES_OWJ^NM!C\X\TBR_4_[T"UPW%1 C M8&GY!8@&9Y)SD0 4X*)4%,:IXCU)7MF3,#NPRSE8D"E*P3-0T+@)4G%F]A;* M]*77J(Y,>/ 8WLT"E8O%(#$]516J4LX9P3FC:8A]_K"#211P<7QM2Y[73F]! M&W//G*#5(G-$SE_M6@B!>CK"$ M)?,1'XJOI08?#!IV=X!*/ K@_V/U8JG?&[! [U<_[W0;W9:U]JMF8_WGFQYE MV8W.H+O3HS9_WNH/*CZHQQ_UGA91+"2P"G+A7]^TWJ2[/841SNSY3\/*JR6, M+"QSBV"40VNJ_E-*H2EB+BA:B2!%X_RGXB?WW%;(L/I1FQ- M&ZG2VHTJ3:2)5 W[/J,^.1T3]*';R>LI1%5<;[2HM(KL3 MK;4%T5Z8+H]*SVM&6;;G-"%@]Z%4,#DZ"O]V"X4R9*,?=P&B>I_*H8]&G$\F MN](*"/[Z\::FB,G2UG2VC>!MFNQ!)/(I2NY[?X4&MS,S3NA_R\QHT,]!D;DR M5S:.M=,;V=/>;?I-8XU$!OCFUU'J6\Z_TUF__^^STLUB3_7M7IIG:;YKY:^: MK-'N:=;0K+&67H.:4M%5\?TABM M)F>T-6=HSEA+KY->ZUWMV*(^#N*WP)^(L]^P[FBEY[IF[J+5JJGEIWV")UE# MNXN:-39LD79_^RVR*FQ1'U_Q2PH=43-_L:4=1NT6;& -6[.&9HWUVZ%E:8_Q M.1YCJU?D[?![MDCX.?[AQIQM&9D>_MW//]B."J64B5?V'#0_:7ZJNR?:TXYH MY2K++B18>O"2%6;%K> Z^LAT^5AMR\>LNE:"Z*WV2=;0E86:-=;3RZYK%K$^ M.8%ZUH_1\5#V!QWYU9%?75^H.6.7P,1@H',"U?43=1593@WNJ@>K8O]IUT 7 M&&K6V+N*;(="ZZJP17T\QOI6D76U5Z"] LT9FC-VJB%K:G^QZC5DHWQB6]>2 MJ=K:7?6B+OW1I62/L-.>F4K-3G7V1MO:&7V.,UKL_?>WP ]#>6S*<[S12NG) M[IX@"%I/'LI1J18[[;KM:G;2?N_)#IW$VNTM20'W#0\Y"T932HC*,P7Q=!_M M\*JL6%][*-KA/1P[Z?B)=GAWCI+4-#%?^?:I6^9R=M96T M*I:E]C<.;GEIUJ@+:^RZ(5:%,RKOCLJ3S6E+9..9XSEA%- YL#6KT[5W#?A6 MQ>;3WL"3K+$KO)5FC=JP1DTYXXE]49VMZOD>WPRR4):KZE.7+$JQ_#E'$\"[ M4X<$[X?T4,D\WIY(ASJ:J-/"ZTZDVK/H6;.3]L6U+U[9BNCK9 -VO)$_T\70 MSS2WM;K4J>'#G>RFN:G&#O]);X=>I)IX^^5/"U\C,(7<;#6D9L$A-8\?$#IJ M<.D1I5+LX!()F6EX_%FUCB7<,_1I4=J4M5X8WZ=-Y= MLL"#$8?&D$_\@$L#U(C83YUR27?/7=UT'2/7*9='V$DW=NJ4R\Z;<5TK8RM? M_WB5;+FJV*%FSJDN>]0>B&Z"TIRA3\+1KFEFWE]Y9'#EGDX"?P;S]2+'B[$J M018(^M[+>*EE]2P.C?&AG8L#^JIE9:H]C]'03%5OCW7GZ'%-/-;C)WR+FCPN MCSUR@')(P;!G+9C[V(^'+A>AO&I%.I\']?DL$I52=1RGEK(6K+AG+E.SHHY! M; K)U[6HAO;\]Q$#,7CUX=@X'&]FG!J>'QDSSG _GL1N,L"Q<__+7^ ?-29Y M8]MN]#KP\+D?.A@W. NX2R #'QZ<<325\\S>*$6^F=["AB#@<;3YELP:CK@7 M\>#UE\L6G)DG1_;?::!&,V=W_'089XYTNT7!Y M^ALG.9F\V"2%O(SYR!=QH#.0,Q[@53 F5IBQ&-. 3_[ZYD_.R+)M>]#NM >M M=KLU[ SZ7:O5:DYZ0SYN#X;#?UK--[]\1Y'"(P@N?#R<)P([D_VBEO(8C&2L MB)48QR]_&0;O?UG'9%G.(3QGM77VX87R$]PN^WGM_J\XC)S)XL7EI;=VFE_Q MDR]PV10H/YNSP E]+VP.JP M"D)/D>E#PXGX+#08_&?,>8":""0=V2JBYNKL+1&\)7/-:,J\.Y@$/'@,[V8! MO5B M@%[9)=96G:4PH:@A:7M".+GYW/"+J1[&SUU..JKC::&AI$=F=:*TMB/;"='E4>EXSLK ] MIPD!NP^E@LG143B"M6C8E5O3R_3J[B*1K]ZN6[[!U:?#]38>AJ/ F6,8RICP M/9MXRAN3[^B249VNV5!FONJ#*_K9&>W=6E/>&KRZ MEN#IZLPGBQ'([W&$WK I7U*?O\7NV:%B? Y&D#/;,&>B6,7T2A.:G(O)3 M";GFI*/]T,I5EEWX883=.L%+5I@5MX+KZ"/3Y6.U+1^S=D59K8I2U5NMSA1I MUM!:0Z<$=/E8.NO_^E/?MNP/.O"K [^ZO%!SQDY%9#HG4&$_41>1Y=1@7<_) MTJ[!DZRA^]$T:VS8(BU=1%9AC[&^162[]EE6Q?S37H'F#,T9KW/24U4XHVYE M9*-\;OM%RLFR.>0RB<#SP/)K?L[*2]>4E96I]LQ::J:JNW.J?=/G^*;%WHM_ M"_PP- 0.LCX_+^.?Z//SCN^]5(ZI]O1Z-5/5VR4^Z>L,ZI[N<'%WWAL>&*=5C=,E>6 M*X$/_(-',.B:Y6AM7;JI_8X#X5YIUJ@+:^R:3*@*9U3>+?V->SQ@+FV);#QS M/">, CH>M6:EO/:N %A5L?FT)W!PDTFS1EU8X\363N(2>ZB35SW?XYLQ&,IR M57W*ED69EC_GN/U[=^I,X?V (+:&^BB1K'=WQ6G:B0BE5 4Z0?R\,ZMT@OCX M3%5"OJEW=WY]*J>OD\W8\4;^3!=-9W6GSNH=W6&K&D_M>QJ<9JJ:1P$Z&HVS M>KGB:P2TD#NOAN(L.!3G\2-%1XTZ/:)4BAUU(B$S#8\_JQ"RA'O&GJ6.I=\V MM#7Q9+I) M6*9]=9V0T4Q59*8J(=_4]?#$RI='7B6[KZJ'J)F;JIT1[8QHSM"C'4*LGS0][2O^IR\LG8KM*^JF:H$3%5"OMD3 MZ:KTG%%Y7_4RMRF/G5#NRWRT!FQ/MT9K55U7>.!Z;I;KQGINJ>1:)22M-QW.U: ML.+S/''-BMI)7_%":NVEOX\8B,&K#\?&X7@SX]3P_,B8<8;[\21VDP&.G?M? M_@+_J#$)''4EP'UXOOP$A;:?Y[%_Q6'D3!:2R+_\91A@G?<^#[9 4SSQ&&?\ MUS?.R+)M>]#NM >M=KLU[ SZ7:O5:DYZ0SYN#X;#?PYZ;PXZJ9=;JM[:I;JX M_O+M_.;J]OJK7 MQOG7C\;7JZ^7QI?KK]__=FM5.T&9;F7V>7[ M6T; UEDSJ1'72ZVXG%'\N.6[]8PS^FZ=-GMEO2S@=J8!Y\87N&X:&I?>F(^- M_V9>S((%[D-Y=;U--*0ZS-!:YH6G7:":S/:I9DI-+DVN Y-K\#QR"15['(*M MU[MO!<7\B?A)J&?BUYLU)U/64.F6:C717=MA3MMIA+6V1^D8'1W8PY&F5%.7 M,GXQ9=[=YH+]:M/@L))1MJFWZJG%M]BM2Z?'3AQ/S#J:^C$\9QRN5)<_6^/O M3*:2\86FBZ;+4W2I/)[3;3P,1X$SQSI(8\)7RQZ?G4=\O57>+6$/K=*<\:&9I>ZUM%HUGBRKGI7 M!+ZJL$;E&Z$^.Z,Z(G7TC@$IN8-]4M\6#LML[GNTN5Z ME-F:-EUISGC2<*PI9U0^0/PM\"<\#!W?8ZX!S[@'.U(<%N\C2GG-#HIOF6UK M5[AA'?%Z+1UD]CIZ<0JZ."=V?WN+LBI1!J&[QR)[9LW70JZ"+TS>[[5VSIGIQ7LM^M"P=D=1LL>*0ZY"D9HT- MK%%7,/9#0H05^Z!$:E0S@C4]:J^$-%31(L2#D*;8(F-WS$ZK6R*,JM>IL-5" M46NAZ)GMG?W3\@M%Q0-I)ST=>7]AKJ@5L*-&=M2\6 PZ:U[9;7A]S:CVV MI=U?PI7*_#L-U&CF[(Z?#@/.?IRR"0SVC+D/;!&B>&9Q QWO=(F&R]/?.,G) MY,4F*1ATS$>^./#B# 2"!W@5C(D59BS&-."3O[[YT],@G583?']"6_0GQH6/ MR:0H_,M[EJ!^'H.15H$Q-^.1'@AQV!KNV M"12'V2I>G+;O.;&EK\30K/$4O3JZ-URSQ@8#8L_*_=*S1N5[P^N)4]D;[&H- MZ\;CU^J),)L['SRN%^>U6ANZNBMCW3JB$JGQ8*+12;:=*WS/:^,?02"T7%(VDG M'1UZ?V&NT/" !540FA7/(--T)5'@S5D GT4^/39D,V[,86C^V'!9&!D+S@(3KG5&4^.!A0:+HL 9 MQ@(_H9GLS3N400P$@./P[@QQA&'2Q@ MM8$/_!E\C>\?.^$(MKO(N&7LEM9!+2N1;1+X,[I]#IN=$TXY?@]\ ZPQX@WC M:SSCL%O"=6P4^4$(+_8$ W'%P?8VH2U MX#UIO#$CGX MK)'K<+PB#D936,_0% (1SX; ,? <^7WH1## .')\.^!X$_R8^T$$'T_@5N9*H0^KRO_?<5F($(K?E6HA#I8J M#UA2_N:$&>TVCA-NO?==8&E<(�<3R*A+8BY&T@9J+"P,(CBC-OH1ZYRE') M(T"GKW+@@Q--#SM7QJ9KATR$<,=!2J;_ UG'L<9TBZ!-^HM#9. M8GGWR\L",Q2./#PTG*&F6=:M(;&V<0?7>'(D!^7/E^-%>N*9 TSCC'+J4$R7O.VT;&GKZ@.# Q5OD+5$@#X6EO!$YM3KDW 93]3C0U,4C MUV8N_].!#A2YZ!FWV*?%]2+;9XOX, M_R\7BC[WT14>VLK]SS4C>*'$@QU_^AH\5^90_+:)H/W)\$P" MZ]31D1>@[ 3>.]FTG^H8/(.PI:/MSAF?UU?':R7AE=(N1[4D=>:E@L%P?;B5 M9C9]N)7.O-3Y<"N=>GE>ZD6#FKP0:8HM1'N9#@YDXY1>* MBJ>+=C:-*I4O.@RL1;ZIK4:X%CMT8)J;;;.D<7^, #X3*OY%G$-PCD?B39% M\VDT ]G).8<_ HEJL-+@R[P<2,!25[DO>K!#$R]R8V3O]$/1KN82'D+:2+[UZ%KN1]!JMUO#SJ#?M5JMYJ0WY./V M8#C\I]4$/X_Z:4%<+WR$NHC"O[QG"6,TVVPVR\MK M50\M=*W:AA9T.KI**3BK6Z0,(J# +Y<.WHG-.ZXQP,6P;@F@3\S4"@0<@4,SQ@H'-*4 M^$]8*"1,./+G7%R(C^8_'5A>[\[PO=-YP&<./'[D.@BT0G!&$0TG^,$C>LP# M-Z;L'FE]#\]B#VPA'Y7>+0<);_(GT0.02\Q)41D'+-&9: V=&;U]8LSC8#2% M"\1XZ3N8])AHL#(V' #>!T^Y9>Q6(BDA8P!/3S/<\313T.LP&VLN+P8B-0%Q MHAA)B^*+8XER%GUF)1I&.@@"FMJ.)[=\/9O/ _\G<%$$[&@,^H)1!X/'QY3G MXH9Q#6^@$%7R#L5&0%X& P86!YW@5C ^>,,0ZY9]I 6<$D2=EG%E"?EB@CU M@;1'E:+>*4051C2.1]5="B._W^Q /N):,54@%>*)H6B '@M!/8>@UO)+_, # MOBSH70_Z(_0]"ISU/H3&OV-0>H(!U4O@ M+@<$0.RC>R^:^31M<&B/KUO7%NO6&:RLF_&\#>*9 ^MT-P\,=4[R!*5OU/M2 M*VG_S6''?2%C)DC&^P2YEPH<1TYD :FGKD1U)G0 MF7X@!T6XAVB#S'VEU\:^X?E1^@S:-T=^"-9'7NV&1A@#PR(WSGQP-?Y#;R>( M238G%+3_9,VA2F*X?0O\"2?B@KS>IC"98VEO/(7M5D=(RE930U(68RP:DE*C M*I85P+"0@WH6JN*SS_DL5?6M1C#4"(:'J_;7S1,:P5 C&&H$0XU@J!$,=L2*UMMD9'./T3%TDLTV13*M9TR(9W312K0)XN[DK'([N M37BUKI&^7IIB+HW=TATCM>@8F6?3J6$VG2K2T(<&0%SV["MJAV\__V(+1\ML M6[LJZ5U)4%!O4;-P-5BX;?8Z%67AJCNA=K^V3NA2N5+10!&S G PN,%*C>[Y M(%([UB)HE,4C0X>5B]#;%@KL3P:-RWB0TH*C+4#9";QW,<)^JD,C.6HDQ^-' M=71:OH*I4JMI=JSRYDHULY6*V3IFL]4N+;-5/2:B$_,Z,5^)%&-GH!/S!5V: M;N<8Z5^]--OH_\'VZE_GY"N=DP\/BDGV:&1M)>5732O]@ 0JMGQ9EFGM7!=W M<"(5U!W58J+%)'&%N_VZBDG5'6E[!TNJ4HZTAH'BDI]$AUZ ;F:NP=Z[_P(,=QA8X]PKST4^ _?#"#(A@N 04M@>QEF ) M$P2N52*UFF\/ P H*#'T_1\@UW1'P#';9OP;!A@AIB70/W8)#!"^3 CW+T2N M>O"#'RF&9 (EZ,SF+B5=!#I3[NKT!7*0&9BN/2F6@UE(R M>^V!/;H!83,[Y0<'.")!5%1HBH;QAT3X](?(>_B^*8OP00%!=S(CPJE[HP6! M9SW"G[B,[(YPQ.XXK:&"S,)KPW@8C@)G3FNA;@$A\STY<"2Z6FU"(O5 :^1P M![./H.?CO?(6F"Z,$SZ\]UV8S-+:X]T(KBDY*)D$/ ,?RO\=9WG-I)E*,%?$ M6!SY=Q[HJ638A"[&$&X-%P0NGF$2%B:J'EQ-R*\OS$'X(^:-^)/P7AID:)M' M%1?/IY"#>A;(4+EQ##3P4377\OD@',5;Y]VPC];6%QX"_JA"95[/A3_:G:(5 M()H&0=H&!*E<:ZH1D#0"DBZUK$'U6\]L-_?L%BQ S%[S6IEXK6^VVN5%VZIZ M?LBJZS%ANM"R6B5C+6N@J_D*NC0[VQIZ:5X+-D(#(-6BV'*622X=&NRH#O9V M)0[Z[9D]^WEU7L4\RE=S;M4YMV]VV[N:=V7@7.U=5M:[5(,H*+31T9&#"CPT M#6I4-U"CTF7JRHEK5*T%T+A&A:PO>'UJ6 M-OVIF:U4S-8QVQV=:R_HZNP":E&Q8(A.M5KOB==;8J'0 M+G$U76*-3K0]#9^+3K3&(,O PUB6 (QY*12B);B?AG$M/]AV6 27LN?4GYZ" MR\(HAW'C^<$,K%B!8&.P* H9!JA@P].H7L"+@8' MKX;/80VR[U= 1!NU@A2RMDW"_6'NA[3<9V)\]_R# @A!(*/5(,[V%#6'O MC*/-MZRD18^D2UI6GAS9?W&XSOBO;YR19=OVH-UI#UKM=FO8&?2[5JO5G/2& M?-P>#(?_A/F]47=-DW*O.;OCIT-@Q1^G; )3/&/N UN$N)UG=3&HW27*+Q-M M(VDFDQU6\WU[>WQI?SF]^NOI8#L.O15^/?.&-Y!>(!C!- *##;#;3$T\G46I-AA[T#%!RK"F,%F M%8.]@8P)=FX8&F+B9V(G6OVWW%A@H-<:3:';=@$#:W4:[=YA(*YZ#;M],-BM M3O<@8VHU>D^@;KW^F#2=MAM3'YY4M#%U&H-!JV!C*B*=NJ"+'G]W;3",;*OR M:'>/+^'Z:%M)J7*P$OSJ,'@5L==V@P#4@'5KHK":8H?K<=!$VY'-:D<4K;"T MPM(*JYA$>Y%JK>(6:?V6";89OI<_.6'"]SYOKM:5)^6N+1F85N]Y]5;E+QYY M!A<7;T&[G4*M9A&J3EZO0$\KPM(JPKXY&.P)"ZP581$7M%LLT"2M"+4B+(4B MM'MFNUM%J+SZ:L)BK:;6A%H3ED,3=LQ>LUA6A-:$VB;4* 7/"GIF"LM7XIU5 M;\/N:?""@B[-X!@G.!1!_VC6>#JBJT_W*.S2:*G5K+&>-78^;D!+[2LM34_O MM9HUUM/+,ML[(RUHN7TMN3T&OE<1Y+9VA4GSP)_P,'1\C[D&//,>?/:0V@C] MO3$'RXL4TK/W!'\I6:BQA$MC'P-QM@@J2;/&TZ:$W=VSLD[+[8O+[3%@R;7< MEH(US/9@SX2YEML77YQ=D62UW-:%-3IFL[EG[;.6VY=>G%9=Y;9VZ?4, EO- MLNM=T^[IP]X+NCC]71WUJL0.-6L\&5XSF^UC'%"@Y5;+K9;;9P38!J9EZ2-? M"KHZ_5UCGUIPZ\(:MF7JZIC"KDY?']94T2R[.*,IB[A[T--$YK#V!1X!4U*]+6*E^K?*WR7YHR MG9;9MY^'<%DNE5\GH[FN-=G/.!6W%&?7T@EQ>QY&BH>*1BMQZ^QIM/Q9N_CQ"KKVYI-("W44(#WQS &:.Z/<"F\XZY#6 MY4M2 'B;G?:G+,A.]3@[9>IM>7D3%Z]#8U]S-/(D\&=&=_ 6.;3;V8+9M^+U M] #AJ0]D]N[@B6$4FOB,T/<\[HH/B*WQ:6SF@S+]#QU.BJ<%BBC]&4X8251,3X%O65+K-FDK7N?;]:@G-]>.:_@G[ M<9/>M[ND]VU+2$K+%G_:*Q*SOSSBM7A\T)I-@B7#07F30Q2CCB/'E;M!PSC0 MW!TA0;<77^"JNQD\8!,YFI(<5D*=0\P_2]&&\7WJ@)H),U3!Y\,UL1O1!I@C MSI9S1-7FC*;XW"''77<OVR#'W_!]P8BB5" MLAO_AFE&L(^;!@N-!^ZZ\!-MD2@$^H[D6T(?U&DR4GALN @C/C/0C;D+6.0' MV?'+"]7!WT$H5OU:?BE6:ST1O(C('EXRQH'W*]W#^JT!69Z:\HO&?HN6U&L*2&^V(; MZC?383Q7VY)$I6HM?&HSRH9;E&#M937F)1F$-Q5G)\R]YI"RZHS_^L896;9M M#]J=]J#5;K>&G4&_:[5:S4EOR,?MP7#X3ZO9>E-T"7]4GB__[[?+K[>7MQN% M5U[=MDD&/\S]T,&=[DP1]H,\SISBIMD;Y>2;Z2UL&/IN'&V^9>4LPB.)?,O. MDR/[[S10HYF#W)T.@=]_G+()#/:,N0]L$6(R(,L*L.I+-%R>_L9)3B8O-DG! M@2"O?D"6RUD,*B' JV!,K#!C,4!W3O[ZYD_;2.*;7[YCB![W]@L?=4($[C_[ M12WE,1AI-> BQO'+7X;!^U_6,=FV2L1J;=(BE*=(A9!29C!?E\U#?J9^^3!V MPKG+%F>.1Z.FFS[DWXBLNEP;CR\47TLN'K0;G0$QLJS,ER^6/-Z K]ZO?FYW M&MU6?^U7S8:U]O--C^HW>H/U=VQZTN;/VU9UQ]1I])KKO]%CRGT.CRKD%/L\ MZ._D2GT13LQEUHDQP']Y[NGVE2395W3[MJ*8%(TEP]^RR?.NNKC G +_8:5\ M9]MSA8K- ^C7'WSFFPZAW_RPM=+T:&%7ZATR#ZK&H6^%>/H3\?-&Q(N> MJ]"U4&NAUD)=,*$.M=&QILYXA]+F8B_Z4VIIEPEOTD95)-JC2F;+S:Z*=-', M]&QFJDW,8XL=M'2K>4+)2C^&1XS#=Z^L))YX1E%>I=>]0(NQ[ZLJ#^]TPT/. M@M&4*BS&6,/DS[$HZSG]5!7MERQ1QV/;[.R+LU2 ED7-:^7BM7;S&$#]NCUV MB\6Q=L66KTI[K&:-)UFCKIW3>H>JV0YEM )M3E42V:S;7V$8U%7YQB' M]%5DTZLZ:]35'JK\:6.WU'&- :X9"WYPA"UX#DY]U?;8=5,L-O]VS&9K5Q#< MXAP%H7FM3+S6-@<[PX46A]>VVK/+>^S(SH9V58X=T:QQ\,BG9@V]0Y5RA[*Z M9K-?WB/M-+.5BMDZ9J>ECV$KZ.K8^N!3S1J;#CZM*6M4OH3K-^[Q@+D4X&+C MF>,Y8100#(HNXBIS)JEC]CN[FG7%221I7BL9K^WL0A2'URJ>F;*/L3)%V+HU M:QSLH7>H4NY05M?L]8YQ7)8VAVK(;#VSU=%%7 5='?L8[085V?2JSAIU MM8ZJ@V!TO8MZ=@U"C+ QY%#XK$5.Q7;B$N::!SFH69S6J MS&D[GPY:'$:K>MJJIEDKS1E/T>N__M2W+?N#Y@^]1=5ABVKM#.A0G#U*8/7>BU>;KBU$3'&_DS7=I5ZOQ2VVP?I1-=YS+KQVN6 MV6J5%_RDXODJC4>A66-32:;F#+U!U6&#ZI@]6X.5%F<]JLQK8 PUCP&)J8VA M+19'VT*:,S;DYVO*&96OZKJB8)81L9\&_SGG7KA]8$OGC@K(OI;9[!\#DT?G M*>O':X.FQJ$HZ-(< S"M"/NUYHPGRU@T9^C=J0Z[D[5'NV)Q]B?-:^7BM7Y_ M5Q>Y.+Q6\1WO& M3D1U/.)J-;8">3GSHB6=. M!*\;Y01JY2!6>^78SH]KCNW<:;+]M9,5'SG>&)Y[9K<;O0XHYE?7'ZO3S9Q2 M"DP01B&61+KQF!MS'H2^YW%7?&X:T=0)QJ=S%D0+^,B+ C:*_ "_"!@\1,6< M32. AYE&Z$^B!Q9P]3F]SJ>J2V"ITQ&;TP+]AX_32U=&TS#.C6' V8^Q_T"= MRG _//_Q"80&"XV)[[K^0WBVWR):&UF6!"#95L3YM[!R+IN'_$S]\D$)C^,1 M_>FF#_DW @.LI [PA>+K#P_..)J>#7J-;A<73:EX^6+QK=6 K]ZO?M[N-:QF M:^U7S8:U]O--C^HTNJWN3D_:_'EKT*_LF/HPIO7?'&],W4:_U=9CVFKM>H\^ MZ0DC:\<,X>L<.KZIJV&=E9S,R>IL,ZGBG:7^?1IP;GR!ZZ:A<0F[[-CX;^;% M+%@8+8"T2O+/ MP,=4AYRM5R1GV,XX?+>%4#R7]9\@4\GX8DNZ:/9Y"?9)GJ&S%16[2B]HQ:[2"UJQ MJ_2"5NRJRD.S?/=>O#E_7LU6#&M74*"J]&+LR=HUZM*QCH&[7S76*-'] M1\Z/;@TA(4QAL%G(7PM.'":+V55V4^L]XB<$TXYZ/(@9L7 MIO$PY1X%FU@ ET0^C3-D,X+&GY 9N1)DQV)V_9JO;COEI.+!13'@8PNX=[,DLT&!2R WV.'Q",QQ+;8,"O*4N?11OL(&8UL)"^>#7F MQ,']^!0431;>[P&XH=VT464Z8#])_+_0:-D]@\_FKK]05.YU-H, 9EFFTVFN M>]/J&P;+;[ ZK4VO,-CZF;9>PJ@XO,VM'[SC@R67MVV2K@]S/W10B9P%W"6U M)Q$2150A>Z,<2C.]A0U#WXVCS;>LE*<<29A;K3PYLO]. S6:.:CL4T+%/&43 M&.P9_L9)3B8O-DG!#Z#/_8 \CK,8M&B 5\&86&'& M8L ./?GKFS\Y(\NV[4&[TQZTVNW6L#/H=ZU6JSGI#?FX/1@._VDUW_SRG4!! M0;]>P!O18OO+>Y9P]C$8:=5>W"QS9= 5Q[=5KV$;8V1TB&/6WI]\]L,,D$8Y MX67;C7Z_M2N\;*O5Z/=V V#=]*A!P[9W ZK=_'G;TF/28RKFF 8:7K:&\+); M@BF5E2H:A5:CT&X]VV?@66HP2PUF^0J =>6BCA9,+9B%$\S:[/-;P(26:TU/ MJ.I H\L>'5U6L\W6;%.?IKC;>#YW%P9H7*#W%^:Q.YX[H$SWMY6P%KMK6M:@ MM-78FM?*Q&L]L]<]!M*:KOS?IO+?KB$>D%9!-5-!5M]L#33D:W$6I,K,9MMF MI]\K+;-5?<.S!O7;\"H/@'>-9SNO8*YLQ*T'=UHO+%'"V8^=B/L>!\AVJ.B@8W#D*:8LM.W^KL M%Q$Y!&T*&K;3$E%GB;#-7KM^,E'UZ&)O!T.U*M%%K2JUJGQ1FK3,=FO/[%V) M5:66"2T3CU75=%M[)AE++!-5-Q\ZG?J9#\^$;93S/T6M=69M@9ESBA<="]I1 M2.SJOU<*EX:YB%\4S!$6@AL^+-N4LS$!U/B8Y$2PFUD&SZBJV$+7<6#<7GPQ M0GY'P'_+X:<\@B+B2TE,MF4PMLG^N%<[H# Z\!;"IEJ%:(/Q($HD@E A1-LZ MZ*G,\BHLK W(C,N B8X7,>_.0>W-PI!'E>8'RO*OX0C7#Y=0-KN"'0(^8_"D ML3%Q671DQD!V2)D#[E$##CFCUK"+:LF%J9@CZM\=+IB M4D!3E!K0"8D' P>9'G2!![S@8)<.#R,!,NO<.S#HL;P!!<##4+[ZDS2&<0"HYB :<4_8B_Y<_EJ 0?H>/VD-?=# 4<#0V )M-(H#T"K2]9N)'C(C6YGR?JNIITA+ SC._O)PXJRDY3S.P_N >-RP@/2 M$>QG=K=T'39T7"%@0[*\?:$Q)G$4@_F)EX]\<%+_'7./O)PH"IQA+'#F0.&, MG0D\67PWY-$#Y_)^QV/>R$&K-P(N$\#O+ @6*-7@ <7(I\")_*<3DDV[85 2 MG=<):"@XQ)!4V R4;1QL-[$X)%4"XX@C/UC0I2@>9%QP&/\H4HJ2S'SX72#- M/@AP9/@:O\M.%6:.7EX0 JX!&,Q/\_W_HUB/7$09C^#D@SD^1UA*.F%*9L;W_VY M,Q( Q]SX='[[JW%^>V'TVDW3R J#B9,>@<[PHPS[/#JKU(GFI1< M6C[#, DL2I:ZL>>"TR1'DB%N-&6P4@2CCH5+=O,#N-(4C;)] _WV=Y(RM((T?I*$,7(GM&C&6'2\F M['FQWKZP"\!TR-NV\$%??;"*MY^!=D:W)P0VB;AD;31QX(TL"P-.K^@.R!JF MIXO?EQ],? CRY0>SQ&U:G40Z\H;Q#)*UGDNR0;.73LAJ# Y +BF7XOGM#+EZ MAR'7KWR"0LC&Q/P8G1!Z(>3IL$AWRW$()EPZ) ML;8B&'@ SWO/BV"R']_H3#& OX$9Q0-/@Y=GJ--JY\FAP'DIP,L+9.W] M(7R,P,&]@<)28/?>Q2XFM83*P84"QR& WS$$FF@DT-:QBYOSB,7H!J9I#MA! M)BYH^5B:*:#)DW/#Y,D@=)8=^@GP\"1SH4Z[6SGH3AW*@7O7B(,V&\OMSX7? M W7ZC!PDT/U4_BHR;+#-"<]N(9PPY:*D!SX)PU_=!'^S$=IC#$GRX,#(\1GJ M^9H=RQG]]LXW(=-_LP7?;(>0?X?S# M]5O=YZN__W[U\>K[_YK&Q?FWJ^_GGXV;R]OKWV\N+F^-\Z\?C4]77\^_7ES! MYQ?77^'"J^NO3^WY2(ENL7?X6V ME0O^G5(*H!99.*VH<_DW!_R- $M2R"?A MPGB?X$XR%BDF=.&EQ*#TX%?"_L_X/7B=/#10>!E@^<8!SQZ51F([ D)F0IM9 M1P3C1VAJ4KQ'G,GKL-<[68:U-'9<%K81MT5?1GZ7E@ MMH,M>Y<$8T[I!9D*AXC/X)$NV.T4^1%1)CP>,7U.9A1K U3)1# MIY'>()/DQCP.P(:M;G$,\NC$=UW_@8(-XMR.J?^ BSU![YNV)#;T8\&R@DHN M7B#8Y-^Q,\9=4%GZH3%. Q>[YA :QO_Z,;X?7? JY5HXQ/#4B>DH3L?4S&# MD"0Q_% <<>O]*_:$*YCLL6 0CI&YQO@;%2&2X-ZJ@'"B'HU/]!S4%*+6 YYX M!=<8%O[V#39RXTJ>S18:?T^LEQN..2$:'DH3O/&<C ;/>:SVK=+G]S=J46],1JFNUN=V?K MY.56LU9VB]0Z,M&UI^^YRZ98+>:UV^; WAU?\_BJZ$ F3K56$U21M0N*Q(NO M9FV#8IO4T2%=J/)"G5AFW]X3_JYDIDX)%V<_9-]BQ5S*Y$0]9L%H0R4Q5%IF MR13>O9#G5$FWW[9,V^H5R.W709QGK.; ;'=;!5K,FME! M CH'RT%1,XFZ;OB%_SMV[IDK>H/VVBHT0.H+D:;@\MQJF_VVO:^!45ATU$>, M22T06B >$XBFV>SO?E[@L03B&;BPA6_@V M33.#[I5!AVQ5MK,!\Y2S_M;?( M?OLL%IC+PD@ W#RPQ^0%>R[L80O MQ$]F+,*>J87H2:6'8E?)FHZJD];R[.F)<0 V3OC(;>WEV];A$ZDN_@UT2L': MX(&=E:EEN\_@@NX[8PII>S;DPA$$^,W%MP[H7%^97R&U8RH M#Q!G=(]@%*[X2#"*!\P>W#$O0: ,^)T31M0!'"<(1BY[H!==>G>N@'<<&W_0 MRIW@UQ(&2+TUG8\$ 7K7H#M.>BMDI!&?"LRK=? RU>T[ T+MJ898N X^4^D* M%ZA ;+B&^U6[]9. A:N*(5$*:UJVI>SGWKGW$0N&/@O&V1;1[#:S#A0WSWNYK0\T!4Q![J/HW0O0(@EXG=ET$\#3 MA+%JR1YK8[-KV6.)%U:,-- 8V860!PG07F8NRZJ"CD9-Z(B=-UH%RQ9L:FMG(?D-UW]8 M\@S61!$:JWQ3#::X6@]!17!3"8I5,$X"1,1 "396$KU(C:GUZX1 ,4S<['B( M%)(]MV%K[EO%OG]N51S"]>(S!<28"C @4H8?XJ'4&V^LLJVX'OK%2[)H(H)' M01BDO[F223,E[DGB@B6@L.B?I0#9,%HF4'C0'"7D:MIH*)A#+TS?DD%70K6% M4&O) I]I]!2-GE*$>M[70T]Y=$ZO:M8GZ+'BV>7%6EDB )6-70Z9G_G7OSB-))H M9BL3L_6;9K=Y),R;^I2#WDX5,J?K>W>GL/GG#I"L&=:(;9MM#392V-5IFZV6 MI=%&7I;*W],H$U5?O8""J&)+0Z]OMG:&PM%-*@5>4:O9-@>M7M&6])7@1H0" M>BS]^^)M*KF2JKQ6RE8T;8.FOB'*MEL/Y'(Y=I7]A1UG7VQ)/K$'9M?>NSWE MJ=D7NP-%V\_*<:U/E!2* MNM/D,,:1'P>BWD\>]YE4_U8_!_^1+4+CEAH)KC.=#>LK4Z@BI]\UQG@3RZ;9 M'CL>TVI:3]W1PK.*G#!CDF1//5I;U3W$,A]U\!!Q3J87IF$@JZDZ(5I"&KO= M:-&(L.#GD8-@&MU'KSKLL9P%8@8D6L+[P *X\D _(2ZA,04*II41>)8=L O6 M2\NS=^YY>CK/\OFXIL%_XB&]N'IIZ6ZN4AKK;65ISVI/4<,0?68.\B,+L>4! M;QYR.J=/G+DU-O[ 2OZW#L45)G9H7R;#.X M*SU\*'MV5\#5)0\P$#Q<.XPG$SQ1#X^M\@WLKPDGHJYDCB??>I&+3X#]P)D3 M:0-,Z03R;" \O6?]0LXLGA'9'KA[GZA(_/K!#WY0 YD8F[G^@+&T M6FWD!W@.>80%6+ F#>-O_@.>[P[41B]KEIQRCD<8$7UF;$'7TLPX_Y&CR7.'DRGV3"N)N*8+WH8"'XH#V''%] !Y70QO2=@6)^=>1&> MIX;%5;!7WXF$6(1=56*%DZIS.L9K[./9Z$HW .'I7"]F#)GWPT"1H-'2L<-T M/9Z\KDY$ YYA81@'5+]&#)'<%::WT8%@1,VTWEUQ KMGCBOJ5&'OX<$L1#W+ MYZ(N"&N2!"62Z^399^F3D!RR@HQJV]V8:M[D&<[4D3;U72QLPG'(EC@'T\[ M_U5OZKKVC//X#H8E!-D:H" W;7'4WJ_4^0'+]!'X:!3Y0"$VQZ5%?B.IE;1D M<33U ^<_RNY(FPWP[G@N^Q4S_&7AYNWR2!ZFG9\]S-18G61V3C@T!I^$5.)(%/X).WG$0=;^;'4;;75_ MPSA_3/>*WD?FNLM3"&GF>!0XJDVY5IS,.;7#T,QG. 2UA='4U/DT?Z2BYNK[U<7YY^-\XN+ MZ]^_?K_Z^IOQ[?KSU<65/._T\O;[U9?S[Y>W.YS=6B %HYK=08CXUMWN =HG M 6T?(4S+ 5N >6F!JU3=(S1T1N0;D>%-EI(\B5M:SG[8G3_&B(VUF>/2J5.?BQ^J_?X_1;XL$C 5J2OC 57]_%+J97*QS.L#V MB[#3;ISP1WDM\!U;3F'+A#\]XX(\KM&B<53NOO)VW+\?>";FD;?Y;/NMB!=9 M;Y6EK[ 9$"7$$6:]\7OC%DQR]>;M@IBMQU_/\1AHN!QX&<# M$$EO'9CY,8%IB/.6/9XY;EFX41(G)\A./1UA8BKAK%P9"1A1C.D/+GO0Z$1P MB>-'X1 )^+!B]K=M$SB6S)U=^"H7(,V_"32&[&I?]IT0-#CSKD0IG/;26E'WUW9SRQX#'\&% M=V!-$>D1PV?*QW?Y5L 2!UEV5/%7*KQT0ZN')+VF %AFOPM?6.UO'/+ZC>"X MNU#*1Q2B--71\F Y8B*,\*%(%V>.F@?.3\)XQ-0!4)6BH?B3A:&/F%? D$EC M;1KSQ@CFQ,'6XC]4)Z2\8N6!PP4AKR!R"K&SEWN,0K?)!NE70NL8=%2QT'^3 M/;1(00+'C4"0>&:G@[Z3!0=E&02R>*<(ZW#2&8$&Q0$B?@M"* M?!,EER].90PLQ8X]!V1 M!"^8.#\Q)H]_^D.021E]I^"0B):+!,!%'%C#N,5,0_KP_.NG'*8J,Q[AJIFYADU73*QTA'"5'U25.;X0 MI-]D!1ILQ() $?&Q5I^#@L;:A=P78+& !6O*YXTH"9<"&B@=F2BN4WI8 MFCG%I#IEJ-8_&Q-M NM@K1)9G@2A.($^?.0M5VEJQ%QWOTS/9>Y%E@CCX;_0 MP,,T(@7;U4A\W#1P#VD8'V.!ML&"2!8$A#ALRN6(5\GL9&;+DA3#M!F24>X\ M,#/T)T:14N:!2C5BKI8'RD F; ]X!*IUPYF@K(Y4KA,?EL&\%*@#M*V''.C, M%$GP(3FRRGJ&#,!!?DUHEV91!/X7S1-V.MQUT@T:U0Y*Z/J5P#LDP"?MF28. M'(F3IJL] 7>%DS'B,)G.^N<)IR+W5$DK)"$H+,R&,F%;$RB:I%>)Y7MG^W?B M$B,=UZH\=\'W1B_^@=+6:";!5A0'8CL?<]P%D!]1V-E,;%' 9H$#3"+RSVB! MHD6E$F5#8F3RO!3DB9QI$C%0""EC2HP1!ZBX01Y/-"TR2+<8Y=/#CB?J>V"1 M9<4),+U\IT"L1?F9NVS$R7\3M1/^.!Y);!V@V3TF/VGL&=E!%_B>,N!BF*&( M&N!(X='">Y81 GD)Y5U$(E7G);)YB=YA\A(=G9?0>0F=ESA(7J+=V)28P&4+ M?%N:_+7,,,.6AB2.F8$*#^,Y;H9)@E\%Q@6Z+=48RG@2?G@Q=?C$N/P)]AXEK:ZQ5!$+ M;^!.\5U*3_F=296@(]_#[5=&E]&RS3U7Q&OAB:*06H*=<2R $*9 M$>><)\V*D89'(9!"KDPEP>N%69$KB M>OA&S(Y23(\)OW'3346B*QK7LU@VA4?#()PU@FRAXKC-Q26IX6*GX32HO.(WDCKC\___8&]LMS>AAT86T_9D>)"VEQT,5_!TG!XH%%4H#('/Q+QLRIUPO#?PF+P><8_U-Q MP^0ERC$W996]*.+.]+$D_4;8YJ)R*G+G$WI%;ICRU:(R>0-1@4B;>7JC$?Y$ MU61AC/=O:9WVC=*P7]0"_"%E'%Y74:D^SU6JYRIUD>=66!:TXB<0?<-JGOX] MX:9_)U?)4@]AJ%Z/(G\(:B"M%\KH$#SN(!*V&ENOZ9/D[W;;FCIN"J/6\E0- M:4J"QWS/W703HF<(NPKW-,=U$B-?X/\<"!3X,(R!*.1C"A" Z;39BT(>Y_5U?!92$D00>P3JG_K58)F'CI=P M1?(])5%VL[:H-4KM'P$7+Q3M@;39J99+E5U,N7_*@X%F M:PDONTRE"R4U@RD:#6%-,BDURD3 #AH0@1N&\2D.<-&Q<=Q4YL/J&%+[D0U] MU U8.R;[O79G$VD[[V1<427;KLSR794"R7ZLG',@ BE+4D,YG;L[]/JPS"0M M%MBP 5#H1WC"B1._O?DO#L+;80NA\I*\,_*(C_-:2K(L=M2:(.@WZ3[=2)=* M9/6NTHV_7G;69F]YO5^YUBZ;2AY=X!$?J&\F,?H[RFM%M?,]%1NZW,%.R9F0 M:>Y-T;P?;[0J2#CR=E'^-$]E 3< MNXNP&D4J_65S4>2MT68 FHQ^$$W2*"7V4E['R(T$"2/7]*@>KCO)E'H7/ MJ(;T?!XXKM%J*CG XLGU3Y*E D/::+"J"\WBH^_2$^*YV.]R;)Y8R^EN MG0L%"0^:CR5H0=8&%VX-!N4PW$S!#-J6,URD]AL&,A'! _[GVY??C,^?OYFT M)6/A#(W!3[9*=:)/IM1@73Y"N0J/F&>E=\(OTC*CK?-E5=TI+G]BZ I-CXQ' M2^?\R(USE,MA/1:/)'M2M? MDW<;$A7O-J]E+:M8^OIPOV*,1=>C% O08?TT,_!KLIU?!B11MJ'0HUJ?+0D(1" IXZH,O#-?YP<6A?"LWF+MI4%VUE]-W@\-4[?5U MU9[6DD?5DM:27GPEL=J0V3J_^6Y<75$XQOYP_?UOES?&U==/US=?SK]?77_= M&__'MA[!_REYL:*UL5CQ,[\##?Y- $BJ..6[H=5-O\#O7M9E9$"T#G>/>:* MR,)WB1+SE!*R>H=J+M*:#V7JP\:+P9S]\:;L=H7Y[7PCPV%#LO%)- Y5E=S>%HK@V*;4_'D;.=>^PQQZE57 MG.R-TO2[%_ [![$[@*("2QA6\U*T^66J;S%<\;NHOY.Z?EOAV\=#V@C>_3JD M>\R^O K#&$3G6X+FN(YJ7R?RH:&$R 0XVG,4,3Q,GMP4'70&8F MN*#&)DA0B0EQ.%C0QU!!]X+]7#?^)^$_?>'&I,U: S:NSWJL4'U'[VC# >K/VV_-1^WWSZ)_>@;9:ZW.(R\ M(">";S5O=4+AUWB&]<7^A")UMV)O4Q;K6.W;HL06H7"^,0&K@?KN6SQTG1&V M"G@>J'BLB?E&>S"XO$@B-;F#XCAI7<*1?DF1QZH,-,BWN&Z5=$<$3M()L/$JXU.\(=O.6N75I>J[@JD*G!XS5^PY(MG[6#E/01^/[8]T"GPKW!J:Y5WL'53U-SVDMRFE4%QEZ?R7I@Z>UTA M."\=[*9VL';-?+!2&U[:!RN9#U9V;M/*H+C+4WDO3&0:/J79?3P%/!BK&K3G MN%XR_RDSFBU8O;$?8WX49Z6^Q0PV+BSU\(MO2LCC^P4=#TBG8QO?=;S_"=V@ MLOR>[_'-KZO65422]U30\-QC98O7V[LB^I:-Y7BWZ:D);#YW0=10=EWV8"X5 MI"RR!5&R4FE,-6UN H69*2DSY-W?N0HC (O9*/DV 1X:(B'(.(0 M0%?@'<[]TK$S"%5 &38J,5N( ]&C*?6S&E9SV#FU-G2OF@A4CX"95+D<+>:B M\B8W"($T&. MXBCYPQPMO(D'MBP%;C6K6PK.6>WAT MQ&I-:]5J[;_B40N)_.U?/]YJ59=I-F.5?\%#*6[9A$>+[)FIFEF>8)9N=9FE MLY%9Q,&"5VF!9G79Q'L.,970*,PQ@[SP3"."+BAR%T-W(,9<_I\[0 MB3;KD]?L"U^[ D5I%F\WCP".L4LK,/)H9U/SSRO7/P\:O69OU_IGJ]MH=CH' MJL7MM%H'*1#NPQ?H3KQ:6>_Q(DY2%QAVPWJ5TLK-LS\&[,$39__^X>&A >-LW/GW[\_!LP5-';[GXSL6O!^SB+WO6:VV MW7D/P[6L3J]CM^P6_-IN6N]9I]7I-.U._Y_\IVTUIM'LS2^WU,6A"D2- MT$-^8W@\BW%^97R6I]C2(3T.UJG&B]$/.N7A-KT)VU)%9XKPK4^L=UEJ,,R;FLI73XJ1UOQ<[EB3XH6C><$'G' MQCD.3O8G@YRFQS<+=$DZ!4C$K.11B WCQ'XGB'/R[5V./NMEK;LB:X,Z28>M MI6.?J6ECX#G&P(ZVP*!EV1UX.E@$G>[[,?_9DB; 6I7QZ^+T,WL(I17PA(#4!"MW7;C.FN(4#6]-JQ3^,=N:'5Q:'7QHO.CA,T3?>I:7SVFK]@L M?&"G6.M@M2Q4/5+W$*AK^X2].R)B&RWQ>[V\AUQ>6RXOHO0687F-"]0I"N@X MU+O6%KN6W+3LAJ7W*VW>'E6?)-$J3L4/8N4&S>Z*6&N#= ?1MII6X^KKK1;N M4BS=__WUYK-QY8%_AH"^1H.7B>''P^_U7+02F6;I,JE^W>%M7+>-&19DF%7$?) M!2! ?8Y45J?1:B,ATK(8/$L4V\8F/. 8:<&*&,=K&)\<5WR5[3!CH9&IK525 M;\LG3'_R@YG1/_T?XP0?8GSU&P9,\=2RVYWN.WS&A)Y-S6%X_^WEA4%]1*KJ MKB>J[G8Y_;5<'&%7B2,8GEDLF"+RZ:3@Y=-%Y(+#&A-K6,W3O].A'ZNHV=>C MR <.2%&SK<&@V3!.OKV3K\>&18;HJ:(SI+HLTJH2BV0**Y_/(VN0U:UF,7MSOH_Z(>OOHM MTULOSIK!L^!$E[LRL3+G*V4;Y_%K"[C E#?B^4P!/FH*2G<+ [I#)OT M]%9XS9 ;(4QY$:6[B.7D!E4C''O;]Q[E#57;9>C.DMUJ%Z>SJ M=UJ[=G9U[$:S?9B3+6 O;._6([;QN VKT6D>Y,"&M8T?W5*&!\Z_7-Y<79Q_ M-6ZO/WW_X_SFTC2NOEZ\5,!HZ1%69UTS3N _B-_MYT4ECE88^A$LOS/C"PM& M4QE96L(>3(M07FCJQYCUKXNS*L67WH?OC;\UC'/0IY[QT7_80B+::]DYKZE7 MT:.:JP!2A=88.:)@M_+%U.$3V&]A[Z6.O.O)Q!GAP6/8QQ=P/!G3B\2I%=\" MQQLY<^:N7OYN]80)K7>TWJFEWOD'2 F>N7?1,/X'SR[,P+_47?NL(4VJ@SXY M'@/] NI%*I5EK;-R@=8Z6NMHK2.TSJ_! E[\N0%>M.MN(1*M6BB@*"\35CMX4)T]J;P[3OA_YX 3^F MT'-D[5W=<^(X$G^?OT+'R\U5C8>/D$R2FLP6229[J4H&*F%NM^YE M2M@"M&,L5I(A[%]_+=D&@S]D!YCAUNS#3K#5'^I?M]1JR_+'7UXF+IH1+BCS MKFK-]XT:(I[-'.J-KFI?^W?6>>V73V_>?/R'9?U^_?2 ;IGM3X@GT0TG6!(' MS:D<(SDFZ#?&O],91CT7RR'C$\OZI,ENV'3!Z6@L4:O1:D?-HKO\LMUPVNU6 M^\P:.&<-JWW2.K$&K=:Y9;>;)Q>.W3@].S]_-[ILMP=X@$^:UEG[[-QJGYV> M6Q=G%^=6$Y\YYZW!H-'"+TPF&$'7/''Y(JYJ8RFGE_7Z?#Y_/S]Y MS_BHWFHTFO7?'Q^>==-:V-:EWO>UUB\#[D;M3^KJ]@ +$C7'$S'':^WA"AO* M.>;DO5G);5.+'6 M)3ER2187,2>0GB(18#K;3@4I&= MU%#@# _,QE+[N&HI(I,DVM>)*X7Z9:E?[U^$4ZL7E^H+:X3QM)3D.$T@/;Q2 M1H.89S7%PV_+(BNEWHL K3'TFJ$E*742!]L"F(1$2@03LL(%,1^/V*SND-H MD?C;;*[^2(DX['E,:GIU);PVG5)OR((+<$GYS67D/$]D& W!B=DD)4+U/Y>8 MVYRYAG"N3SF;$BXI$?&92#,8X#"7'__WMN M8[=LSX'$]MW7.+XB[\-]1)VKV@V#9+J'1Z"?NO[UZ3XOL=&25R01WXCSRAD_ M-?1_362M,G +:4JD2#_6-PDV6/F".%WOD_Y[,\A#XK!)#N&&C0K3K0=5*EEX M,;)EKH4]AWA #'\(YE)'+4.NL:NRA^H%V78,3Y9%N?__2I7.QC%,B38O2$L]=X0ESB/U$@\S@NI*-S@\7X MSF7SO4P *)*$-*2*HIS+Z8]]IQG?S+!? '!1T<>'<+(Y\F.;3/? MD]0;]<"*-BSSBB/].O9&K,_52HL*VV7"YP1^Q.4@$(1"23JJ5[+02AB*I%4( M[";C0*FQ9%,H37"=+$)4\@$Q;A4R/RWQ'9QD&JPX2V=41B?(,-9 MX(%;HB"1R\4$2;.Q"4F,G0J6B"$*.58(GL^8>S PB![A-VPR89Y.!XH#DT%O MA*2Y"4G$" $G%+ *4I,*@=&Q(?L2FEN)Z6:-RFCXUJ;AX^05LC7$/!&22C!" M"5NO41EM?9(8=V+D%;+ULV3V]VNL<]_)%/)37&X:SJ WVK^]:7_-R-*<4)Q5 MA;"XPY3_![L^8<,["NFI3;%[[PG)=06_1"B8&!G1.=U$1W%$FJ6:E)=,48QK MA8#2OOI$ICZWQ^"P)9!)4!JA.$L-%!3C42'#JX&!DS&,#3!:WWM@UE)/SI+$ M1O-_V#3_&A<4L*D0 O>>XT/(+Y[)J.2@E* TVCZQJHY8H(A'A0S_B/]@_,:E MY8R^1F4T>&)]K,E12%\A8]\P79,A7KGJTCJ9R=RMQ-IWC;Y"YG[V!X+\Z4,' M/L_@?R6FTPU"H\D3:]L5!Z195,CJKZJ%_J"2:Y'2Z\7%:;O](8'H%J57]#;Z MJTHE]V0EM:\J;24@SN1@1"]1\DBIR**W ;NRN+2RX7(S:)$DEF';"* M",5K,&N+ IM$8 $C61.),J I!>^BL+12X7(RCI MU9&4,F(5 3*4 V#/?VBQV@:^1M1#A1.$E'.!;HD:CH M'05QQ%DS?2(33-7*&-;%.@; -MV!2T>["N5B HR(%RJVJ*NA-!03AU;RCJ@7 M!^5;<^^X?VL>D?^QR(,E\6C$R4AMX YO[R#*\]@:$4X4Z](17I.Q;%-%6/.V MK98&LP@S(X2)"I]A*VPE84LO:>\FAWX%;R.HB:IA=A']F$T;<;[&@MKIMW:$ M=@$)1LP31JAU. M6(A.K*GX*J#)O5H=SP@'HDY4JC7J@UH%MXQ6IBC$=)$.7]M>\HQ M5C-@#*>M(6<393V] =L'MLLS6+:"M#!W([R)"NX&O*$DI$2AN*RUXV0J#O:- MS]41.ATAB!38<\+?#Q0/J$O5@8%[\H-="#:Z2.XKK>KM@D H"K303_&C2S%% MCAZTZ4'I.]2B2!_E\H5Y9#)UV8) SLZ)+1GO@',X/1=[ M'5O2&96+TOZT7S6,WE7XA5TK2/+#.Z%6**;6.Q13#$6:(:V:.@_>>X]*PG(YE[6W2R^2G$U0E=@W^QQ%9:#:?CO+@'-9FE$ M,U'Z2D,S_+/R4&Z\AEM^N$RG-X!TVDB4L3;?YOV[H_&QOOZ!B>#WVDX'E5@^F?U/2W,ZYJZ6T]ZKIJ M%TK45G^LZ!)6BI0Y?7W^O>,'J\8:$@"+6H>J7[]RYD^O:D%S*LFDAH+C\I/S(:'T1'U(>E'-\EW6'L MT<_J;>;!;H8[1[VL=O3\KO#1[". M)"KK)-'=>$^'V!7+KA8EWSFW:U5>.#^JJS2";NTY5CPO/CM0CE_H*W62)ZKWU!/5 5P!G (DH) M4&?\4B?$H\^Q)X:$<^*L$L"U%IENOPO698P4W!L$&_RO:C;PI;*4:X![PIS+ M%X6&/7\Z=11C.$7V!!5SW,T2J7,2R15/@%Z/] MZ3&^O9.&.Y'[8\B\U('G>XR'I*C#C8_X\4U]\B*O769_S[1-1NM]AH&,Q!3I MS6]$?=@3@)D!%"/RQ5=AV@W.U1?WGNWZZD.BX0RGZA[JQ/L9=G61*]AFDMGW MG?#>5R %2A2PT!/!RR?OW>%7SZ$B_'#F$:X9(JTU#[%WRXHVEV&GVSTZ0\G]M!SM;^ M1)7\L$HCP9]A@2$ZG.#L0=9(5Z+' M);JFUKDCPHOT3"= ZLNG0;*#U;OXS\S54H2AT%.$]"#*)=KFQ!$JVIYA$H=Q MZQ%+GT.&#-@06_U%B8 .J0$L>S LR>9@9\_@TT#=N4>X&-,I#$FVJE^.LB?, M'(K]N/#4+S8SWI(I)S8-J_53E^BUCN=T)N"8]*\HXP\'6+B1OFLFL^,[XW^X MSK!1"GR P5K1B0(SV2;!3Y^L/@N;LSD I?*.+TP^^X,_B"W[K.M+Y80J,.\] MATR"(T@T>BZF$P%X^I[L#C^KC\A#+L.#CRS=,?X$4O0G8;-"8X\B#W9"O&43 MM5?,SI\A-EL=1H5E:6JUTE^] M&1P?I'*=AGP=LM0J>NL=5"IA=LQ_2GKR2# M5!V[FN$RE4\=R]:J(TMG_S=SG0&VO\,<.:,B?TC=AZR#C10(9T)'7GZ@;#0Z MC#@)7_"BH(AVTY7WJER/Y3UZR:?;D[<731F"E^Y@J@Y>@\I')J/Q0:2U*0NK M\/B&OXAS[T!CF'&4EL$6WG %[T!G8AMXX9X_@8MK35:+><:<.?2US.)N?SJ\ M/LCWFT)M7V6&7.J60>?T6G$ &06=QHK/>RQOFP0?;GE&/]@+]13&I#6K]4_/ M6#?V_NG-UO[(%_(+*"D)\?IS(%C\EW#6GS/#4ZY7\3J,V>89&& M\:FIOWDTA]&O1 6U1+VA .GAQF>)-"^9T 5[-G:10F;S/H"M'ZL-.1EGXIMW M\F02'M!>GMC)1-W$>4?+#7GF)Y:E^1S,L\R4B3JJ?.=[NIGP![JQWB\HP/4F M^-.;_P%02P,$% @ 2V!A6+S(1,QW'P ID0! !8 !A;7-W82TR,#(T M,#$S,5]C86PN>&UL[7UKDULWCO;W^15^LU]?C'F_3$UFR[&3*5=E8I>=[.PW M%4B"MC9JR2NI?9E?OZ#4[?355DL\ZM/)5,5QN_NTSD/@(0B0(/#7__QX,GOT MGI:KZ6+^[3?RS^*;1S3/BS*=O_GVFU]^_@'"-__YMS_]Z:__#^"_OWOUXZ-G MBWQZ0O/UHZ=+PC651Q^FZ[>/UF_IT3\7RU^G[_'1RQFNZV)Y O"WS:\]7;S[ MM)R^>;M^I(0RYX^=_W3Y%R.*,:GGQ]=36]Z MD#]6/O[O?_SX.K^E$X3I?+7&>6XO6$W_LMI\\\=%QO5&ZE_%]>C6)]J_X/PQ M:-\"J4#+/W]7WHEGJP6=?T!E_3GO#AY MW!YY_'0Q+S1?4>$O5HO9M#15?X>S-H;7;XG6JU_F>%JF_%T>TN85ZT_OZ-MO M5M.3=S,Z_][;)=5OO^$7?$!HRA=RB^P_[O+YCW\;1L99/IUMI/8C__OL+0WQ M<".BCVOB7]U*\QS(;)$O/31KNEPLSW]SAHEFF^].3E?P!O'=Y,O M8$(H_9AFZ]7Y=YK,]4;>MZ/8BG?_<3W)>7$Z7Z]>XB=,,SH?&WE72"<-/B0) M!D.$:$W@R6NS3T8(:ZGSV&Y&8=7GRG3WQ>'5ZY[VBT_$ M1F;6)M8-(S7)IV*\@104CY1LA)1R@.2DCQ+1!C*=&?%54+N00SU,> M/)N^G[(=+E=)FU6JQ@3FJU*>5_=B(&@BR++J%'(I1>O.[+@%RBZF[Y_,\.VVQ*W\W,_[I M_)3*BW>TW,CO'+0PE216A%I" B,3AY*"(KB$P;KJCQ, MJNLH#C?%)R>+^>9S_PMGIS2)A,([7A"49/_09&TA1!\ L\7L@S&9^IO=RQC& M%,$=J/?K)O8 <7$JY.EY\VP]T2]\S&"2>E-A:D\+Q@%VS[_88AR1JLSYY,Z+VDW(;ECA$> M/"1>=)'_$"[[DWFY8:BI9%N5%E"0O4>C,W+D*1.(6&,[]ZFFBN%\\ALQ=1SS MQ'N52RP*(J)B#]EQ8"TX;*),F&JAD-6 >_UC M :TH/-^\@+;=!C7'8&MU)83>1R%?X_)H=KK[,^! !7344@7!B41@,&<(I!B?2$YG[T7$WJ'B%^",R3<:E!J]5-(O\%JM M:/W;>8PWO*S'"MH)PQ#8JX]*(]@B'(,P*MK>NU*7 !S,>%R];7+EOYJRWN-L M(^GU4UPN/[&DM]X'.QAT:>C%DJ""D2L3^C@LB]N;\+L#$MD?OS MXAKEN^NDWTKY=K%<_TS+D^?S][3:3LM)"HYTJ03%)%ZS'?NFT3K)7SD1B.,4 M*[IOHMV 8TRK93\R'"SQ?H;O+'/A%?MB3,HTHY]H_7E#5U%0B@S8%J084UT+ M>F0[@Q))1V,-]CX*_A*>,2V/_;C030/=./'+G%?^V28_:W/L= ':I,14I=<* M),J6^\>N?$2K ;,DZ6RP0LO.E/@"G#&="_=C1"_Y=R/$RR6]PVGY_N.[EK?' MJ]CFT/KR@,F5XH2K8'UDZX7(,5[6#I0F85!9@:&WS[0#K#$="OX_7;:%_,W5YU\33P=M?6 KL1V %0@!>L ;2DU MB<(_ZKZY?AW&^**J@W1]J* [.DH+MHSK3R]G.%_SNMPB_7<-#[OTDQAR2K6R M+Y\36\;*5IG-,X+..=6VF2:H]W[+E_",+YHZB /=1-]OWWF;*3#]5_/D3]Z= MKFGY^NPR3,.4K)#:IY91DMDDH13\5>)AIYBMR46K_FF47T0TOF#J($)T%'\W M2OQ]L2@?.+:;N$HM(R^!DH7 **H0(Q5 HXU!445%UUGYY^\>7TATD)KW$FDW MA3Z?KW'^9LJ1^78HS*SO/YXYS)^1!RRH-Y[ M)KO@&E\03[/U]:FEN C%)D8BM(94#-S!5LADTK2Q?4^ MC+X1R"XT\ ^'!H<+>XA,FTG!4@BQ\AATN]UC%:2B'7B!,:J,6L?>:9NW9IWL MR> +GW=!LK5BD@DY\D\N@Y$^02A>08VB2J=Y [L=S9ABV'VU_[4+0GO* M?@A6?XZN/3]F701;FU4-[=32>0R=9Y[MT YW)=FJ=./B]7J!YY0 M-VXW-Z?N1?T9/_*KS]ZZ03 QSJ(F]N8(:VP!OF._G^41G$?MV0S6U-N9.@#N MF):I'KRZ[HH?1Y,=P[B+@+?Y:*285L3A:=9;:T+Y48_Z_5RFD[7[<3_YT5S^%HFP&+& M;WC#82XM:;6>1*.\XW@(K$RYA322W4!V_K*/G@21+*5W%8]A1C*\?+^CNEC2 M]CDV.;3Z_N-ZB3P#IG-R-E*KD 7[ M7D<7\M[#&=.Z,X)9<7=[.(\,H3(021;MW) 2; M01_!94\YU\C"ZGWT< N4.RY1PU[[&BTE#]-@O].+)8OFY7+1 ,B<+"NY@O#1 M@=&25U)?>7@D,F(6-<7>_L^%UQ]^>?8]L3MZKN:KM34^[QNW?43^K[ ")H0B M^LJ!MY?9MCC>0RBY@DNN1G0^!.J=9K('S#&9^'WY[;#:ZGC3:,5!33ML MV-R9H>7[::;5Z\6L3+3D!2 Y ZJXMFT3/23!R*3/UF=ILY/]+QK=AF945K<7 M2SH)?R"W_\M!\"01.P 9#?@0!1C)/D*JWD&ADI16'HU)][A_<7BMN1L^O:UJ M[=!MOP%](XV]YA.3$?: M72]A-[1..Y8ZO '*#H)Z=KILOMY;7-&+T_5+6DX7Y4H(,'&IZH3*@&P7=HSU M!4++OXW1DDK.:NQ^C#O@<,:T972_3+X'>@S+][_C='YA.)L,[UMFZ=5!1$G. M4.%):VS@:(,7Z."*!E)>.9ZS%-Q1#/'^0QA3LN/]\OI(-.B7/+-%,W]S%@&O M)I0XU+760*D2V;6O"5(VFF-?+"JP]UBZ%[2^!N+P '1%+)QV(_@91S>SQ295 M]>S3)\E)EX/((&7+5KIXP23"(>KU,2 M(3,[JL"F44 H,H+" M8HW+*AC1N\3DTB;[G^C=KT.P/TL. M23R^DX;&G@S*04GD/P6*:\=JM59(K?]&X 5%5QZG\KW3"XZ1#'J__L10O+P7 MK???D+\@FT2Q6)4)A)/ME (C1"(%I:"-O*B%''OO,'PUR#DLOZUH9]$T:^"" MX>4R68C-3/!@?(@V8NY^H>36_+:1;+COJ>]K.VA[2GG $R55M(Y))6 W*#", MRFZ7-:WX,,=X5(0WU'L7XRLG2O>)_+ZO,;::O3_,%A^&OL5XPWN. M=(GQ:R/L=(>Q%3;E-_'D;]TORW>??F%,S^>?V?$DKZ?OM[=F8W(ZAB#!*M7" ME6 AN2 @>LDDU$8)W3OE8'=T'<*B'=]TDZLPP1JSHZP!C?=@>)V'X'6$0IET MU)I<]V[5AR$>TW(V$ >O6KPCJKACP:J= -\<5DU0YB!:_9V@!(=37A%@B &R MS)9=YMJZ4/;.<#X$\,@BC6.0\G@*[KF#=!/J[9;J94F5C'"E=[OBW=$-,3=O>,TMJN-@4!:#":C&"H:2 59EAL2N6Q9!2Q;. M$>;FSH ?P()Q* -WF9O#*/@>YN:-:UQQ66"VD0U(8GLB1(8H44 MTF"NPAK; M.^HZ#/$#6#%ZL_*(*AX++9,J''YB*]!36%R"/,36!U9ZAZ:4&JT;,RWO+B]^ M;28J9UOFFU>N3Y?THGYWNIK.VXTZ5J0(4N6H..1O>^4^Y'9ZE,%C]#7I7)SO M?3]I!U@/?%D_R_I],E_09HDCE^#VR* MJ;:.'8&%%)R(+:I'G4Q6_9-M>N[F[2ZOS9;XI<7J-E%?4VY M?<4O_GF)[32TW7\2UK;6LV/3K8GT%(IAA!4UM<)R'G@E MO+]3*N9"#")!2 M:RN*OD),K@ /TUEVU%5"NZM7]=6WW;'AR.^.((-H9< %[]P"GI7=FE D4:41 M$"I),%$5AI4=Z(P62^*0JWMGSZ^"&E/ODE&M8H;H9('\]HXUF MYN7B[1@UUPC:D=RKTZYYU5>#]U MU7BURA2"@,(?!*:-'J,IH*P(Y%,K_3:>NFHWDRW\CI?&P75ZG))*+^9?J:3S M&;M0$AW:LQ,8DUE(Z&2 &'*4U?)8NCOM?9#OPM3X!V#J/?"@7V695@/_.UQM M&R)R=+NUXB):(XD#DXRE@%$..42I!G2B+$I-6=K>Z:0W(]EIRU7\_M?>#GH: MZ :G4,%)Q\%)Z\0!)C%C@^*XMAJJB:44B^[MLWWA!N.AX'==.-+KO MP_S[B1\/5&)/?VNSD/Y]N3A]]]-BO>.Z.S%8HE%1@@J&0Q)BQ(%G!W@IG<#D MLI2]%[,]H>Y$PC_"5OPQ5'T$L_<2/[7ITF+DG)>,_6(30"-2CJS;7*"UC-ST/G8#RPW2.\WPE%]AB4!$- M)&$V%2U;)7Q2["]X[XRF*$WO.@&[H^N5^/7#8OF*WITN\Z8R MY%\G-5FV"L5"5<0^='"M?J-DPZ$C6I1HA>A]3OMU5*.J'S\0F6Y+ZNJDJ^[) M@RV ;P*8E]4DQF@JLAU)U( H[R#9;"&'%)SBE4;8WILV-\!X" FH0[%D7VWT MH\7%1*C&SA?O-FO,]Q]IF:<\]HFI$8/+NL7DDH<9+;!W7$"E(&-*N58[9(;\ MC:#&5#;K6(SIJJBN5VO;GY:J^AYGM(FP5NOE-*^I;%*FY^7R-RX\N>TL<-TC M.:L8\_U'-I[S-_0*U[1MOC%!66HBK5I1.9XC!@FBK!EJ"22Q>!%D[V7NN",\ M7L[NA%1%&SV!R*UPFN+P-X9(D"NUR]E59]V[MLV^E0CN-TMUQ!S?_W;^G=1_ M'QZ]+XB$M:%*"8RHEATD%4%ZK;0V,I9\I$(97_7H[S?3]>'3\U#UW\>E?)>- M<]8@H'3$8FB;- (M8$ JTDO?_P!^WTOY]^L?/7QZ'JK^@A ?A9EGAVS M3?/-/WI&:YS.5I?A[5CK:>^7]2GXU&>LG:H^76W]OH$QD6RW5$$)BKG&ZZH@ M2,%4X._;)+66I?M.U(U #K6%-W[HL]87HI5OY'B#G0=E32;P25@PI42(VK7# M.J0D' M!]4Z?_!JF,7F-A[/CJGGJJI%N:^:-J'Z9EXNX5/&:HU?(7C,NK1,@ M&0U5:N<$8@GV*$RYA&I,+MR1N+*_5H9)NWCRGFWSMA#LA?W1MXL9"W^UE8') M4015,CC7BBBZP$LL:82:E:A%*T=^@"#U+A"[2N3V+,'K0)I:+\G*L>LC4TS@ M:FI]>EP%1,TC-PK<8^@^9$&4A-YU%"*7W>_P=35 M\0X:3B7M-:G$@3:']ZW\A89(FSZQ&56)/H;:VP$8))SZ^F3AUVW>M'GG1)!U MQ6(&#.U^4TM30PP%%.:HE \9:8#+:7>!.*8E^W#NW+VSP?[ZNI+TG^KLA^F(1?A@21WX$J] MO?#]S\T\H_*$7X=OZ*?3DT3+%W4+YO/6_ 6?\\)^_MFX)E1]#DE(D"6TG@MM M:\,XMIM$, M(1:"*BU)[ZV-NO?*?B> 8UC7[X=I5TWS<'KMY@'<"/%L[-=P/BG_<[JMWS&Q MI9H8.V)K_U2\R,I4TSW@WA/J&%;_$=.QLZZ')69+=[P9[D14 M5RI:"Z56 O9@V)-.EEI#:6&$+^8L)YK]%)2@%@RX_4U0M!8>65SQ7B?*P6Y(^\.P3&&E>#XA#N:YN[A MC.]\0CB*T6),H! -&&>:='AI)%T0T18?_ "-G^X&\M@GGUF&JBJOU5(7]@\" M.8BY- *IZ#W5&.H 75_V/_E\*&=V^W#NBX/2YD"-C'$/[[MK.U$_?UAL?G)/ M&WB[ KK'W;N]9-:O4^4=":^M%;LS[T6@$:43*F4F,:H&W,N-=F M)ZM-10S*?_HO*\<"0^K=--I8Q-Z?3SGD!_7RS*A^EL]F1^L7 &/W-Z0H4I M/:DE:>&,85>O]7"QR@'6&*%F&V2IWJ30NU_#0$,YS/KM">I&,)@VM!Z564)P?!7EIE>JB..8WL?L0PTE%&Y*V.:(6.BT.CG@Q.U ML!!Y"#%',)6'%51+IXI968F^)M4[BCO*?+A?"?^TF.?3Y9)_YZ*L$PDE6@'/ M&IUC0]I:)Y;61BLQNC6NJB2J" # MM82JD@ Q(U3#+UM8T]@CO?FW0\_D:YV^F_/!JXB751!SE^-!NA,40(=3$ M/!;:9E$T7>N?-2KC8VE- MDR-80N<< \NJ>S?!.VSC'"=S]:%0<"^MC=FQ.^NNZ26F*G("G5I%[^891*,X MJ(\U*Z5J+JIWMO5@@QE#;:F'Q>IQ\&J4T^3VCO<\CH!>./!"EE8$GT.[=D,\ M!8'&!2)3>I=1.LK [MA5]M_39X1\&^54NF09?NMRLIK$(@B)94^AMDZ]SD'0 M'*JVDXUHO-59]JY4>(QQW;'[[K\GTOC8-LIYM.F*_MMVX]E*6Z-UF^M3,=LF M=PJ +'"HH@I=?!&Z>X;ZX(,:0Z_A/^X,.IQGHYP^9Q5=+]QZFI3DJT!I0.=V M]P6)K8$L!M HKW.I@6SOK/-A1S2&5LI_W(ES(,,&SM![-MT4"UZ?+FEUED%8 M;ZWK<4B2WEXOZI.G=_@8.Z7JW:F]LG/><8BQ;^O9.O#:&I,^@-I,ZV@!1> NE'5P5M"ZIWG6 M]@(ZJE92@]%NIZ;,774Z;!_Q'03U7;L60]L'F[AB,I9R:6TI6ATM636$UI;" M%=M*:&#VKG=23B?H8]CN'P=#!U;[Z#CKA I*)065VB4^LAK2QAMAORCGRF%O MZIU8.0AG.TEPTS^AW47_8;%L8%J+T]_:FUX5GI$VYHP:*L^]T7LXZE$M1_=!XYWLP'!$&*8=\^>8Y\;1O*+WQ-^8,)"22LK@"R5> M7B6+*9&'+&1JI9^L-KWK=]T=Y9@6HY'PO-1<4U2=]];++,8EY%>X=SY'_$";T**J_#ZX^7:Q:L].V ME[1ZO9B5":I0C=69O;S*D\O)U@K3>A ,M4;IB]*]LUP/@'O'0]M_<[67ZH^X M67?I1 OG-Z32#K^/UP-#_RV^[I+IM/NW!;39!=F9C%OH$V-+ULE[(%1L+XU MB((#3Z4(K?6FNNXU6/='>T0[_7))[W#:]MTWQU-;S.="T[E$(V,%H9O!2$% M#$5OZIWF(&T@&F!KI@?T,20#'YFU!UCL;B2X%T]C>SITI8_D1%N*@1<>D)OF MZI+E%Q6UYM@1I!E23O,440,0:>:Q)O-\TVC-DX)GR/3 M6;8,0L=?8:X6E$<3@L(!4NUV!C<^1_)0WERU5,/HJ=O*^KD4UA<*:ZID,50OH%;=9. *!)DD%%TE6:V)C.D]=W;$-CZ_KC>)!M%2QZY9 M;6_CY#9>.^9M1&9SD:8U9A >0KN IFHIWE5KH^]]8_#+B,;G/_7F2T>-[.CO MG'V__2_ABO[VI_\#4$L#!!0 ( $M@85C0%#2\<5H #@!! 6 86US M=V$M,C R-# Q,S%?9&5F+GAM;.R]:7=;N9(M^+U^1?9]7SMN8AYJ5=5;'C+S M>;V\:;?M6_6ZOW!A"%BL2Y$JDG+:]>L[0%(S*7' (2E:-3AEB=;9B+T/$ $$ M(O[E?WX['_ST%<>3_FCXKW_A?V5_^0F':93[PR__^I>_?_X5W%_^Y[_]TS_] MR_\%\']>?_S]I[>C='F.P^E/;\88IIA_^K,_/?MI>H8__<=H_(_^U_#3AT&8 MEM'X'.#?9O_LS>CB^[C_Y6SZDV!"77WLZJ?C?U8L*R64@9@- R6%A"B$@Z2X M]#DQ;9S[O[_\LU(QQ" Y&&4<**,=>.,=\&"R$S$R$<3LEP[ZPW_\<_TCA@G^ M1,,;3F9__=>_G$VG%__\\\]__OGG7[_%\>"OH_&7GP5C\N>K3_]E\?%O#S[_ MIYQ]FGOO?Y[]]/JCD_ZR#]*OY3__G[_]_BF=X7F _G R#<-T\P!Z?)Y>_\/; M:/3/\Q_21R?]?Y[,_OWOHQ2F,X*>',)/*S]1_P97'X/Z+> ")/_KMTG^R[_] MTT\_S2T7QFD\&N!'+#\MOOS[QWV1C+2O170ZZ@=(7S/^IO^WEG3&<$9)PN(P)]%X=5X@TQ+OOM MNV.^_EV0L83+P;0AXH>_NRG>T7GHMS3P@U_= .WL%\$YGD<PGD% M\C["^BO#^614IG^&,?XUC2,BSR0B^< LJIPP^>@1,I@3N@RG./N1I MX*C\S)FT!AIB;.* M0_39@"E9,^VMC(TF^#(>G7? Y734V)1SSF@ M?_EI-,XX)O^&?C1[=?\Y#483S/_ZE^GX$F^^.1I.2=V_#+ ^FUX[_%*_V%83 MEQ/X$L)%[].4/*7ZB]X,PF3ROGR:CM(_7GWK3WI<%/)WR'%Q(0OR?:R%R)D% MZZ2-7J 15CTBC!(F<4;6XDES=>!@.KGZSHU,G@334"N/++Q/:F<+FD==F'N9 M>';4P6T\;VO<\@49">(BFH0)6NC$W_#>F:]2)K?>C A-#UDK1M.A) MZ,H;#DYJ36I/D:-E7C#^3-F_XQ0>D/Q-3-P%Z:/S\]%PANO5WV9>8H]A2;EX M"L$\9E!.T]*8K8"0.2(%O=+JQYR"K4A_@*(EZ,[\K-?:IW,^Q#JEE# MJE\O$*E8&%/!0(XE@$JHP$OE0446B]=6").[H_KUZ5&]C6$;OM6W79?/]%ER M?Z= .J.!J6,PB)YBGOK- \+@DMMW#PZ]/V1V3G[OW&QFOXOM[&\?]< MAO$4QX/O'_%B-)[V9/3*<1W!6T6ZRDBS!R.%<4/_P^DG$D,3/N\]^(2HW<6D M';VJ'W#<'^5?AODM.1T];F-!E0*XE K-'86&ZFB J?#">"@&M6_"\9W'GA## MVYOS(;^BR50\#N1UUD$N-%<<^0+,!##5?531&(HB982LM'.B!!W48W[U!M/R MO2>?$,L[&?4AT7(7HG\93OO3[[_V!_C'Y6S]]TKD%)P'%C0C+,Z1J^<36#0V ML9))@+MMK-U_X@D0NY,1'Q*J=B?T(W[I3Z:DL^D?X9S\@1A%HDF#QA3(E1.N M0*2(#TK"9'41V2;3@-2[3ST98G[DOANFT9@FCMD@9^'^F]'E<#K^ M_F:4L1>S%D$* =R[&N4GFDPXUR1%%EQF,JLD&W#]*(B3H;Z=J1\JP>RNA,_A MV[M,(^^7_OPX>S'_L**S"<5"R9$DJK2!(%.B07ON$E)DEV(##:QX_,FPW\*\ M#WFWN_/^*N? M#-^[FO4AUZX9UV_HR_?CSZ,_ASWDQG)-\PSG1M7HGD$L*D/BD0(%GBCH=^V8 MOGGPJ?&\I4D?LNR;L3Q;8MZ//XQ'7_O#A+UDDY6V2& %$R@O&'B3).12$B73=D M%+YZ![1NN)C 18V:D'BO=]L.N__$$V!S)R,N872G_:]/F"[')"\NXN?^=( ] M9IRW,G (AI.\&#/@"FH(PI+"-#>XXP;G_2>> *,[&7$)HSMM@'T>AYIJ_^G[ M>1P->N3$">U< <-KJ):5)\=.TY21A9!8*$@7NQU)W'G<"7"YO?F6$+G39M>5 MJG[YEL["\ O.-M^$0,^-"9!YKLHRIIYL*M"&9I$8, J]6Y2[[*DG0.O.QES" M;H,-K#>7XS$-=7X.4F5'+OKEI">R8!B+AUSOHRA=CXW?4 C^933^WG-)*%.8AV*15,@T MX4E*D0^8L^+99VU+HW/&ZX>>#,?;FW()M0UVKSZ=A\'@]>6$AC>9]*0D]%J3 M V_JL4BT%IPFJ8EL77+91"UW\[F6//1DJ-W>E$M20!IL4?URCN,OM'C\-A[] M.3U[,SJ_",/O/>^4,XS1R# '6D/00- Q .ZF74+Y M3KM4"PF>X6!P!<=)IHMV$CS3I$"6%/A@ S#-N#56*(KN6KS,MYYY,@1O;<@E MO.ZT;[7P!V?9OK/HFZQGL]96)1,N:]!Y\ N2U,NH3FG;; [F*:9P?/44D7 M8]*>062NAG.6O(2H J00N65"FR!VBY57/OKDJ-[6K$O(;K$C1KC&8?!NF/'; M_\;OO4!3"F/60Y[=P@E<$2(:J$U2"<45RJQ;K,MW'WL").]NSB4$[[3YM=B* MN9E@KA+]H^)>.Y4 M8\U@*^#K>G"I9YU4OSNRH[GP2N>? (T-S'J$J87&U[_ M\O,]TQ#B?^Q2C(2$.)Q@IB\FHT$_UX)/K\.@5C*B: &GD[\/PV7NTW?O8EN[ M7,GZO[]109,M![1CR9,'MYUOE!2#MBF27Y:DKOO;3(+#@)!C%D9R8V5Y+#UN MIPH0URB:%;B8%V_0%!MX1\.A<=&T52*-24@%.81DK)/)FL>VU'8:TU[*GC3B M/RE3@I-BYY@@XG(09%#"L%'0S-ZG+((R$J 4QPQ9MDO->/W>TYH2(G&W'S M=)&330R[GR(G6@CG1'3@N=%UE+2N:9Z!%U9\M(QK^X,4.6E$]3:&[>"M?C69 M4&#T*M9+I6G:<]D8KD0 )0LY+;J(NL,8 +FS12M?F'LLVVD;FN\BV#_%C=W\ M'0S:P9L\1[/8F+@&A,'.(SB//2=73_$Y8O@=D_V3OPLY2 MHG+=)B=B+Q_A3?G($.9/+I;#2>?L;Q^;OA M5YQ,Z^PWZ2GR37-@%C0OM7I7Y. C:N"1OLF0J9";ERM=@N,41+"S?1O6T+D> M94JU7L#D(R8D6<8!_H'3^X/.6AM=:W1QD22%+#;5,@*6G!MR:X0C>>;'4B^V M6AG6P'4*FFAN_X;E=];!V"M)HE16 8;J_2J)=;%48&Q1.E"DPGESK^$1/ ?0 M1',&-Y#(1N;O8,GX^S#V!X/9XAGW_Y=E'/WLCS>3\]P_&=Z;.7O0O1Y@B" M8]T*KX4\HW1@462%.4OI'TO1W48?:\ ZA46EM?4;5@"[.^CWY6U_:=Q*G;H#T%.>V)JX:ER);:HA<-DC.M14V6LJ"UJUD[\2=&-+5,OW\8!!+R,-=-E(N*C%RJ'M=":>0:LJY+6:T- M[DB ),4<91+UGO]C&8C;.1*K\3QK[IL9NH,X]$VXZ$_#H/_?U>4]O[B\5C09D3\=*#0"4Z16U@E=6/O]R\<0/6LA-#1V!^[C;Z-1 M_I."GU[Q(00T A@SLQ+4"4(R-9)BQ>10N!6M3R"OGOVLZ=W*@!UX:.^&TS#\ MTJ>0=3XXTM8OWQ:>Y37&@"I)] Y8YJ:.EL2F48/Q44OR+F/BCZ4?;T/R.KB> MM0":&[X#_^Y6V/K':)BNG,X2T!IY?"N19 MT[^[:1O6C;T[OEZ45J3 ,RTFM8!:O9(:G+=0DN8\%J.0M4X;G3_Y63.ZA?$: MEH.]CAWZ(?8'9#6O)02(D_2)8_*QN8;>$N1'%00.W&UXFQQ!T-W0/\OYQ>#T7?$CSBHM[4> MCKUGHLC&!IH8O:N]8FT&SZ4'3:(W1")JUCHB>!+4R8BBK?D[V U\V__:SSC, M#V3+I-=164"GR8?">J,R101MG7>&91G#8\7(MU'%"B@GHX46INY@*W 6OBP1 M9K)*2RUJPQM1"T9:A*#H*XPY*"-T%LV]RA503D8!+4S=P0[@5=+#?_2G9V\N M)]/1^0W*J\*2/73D+-<:"5K6K@DR"0@I:8J($O.6A^Q]ZUNIZ^ Z&6TT)Z&# M'<9;0]_J"#OXX%@69!I),9@J%)A[1Z,IR"1+2:KX:('F'2.1YY%ST)&\]DE= M%\?3#R=-9GQ4M:!Q81EK5,]KGVH+69M2DWV5:[Z3?<)+TXX&[F '\_YB>6MO ME59+6BA9@,!J5SZ9&3@G(R2FK0V(J-)C!9%:N":'W+O>RXY&(_-W$++< M63 M"C$:0[ZSK0=M)I#GQ+V!E .713HA2^LPY=;C3Y3Z;0W<07#RR BMI>=GJ:#P M8&AZJNT*+,U1'+VT,EOI'NV,MEU%C./9Y]Z+$AJ9OY.8Y;KLYOS"%]=%(:,E MCQP1FI28+.!0*)#&26X$(QNTSERZC^$0AQUM^%EZBWI+XW:QAYWSS)!A\"'T M\[OA(J'F%LR>BX%IYR*8>2*F"^!8'2[]E=O(LWBTB\16^]E/HCH9030FH .G MX"-.R3Z8?PGC(<4RDU7X^\P <^G.9S>9?=%"!W"LO)R*&)L3OP&QX.M^>LB+FX6M%9"0J;E0.G5 %-WI$2 M7+EDNW MO .C6+0ATYQ4FE?56@WG1*.(5@1TNZ.]=/P]I; PRRPYO2&0=HV!&&P&EY5D M*CDO38>[C$LQG:A*FE*Q<@OZ<#5^/X2Z>7:&TWX*@[LXVQ?\O?NP?5?_?62H MW94"YL*F*#32VI+)L4"3(92,4)(M7CO)1'JLF>M1E@(.BBNI @?M:6)4VCN( M)CK@)28FO1.(K5/WCJ84\"9\/E$*>!,S'G\I8&$URP7)B?*.DP>=:0HTT4)Q MC,9A=1"Y=3&(8R\%O!'!:Y<"WL30^RD"NPZB'[84\$9T/5T-=AM;[T<%&+.@ MF"E"T99\9E\8N"("6.D]2L8DTZT/O8Z^%'!C\CWDB[59-\504HC2O%3'D98"WHB;ITL!;V+8_90"3L@C"=B"$)I6,Z,*A%PO MB//DL*1BK'ZL5]L)E0)N1/4VANWB&&LP&/U9PZ5?1^.WH\LX+9>#AY6MKILX M)@"/XFK7+D%"=W1T46?X]G'*Q1A3 M?Y:>1U\/<&;U87YU7EN___?L^RMK3_0XAJ)T5&"QY)IK',$Y]&"RMXR[4JQM MG8/9"OOS5]PA2.RD"/+*@A:WAGA[*#UCN'2&5ME4^UHKSLEL@?X:(TO,J*BT M:WWXNCG*9R^PCHGIX-S^UVIB_+W_%?/],@JK$&N%,EBIP5%H3XAUK*G('#@K M#+61TJO6^Q^;HWSV4NJ8F"YJ&MUDHWP(X_?CF4'R[-3Y [T'M3ESSY/WR+-+ MX/7, ^0&@B4#I1@(H_ F[31B<]^E^=3D]&XWK5-GC/@@5 M4 +#FN2*G -%?@'JT:1)*B2I6A_R/0+GE-2PDZD[R@6X ^W=9'))L+SF* HY M5"J%VBZ@%FJIC0.,2CY'%[UO7@AG!9338W\+$W=P@^@!K/>7TPFM:_7F4R_5 M&L_:!]"^MH(6=;Q.&5 JHPBH';?=[+@LQW-Z&MC6V WO%-Y\_5B>F9V)(3"--2+,B\,YG<%8S6JJ2M]9HEN2]O?4E!_5K/>K9 MDMS>D!T43UJ2?SA78D^2*QJ-LV",0E YDI>JL@1MR5GU+D=?6F^ K 3S;#70 MULP/^??[R]:YM@A]_OK::Q>MN9]Z4'=9.AL-L<-FW=P$QDA>T:$&%9@ 9VP! M3W+0@GZHFE__[CQ#1^G,R7,5U9^E,?E4LUQ9/88L3$3KDLFM'<>CR=#9A,\G M,G0V,>.A,W0FXVFM[9POTY0B71Q_[2>DMC(:5YC M9=9VI9 SJY-,-A<,K?<'GL*TO]"A(77WG8"6=N_@T/UW&B?YT@LP:)@IF70N ME2N@A$.(M68?-\8F I1%\ZHC=P"< N/;6[3A:S_?P* !%IQ,9K>:KT9XU=]K M@2^())75$6*4%,/:4N\JH@5.X2OS3)NBGXX%UWW:MRF*!>?(=^56:Q9"[N! \ &(Y\Q\&\MV78W+8-/P4/4T1B!2A31>@V_C^$HMOMVB=IW,FH'"_0"SZ\T M[F7U$Z^[<-2\!?J__#E\Z^G(:<8)'$SP%A0Z@FQ)[TC1JLHI))=:[T)M 7/_ M4MF-V^5"Z8R83G+N)]/W90'\IJEL<,Z6D*#DVE36. 4AS(ZMI$I:J?K2-#\9 M7 +DV4\=NYNW,\YKCY[;R^>2#WBO?1698!(P^+YA^118H_$%-02C#>OC+ M*C0'2,;?G:ZE MC9UAVHX+?Q:#*ISFM_VC,Y*\\C!^Z+ 56R!E=H^B/W-&KA M$Z/XLS'MMQ[_[-_R;4W9246H"=(O/".QO249#T:SU.E%(^>>U+RPI 2A$:(6 M-TW@E:B]WX4F'Y@)=_^82AS@.@WK%(I^3 M6>N*-NU_Q2MX+LGLG EL3JDK.IN:/W!*1G+X:6)N^BH_FM MW/7WY7Z2>T^9Y%4TY(5X24Y)O1SJM;3 0A2\9)>$:W[_[E%$SUX/#0W>18?, M>6+,]815Q\IH93(!C*B;E;FZI388(#B:!1R6T-?O* M_-!=FF5_Q4S:@19.T3OA);FL)0//4F1N+8O-G<+' M$9V:-AK:OX,]I9MU[>IDHS^\)) W2=6OL8S&./_,Z&05T1N4>T1JG)M&>JCI842'3K-R0UN7<&^ MP^$\^Q7L6*A>,L?M?&QZC7GQ6KVF0+WNV'*-CLE<@";A>F='DYLF*2#W.96B M<[31M7:%5D Y$?GL9N(EU.^\OCTMZ^M^GT[&2L8MF6$ESK#)"&\)^]0@]%Y1)9 M[GRPM/58+L?U!3P+$WQ_.?V X_XHW_,G>DEFALE:X$;1*QF^LD0ZBY:6X?R-R;@ULUFEVUG/VX4?O#\=&7[1G M'C)S-!P1#'C&ZQ\^NT0CPM*ZWGGC(;S(_!!:Z"#47XJQ^O.E8)JN&$,/HZOU M3 +X$ATHA77C2@=(T0D9=0B%[V7.?@KHBTR[X[6#_)4U[#3Y PG];$TH%$L* ME4'XFJ2GA0!O> :'N40M3#"N]6'6)OA^7.EUQF('Z3*$X]8A'OD4A7NT8-BL M4(_DY&88!H3*HF5&L] Z8KH#X-G'/-N;62:;4J8>1%!M=[/VAKL M\4Q73?6P0PRV/9>=KY%/ K\SZ7K!O:CM\8(NM+S+"IUI!R[ZI'(1Z)J7M]T! M[HL06_+9P=;H+8/-\%S;(QCE"%& PFR]XN,(81 ,&',LIQ"3S:TKY*S"\FP7 MRZ9&7C(/[9P_?Q_8;(KLQ6AU""1)'YT E:(B22H!4@B>/!8I5-?4SX#LG_S(KH)PH M^]L8NH-Y_U95][?]K_V,PWP#$=. _D,8B_**XS7@^;&7S)!['S;YC^P_^6LM@7Z2B[,%_SCLIKH?7G0 ^#Z+8G2 MAR13@BQK9PAKR7F2#FOC9B^-#5ZGU@'2IAB?O7(Z)66)BG:^F[,NX/FBB,[+ M+ BMQ$)HM?(04060"E.B[PO-#R6A WDDW1*^I;HV)ZL##V8%V-O!U9U6):K( M)(474"BXJPNN@VB9!PKU#4-:R7WS@&9#B#^FNIH0MM)#.H*N$Q]";3I[AM-^ M"H.[@#ML07'WJ0?K1_'(X+MK3E'K6HFH)$3FZID\#T N?(1LHRV._&V=6]]] MZ;PY!<\^J6@$<)?H;?"RQHN>7C_.K7 *F>RNX<:AFU-LPN<3S2DV,>.AFU,\ M&,+MKNJSZNW6LJ14=.""1HH1? 27$D+RT9GL&%>R=:&;E6".I&W%1@2OTLI. MANZBMN$M/(L"O^L@VJ1YQ28Q^@,T^^U@T9BN^\%Y&UOO1P68R0E7V0.&FL+H M:8YTEGQPCBQ$'HH/O'6&SK[87]')8N_D;V+B3LJ:UKVB&:[7BVK<3J:<>$WP MB,+1'S3*D$1MQHD.E32USULGVW*W41R@C.F.W"S=A-O:L!U4P%ZU51RB#^@% M!=KUEJ92K%9J90)T]HP\(E5R;,WWT>S)-_8&6YAX)?/[CC5G(S@;#0C#Y)?_ MNNQ/OW?C3!Y29\/A%<;F+&HPLNYZ\3 MK8H7HV%]V6:^%(N2^XPU%T;6:(HE6A%IPHW6ALQRUDGQKH2Q#-"1!)D;$;U* M,SL;O(NT@+N8%F[6.J ZBC67 CIPN+D[]DF96WYLDA#=!.880 M>5;D>1=E64 K?.OB:7N4PKJQYYZ4L(FQ.PM!9W'7(E"*WBM1D,84&45+4AIP M+AM:0C4:PX7A+C=F_P&( ^0'[4[.ZD20+2S;00CZ*N>9$$K!<4!IF4/C6M#\*Z!0DT,[B';SY'W%*X\-\ M%39?=?YCR1J*E,'&:&I=3W*9,WV54]UXDZZDN%;KW UTL!S)*0B@@8T[R _\ M/,8PN1Q_G\U-\VEJ ^^M!',*_+>Q M=!>-5E;NL!LN>1:UE(&MA0\MR7*V \>0)8$H2)JM^VD=^[%CDXAP)T-WD23\ M<,=]'40_[+'C1G0]??*TC:WW=/B,T2LM#/A:KTS)3&J/-.D%:[E&2=%/;EV6 MYNB/'1N3OXF)NSUV?'75P%UXY42)$$VM2F>]JP5L!!2KF30A,IG]]]U\[^'.@=K'T6#PZVC\9QCGGJ[M@B5Y-9F9.GH3 MZCUI!.,E"SR3Q^M;.WH;0CR*$^E=CI"ZI*2SR6(&\6'&MDO&ER(EV%!J2UGN M("J2>+9.1&V5"++#;<$CR*?OE,S5>X>[,='!//-PU#UO/?-,:K R0,T;O)Y!+SH@+RK/+Q7*^S'[Z_F-T7 M^.4;1=[]">:>8\RXI#081Z)5LC!RBV2D93)P3"XPR5KO+6Z.\@?047>L=;)5 MM13QOX?!)2X'+&11J(R$*%D!Q6( ST6A/TRPAB5G1.NKS1N#_"%5UHBS#LJH MOLK_>3EO=3;Y/%IQ;#-[1V*89;"=UV8QL^M0'Y$L-^E/\1..O_83SD?Z$=/H MRYS1V:![0IO ;$Z032T)X5!0F*$L!!8$TYQYCZTUV?683EO"1Z6(#KHJWSF: MF"%ZE0CWN(YE,OT;3L]&9,!8ZAZD Y0UW4$K";YP!635Q*1C6936F2#KX#IM MY35GIH,FS'?K)*><*1H.%O3L,(MQI/"89G 5*3@VVAEC6J>8'KCL]#[UL+VM M.^C*?%W3Y%:(VF/<6D]1!\B %)&F8L$QFL]X2@RS2EB:IQ@OPW':,MC9\AUT M;7YTGP)#8,I&#Z3,>FRJ)01!$03%#-YS0LTZ.E-89\>HR;Z'QNA-"0@L6U;/ MAAAX5_.[_3Y?EY&'\?E4]]\F%* M/X7A]%5*H\M:"O'+A]&@G_HXN?&2W@W+:'P^;\Y04V &DZTNK;1'T>0F2\?& M:76])9UAOAS@^S+7R=QQN.GI/+G9XS8UWX25##YX)&?"Y('%84Q)@22/"E20A=QQ:<#HF&((V@;6^EAL/61[NS[3 MC5X>; VTI^-8KMM<-<[Z;3RZO)@=#"PM(/ESME,4A..U! M*('%(!.,M;[0_02D@R58=2""A_VCFI'134>^5? 6I]/K .PH&^M)<(=)SFI* MZ?IRV8&/@PC'D0O*I#? N2._.S()/FL&*8I4TQ5]+JU/:@\DF"?RN0ZKETUH MV%?+S\D<-GVGO/[^*0QPD;HBA0]1V@*AT$8)OQTACA]-[VL_(3MC%.D)I=--@=GW M?X1SO/(7UH"]#_]M?J.446/+?8=2Z!KEW$#^)+9(C4M.IA9[:%J'#@6 M-# 13;3:6&9:WP0X*N4^X5Z>L' W8;ZA8.=]?CZ?X8?15QS.5ZR%%\28XSXG M#B5@ :4#@QBY J,R,]41B_>#FI6-W9;]_@-[F%U1,VIJUX;>Y:*CT\PS>?_G M$,>3L_[%!_)NZK[Z%^Q)M#%QYH%G5XN_.0&.*U-SZ3%DZ5"*IX\/GGC( =++ MN]UB;6G4#B*)#^-10LRS/EHUOEEIA9X)6M6,+^""A3KEV5E2*_FHPF16.!>Q M=3[QVN!.3C7=TK-R=6A\8/D1:6:[Q%M95LU/(S=\1).CQEV&U>@<\1I"%>L\ ME7/V7/)UWL=!_\L,P"_?+C!-,7_NG]<6?.43?7=20EJ,>2%/X2+3@::=&*L\ ME[N8E?DCI/!)G4K(HA 9CK:#9.6<(44M@ M,P\O&![LNDO>DP_;UYGB@;1S=T%L:_I#'S9.QM/>QS#\@K/@()EL=?(!8G(: ME$D" E<%:#J6J;B"2JUU:DV_]=;;1'^[>9/N/'#?NUF=,#C:U9(-0YYK$ M_ M?!T8F^P:K4-L^Q#HZ=V?'8Q_G[X=+-GH M_];M;V2I\\OS!9 268HI9]^1N9@$*7ZB5> M_;1G@W$24P2;O5H4AA>A@(^1T*,QPMHUO>/UGKC_./\HG.4.Z.BD4L$R"RB\))\VM_%$+F(LVAT@+- M/:FD6A9F/:=A$XFM1//CRJD-05V4VUN.[-7Y:#SM__?,/#V*4X65]3J)JLV- MHE;@:W,C:4HLW&-PK'4:_AJP7L34B+(.:B.L@/CN_"+TQ[,Z1O7*H#1>1YLU M>)OKJ8 2M;T.K=VVE"!E"BDTK_BU#K 7936C;65)A,Z/61ZW9=OSEO6>U='! MRQ8#/;X3&#*(HG N &8PY_ -$.RZ$(:E/0% M+:BBZ ^5Y#QEHEADD=E RT'K6Y]MD#_#4Y]-]/JP^/K>Z3[TX5"SH7^:AO'T M;9C.MW=EL#P;6KS;=3><\P*:)@%HJI+4Y1*@B,#)<]4KPH6%+-NVNUPOZBU7V2?[C4 MN;5"G1[?9U37XP>-Z^X/]B6R>XGLCL.&+Y'=2V3WX@"?K%/QX@ ?Q2S[X@#_ M4 [PV_XD?/DR1AH7YL6/VQYE//:$CAS=M0>UHW,[3R1Z/SW#\>(IMVXH>9FU M"TX!XT6!$A'!H9:@G HF"^'<_:*0*_.XEC^AP67I*RN1S:XSSN<>0_#&6><] MH*UICBXD"+7C#PN<12VQCYT&Y93::\O@'^&XZ^ MC,/%63^%P6RS5*"(27 #,KEZ1NP9C41Q\C>S8;7Z$.JUXHDGDE%7 CC4MG<[ M>D>MS=PX<_S37#ZW(5VUC5T#5,.+'"N![/]:1R.B1EU9>6\2T"1GPI?)UQ$" M%+,((=0JR"&;4AB:),3SH_Z1"R'[9'X3XS9/6B<,.)GVTR*!/GJCBLT>N"RS M3)UZ^RQ%D%$:F;2B;Z^;G'[W-^_W9D$C8X\:6:IYN8E?1V/L?[GNP!V34BYI MD&@I'"HN 85$!"7DR"A,2M#N_^/ESMKV=NCOQG;R*D_G5 Q(-\VC3 MHAMWB0Y\,1:$=Y(+KX24K:L2W<>P/XH[\\!W,FMWNTNU^,2R.P&_?%O4QWDU MF2#]7_X;MQ\LW<$T3R MVL@,W.0 *B@!/C -+&K!6#09>>MSA:5 VG4'F/W>U]]G3YE'JE$[(R5/D%R= M566F,4:A(7A:"IV*T=\O0M6P)< #./LZX]N=[]4E_W>S\:$W>Z['DJVL'H7MP(? M=I9?!U%'M5\?HCE,6==&=-V_.=/&UOM1 7V(!8(!*D5#;E?A$+E)I/920I0^ M6+;6_L\1LO]$:=2]D;^)B=N7+JAX7KT:YMD7KQ?QLLH"(ZV*8(TMA(LS!QS/>LC-_6[,O<2* M3DQK<$F0"Z1$ F\$ 0V*%B_Z0V.'_>Q6XCJL'MIXB,WMOU(CC:/*7\*XID-4 ML(LQ5,C-2T]N\9@F,>>NPVN227 +Q.SQ-Y(KF6J7?F05F4?[S]@[A#G&&7,=01!UL-0GVDY3 9TS#;98&-D>LT1//&H M_>0*M.%J5?W&W6UX_"&D"XY+A@Y"=+6CJT$:3!V=C0)T<;6U.Z]UKKP%[KAA MVKJDL74WK(76K?F^WA-/@_CFMNU@5G\U MG/9S?W Y[7_%3Y@NQV1GG,R/RS'/C]//+RZGBQ39^X9Z=5[[Q_=J7=<2LZ%) MKVZJ8.WVHP,'JT76FB.M>JT/E)H ?]XZ.QR''50>G$%Y'2:UUMCY!?E>\P:X MXW&M(SQK7/;]YB,?PO?ZK5=_AG%^?U$_.'E_.9U,P[#F>/QQ.5]$3:35V-*; MA8),RM!#4$Q2 *:B8UPI59J?B[<>Q&D(]+# MUN&&ZZ9#;93YK/-:%F!R*K9DY.Q^PYJ=IX'' M$;7+!5KZG-??;P44\ZVHQ%00D0)16P^_E/82@B9OPS%A&-)K5-K/A)N"W%?> M4$.UK$X@ZH*8X]\3M@Y=(>!@O"#;R41+A!<&K.%D.A>DLJU/'H]F3WA/&EA[ MGW@3+O:S0[@.HA]VGW@CNI[>*MS&UOM10;9%610!@@FE9F10O*'J[7YNM%8F M9)Y:]\P\^GWBQN1O8N+][!/K+!,SW@'/%%^JE!7XS!D('YE6C*:[]H<#Q[E/ MO!$W3^\3;V+8SO*1[F1(D9,48T$)2=7K7,[14"/!$L4I]$B^%;8^%WZ(XI2H MWL:P';S52[V9M_W)=-R/EU/,O>A\U@D3T+@I(G><0Y#>TIB+8%:2Y%HE*K6O_ M/8WJ]$6R/0D=S"/OAFETCK5QQ-55O?[PLI9AHAAKMBM8L<]@+XY'@O,E209. M&IKV=/$04Y)@A+#&>X_%M+[ M2'$DQ)0E_1T<&AP%R[-AFF.&/,-X#]P^KY\ M#M_N I=.6^9,A.0M(\\I,(B1C(1:2992ID&UGHNV!GO""NN*L@Z:&"VU28^9 M[ B IN"_W@B(RH!GA"Q)6U*0$D.T^UC33DHCNYMZ9:.AG2JN72VB5_AZC*7, MN WUR+[6"1$9HE !K*9U52EG?#2-V5\"XZ2XW]7,#YG7NS)_QX&Z!F5$"MHO>O4U] =U M0__SZ-:YY]EH0!@F\PF,NY!$#!)<8;2 :9? >1E!)J]3(!N191HKIA'TD]+8 M(>A\J$K;7)7+?:DU!B)S"E[1PLJ3BZ L^II]2 NK8B5I4ZS5K6>R9N!/6YE[ MH?2A-EU3;3Z$6W=)[\ U4M:@FOZN:_@/[7\[('WCUE=Z +SA/ 7M?9E:YG1LV!UN;C@KC!0D^+#J>1I\\ M&(LL*U\+B+=.=MD(X$DIJ3MJENP][O-N]-N:3WOC@EXL3%=&X_D!W*V/3OX^ MH8^\*XM,?\Q_P^G9*+?/[FN'J<,DP(X,UU&NX +MK9?!:9,2$U!\J'>V )OT4C&';.BZS.*^YBZRQ=Z!DK9*0C 59D'X0O)#8 MO$+4YC /E3.XDVK6SQIL0\_QYPT696V*/(-QV5.,KSQ$.RN;P7Q!9HO@K3NM M/*.\P48J6#MSV\;6^U$!2NN93O42;,Z@C#;@ M8JW1A\[R8'.0I?5>^]%G#C8F?Q,3[R=S$%$Q82T'*>J]:FTC(2H)M)/HD7[* M63?%K(XNE0:Q,,K<79R[J!6L#K6K*%RYBM#D&EUC/-,]MQ;JJF[LCI(&ML M*=B%.1X@?I7_\W(RK9Y^3Q@IC(D,BN$,E*V;\IE;,#IH%%X495HW#=D2ZH^@ MKL:$-/25H*EWWOODUG3[RW]=]K^& 0&_GG)E\%J:3,MWJ1=,:ACI ML@Y05&$1G6#.KEO6J0&<$U'58>AIF ,W'P!A',]V(,+@]OG-J^D\5>MJ-;^J M;/6^W!I+SX5LG[X#@I1>V-D [2Z5:\ M#:OFV![W.A56)$1=?4'2.EF)%0B6)R]MTL6WOC*\(<03D=8^".H@$6YYMKCT M0M'S$R#%"J"*HK&CRL"XS4P(9[5L?1'U2!/SFVIC=V-WD&ZV8L2]5+AP65'L M:).M-T8\1!-)IQ0/(+ED)N@FT,OC)1[!CR>UX_2%/Y_.=H]I,# M)?>L"^APF3U;F6Q?:3WUIH!3(D+V2M7.HYR\9Y*HL5HIBMPXXS]"6D],BI=D M%"16]^:]$1 RO:2:;&,89]DWOZWVG--Z-E%-B[2>3>@Y_K0>)Y2/CD4REZW% M20J'P+F$(&*(KO9T;5X4]B32>C92P?J-(S9@8T^-(]9 ],.F]6Q$UQJ-([:P M]7Y4(+"0L)F%Q)T&%2AX=$$DD#9;'VH#SDX[]!YE6D]C\C M DY0J BIP@RAH&%*&AVQ]=;>\T_KV<4K[9*@YMTI/B*Y[_4SLQWLY5?#A35* M"25!UEE2A1#!%ZO!19>*827P^^>D*P\7UGC178/YJ2BX@RR,;Y6 M07.T:FH+4:,7C!%BT;H,W2ED]^QG3MF&I(-G]PA'A<%>.2AEL"BU;(>N-9&/(:+:+1H??OI^1QEME3! M-@9?F233^"CS5?JOR_ZD/R\"T[IY^]J_O,D1XW9#:71<^/IR0MHA9_4&Q(V8 ME,>@36# ?:@5Q^JY.+-DK*299J58EEMGWCZ&I]TQX9*G3%Y_O_6W^? Y@X M\@R>H\V6Q^9=7#;$N*\#PF8Z67TXV $IQW(RN&1HL]UM M4X^QL@F@K2SD8Q4$)U6"X*2AT63M8^O,K!50#G\JV 7]H_8T=+"ULPQ6_7*, MN-@:7P=@1^>#3X([S'%A$RK7D,?N/!Q$,#)HC%+2NU&SF96IO3>D41"LK=VS M)3F&^YA8]B"4)TX6#Z.33S?POAK?_+JW>_]\_ZLDM3L."P()4VF M>;/8D.KIFJ9(7M&236;P+AD*]\N3CO$C#]A_+-28AE%;&S8_ OHT#>,X"N/\ M:51O'M/J^&8TOKAJB9.1\^P,>%DD(LWE"SE+_SZ:UGIQY*R.<3*=+$R2>]I&IP4Y1LPF#TI//HP6BJV'@O.?$FS YN\;*DZF[ M2 HL%X:<;GH/O%02R$X,53'T.K3>K-\$WPF)J3-:.IRCWHS.8W\8KN?FN3T^ MXB!,:YMS$GV/.Q=,8@Z$K=69M*25TW(/:)W7.OGH0NM]^_71G9!\.J*D@Y/G MWT:C_&=_,.AQFN^$JU53L%@*XQTYX30U@@^21DSQ?6:M[R-F3V$Z(1DT-7\' MI[I+YJ=YRXDO-?F7//!^7I3V?S4>!_KN;#0?ZU?OR_O+:LE*PP&"N#%[+2+6P%>YT)!?8BULU]4LG729-L1G)#T#DAM\R(/2\92#T=' MEU/R[/NCW O2&9D,!XZ&9EEC&40>)' =HJ:IEJNP[F[*4\\Z 8ET8-2&Q1A6 MHKLCVL^DV4G!,?G=-X>T=S[1BUI*A;4-6XZJYDL8B!83^>3),6."#6S=39C= MT9RR;+HDIF%5AE;X/^)7'%[B9]+,I*:/]I QF@,C0I3(0#'RW[US"B2-2MAH M-?WOWH1V']V+\-H0U[ X1*OQT#S]=C08A)J$>ADG:=R_N#7,GB031ZTC2.'( MMQ3)@.4@U,JK5\Y#Z)/KX&T1 M+%E %(&\159H^[Z$L^H?!Y- MP^##Y3B=A0E^&/<3-LL(7.LI[5,#-Q_*6Q1:T%&R5"\D2KV'%^Q9Y0AN1/^:.8*;T'"0 ME*]U +[D"&Y,Y<:Y7]OP8I#:SE4<-R(DI(Q)K=>N9Y7 MCF"W.MG$_'O*$71&,N6Y UFWR%02@M9H@B0M9QRY-#8\[2H_LQS!C6A8(T=P M$QON-T=0>!^8D@*X5?5D6!D(2A2H5;.+P6 36[<^Q'/+$=R>Y&86[6"*_[5: M%G^G*#V_&T[#\$N?G)]7DPE.R2GZ6_C/JSZS=2[#[$)QUH()LY-H#W0WB67='507+.(U!O@/X1SJ_>KW7@=N1[;@CU,)YH9]2O M+[%FO.UW(EL*6[-H#:]'>;71JT*GP4N3 (V.+#H;N6J=Y7P4,GO"CSU6E6U" M5Q>5DT:U),\%3O'5%W()9FDGBP7<*LG1)%Y[:R50C"&$PAGHQ)Q,3"MOFI=( M6HEF_XY3IT3>+XW4AH4.,N$_8SH;C@:C+]]?A\D22RS*"3H38;!"-I;(6L--637MNNJCJ>3F9CLYQ/$NOKH[C6?_B"IH7+"0> M/= ,6RV@ZSU#;\#&[(Q72>K0VN]^!,YIBZ45#QTXU$O.6#]B>9]O^;#)-I M,NR7?K@VS=4-CU?#_#M]NS_HUP:C]+/+<\RS*R##?*LQ5L\6;9.+#DPVL;:< MI1DT9$ZFT]:&K(/%U'T>;,,1'<4F0IO#JR.BOH/%L^GH+L=C^@?S3])O01HD M_\DD MF5QQ8$NFQC[1=2-"3]R;^3#>'2!X^GW#X- PYNO M31>S-K".%=RB$#JXDMASD M^^D9CNM6QMW7V3L9F>)@$SEB*@@:("L,HN+<1%J6HNVJVDYG@WI1>4<"Z.!6 MY?7E7QNE%)8C<.$X68G>.?*7$B1/P8'@S@K3VE$^TKO4N^AE*W-V4 "WI6YO M-E\FO: 2CF%MZVH>'0WEA$1W#&3OXU+EUH.Z M^Y'K5O'7+ZM.+F=K$)2(%E1$A(A90S2H4F',97VOQ,@F5T"Z@GT""CYNJCOH MLMU!7'CK!SWN74[UZV9\JE@9S^N01R)?"6IT :R55#SP%&6W21I8C.69[:B@O(FY*]A(1=YCS^?<) MELO![_V"/:O(ZW$<*7B5BJR''IP,&C@SJ#69SKC6KO ZN$Y(7LUI6*(5T$>3+M3R_'V+X#T-J_O,DU_^V&TNAV_[QAY74'[M=A$(8)/YTAUE.<&SAO M^Y-Z';IB?/V=_G(QFH3!;^/1Y<7D.D*OGYG5?+O$_/YB46!DMTZW6!/0]M7I8-C?6?NS^['J*ACJ;=P9YBS-%1RI.8%5F8W)#@J M'K568&KY7"6\@>@X!\N*28([S,U/29Z =*A;IHE%W;':0._8(O$7B\SH M.[I"]R2XPUR::TKI^G+9@8^#",=:26YX-H!E=I/+UP)M5@$M&LD$ AJQM4]U M(,$\W5M'3ZB* !\U6<(;#I%G!B:5 M+*5&K9K7K-H$W_[#Z\;T/A1/-]QTD,]_QQ)_C*;+L2^P*N^+"RJ#U\J RLJ# MQ\+ IUR8==Q&WKIUPR;X3E!'W7#3P7S4O<\XG].ETU;[!%+7JI=62'"*&;!2 M!16B-AA;*W _(WOQ]5?[^D>HK0Z2]#<"?.L&Y3JP]Q%(K _Y,.'%,:KHL0F_ M8PET';ML -\YPZ4FGR<*;T%)0VMD$@&<*4$I)@V/K6^S'I5RGXAS3EBXFS#? MO";>YS/\,/J*P[_A]&QT5<[-"._=+&@LL^NUR8-S)9#G9FQ@JACMUBTLONSW M']A%[8J:45.[-B^3-RN*?S$:3^?'Z:$V*;JN[[8 F(P3D88)M;]L3?+@$+"> MK$KDWGN6$>.ZQ#_]N!]"!XVMWG "F(RGO8\XN9I29_.?,%DC$PF$#@2E1)K_ M*)8"GVOO&*]TMFOE'M#OOK4"T=]N5I\ECWWQ^Q_Z_;NRT_!.X3THBW=B'3"; MN-SK2^80#O3.="RG=0=;=C<37/48YU;XH!(4Y@HHKPHX:V3=28[.66V*6NN" MYW$0N\*_[);734S8G,^O_3KR]^7#N#\:S[O-_3(>C\9O1N,QIIE%\W]>3J85 M[Y6#(F-2L3 HP9.#PIR%8+*"+'-QT898^%H9O4]2OCFV_3D+#:@<[9&'YHYB MO<,^_?[^SR&.:S&IF[;N/><95P$S.+0>5*TL%;F.8*++5G"G I=KNH,)[_' M#G;=?)F3_/]\B&:@_[3'N MBN/, W/:USX&#!R%WV""=]QE8Y1L78/P#H 70:T2U/8\-3QP6$RJMZ'\,9I^ MNHS_24ORY]'[RRDY ,-JBG?#C.?#ZR/--X/0/Y^\.A]=#J>S5Z'F+*?QO+;K MKZ-:AQ'#!'LRLN"1YF*'T8"2B.#190A:N"RYESZOVZZT.Y0O(EVQV!Z'+CJH M"[349G-2?A]-9I/\TH^\O1S3F#_4UGOOKWI7O\8R&N/\'W\.WWHE140I9&TQ MK,C>/H.W*H--@EM';[.2K6M?=3B VBH@Z)"'^N=DR'FV@&4L$Y> MI33O"HKY+2D@T8(5&*U4,0DPR=$+'%2 6>J25*E8%;/0MG7VQ=.H7L2Z2JR- M&>V@XM&LNM:M^XJ+$@D]::PH/D8HDFM0B>+_Z%P"IXJRW'KK1>MP:064%W6M M4E<+[AH6(%IZSO6X(>ZTQ>Y)H5%%D<&92"&<8@XBJYU_=! \*,&+YEUF(6R M]464:R4B=,5^PQ)#^<,LFP[D/(J."_2W5FZ39CNH%K06@GWOQ%E-=9[/[SZ>"]+ M7^AE8F!]IL4C>@DNR *&6R8"6L9B[-)U6!_JBWAWNFRQ(_>KBP-U6"MC$?V5 M55L3DU9U,]9^4/,:&ML-\1G6TW!1I6!4!B%GZ7+<@4/)JN*B"%H&(N?977_Y M_;G5T^ B.*V4@>)J4UCF,\2B&=0[5HHG25Z5>78LG&P]C4W>F4/5T]A$4<^E MGD;@TE/$$8$(B&1W%B$*)<&2%XJ[M1BK:L)[&)FP>I"S" M.@!?ZFEL3>G&]1&VX>,@PA$)C2N80-,7H$QD$-GLAK8PN7CDG.UQGCKB>AK= MZF43&@Y=3P-]C2S*RP3!> 8.L22C8BEEW>Y:S[L.PD;4/%T' M81.[=EWN[7$C?$3"?HD]D4OFVD>0#@FQ+!0 .ET@*N%3,L'FU'JW>W.4IWVN MN,'U:C;T:3Z>1]JW@P:Z]OX>A[[X8OCEEV\7Y 1AK]"+IY(5M0L<+3;>TSKC MBX#(T0C-F0NF=6/I'>"^R+>!?'?20#?A]T.0UXE:OX[&-?^EYL'9'.W5&_B'FC[=?N%'%$-__N#T/[X@UG M$JS7"12M)A"CKU&!LR$R>FF9W8>P-X?^HN[6-_IVT48'M_>68B1>]W<,,\P+3MRX714!J+6'!0YM1#JI>HH MF8@N94-OS[,[C?_]N:5ET[P4M&$*G*SY25Y:<-YI2)9YFK0,QM#Z N]+6O9> MWIE#I65OHJAGDY;-2@C11\"D"RC.,M"0# AGE8J::Z=;SU5/0#KUE)^-5+1I M6O8&;!XF+7L-@"]IV5M3NGE:]A9\'*8_9A'!2$/1*=9.YPD3Q!(96%TOK?N2 M0O.K;@<2S*YIV9WJ91,:#IV6[7PLQ=H"4>A:7ZX8\$8XB)PQHP5SJKRT.=R! MWEW2LC?AYOFF92B MYNFT[$WL>N"4US YH_>J_J< XQ&,L=4 M4+:#V&A MGVD8LS+*\]/SJPK*63$?F/!@5$JUWU8 Q\BTG/N46=11BWPXN3\&_47H#83> M3!L=[ +,PH!;(/4O6!)$@RUJ&5@4+T90" ;/'8)TSN?7Q_/9H7X2\ M2LA[4D '6>"W4I*V@J^2*X9>,/ QT*MGI M>)]:6)GMW3A=\=-TE/[Q.DPPOQF=U[M$,\2?SNA#L^]^"-]G?5['XS#\,J/G MC]$0SR\&H^^(;_NU(>=H_(I^9_Y K+U*T_[7_O3[+LF+W2)JDLJX1Z,U2FR\ MP3:[\DBOU2U$GW#\M9]P,NN]'M+"(HL7)J%RTED#7KH:$Y)\'7<12HR"IV@3 MQ]:I/UN#W76R_Y3.,%_6EHV;0I@?" D1"S)%BY/4JE[BJ >C*('>=..5MA*] M;VVKW2#O*TEP/_J[/V'OD\]C2>6;32N?Z<.S#7""+)(DR)[EZCU9!:[4UMR& MDU-5#.>FM2+O #C4$?!>F;_O[&[-0 ?;"S?#O[U4W5J9R)5ZN'#5$=P,8SA; MIF[MHZ\SIHZ.9[L8SV'.;G>0R?UI[E@X?B[Z]5PQ$I:$%'P&Q6A-"3K3$F-U M=#FYX+#U7?/GH]LG3FZ/7+:;4-M%3^VKA:5&".\OZH 6AX6L]ICGHH *M>5' M,JR>K1@0,IM@''K9?']V)9C]A_B'Y_I^4^TF1'5P"/81)]-Q/TTQSZ#]G9B9 M?/ST]P6XD!@6'X89*N1&J$)P% MX3G0?$K"T/1'#)Q!E!0X:Y]=%JWOW^R.NHM=PTW7IOFN@[76^5K@WJA?NE;F0^12:P/ M*DIP*BLH7C%A'&,QRQ_CGO"!=++A3>!-^#K(AOETUH./1-X(S,LZ *&#%K5>7( M(]!"0F9!FF(5=ZSU6=ESOPF\$;V[W 3>A)L.-N66K^&]:+*5S@G0(E%<+D)= MFJ,#Q;DBUS(Z"L_W$NXKE8\41/C<&VEE4;Y#^<# ] >!>;Q'7/Z=UD M0A/QV\MQ?_AEOM MAUPOC]['1I8&]PVVVE$^=O/22Q7&(\W%(,;M[Y?I)A^[Y7]@^3/$[O-\]L=T M.#DIXM3[! #:$,C@<<,I01^$0(1SQH)*X*NOB+T(]N*6Q/'1I4&;^F9"G@(H M@4Z6((S[401%/HB%D.6H(95BA#J""=I$+5KM7_GXE_&ME' ^!]M6&_YV?]8-# MU^5WL[F?QUGQ]!;+?C4U2#K+E1U+98S]1?_1/Y-KMU[U+38*A@FG ND2,F4N*3\"1R(X*QQGH7 M*[]DJ@JPZSN]!ICQ/%A!4)*7B5A>END:.1(GM<2]"OS7P^RH2 M.1QWOW\5'\;NQU(O@^SU-;1)+\/&>!?O=&*Y#=A& M!26/ GJ8XI(6%M]$JF;F.CC': B!1J&)5N@*2VH=07]=$N4BKD)M5/:U ZHC MX-8#=2A'1ZW'6*DEI=[/+U;+Q: !-E4[ ,]> !BB1,Y$J6Q)&2.'FE!Y;DP)'A%$W.4 M6EL[?W\/G)=&D*=884]O$#%!"UX+F1,CSJ"T,G-)'$N<. M.2D@IB-HE)/? M>6D$>8H5&ARNK\D8C<-?TTD4^@_RN0)*"IC4B:S4/O6P68T M^W?4#F?EKHF)&@2"ZYOU7[LP-UU13ZWT62;2UN .& ,<_!"HC04;4.W55S\[*W[MNZXOMV]NEL(;",N;?YURJQ,$$TAR MK,P!+!@0 M9.)<0JE%-C%5;WVZ" M5BH%*T[+\G*X ?PI7[O)!< -1:24@LL@22K$D")P=)?!D[*51)E4#++VF=46 ML';VO==\^)CX"]Y*J]$_XP:0O!@?$.O+/1&E'0<.V;+:'M!&,/LJJZK-@SM^ M[-"?^J[S[T_'_(BD*S"Z-$3K4H#-<8,&*.82^B)I>JIZ?V3XX%4\R&X\1B]5Q_I^YVC-TR, M67U>+98?<<]= LQ/?L/-ZO*_T'1U5=-X@/W(;S[0:MD'4R-6XB^9 #D8=[VN9[4^^F MV"9;_K=NRNC]?%P5;%,'VL6KU?)+UY=;O"?=ZUNN4CK-3 -/BI,4AO;R4(9= M<4%4=L%K X):7]TMV 'P_@G4.O&U/_LU(-\W^AC/'"+JJR_7S1?+#X"P2TN% MI!U%>&4F$&K'"^*]]L3X$!V5!KBLG2[=!M?SHU)U:S2IU[N%<6+W!/+4L,"B M0PHG66(UY8!XPS6261AIG? VU*YAN0?.,^?'#KK?&*M4/I![/T\8;I>JK"$I MOYC^?C_/77\^]J+=X8AN^T^O7QEF3 CD1%T2V9#H+,8$ M/@9BO:&H#ZNC )5I]7L23X"YM\$;M=ESSVB-)B8ZFG/!ZT'WJP4J;G'U%E@, M,2CU6J6(X:?B#B6*/!.ON2^!A0[,?=H CO*<;HVNHR19E]F=GGY9?H+_B M\80J1\&YLB6)&-%Y,N5F.1>!>.8,!4$-#[7]S?5(_HRVKZC;!F_QG^$KS%

+;_\@-%@=P[]V]_CV2J5,MS% M]OD$[\[Z<^XZO-HR\MM-*H M!97PQ99,&0$F0:8L=/6*RB? /!A7V@4BK8W5X(TR#= IRHB(\<7IT7 M9?XQ=2(>QH2-MU36CPU#CP[]?5-F8Y8YV9)F,TY^LI"IC0[ETV)+AE:"].R( M> A3-9BP1$/K MG V*7D(/B^6IB5RQ),I,]'*CR29!'$?Y7(Y6HP> DM<.SQN*\XP8?&S&WS@E MH_9UME58P/]6J-.W7TM\M&/4?=^"H.W0?1BR\,?9:Z'*X2?HNO]L,!;HQ!# M)"J4EIC&4^*=C01"Q&_HX(RM?0Q]].7AE8W_&!573QF-U#H21Y"5EEZ;1W#SJ*]SS@*$J_'Z7WKJ[26M1^?[=9X:\- M;&5.298Q.**^M/A)*A$K2FXR!RZ<3C:YZH5IL,.>F]1.[(1H#%*>,49<2 Y*<0G(1M/J#*A3"/74+V! M_)X)\= NOU<^/$;=[7EPU;Y>><^TT20E628,>E,*9Q2"\C8R0;.TN2T'#E9M M4,=0]YO_"5INT3QTN*LVNC^SK[,$\[3X"?JA\/\-Q#-?ZOYUX,!-RH1KGU!J M25%J*DGP(=E2#*-Y[;X2V^ Z.#'J)(VJFV C338DCZ?_+G\$OX"__^W_4$L# M!!0 ( $M@85@\,I%4+K +)=!P 6 86US=V$M,C R-# Q,S%?;&%B M+GAM;.2]:W/C.)HF^GU_!4_WQ&Q6A%%%@B )]%PVG)>JR8VL=$YFUO3.UCFA MP-7FM"RY1\^'JK0M$GC?!\*#%\![^>?_\?U^'CS* M59$O%__RA^C'\ ^!7/"ER!>W__*'W[[^#/ ?_L>__K?_]L__#P#_Z_7G#\'; M)=_+.2="U%\"U?WP7K.QG\>;GZ2_Y(@T]SNE;+U3T _UJ^]F;Y\+3* M;^_6 0PA:AYK/EW]"84"(8A2P$0: A3#&# (,> HBHG@89)B?'7[)X08932. M0(I2#%":8$!2@D%$4X$A8R&DL&QTGB_^\B?S/T8+&6CU%D7YZ[_\X6Z]?OC3 M3S]]^_;MQ^]L-?]QN;K]"89A_%/S]!_JQ[\?//\M+I^.""$_E9]N'RWR8P_J M9J.?_M>O'[[P.WE/0;XHUG3!30=%_J>B_..'):?K$O6S<@4GGS"_@>8Q8/X$ M(@CBZ,?OA?C#O_ZW(*C@6"WG\K-4@?GWM\_O3W9)?C)/_+20MV9L/\E5OA1? MUG2U_D"9G&OIR];63P_R7_Y0Y/)[DG=]**L'X4IU/_J2L0O3C][$_:H90@XO<*N;BT6NOE#O%F*L[^ZV MJXM%'UYB7U^+Y9K.1_A:[+IIB3PW?_B@?ZJ[,0UUD&G93TW=+5'E][5<"%FQ MY5[302[^Y0_ZIQF]+[[1V5OYL)(\+SE;_SR7YH?KA;B^7Z[6^=_*O[]9+M;Y M8J,73_W!V[S@U>]2W#S(5?E$,4,<896B"!#)%$ R"O7*1Q.@(*>QHC1CC,_6 MVXDPDPOPVY=&YE*P :3Z@P.&ZQ-B^+ M!UJ_H%4S)D>E[;^VU0KH0@2TI<\__[3#8JQ1FT]S+.;C#<-5L-4IT+(';:VN M@IU>Y8=MS8*=:B\Q">^+]7S"22[ZGP]Q8NA-5_S,N-=/_*1;YO)A#?8FL5HM[P<$:+T< M\/M>#;E6[P_!>; MQ2^C![KS><]_+#LBA^ULH?[T*;LC?J M*_VN3:VW^7RCC8(O=W0E9X*)4$$D (WU_Q A$."4)T!(BD(L"82>NPJTUN9SK?=5H#4/FC$M=;^<@ST.P,[(+S1V)?J*%JR$ MK^Y&#P6,?Y+S=='\Q7!T7/*S#TE&866/D#5<[+-)-P8N5NO99_T=EK_*>R97 MLY@G*):) 2B!*!4,LVK,0)Q0F.>I52D!-FPZ;-VI\:,I6C![V^7]S1?_']V M;/@;U4J/PPS%<1)RG (*$PP0BSE@*",@ M3+%*11PREH2S]?9 Y.S:NM>ZTT0\<;;C\\M8'NP$O!(NH*6H;L;)/GAVYD9O M2 :>FI5<>@=62>9O>3^JL*<%>[_M49?@HVH]7U2//^0V4ZO-TI^EN<62XOI1 M+\:W\N/&S/T;5:Z_A5Z[YQMS:_9F>7^_7'Q9+_E?WOUUDS_2N>ZWJ-?J629D MK"2/0"*P7F I)H F<0(XUG]0*.*0$9O9[4VBJ3%"HU) *YVJ'4L1Y(TV 2_5 M"0JC3R!W"ET%HK7AJ5ZSW.GX&U^;8\*11VU@TMH.6*U.4.D3W*AJDU($6Y6" M2J>@5"IH:=5L:\8>+9>CP9%';:1CP8/IMJA&3^\YK2=>,^]^]'4FZ!'J,^>! M/GH:\2S0(S#[YX ^&^YG!'^6A=0OW9DS1ODHY\L'\^U_]_U!+@HYDVD4R81& M@&64 11A 6BJ$J!2'F80LC 4JD/<1:D@:UJ/XL:RM$/%G:W7V-:GE;J?W<$K=[J?<5PDK20KZ5U;_O%_61 MF68M^I!KN_6:%>L5Y>L9$SB&+$M!I,UM@+@B@,B0 6V&$2.MX86'8] M-6)YM->#ESYCEE^3Q?Y[+XD_.5@>UP6-\0# #R\!<"I;#! MJT;L'PS66\F#6O3@]T9X#Z=O_1'S=X)OV_'8!_:.@!PYGW=MH1^;O=X4^4(6 MA3:X6+XHMP"?)5_>+O*_2?%>:-;,E9Z;AT!FE@UFT4#5J:7@4[78.VLD&E;="H6ZY[+86#6N.KP.AP=X\(V\%VQ[;.N=D/*VP;?K=>2MOA,4AYM^M]?[4=:7S+TP46LFMVWE"D)1ADDB0T8@!Q'@$, JU^1NG$>=","IB M%\JR['=JE-46.Q!YP>=+XP=B3OVY,7.45D/O5+=Z..[^;4?#CK4&P'A@UMJ# MM[0;CO'[:/?.)/IF_77^C*U'^[ZON5=M]G_17[Z/^,E;N6S,."4RX2@%G MA (D1 R(Y B0+ FI2%G&L94'WY!"3HT.K^?SH)0V,.(Z.B -,HJ6S/C"8S,P MC>Z&Q*-SXAC8^6+6(40_W(C?IBW'.57EWT9U5<<33+,AA!A F(A4 96$"".44:%LV MI32-(L2R'COMBP6;&I'7>ET%JT8S$_32J!8LM[I=!;+6+EB7ZI4.+RT%K\R+ M6L5>V_7+!]QI/S_J,(ZSX3?GM]$?S4/8)]#P6\ MP>WWU.!RL5[B6,$;F"?.'?RUWV\)N%G?R=7'Y6)[OU[%^#1N-R&"62P5!81' M$"#.-;'KWP'/HB3.>,@E3UR(O;N[J=%U*>U5L)".KDQG0+4C3W]0#4R)I:!! M6]*@B32LA3WMY>S,<7:H>&*N,YV-RD=VBC]G&D/7\G:Y>IHQFF$FDPC0C'" :(( QAG4OX9<0$A$DEI=VY]H?VKL4(D8E#(& MC9!V1'$*P6YF\(#+P%3@!HGUY#^C^)'97DC^X^WR\2?]9C71]0^[^7VJO5$F M]!EEFAE\[K&>1WK\3HK-7-XHNPT"]="7$OY0=C]L0D]* M6VMJ-"WJ[9&)_+A;SO7+1=7KSA=$,)J*, ),0*(W,E$*L%0"2,YABM)4(,=K M!YM>)T=DC=#E641+[/_>S+B^?B!V@V#)7KZA'9JX?*#J3EDN*/EB*ZL^QR4J M%Q@..,KIY7[T5!_D%U^7M9-2BSB$3/-#<\6#[+,IVU.,3NX%9IQ$U6"\; MY^!@)^U54,KKCVYLD?'$-&>[&Y5D;)5_SB_6[UVZF3OTS97"PC/WJ_'@_2J_ MKU]K;?\R2SF/2!*F@!%A,I@S"3"'&0@5E!@E1._[6+\=GQ?YID9<[0W+$>]] MDW' SG>_[V[1SZB[;BE''\L1]YT7#6/P>ZEC8)0,2BT'V:%ZQ=_[-M:/="^T MU_4*[>D-L=]N+MPUEZW.PACQD)$8Q$DJ (I-_@(.(5 T3C(*HRB)W:A_K_G) M,?=VQU9-V;Z;W0H[QUVM,R*C;5_/@=%_C[JGL^_-:-7XR^PZ]Q0[N;W8( IC$'$"30.M1&T2X?9 MU_W_ _0F-=\XXS-)=>!;OCZOQ6T[/^E+@?= MX.FX(W1LJ!^U/N^ES@RWO8FAD"I[H:&K$5AS@#ARU0ZUS=0HH9$R>*C$="S;"?C M%GGH5/2@VD/WT_WF_?%*3%4UO+*$UR^KY>:A<%S*'%N=T-?;JJI9)?T@:U]/ MY#Q-"M?>1YTM/:%Y/HWZ-M.GK,JGU5+)HM =T/D7N7K,N30]E:%5=:VMA+-0 M04P!A3@%B$F]UJ:FB$JF1)PIC$)IE;;)ML.IK;5MB8.B%KF<;DLCM$O9# NT MN^EK" P'YJL]^!IIR^*V56SE[Y7$ECL9:QQ=JHOXQ7.TFL)*KHS'SL.Q[Z>W M/W.GSF5M'&B:E'UOEL7Z_?T#S5?F:V4J M5,Z2%"94T S(5)G"NY$"U)SE\C#B2,4,L<@IXL.JUZD1\TZZ8-[E#WP!SG;& MI'?TAKY!W\F[R^MI)+X*6IA^\.IC[821)V/1KL]1340G&)X;AFXO^[ZAKX]Y M]R^NMIZV,E(DQ(D$)#&,E.$,X B&@-(HC$,)0\?"'CWEF!I'M6^$F_+1AW(PW0OR MP6_RNZ68R'V^%53VM_IVS?4T"G63>159K(W--^7AP*U<\%P6LYC'(4I0#*(H MBS7Q0N,FR3F0C'&$(PHSMQ"[CKZF1JXM4-1:!VL+*'^47R3>K:IID"4I$ MS&*02&8RGR !L$H($)A$*LD4S3AU,7X.NYB:S?/;0N3%>I6S#A->?))R\,^RSW7G7:D^OO>3&3$0E9'$N@ M,$D 0DH"FO 4T#326R6$DC13O2) G_YD:$;3E_E?)=$U\WT)KT^K?=A.]N>Y3);J5>,]'M'NZWZO]*\\5:+DQN M^=KU \50X#B$@(:A $BD(2!89D )!&.4P@0SIQ/1@QZF-KE; KJM[8?8V:WI M%R$R\&1NR7;>M\AY*3^IN:57YX4:U M.F@^G=$DYHQIXYV@3*_7VHX'&,8AB#"B,B7Z?\@J![M+IU.;ZRVIZRHYQFZ] M;WWI>?V$BT.=Y0!TL\-0L Y^);)#M)(XN%%!FT;>#(>HBYNB?V1'MX9&N# MN>4AKFT&J-(/346; 0M9ZQLI.Q1G6R<,;Q4TJNN?C/)7Y9-;_?U1^JC#Y6E-&$?F41>548?A M^:HT;N=]CDJ^WLE/RT>YJ+R,ZU.[D*LX210!24I,B6(> YK%$J!84$H5C@FW M*F=UNHNI+1A?/_WJLAL_BIK-:<:E6 Q,N5J\H)1OZW7>(YKR*#@N!Q.7@C32 M,<1SL'R=-72I?^9DX>BK(YXC=(F^?VK0^61O)]6J8J<)6_I92U9YP&Y,->!= MV/LCS>=EJ' M:F1V>K5S>VPU,P5QVO%AM7)U9E&O;K(^\?;G0^M%JK$=;'U"><3[UFOS?:/6 M#QV JW*(>P[ QS.;S"!G$9;:?,VPR "*< I8+/3_TIC ,%%A'&5NT>P72#,U MVCX:E9 WVK1B$G@YDV*K3"F0PL:1'TS?Y M#+3W@*RW /Q+9!DY,-\#;(F?1DF]ET.C76V"N"O)4Z:,3V45CZ] #8L8IO6 ?F M%P^(7E)4^BQ$_FM*G^[RI4I*GP6AHZ+T^7<])GO]2K]7(7HWZNCG,T%$"%.4 M (5I"I!DIK(%3H D3))$X31)W?R(^D@Q-=*J#Y?6]'L@OS_(1>'H&]YO*.S8 M:G" !Z:OXYNXJT"KL(TF52>V>@-GXK5%</FLO+8P6>7FM6[,FQ^3 M<90R-]#E!70O@\&MT0G-O6->)I6CGY$]: D_B!71#[?AW#VZ.G]IOPT+8"P< M,&Q:Z;L!6O*_U*?@QCMC_33C2#!$:0*$2)#>Y%!F:@5+(&$<)XI(&:?,)1O. M81=.=L((66^J:\&B=2'PCW_$,,K^J?3#6S^Y;FD.((U9"$.)!6 LU9"F*@1, M2 02HBVSF"&,1#:KP@*TA;E:CP'L\^X&I"MYFR],.HF T;E[A-X1/*F 5&^] M"1"49 !1$\D<13$@*J,0)5@I0FL\WRW$>&@VG0V'I>[!)Y"V.^M+H!EX,:P$ MN@JNUU4*F.:.^!/U6_#D- C>=LH''8R\+SZEX.$N^.23/0L;E:Z$I>FXJ^ZP M32QZU*!L*O8D,N,)3Q.@=[\8(&7OR%B\[XVAM M\CYLJ^)*$LF,)AE(F%[A$&,1H!+IMP<:' MOA6(.W%V.SFZ%+VQSHF<@>M])M2%B.<3H*-=O9:S887\ MZT8ST;M'_;^ONI6W2Y-B8)8A#A7"VM*B*@8H3@C 2MMA@I.(LBR-&'=*!W2R MIZE1QT[0H)0T,*(&OU?"NEY5GX376^F3Z'A:\]]12BM)+^FU>>N&M-RMYHQI:DL6,()1(F0A L7&-HPD& MC",&J%(D(2H+D5L9&XL^IT8;C;'D?E&0<(GC..RZO]N.=GFJ_^@\XW3>#P7L#PKY(6 MNCMQ8X*-]7;*. ()!1D80QES)%"RNER^D0_ M4[MY;BKROLH7P:80)CEMY0GW@]O*< I62M,TCE0(!%<:5A%"@$.<@C!+6)RD M1&4IG3W*%5O:+M\>@&WW]_<+;8@H"06/ 8DYU=_8. 0,P1#$&4]I3% HB=.I MOH]O[!CI8IL:TI^^# :MG17B ;"!;8>.4L[^5OHS,'A:GT_U,NJJ>D;5YVOA MN?&"N M8C"']IX8=QS=O2Y\8^[+2\.;7.-Z=?B&\\ +Q'L'/<,S.%]N=!^?)9?YHVG0 M%+RN'<5C2+@D. %9!C7+DU@83Q%N/%-%HJ(HPXE5XF6;SJ9&W*_S^;QC)^4. MIAUW^H)H8#ILQ QV!2=\XA$^]!5J^ MO.:[NAK7+]Y"Z0//=YMW>B;'K$LJ_3E?W[W9%.OEO5PU1[I/M=VZ.R6>"8I$ M1@FO0F51E"I 4R:!$HF4*H&4"2?+T:W[J;',\\VL_K<1U3&KI=LHV)'1<-@. M3$^-X,$W+7G0B'ZUO0U[NFHVO:W+-H])*GOAYBLKI5OGXZ:A[ 7,0=[)?JWT MH[>OJ]+MXJD,C/TJOZ]?:X7^,J-)@H@@$4!)) !"&0,$*F'<&52<(!I)XD1C MQ[N9&EU5!>0_RP?=X!WM]WG=*'BB MD!.=C$H5W8H^IX0S3_<\+MONNGY9+D51.5O)^X?Y\DG*+W+UF'-9?-7[M,*D MJ6Z'FHD04A*&&# 5FJ <9J[O4 1B&*HL23)"H%/-AMZ23(Y 6BQ M<3X1*:""(0!%%D4H215UNP=U[']JQ%J)#TKY@YT"VW0&I0Y!J41@M.@9*.DZ M2G8D.B#V U.G?]C=??S[@>?+D]^Q]W']]?M!<^"5W[.9BR]IC3'[^JELOKI_ MDSPBBO (9#'D &5Q!E@6:?I+*(P13<.(.*6*Z.AK:@2W=P%7;K#84SVQ+KT4 M/8#9^9KS$O#&O+ATP^V22\A3B/B_5CSHZ:4N"D^IW''U=_*5"\,PWR\>-NOB M@WR4\[BN>)E$+(DS' .(! ,H3!C %"9 F82*^A/$$>H56'G8U^2H([]=Y"KG M=+$.?ELL6:&MV#*@HA(]>%4*_X]_C-+PGV)'+],NR"V-'S] #FWHM"(8*T&O M@E+4(#Y?E;5_W.)I3'Q'(A[IZ65B"T^K?#):L.,5#X?>K9IZQ4Q)%+%809-D M)@2("PA(Q!%0""4\53SBV,DEX&1/4R.1:LF\#M;-*6]1+J:E9WI1.JM7/SKR MQVFD>YR*]\5OU(/QJ[K$YU7E'N4Q+.TL%D,-(=C/ Q?@,/.O[0V,]\3LAZ)KL^L761->_ M[2;Y\39'F=B=ZC23N?LA+]GEBFVQC8RGB8PD!1@C 4P67Z!W$1S$+(FR2*:1 MB*(+DLL5DRV)]BQ76M&_"-HI:"W/&#P -O0!0Q^L+LTJ=P#$,$GEBA5?I?%N^^Z8]U'OJ"KI_):R,1Y&W^=Y5SW M=/M^H:>O9J]9'"9IF,D4I-+=NB;RF,L C MK#[- /^_K^9:W1^F/!'\!G8-).G8HZ-"0'PDB';S+2_WI3D0ZG0ITNGDHY;[9 MK/6^IZR2]'%3GK +B"%BB)K[T!"@F&# " E!"$F*($I"2)TN-;Q+.+6EI9;3 M%%%J?'B#Y4[H_N>8_L?6R,?/,[RG??]\=^2V8-#[XALU81Z/;?[V#-C"7MB3=74-MP?OL&SRQY!LS.ZJRX:.!N-?M-,&T7ER1C7W+%1^;KC9O-+'!-NY*NZ'U9KEI7*5A5DH4L0H8!1F "4\ M 4S0$ C-&9R14"9VD6Z6_4V-([;>M3?J>41Y%2/EXIILB[F-9>85R:'WN2\! MHHN%YA7,D6RT2T%UM-.L(3ICJ9UO9T1;S5JI?6O-_K6>YZC&!'Q?%!LIWFY, MW8?*L:9T!2T_J[?C[[[+%<\+DP [)"&A5("$9C% +,L 8Z$ :9(PF":1D-PM M;L15@JGQ]K,J8*4KY[(^&Y6-T(XGH,ZC8GG".2360S-["6PE?%!)7WN!737. MY-4CS;GTN[/8NQ].]L7/U^&C<__C'B[VA>?@\+!W0VXL*&0^^[JBYI#QR],] M6\YG&=2F)H0)("Q4 "&B ,$R!6%(8PQEF AIE2S]H.6IL58M7%!)9T=/AW!U MT\Y%( Q,)Y;Z6U/$25V/3/U"\A]OEX\_Z7>J6:]_V$WVPY9&F<0G%6@FY^D' M^ID>1VND[]\X'WW$_'&^-.6K=AZ0,A&1BN,(0&6,$B(R@#/!088I)XPG)HC? MQ2CQ*-O4)GY;;FVG;/U(7GUVD 2)];4D-TT8_N2S>@^P>YEM>W*UEE(ZZ# M6[&2@L%, <%"!)">(0!C'@.98<11RC/AE@#O=%=3(V,M*:A%#>A65C<*[@#6 MCE']P#4P0>Z$#'92#A N?!X,3ZS5T=&H)'1>X>><8O%&WR !4U"Z;&\;C[PC MHIEDQI*#!/"XK.=,.:"AB$"J$B)0PD.2.&7"Z^YN:E3Q*UW]1:[+7 .%*=+: MHRSG&7SMV,(?:@,S1DO0JZ!5XGHGK$]W:!M0O'DT=W8VLE.RC>*'?L56;[U\ MP>%VR5DL$AXE$06<8 Z0H$S33Y(!R*2 6(4ISN2VS+!]M-% XEI-Q&?%A4<( M."K[:!<6#F@E^LL5&'[9LL+_ORHF//D*PG\?=8/_KZ@6/'*-8'^5@8^ERH'U MA@M1121-S+UH2@%2)JF>0/JG-#9[69P([E1KM:.OJ=FG[#%V;%Z@#DP]9[.C@5'RHX%1\N.!:>2'0NZ9\=Z_DK/4S&YWIW&S0B, M-$4("4+&!4!1E *6$0)PF*(L3D*,P\PEDGVO=2?"&,$4U,(%L@Y/=CSQV@-- MBHPD*I(@B9/(1(F'GY>W?HU+7+^^JE*&E;E*]V6 M;X%Q$H:E!>V\TWI6?+UV[). MCORK7-\MFT*MP2"U?"Z"VWLB91<97BC%<@^83B=?[M-8/UIM;6.;8J TC4-& M:0IX;&)7XU0 9C@312F'5, $9L+%:#SL8FJ68W6(R"OAVH>);O1W!$L[;KL, MH8&)JR7< %523ZONB42.=# J0YQ6\/GT[WCRPH.E8\Y16 HN.8L 3K&>Y2S2 MLQQ"""*589:D>N]#W&K4='0V-0/HZ.5=_SR*G3@['B5-VZNL/W#]#Y*&]_?J M[.IECI(8,NGF8(LHQ1F8(D MBPE ))* $AKI7566X#"-(\JL=E5G^ID:;52B!HVL025L4$MK[_+>!6TW77@$ M;&"FZ(F5DWN\!1*]G.6[VAW-==Y"N;8CO9J>:@UN MV#R_+:_1WGU_D-Q<^>?W)IV;^J+_6JBJ"E\5TTH1IQ)&B=Y+P 0@J!A@D

!MO. MZ!E_" \@NV)\O+DU"CVFA^@7QNS7ENO1_EOUD6ZVV ^"[A?IAF M2L48P QJJX\K#H@P:;%CI"*!L(@C)U^$H[U,C9"-D&9RKBHQBS^Y\>EQ).WH M\6)\!F:[!IHF@\,0N\!.##R1T/$^1N643C6?4T3WPWT]Y?=KAWZ4ZW??ZXL' M4VOY6SZ?SS(,49)*#A0Q>?%#9B[&PQ 0F1%)$4MB&LX>Y8HM[3WFSW?K\HUO M=S[<%[_R1LJWLA=7P4*64X%ROKG?S(WS:T#OEZMU_K@43'-!U M\#_I8D-73W55O^@J,,E&2B_'?XC059A"\]#UPRIO"O^%Y2.QJW>^Q9C:49'O M<1J8F8X4.S8W_*^V,@>-T!XO^ETP\N:X;]'ER.[[]B <.O$[O'OQ;=?U0I29 M'^Z6<_U^\>ZO&[U_WMDZ.%.I$#$0G$8F;8, E&$)THPQ1 522>Q4(<*VXZF9 M/Q_>7[]^_^']U_?OO@37']\&7_[M^O.[?[OY\/;=YR__^$<,H^R?@G?__MO[ MK__9^ZJL>R"<+]"\P3O>M5K)_)6@@QA1KNCXOWGK[O:E[N.LP.BXI;-[OW>_K):;A_+&O_2%+D.IJPI\*A8ID8AIBE(0H!BG@'%MC3$>IURF"F=N MV[&S/4Z-FQJ!@U+B8%]DQR*']K#;$9)7, =FH@MQ[)/XP0X;?^D"\R0AX],,]B/+C_Y6D) M)N)]>18B>]_+\TU=3+>EX5A]CUJ1[-6$3'@DPE 2D+)0[T0C;>'15-,L529+ M!4]%UIMA.[J=-*E6.Z5ZWK4DOY@EN\;!F1@]H3LF%_8&]A)RL\#)/Y]U=?I2 M%&8!1 =KV;S=N]3N2M)"OI75O^\7A[O>S\OY_.?ERM1;FD$"DY 2"G 2I@"I M2#.6WI "IE"2D02G:>SD6>K8_]2HJQ$_>-4H\$.0+X*V#O]]>_IC] AJ11QY MS'68;$_^!P-_\$L [[CWJ6K:!SU_E4J=>A^[^F@?:(Y4%.W5S 79[8\?5"N& M18H) 2+BFO4R 0'C% $*0X%"&6KUAJI) JEC-Q<*CK[FYXO MQ5NIY,KD>*H=K%S=J[K M2,-;X -S!N-G,&WW#C2UY+NB-9?.2UV(ZY8);'*_;@C'),L$$4(Q!@,*D3'V,01(BI T3HAAQ M)!1W(:;',E8E=2XH,.X^3C).*$ND F&D(CU.. 1,,%/ZB.(LQ))D6'JH>N1I ME$8Q(RZ-?83;6%0B#UT:R0'G8XDA= DRA.I(%0);E MD6Q:>OF4NCNWP6*6II1R(4*@9)1I5E4"$ B)WHFK%&=Q%"62N+#J0').C7I; M_K*T5.3EDN>V1]..C2&9H)9M)M M2_EWFTGW"-1#9M(]UMT+A2I_T$J]7\O[8B832C)).. 9U?LH&$M $AB#3$2A MDEQ!J9#;/LJ?<-/;7QTMXFOD#4J!QPY"W@VC(I1 RF(0"Q5J@P!*0%&4 $0X M%Q CE7$G/_Z7&<2_M\CS*8R\G?'P,N,YL+TP]E".'XM^@/I4XM%W@OU]Q:0? M .H]+OVP!_><1&_K\O0_YP6G\VJ3^K/^6S'+9)IRP^YI%IOE.D& Q@B!2'!! M(P4Y2JR\Y#I[F1IE-X(&E:3U"4Q0RFJ?C>@TJ-T4Z@VJ@=FP%TI.>8C.HM K M"]'I5D?+0716L78&HO,/]\QB6&Y3RUWJLPC1WPJI-O,/N9(S'HJ,(9F !!,] M_RGD )-0 16E*F(2*\F(?&4YM.ERW&R'#B <9#UT>7>0C//7"U&'!I1.MKM\ MYI*PB"E!@%"9R3E/)& 1I( *'"\HQ-7IJ>YK7 A^)O@FT55D' MUESO9:(O]$0T.Y3W"KQ9+A[ERKQ?^3M[35)_(Z3B?ZD%!.)AK*"RC$;_=GF+DD]9M)]E.'U$U+]G1CEX@.5F7PLOFN86L41G%4,K9C]F+ 1MZJWK,1W7GQGH5?-1SA!9WY35G%W;NV]).:'SM.H]W,NZFLE/1 M@SUC]]-]MX3;O!NOZ_K,(J9QE"IB;FM_I:N_R'6]L)NKK\IWFM/Z'K]VYG]5*AA$CA%P72-B1Q.> MIB[A:95/EB7L>,7= _"-23GI[#8WFEW=,_+8KWM'/^Y8 O19"#V?Q M:5FLZ?Q_YP_EMRF3J4"\AB:!0_>^WP?Q$CL+AB>#_'0_HYKC9]5];HR??\&-'HK5 M>O9IM10;OKY9U?X=U]_S8A8+%,9)2 ")!0.(T1#@*(5 ,2@B+&.,%+9AA5,= M3(T,:AG;_D;![T90R\#'DT!VDX /> :>^SV0L9[VY]3OFNWZW=9,U[_M9OG) M9D>9W.>4:N;TV>?ZK?3;BH \2_0&6IH;=Y-!+!$(T! F@-$X03#"# OALK#W MJ0\XQM1MY');MAT+)TZP..)9O9U7WX&J&[Y,!<-S50H]52+\LJ;KTDFA2C9J MKLN7"Y.QO61_)9)0\80#B)6>B!G$@#)% :4J$2R)(HCV*6(]D;!9(>,N[UM77R"G6+-0^S*9F\U(_VOBZHHM" MZ4FX]:LN ^U_SA=TP7,Z?[\HUJM-5?I!]U <_Z@N94<1S: PE1E8HHUUG$0 M$T0!21#+DABF"CH5:O IW-1(:2MIT!*U9Y%!KX-HQV0O-31#7_SU&Q5G^AL" M/D]LZ56T4FNF(&3!1R-NQZK!X#LR=^V5? MV[4-VPH$6PU,.JEN\"^K!.N$WQ"E8>T$>+E:L4X =1:/=6NI3ZC>QXUQ]+A1 M7S8/#_.G-W>:/LL<[$5A[J6+69B&# H$@524 Y3$"2 TC8%,12RB+(546#&; M56]3([%*7!.L6I0"!]Q('#Q4(@?4R.P23'8.[&XR\P[AP+Q5HW>C@DK6H!0V MJ*4M/46\HN<2@><1Q9$"[RY"TS'>SA*=,V%VYUH9,;K.4J']H#K;ERY-C_>? MDJ[JY'@J2F2$N$;3E":3D028IA2$1"09#S,HD=55?4_<3_8RM0G>EM#Q M&*X;S>[9[0VCH2_YG.!QNG@_J_X%M^^GVQ[M"OZL>NU[^/,/^XR(;X4VOW[: M/5)'/I?%>>HZ+;_H!]?%^T65A5/O^8IBEBA)L$@QA56 M, ,H+=/-A@C@+$Q-NEE&"0U1E%I%%]MV.+4YNB=O4 GLG)ND&V*[W8M/X :> MWL:#P)UN$_"4XZ>YN['PG5LH?27]B]YZ[(?YA:2J@W"T7 MLKKLF6'!81AG$&2"$\TE*@08<0I4&F,N,HZH71FZ8XU/C3=*^8)2P*"2T-[^ M/@#NO/%]"1P#LX$#$DYF]RF5>]GYN6.5;V7U M[_O%->?+C=Z#?Y9 MTK44=DN_3;=6WUM2?6_;G0_W]6UD#%9;(:^"A5R[&0%6D-L9 MY@'&?Z-^(& MKQJ!?Z@R/]6P[H3V9PFX0.3)&K#J>) KDT6Y3*YH MWOJ3&WDY#Y4=D0TY .36B-Z4,L>[)P9ZV%IR7^U*Q'4J.)QU],714^\Y]S] MJ!S8%YSG?-B[G7[<^&FUU%-V_?1)?^G6UPMA0N@>S*W)1[F>T4RE0E$%HBQB M $'-@QAB K"D620C'%(6NM5D[^K.9=*-4V6]D;;,J2 ;44N;S,P_O8>LDO/K M^2:DWMOR?$N(_Q##*Y2@@*Z#_TD7&[IZJO)+QM%58'PLRR;-0W$6F8>N'U9Y MG8(R#LM'8C?F[!Q(.Y;T-3@#,V(CYE50"EHB^6XW.!\[#&9GRK.!Q!.]=78U M*I79*/VN< WY[-\T-^?.VT@ZIYN5_2^]AY+,TJR1(8@A$SO';5U!C / M8X 5Y"0)0\J15?X;F\XF:98%.VMJ>4;*=.-LQB"_T!F:0_L#U'>?>Z1,9]5G2>3E.>F6^4;]IXTD;3CDS5G*3I6M&$ ZS M4%LV3,2)WO 1!'"20, DB:G",$09LCN!LNYS>L=/;:&-";-IB[W=X?TT7Q:% MWG6840]:13*>%X]=+X-+2VC8CU\W._D=DW$HRFXP?./H$GKE&<^1PJ_LY9%.%FIO'C]]"O]K^6J)*8J?6*(PR@B M"B0(FMQK% .2L0Q(*7 &"42<.@7\._0]-6NR$AV4L@<[X8.Z(@)["DKYZYH_ M?3)$N0R,G;TY$-P#<[M7I-VK*;ACYJNZ@D//XU9;<(?DH/I"CR8NKM[T-G_, MA5R(;9K9MY+/]3]BAH6V8>,X!%$H8H!20@&)TPB$619ED!9U.=CHU M0GMC"A&*1MI U&(>7%&4 2:;HOJ@_(MCG(G5B-@1FF^U)CO5_J]='KF6Y7,CSN=W.C-\U#:$>'+#=# E'FB\/9NI/:4 M:X?4:5HM]3/;UD;#JZ8*E]'2'\,.@[XG+O8LW*BL/0RPS_E]H%X\I.$KC>!< MY=7^O]SIB1!3F$()J%0*H"Q5@)$X S&/$Y8)%3*[&!S+_J;&U?M9X8)]@7MM ML\\!;D? 'F$]QME-GP_ MSY??BJUW6!C)- YC;38JB0$22@"BA BH0B)-!9$]DOK?J2SJ1'+5E9C+Y1[ MX5)<&\\P=Z MKX<]P3?T]7!_Y/KG>>^ Q'>:]V-=O4R6]PZE3R9Y[WJG9\VU M*FV\8:8;]=5X(6]63^7N^(,VH][K;HM9DHD,AJ9(2P0CO0&%#%"11 #RA L6 MPRP.K0**'/J<&J%4(E_5Q])Z:C1B-X7#C>1!*;HCM=@,@!W#>(9U8*+Q@JA[ M[39[C'Q5<;/H<=QZ;O80'%1V??UBQM]/ /,CBGZPS P*=2W@$,8&\=U]C3) MGS4^ZGP^KMCSJ7OB*3^%6E_3(N>[Y8JK*(MX*@%!1-L+H=3V H;8G%K'-"$\ M"3,W>Z&SNZG-XL,ZI%=!*?&5N=VN;XU*#FVGP?_ZK?89"WZ5Z[NEN,2BZ!X= M2V/"&^9#VQ$CPGUQJ=CC* Y4+_999R]:-/:XXN74DWWBYUH;DMIOT&Q+?M8"5CXE&U/@L2EEMCN%2VD2,R$C M$%.N3%(G"B@6"8 B29$B/$Z)53;'2X28&DF\.Y4EI8JFXUM5@N56E^ 5_<$R MBV(Q#J<<3< .S6<+\PO&@:7"+SAAV.DH+P^P^(K0N\R M$,\$[?5L?,0XOLO4WP_MN["M2ZQ/D_'5='2TOF:AE\ ;I1=$LV?%>I,*00P3 M"A"&##!MCNH]*R=1F&#&(9RM31$2%[O4KG.GQ6@KP@B3[M6\3)=;3C71KD2[ M6X2V%FW>,G/[F+66XX1C+C*S:X!Q" &"B?$.A2G@DK&(A=JRX+%S1DB_(S5J M:/YVK*P&28_.@&/CLAGQ/S/&V:;4&:1+M(\79R[*_4OILT&_MV]5/BU7E>/^ MN@IK-OD+33*$CYJ-=3-:B;EY[/U"&YRR\+X#F M=!@@.YXC1HR@R&+T\BDT\U" M:1P#$6 LS@ )B8 D"66HG#)S.$LP-5IK,E9?FH7#?2CZ[&0] SS^=O;H86J5 ML*,9B5*+H3:F#@ .LCNUZ?\%MZ@.\'3O4UT:ZG,MJ(U%+J4H^_I"YU)S[:]T M;?P*GF[4SL/@ZXJ:8Y%9A&(8(L0!92'6M)=RDY H!4A!126/!&8.UX%NG4^- M\1KIJPEY7PEN3 ]CC!1:G7*WNJZ$#PI'#Z->PV-S^S<\SNNG[OXU M7L\V+LL3=5]49A+"K.,+'>50BIK6J\NM=2EI?U0 M:>=H8_<<+3M#>_@Q&'B=V:9V:FE06M:U#F95K[387O_4SWI-CW<9CIZ3-#D* M\2+)F/H!=2KI4L_6^@;TK*GN=9LZN78AATF$6:0B$,<1!8@Q"&B:1D!*BL,, ML2C*G X9CGLFGH#2CKLN!VA@;MIBLW4E&")HIPL$;]$Z M1SL9.4RG2]'#^)S.IR\Y>-PF17E-]6AS^>5.2E-]YUJ(DH#H?'?D6;Q^VLO$ M5&Q]%HY?:7_81LN2E+*()1 D--,[=I0E>A=/&(A@(D@$XSA+G8RM$66?&D75 M!W);W4V<;JE]4*I?FFX[ %IW$65:\/U,9WO!O">\5"X(H1[S&^9R$CNY[\TX M9[@3^\KT/ 4>=?"\GA^/(_D+G#R/.B3'SZS'%:'?@OLAIRR?ERC5D$094Q P@/1Z T4@"*,,L(0+&J^0=:[#J;EA?35] M!/.=U-5QMCE[J.7^QS]B&&7_5%;27#^YK49GX;=;0GR".C#O?WB&Y+MNU)P) MV18*3RQZMKM1J<]6^>=\9?U>GRNULKE6"3S]=;C>W&Z*]4?-86LI%U^_:8Y\ M^M]RM?SZ;=EL]3,L(QYF0!&3G3!)$X"92$'*8\E0C 1BQ/YBK8\(4[.QZP)T M59Z*=I%'_=154*D31,04V0VARRU/K_&QN5D;&O6!F>HHT@W0C0I!I4-@E"A3 M#YT]?_ U BZW;4./Q$AW;M6(K'8C\F!&A.Y_];T5N;L$M#,W;;V:'O&^[1+5 M]V_=+FJI9[3!%W$:C8D)%I' "XC1*S>6: C1-]/]8 M3%.1*1DAIRQV9WN,R$REC$(09+B M4/,)CP C2#,_I2I).>51YI0SZF@OT^006DKI1B''0;2CC8NA&9@J*E0J :^" MG8C^J*$3 4]T<+R/42F@4\WGT[[[X7Y3_<\RO[U;2W']J/GD5G[<&-.D[6=: MW.R<4:[%?VF;YKXD Q31A, $" 0E0"(A $-!0:C) )&0*Q5B%S+H*DZ-ES;G,8WXC"0ABYBVCF L$X , M*V(I%(CC!,HH ME7(8)TB%TN5RYG) 1[N1&090F24H3+ $0DD!4!1Q0$.EOZ:"&-L^T\:\G.F9 MQ):C?4?;O0W]+7WWZ#-?"2>C(C_/DL\J?6L.Z' M>ZY0]P_SY9.47^3J,3=W\U6[4FA#U9P8E$?9>C/Q* NS>GZC*U&4S-/^_,VR M6']FHKZ&^+U59.DU]RJXC^I5@'*SDWN:I,-J)-K7B]S5@^N)>%'N=[ M84F'4QOMH6_4H]P*6R5T&E@RDT;>[DENO@2:Z# MG9YZ,W._W/C0@8<8#(Z4,X#"*M"F<M>(V6WF(R*_\ +Q;[[[WGOWZM@.UCE#^\L!NNR$MJ7 #Q$D>U>\KQ< M&>Y+X.LLU'U1PWVS@RW*J\<_Y^N[-QMMF=[7=Q4?Y7I[:8Z0PE&J!$A12$QI MB1@0F2)@7$""H+YW?LV#XJOE[NJ-Q MZ_^>5?B@%O#Y-WH:,4?M26D>F.(VOI<'B [6AK92>@+G;'N? \&5PG.QG7"OCG+H' MIL79%_K$^;S5%DJQSGD=GQ#K74NDPA2DJ4F-ET4QP)AG((YP'/,$8XH=4N/M M-SXU*FBD 97]S2_%(2ASV-JP7I%OSP#PB6NI3\@(T6L- )Z"THYKO&9 M<)-G+XT82'))Y(8OW M)LU1OA3EP?U[O17+%T7._X/.-W(&8P8SH@1@:88 BB0#E.F?H! LBC,LN5OF MD#&$GAIE5EX\>2-C\&B$-,9!=6E;!+)6ZG0*L9?[ MC99%,;UA%O;]L*MZ]P M3>Z.H[>\[>O( M1^V[9\GZA7+__D-_GNLUFBY0D+ F3!%!BXI>EWE53%FK3/\NXBB.: M46)U6=C1Q]3F?"6DR[;R.'0VV^R+ 1EXAE?R!=?O@UK"7MON$U\MA]WWQ3B- MM D_P,O79KP3@#-[\N/OCK@U[Q1^?X?>_6COFI"[RA[7CS2?FP/(K\NZQ'(K M!5$=K#3#!"(NC1M:IBT#$B2,$PC2%;=Y] M^E*5;97UDN-<_-%Q).P,I4'Q'9AB#9K[58:V"A@_\Z:8>TN';0"EUY*0_0#T M5QG2L?^Q"T3V@^=(G#;E17[%:FRH48L/+&FZU^W#Q=GE/\\5,10C33%(@ M1*0 "GD"-.'%(.821IRG+,NLDM)T]C(ULZX6M/3,K"4-?J]$M31FND'M9BIO M4 W,1KU0LJ8;*Q2Z*$4WT*(3_=N.2KK;'H4NK-1K*,'NX5Y9$#Z MG5_I@E;'2E_DK?FGN3'%*,I4@@#*& 9(8098B!%@:9Q%*64F*[E#SL.S'4Z- M#"J)@U+D8">S4R:]\RC;[ #]8C?TN?MQV():WGX9"<_CZ)1_T"N>8V4;K'#E M):[W.UR+2FY_>0:MP3F75?!\0V/F$+16ZUG&0/OW>H=&'7K^[U>9//K(:ZF6 M*UD]^)5^GS$9DTQR 01*($ (8T#3B (6W>([O_HA>3E@QE.-B-LF(%@7C,41(#Q*2Y:XE2 M<^M"09**F&"9)G$<.8;!^I1O:C:\T218+@RS5Q&:@[+\!>-Z =N/,UHOQ/KE M #[C_.U(3H7_+Q^!(=>!"Z1[^?7@ZZ?73M1!Z(A5O M3.'?U=?EM\4LS%"2IB0!5#)-]%)!P&!, (\SP2 CA(=6KNH=?4R-IRLQ@UK. MJ\!(JG$,C*QVQ-P%:#>Y>H)I8(+LA9 UO5E@<(2B"LE_O%T^_J3?KMA)_[ C MI:XV1R$6"Z4:6CP63XL5U5"<$TD]Q6G/-4??I7? MUZ^U['^9X0Q#F80A(!@2@!(> I8*"4))<*9$RBEQBF/K*AE!Q$$)L\M#@#Q*12362H,D59@L/$J;2* MLPA3(] RX9":+[_5)Z!Y(WI M[*[UF!Q'Q<[TAP6[8'YTOCLE& WXAM:?&4T MT)C_$&R5"'9:#%.[I3>(_OQV7 48VW&G)T!'/'?ZMN3NNO-9/N:%IMD;]6F5 M+U=5H,>[U6JY>K-OH(,#4V;'0P1DVIQ3:ZJU0DV&EB58C SR!UD^,8T ],C?U0/^\YX.1C M= F&%[@?]>IV-,^D2T!I.RU=U$XO?Z:M1?H\.W>5MH1S"6-,$1"80H"R- .8 MI!1DD6"1M@@S' L'9Z;NWJ;&%SSIOI3"MCNC+9*?3,C\GRI7Y;\]>;(E^88]/E/&BTWDNN=]U;>LH: 23-05HUS3#;A, IV&_!AL!V8K;>PMJ36=F0+XUKP M,DV_QXS+[FAYVF$[=#SJSMH=D.<[ZAXM>/33*:JK8/T7]?KI"YW+>H.6*)DD M3& @JFRD$@.[U M][R8Q2)+,$YCD/$D!"C.!,!AIH!,69)&)(R@W6[X:.M38ZA2N,!(YY@M>0\R M.X+I#<3 #++#(/C=B.8S#?(QE7UE/MYK>]QDQ\?4.LAO?/2AGC-4$X$P ;WY MH_PBM?E?7A2\^VX*1$AA'--,,JA-M3<_W,55E:5FQO[@282 B!$'*-(SFZ;$ MG'-%*0M9(E+AE O0BU138X0Z398)G7_0;=[10@:R5JE_ 6@_ VC),V,/R]#\ MU-(GV"D4-!I5=]4MG8S%\":UZ!]L6*7F0:ETU]PGC PEX;[UU5IUC. MIHH2#&*,ACX+O3@(8)NW]Y?E4IBD+A^7"[E?P;7XNJ*+@I9.$M5U M< R3)*,J,Z[IK73>I4IEFJ*6 M4DW*HB)HJ=6O2LZEPVIGM8PX6 -SUPCC=$D0P27H^@\FZ"7-2P457 )=1W#! M11BE0Z6\A;7>[[ OJ^E*JNEZT..05U"UJ(&0?$Z=71..PFI[:=<3I;$NYVKQKO;RKD,7F>RZ063)Q9RZWM4>NH%RW/>ZM=(_\.D MTC*J':7*\P^F."-24,-;)K&$R ##F (9RS3",DVAL$XL<:J3J='3]KQD)VCO M\Z0#0.T/E"Z!::P3)7N$>ATIG8+@HC.E@T9'/U0ZI=:Q4Z63SUYZK-3X2;:< M(XO73ZW?ZG.D4$:<( Q"I%D $88!"?6V)B;&YR=+&NBD.NB]A5F-)(ASR(01TJS($R, M]V.$ $D)5I(IB.+,A06M>IT:];TQ\25ZT5]OA7?C-#NH[8C,.X #L]=.WOH M>R=Q4(D\@!>V$TB>2,JNSU&9R0F&YW3D]G)?3Z#MH51Y?EU<;]9WRU7^-U,S M*F6QWFA%@*/,%*%/(L!$% *>*8%B030S.27UZNAK4!R8=-J'RU?5]9DVF;:2^O0%.@N'-U>@TSV-[ ET5N5#1Z#S MK_0.12OSC_ZR6FX>WB^,%V.^N#T:*W+-N?%=+#XNU]),DC%5$%%!9* &*4PZ(2"6(*284\3"DRJDDKU?IID92>G\N9$!KN8/5 M5M:K8%X&ZL[GRV]4?Z4"M5P%8KEA:[69;U]PCF_S.,ZV=VDO-'J#7\+56:%+ MQB14 M;X!.^F2Z>3.G>A>MVRU_>%UOM&!"&84$ BY-N3XE-,UG2 ).,D$137F"'8IU M'>UC:F1=RA92O9>O?; M+(M3&/.4 )*8TBB(,$")1(#$BBO(8)9!J[2&KAU/C1)_^_'+C\'757F]_!04 M6SD= QEM8;>S.8< LG:E(EIKN]-4NR_52LE MC%@29U0!R*7FJ#". *8L 81+'B6QWIX3MR! 9Q&FQE8M#8*B%OW*;*8;X0/: MDM[Q5-!]@"P/"P>%?6C+L(5X(WWP90M]2X'@V@9Z][/%WNCY.G)T%V# M !T<4/9OJ;_+62O]?^7)$$$A94PER-(, H1#S7J$"Y *JC>L)!8R][) MU'AMZU#5$M3-<:03TFZ>\@74T!96'XQZN9V= N$BM[.#1D=W.SNEUC&WLY// M]JU9]G,^EQ\WY7% &F4,I[$ #/'$F#7&HM'[KRBF0F$11;%=;H-CC4]M8MK8H1J'Y<:./'-A M!$OERF#.G7/*\GFYVZD=SL7-XK/9 :U,+8HRF&[5_/J:%GGQ(5_(]VMY7\Q2 M)L)$)0+$(N, Q1(!G"@(,A%RG$480>J41LJK=%.CA5V(QE7C_E/>)NTT#!H5 M@]*WNM:JB7C=JAF4>@:_&TV#4M6^@3->O@1V&Z(7&]J!*>Y%1K5_O(Y/]'W' M\WB1[67B?7S">C(>R&LG_9:/#SF7BZ+)IBL99L0$.!+],$ J2P#%B &3K0HC MBD.L0A?ZWVM]:O1="^?&M/MXV3%E;Q0&9KI:K@%\5H]J[(E=]ML>E1V.JO5\ M=A]_J,^-_\WZ3JX^RT>YV,C6\AS2,$GCA *(S-&*J69#,QX#I6VW$ H9LL1J MY]75R=3F:BEET(C9PU+J1+1[&OO":>#9/"Q$+K?_ET,UTO5_!=FJEO1'7U?_ MW?J?N?L_\?*(E__=XN_?_I]YMN?U?^ML^D8]=]:?I6D,)9Q&/.G2[].[N;&A.VI351=*T:,F!5US?)MSJX>@!T(V]G[OC#W^79O]3W&_G(GYW-S.4873[.80AF& M& &:I@0@&&' HC %&8K2B*09$\AJSW.\^:G11WV 6XH8U#*Z'F;OP6=[G-T7 ME'$.M.WPZ'&D?4SM"PZU]YH;^5C[F"J'!]M'G^IY-K%1(Y+?Y'^IC:E&V)]H]_Q#""_[185F7B M;"L2=P%J>81Q&4Q#'V1HZ8 1+VC)Y_$TX[3ROLXTCO0P[LG&:14/SC;+'J7' ML5P9=6U#+7//=&OG<;_EA6>B_OZ'%W:?5TJ2=%*^??BM3!]3Q M7HO;:[[.'\L[FVM6K%>4KVA/S.]WZ$/6/:'=JN@":\-*A6#5T;)'\S'1L_@4VML7QE=@WSQ0[!5-]CI M&_S>:.RSJ-V ^+K=&<($<<]$QH0Y(.3I"'[ZK?R?)3?ZE!AW;KN=J%_Y%52 MT*JPS/,B1PI*#!%D( QQ;%:5")"$IR#*THA'8<(DBUQ6%5>)8Y^Y'Y<^^X#SGQM[M>,AO M\W&Y/II$X1=MV1M2OEDTC\\@393"*0(Q9-S<]T6 D20#'",9JTBA%*M>11AZ MB6,U3\>OTV $->Z(!:V2:[)Z^W1!:AJ'(8HDS)@D&"02A0!E"@(:1A1(IA D MA(DP=5JAAAR;,0."FNPTMU5VFL5R'8AV7IKE+B_-;3V HGYGG(&S6\M&&(Z! ME[3G>8*T$BVY +LL'Y [G$)E_'*1XN1P_[E!U9O/IT5S? MH/'BSOSW[J^;_%'SLUY?/TN]E^7Y#9&C=<; Z6U[*Y>BNL8>)<<;$_J2VP_O?C'[ATQI0,B(!M-1:"/ M+2,+"D2 [51;(,9# P\ZSI?SK?IM_N-4O_F2LD>ITAPBP8 DMEZ7)@S0 D( M2XAAQF6>I5[3$G\3IC8CJ3.>._FAL717 GK'C5B'Q7Q@-JV-!Y7UI^FE8PBO MA,,7ZS"@OP'CGO@+!NCD6%_XD\(8\3!1Z29TI00IPC0""N8(((HEX'G&@"@Y M+C@2I$SWRV5NM'>VG8!UL(&YS6XJMJLH?;&)4UKKKYDABN7QSV[;_?&'O_>*>>5IOY=E9 Q' J"U ($^.8GRM9 M%@IRB'.9F^\^E](GT#EZ^M1BF-JX1-;6^7W>Q["Y?=;!8 S\.37!X8N*]--/!YO=)F#"I+!.W9%< -*P"$2PP8 MY1F0 B&5%P51E,ZVJRU;. ;KAV=[,<"^A0'C3VM:\LC6W^:>JPM=P!QC\3 8 MAH[ *P1JLR+&W*>^QHJT.T\>-[X^=>DDJCYS2>A O:SR^OXVWWY_NS,#U*-: MMXH\STV]Q)F&BC'$)!#VA"@J2@X8I&:6C1@K)2Q1BJC?J'V[T:D-X>^45FNK M>]5()OB.U0XPNP[<<<$;?!2OS4W^,/8FK<%W>TVQY[OD[8WS? %CNCM$T09X MAR9''NW=03@=^CWN#2Q;VU1LJ.*+.M2H=,%F3&L,6B MQ#3/"BV+D)2W2^T%K.6-D=-6513YUW])2_@?]\EV7]VBCH6+NR)'=[3(]S4E MM\G_8LL=6S_7M^3I76+U5:J=2G17$')7YEGGZONG]7S17 NK:_,[^^]BM?%< M5;C8CVYLUJM;1JI\VZ+?S$1J*^]JG<2(M6YO(!&KO.VE9L:M:'O#V9,BMK>N M]Y?#:.IB/+__*;Z;[E8?S2LP@S)+M4 :")$)@'3. $VS%"#.268U 4OA%.E< M:F!J44UK8](:F5@KW44QSH)X_0QKKG3 M%EU@3GT3D=>GF1[8S_<_GZSZX!NU5':RK#GD*=0*:**IE M8I4Q ?/4J3R@8WM3^[3W$Y9Y?=APRW[Z2F+=0MAMB(^(V\#?_1ZRYGRFL35I MC$U^: IUT @ MFC)%BQP2$H&6'Y'T )WUNB1]3L+TM4C: M$]QA2=K5F"F0M"=PCB3M^]10^3W;Z%)VU*J)TIAD'&#%,$!IB@!'F)L_2BU4 MR4N4>YT:/&EA:M/QO8$NVL&.(#KN__>!9N@-.Q]4 L3.+G@>3<;LY?-'%BB[ MX-ZI]-BE"P,/ #\^+5;/2G6FV4U1VD((3+ED@/'"ELB1 G!,!"CR#/&,2D;\ M/NN++4WM\_X4LIIV&4>W+SL*.@-_X:V-1PMG Y3]O8E%K%/$%]L9]T3Q+7=/ M3A??O"&D3/"1J.&'I5CLI(D;SDH;FK!B8UBH_H^O._Y?2FP?5O^Y6DC.Q']7 M<5DGK9_)Y,OWK M4ZOYE?MYI$+/K]3?GG6C!^R+&T6GAVAYQ(K5 P)W7.YZR(9"-^'5$YO+)@?X M?BDKA;]ZRW]_=#G%+)<" C.K9V9"8$9TEC$&2(93)GDJ5>9U=-FAS:D-SXW) MB:IMWE2' E>5&&)323-AUTL^!Z/ONAD?%=/!M^-K.-N# 1;-6EJRS?F)?I[9 M Z!HF_*W6QQY6]X9@M.->?=;!ZSNL6FFUMRX7R"( 5%" "2S I"<<)"FDN5I M61!4>B4&^30^-6HZ'X$,4;ACX[6P,12F(X?VERL]; 98 0D!;0FVLU?VW#E1ZQ]SH:JW^@W;*&E:LN%1124?5U7FC)+W?["UW%09_MW? MOUUMMH:&_F^UM44EORWG_U#RUTZTU@9AI "Y+G, 1** \9S M"B0M"IWR(F>$!6W'C&+^U'CI;VK^[7LE5?_#D/XWU10$2?1JG>R6Z[TSB>AX M&R#I,O)+XKG7-+FN'YAO*T]!Y6KRF3U7QTOOUVLKHF!_ME%>XW12>6W7[S;; M*O9[5MODX.A=\OGPOG2<'6 /;-0^BKVQ-H[QK[-;-VK'7-P"'-<*OY%RL][. M_L)^SA]WCTW,1G)="IY#(!EB )6: :J*$MC2G#DI&622N QB)T^>VOC2&.WD_,,4V=D6,92]Z>XVLS$T=HC+_=2"IT^>-PA\7W6@_[DH*;G@:D MM"=PB3#S5"$$T#"%E&B)4R+JKVQ86&E0FX]L3G2C>W^"N01 M>LME'WZL/AB873IN'*\F)%U/;+[$P1>;Q=[5/Q^M7WSVS\?JG]$VRA>[[?R' M2N:/3U:PUO;";ITHMK:U,S=VMM5\.S: WG[?S[_8)F&)L62WV#:G#[J]V'Q\ MMGN;)9/V.[0X_%NL#?08G7%CI[Q7$R-NB<> XGCO.\H3@_>67,KT?M)G+_RH MMI_T _LY8YH4M,ASH#F#MI*N BR5.6"ZR#-(BEP6+*R0? 3KG,C@]>O*GR]? M[K];%:,_G?>QQNJ>T7:X?.J6VUZ[=(L]LV1^;?R+N@46$>]XFV,QC!I[VRPB MD&6^?/UKPBI')[*T_MJKZ!,:(R(NF-\_KG8Q$[D&AW_J:^'_'UGV M'GV%.W"LZ:IC6@F\&]E*8K1XTNJ)LU_QS"K)'OP]9P7[? M+!9]5NO.0H&5A#J$DD<'V_=GJ8N2H3SE*9"Z* %*%02?(+^]._^ZR9AO>;RT+V*+TQ,*GL.\(X<;2, M77?$D2-'>::>:@-]^\-G 7N4?AEI]3JP?V(M/_>&\L;:<_CS1UQX[@W"\:IS M_\<%BIZ+[TKN%NJ3_JJ^V5?WBWI:K:U(2T=A_"+!A:D-7ZX)=96SL3/9>="L$W%FUI/:*WRM? M?-74 WK,;<%@X'X8>BE@D"[PEVD/!S&6A'N !>/*NX=#="+]WN-18819EZ.Q MB\?'Y-P]GM&N&ALR?\,VM=\<$E?X=DY4ET2G. 92V8U"6 2HSTT^Y@IJ46.9$ MSWZH-5]-JFNZ%@W7.=62U8T)V*OUG-NX-DIO#)]89*N4-=N>+\+\X]-^]I#R M[4W137=7M$H73^KOL/(\WGC8&_Q(HV*X':..C;WA>CE"]G^@_S+T>]/"]OE> M2O,%;)J_?ILO53J#E!148@W,0(CL 4,&**$$E)*4!O+P-Y>P(X"U] +3Z%(>2UPWT0B:+7[\E-'6_J^Z5AW M'?SVQ6$!\E'YYJH2R[WX^VZ^MAMCF^U?U/;[2LY*RJ1*!00\4PH@Q0C@A?F# M$&YB9"2PD+AOX?<+;4\T >VS>=!WMFE%K0]9HSU*M%]"'Q&4R10+(*G4 $$3 M\#)%() EI054"L/4*7T^.NRC"MEMMB^A3M;JJ>F&RT56PF%WBU9C@SDP9;?F MUKGK=W7]*\/D2 &D4Y.CQHH^(+P,"[WN#2R@MUA4ZCO- MXDNKRJ(4USC%'.#42FZ2D@&B60&H3C-4:"A$Z:4Q<;Z9J=%-9:)GZ;SS^+FQ M2']4!N:-6D:K-6\ :8GK",2JE7>^D7$+Y5UU]*1*WO6K0R=[7]2WN=V06FX_ MFDZ?E0SF'"D*$"_-'[3$@")6@AR2@G":"YVE?O.\XP:F]GDW$Y>#D8FUTG=B M]P)$USE=.#3C3.=<40F8Q)UWO.9]C=5=-]+#!C=CQ"RRL2 ]3C8;K=7 G+0=WZB_[\R# MWO_8IS Q@13C% .)TQ(@0BG@YL4 7*4YR52:2IIY)9V=:61J@__!QJ0R,C!A M[!R<;JL(?4$:>+#UQL<_F^L* +'2MS/1GVICV#:]RZXR]ET*>3W/AF1.B'IJ;K!U,-4QFCD\KJN++< M,?"+*$;0QYK150@B0'=.?B#&8P,EONO5 WNJU%9:M><%JA.G:CL3*819R070 MF.4 X8P#7DH!9)%S*I32BGHE\5]N:FJ$^,[XME[7I_X?YQN/4E8.L+KQ7!RP M!J:PCI%):V6UFUME#D;4 +\)1BPM\,L-C:L)?M/A$VWPVW>$$81-]]M\TO=" M6/$#,\_[O%K,Q7/]YV'TSDJ!D!8Y,*S ;66E%#"M.=X?K5]0BS^^7\IT)DF8HS;DB:6;HQNXHYR94844A )4Y0@Q2 M5*9.2S\76Y@:T>Q%'1H1]_R 0I7YSUOI<$ MQO$31]?"..O0.5&,\Q<&YG\)\\Q=-9+>WS$;B/6>X+W/^>;F4I+I1%5@&9V M21X2"0@J(2@A+'-1R)((KZ/.%]J9&@&W9B8=.Y/?K:6>6W:7<'6<%_9':^B) M8 !0_I.^ZS#$FN5=:&7<:=UU5T_F<3=> MRJHAMC@LB6_>/!_5N]Q<+S6^J;Z!#&/&*"8@$UEIU6<8L <*@)D(9J0D.N.I M5Y7O<&E4=EX^M\G*#F&JD3G##S /Q:H44_[#V[T*T@# MC-41YW4$1FN]KYK9KVR^KH^U5;7?C8F_S1F?+XR5:O.7ZNR;:7OY18G=>FU, MJI8VJVR6PRJ\AK) /&4@EM8PK:)1: ^*VH36?>.5AHDGKNQ<3O=;:1YM:X<.FVETXN'+KJ[ MV:.G?=CDX@VSGS,(_-'EUV+8]DK";!%AO2S9%K.1L/'BB_JAS"#T13VRN97? M_*S6E6J<0>L37\R_U8LGRGQ(Z!10 0N@4)XRF9G_ M2[WVP3W;GQKG[^U.UK4C]E0#5\FALH8?D_MVAQM7#PCRP&S<6'Z7'(#N&)\< MK*_TNQK[X[%L('"1>-2W]5&9,A":EUP8^IA@08;5'_;9OZ[6[U8[OM6[1;.7 MOS$DJ^8_++>^-61KMVD(@E0IB@$L$ $HIQH0F'. X@UJ?&M/M MC:_J0J.=(E(K?951(*3- M8R2, E9P"8C64F$E$*5>1T4NMC0U_MJK-/65%#N"TXV/HH T,/>\5+%JBBK$ M5Z6Y"<80:E5'[;R>1-4Y=Z_J4IV](52AYJVRB=.+#TNI?OY?ZGFF<4H5,E$- MT\36D.QA:EQ0*/&TEB95&8FQDY?E9J70%YG@2CP M#/SU>R,3H%1SP?L>4C4OGSBR5LT%AT[%:BY=&.5P>#,2E8402IB17)F^-A\S M08 JQ@'+E22X%$BF?B5)SK4RM0_ZY?'G7L?"O8;TWO ,O8Q]5X;[R$2X=X$@;D6$=FD7Z(^I/*QX0 MQ6(9ER;')1T/$$XXR.?>,$JJ]#,[6U7M\EQ&"R)RG0$S?["K"Y( 2J &*<%I M5I1%H;G7ZL*%=J9&/+62JZB-2Q8'>_UXYA*J;M02 :N!V:2&J6/B "N8-U"( M1!B76AF5(VZX^I(6;ET>(IW9'IJR"?753*?#-?L:I5 65-%< 8V1(05=:D * MI$$E="TR6C*$W>4O79J<&C_LS^S=VX,K]53[:" -JAKK!/YU[A@&TH%IY!71 M])%VC(WJ2/*,>W2K(W0UNO.#Y?\62TK1!YX;JFXLTXUP4*J<*I!G+ !*E D1 #$J) M\DQ(9?[BGF<. LR8&K'O-VR?:J.KCV95A3G!46!@![D%B8F#0V)K\T5EZN"QMX*NDB#E&/$9VV\@KG M?BZZ>OZ@SN7+HQSNW,\).,LQ3;,<0 0A0*JD@.6% D5),2U0H679YS3F5.>T MS4N^M]-[VG4+5Q\VZ(76.&S@!53?(XKG)U"QSQ2..[=R=/7&J;U(LZCV_/C; MU2.?+QL]TS;E_X.T\V8]K\*1^F!'4UGN^("'^9V9[8X 0BD"G$H!2,&@RG*F%??3'!S!Z*G1U/UI?O)=LKPBWOEZW>U&>%/K MQ('9']%JG3T[K-7[O]QV:&^XZ"=<1IXAC=E5D+8]! M37X589 Q.N&2RL@H;8?LW_R%_==J_78Q5T=*]1H3)%%> IAC#*S '& "$E J M1DLJ\PPRIXCV2AM3&R8J(Y/&2I]M@_,(NNRZ],9E8.8]@L1-K=\9'Y]]E-XX MC;1Q$H"7YY;)521N[)&E MFJ(@9Y*@N$Z5TI)9Q?T2(%E P N>@1*G@ILO5@FW(JK.+4[M0VYWLT2GADHU MP5G7'IA?;%QC%W?8W2:E4<$* MI(\Z10\#PG2SUEJCK2AH?)O.*,(B44*%*ES1R*%X!A80\B M:L6R4A)!E4]D=K6UJ?%F5\5/)[_.EVPIYM4)VLUV77U.GB'9=:S=PK%H" [, MHQWP.I8.5!G2"91(0=CUMD8-P)SYF0!ZG6&\V-+42*0VU!+(8[6(N&H-3C:- MQ7X<*FNR^)XO8-H65; M-]_OE]+^92MU_& +^] SM#3+N)):F/F:EIH#!&$&N,@02'.<%HPQQ8G7NI!S MRU,C$6MQ5?.H,=FWH*LKX&X4,@B, U-*A:!=4:M^Z)A]EYR-5&(6@/5$*UH] M6-=V1RX/ZPG':;58WP=$2P,[//L0M9<*#-S MG4N!ZK#00-,E/YB&2S\ZU^AK)Q!= M <(A!>C:W>'1TN?UZL=<*OGF^:\;)3\L]Q'9O=C.?U0+Y^>+3LS* E*=D@R0 MPA9Y*-( Z]2I7ULF9JI/51;1-APX&GQJ.$/W?F9VSOCIV) MR(Y+[47>9->O,]VCLU&Z:(R([7.G9WZQOB3SY9\ZL\*#/W=)UZ/DT^T>"HKD M>B,;,;H+MV7TB*\W;.>BP/X/#=E>_'6U5O-OK4@LP5((I!$H,FUHE6<,4,(I MD.87U' NU9EPWU(\>O;4Z/+#TK12#W-LX;,/=HR8RT9A, Y#+VK7=MT6W+N) M@L\.8# :(^WZ-?9%DX\XZ^^-+;WC>T;UJHLG M?-)-C84799Y21G*98@8P*I75ZLH!I1H"K'*B%4PQA%Z"H4ZM3HVONM6>&H-M M&/%GM?JV9D_?'=,D_8!W"]&BPSDP[1W;V\5SR#)87BA%"JO)\JQC)QF3YZ\:]8#SGUVN'789B307*QH513C#?[,_@-?>Q>^D5%NF=SRG?):VG=Y>/+'^\1;UKYVOL',:&.=.;8N;G0*:E=A5O*5J6K/5ZB4DXSJ33TB MF1EFD9;F)T%EC@G/RGSV0ZWY:D0\N^T-N;DLUCNVJ'=A!@'7==K>&[#!)^HM M/(V) QQZNH%"M(GX^59&GGI?=?5TLGW]\EY5G'\UUKU=+:OX_V_S[?>WN\UV M]:C6[W^*Q4[:30_#^>9_\H']G.6,J2)+&4C3U% $1MB2A6%B+ DF")9<03^R M"+!B>D32..&Y:1O2 6Z$,C"H Y--NP9HOYNDM3_YPSB0M![<)7L?DM8)JYT8 MO8IS"(1Q*SE[6? :U9Q#(+I0T3GH48'I+PLS-?ZDJX*)O^W/S]$&;__N*EP9]WDZ'^2;_MR TU6BQOK=!0)3# MF0G@/[/GZLC?H>"7$K)D"@$NLQP@F6G !"8@+Z#Y#Y6EE#GE.\8Q9X*DT9[< M,"%HUY^D<2BI/+JKQ3% Y532>A6<1="S3YU)::2>&IB_:NC?=*%/[M=K<\EP M&NYQP(M'@'V,&9LK(P!WAE9C/-5_5E-7_GI@/]O=.E&U6Q^UGJ5IJFG);2%% ME9DPBRI 2HH!S;6"I6884:>TS9LM38TW:V.KJBK'YB:UO>[SH.L WYX718-M M8!(+1LQKYN2$1M!,ZOJ31YM9.3G8G6FYW1"HGJ*V=46+WU:;C5UC/7]ZY?X' MFR^J!,Z5X:['U;)BJN^KA6EI8X:UN9AE1-#,< DH(3/SM11R0%1&0"$A2X62 M@F.O*"V:95,CG@>;WU7O8$0YX!>O"]V"LE?IF(&IS>;#-85U?K%N_:GNGPO' M^Y*];\EVE=3>)5WW[I+*P8BZ,;$QCZ4S$\VN<75I8L-YHF,3O8'0D]Q/<\,V M-E>KW3RS@>;]XVJ]G?^C/@A6JI)0K 1("<]MU4%H@C],@:A(. M;4Z-DKNVV5GTABW4QBHC/\XWFY CU[=1=]SZBHOET!MA!VL/F_/6WKND:W', MT]'.\$0[ WV[Q9%/.CM#<'J>V?W6F+);]]NW;+U^GB^_5>HY,V5B151*"5*! M;-&$3-CSS*F9AY)2448P*[Q.[SBU.C4*VHM%B0%TMUXB[DH^D7$($;U?1APX)M$A;@/*4# //*[L]\K,9+\Q+SE87IVD MJK;>+-;WM[#V'E]"0(LTS'@U/>IH$P+*RT$GZ!G!&^!/*S.I_/-ZM7OZL&PR M5L^N">P%A9IBXS.",JE-' Q$*31 I,P!DS0S@Q(E"NK2%BORW/T.M65JU%>O MI![4TU1MIG_.3'#G.&]CCP'YP#38>I%4;MPE>T=333&F^B;F[WA33> MSG:P)6-O:_>%[,R>=N]'^C'J9KV=?;%I$_<_YYN9)J5(*Z M (+0M"R$2G/F)-9]]-2IL5QE6/*[-SZP&SSU2J(;;9S80CG M+XK9O(DF4^8J#LY$WG>?Z7@;5ZVA(T MAPHTU5O%3/!!BSC?:F=K'>*XBC]>W M>0M7MX@B EH#?[\A0/G7X+D.0ZSJ.Q=:&;?NSG573RKNW+@\PCQFT#1ZSX/*Y,?"=XC)38@YKS?#Z0'>U6E.G^>&)N]6 M,LB5-KQZQ[9L7\-:2BQSCH"RB1M7OAP2,G[5YW[S1G]\;U84'8 MP[J:#C]7QYZKA+&]ZM:,8BH@% 604%" 2I8##A4'A-"\P%)8G52?^.I*6U,C MA28-<_^456U_!V"YHBH3@P3;16UC(&S7$Q M$_/$W])RP"-2_'*MI5%#$P>77T8=+K?$%W2?088U(UP#R6SJ0PDE8%*50*#, M'K84I11I9X_.=:.^2779P/S92^[YLL9S_1(<_&[N?'7= M9_\^>ET%: ][_QFTH/WACZ0*'=!PM %J\WFUF(OG62H@3DL( 15%"A!'%+#< M_"13B7&*F, %[#FR-$U-;4B(6C"WA3.8RP- >@42WB2UF4<8570(Z9/V2&AJEXFA3 GGG %;AP0@P33@DF% -62Z M9)DTD:P/G_2T9VJDTYB5+#KQ2:S2MGV[SHV[1NR047<\73(X.[X/(.L>"=E( MW-C7FE$)-!)T+UDVUF/['='Z=;7^LE^YK]22[-%XNPPZR\H\4S#'@%%;4CS/ M*2!0:\!@!ADNB4"]#F9=;MGI,WZ]XU@5J8K.%DC889\KR+N1920@1S[8HU?K MY&!NHZ-7B7I'BZFE^AM-=@;', M>B64DI7XSU>V,%15U]/\B]I^7\D/2YOG61':+"5YKJ2B(,]T"E!*<\ **4!6 M8)WE6,%">QWP%JP4')@O0)NI@\X!R3 &2&N1P[)DI/2LC#=@ MOXQ3%:_],MY__EI-OH7MJ7_]E[2$__'F17>-UDUNX_Z T \\^K>6)XWIC6IS M5;CJ9!IBC[I4'L4+ @*1BQ0*^+8^:D 0",W+L"#T,8.+FGQ>JRI%-_9\A;Z9W)Y:VY&V_^H$K=JW0>HF1X5[?,64JU9-53W% M!2BI.CP_7:_UUL?K#9F.9'^N)I*VMNI3-@7+SLSW.5.T0'DXZ[LOZL)QP MFC)BBZ02&^!R0#-: BFS N6:IR5!OE*N?0R:&HE_W3T]+2HA$\,8C6XX3M7?YW?WG87AWL1O-C=MO _%ZI^EE?[I+&F^3# M4:_L'4H.'AV=$Q^@M%,L?"/*T?8R9W2EVAC@G1.QC?+<,.[^JKY97GFW>F3S MY0S)4L(48:!5D0-D*]@R00G !1=24PI3[I7E>O3TR;%J;=PF^;VVS_.8UC%R M;@P7C,? =.4.A3?IG'4Y$H,52<)&7%"B44H D+DTH12#@!:,J)5;_^\PW2TW]-U8(#ZF ]-#'SC]U;F\T(DEUN76Z+C:75Y MG$AY^=T=&#W8Q<&J/FFW-F6G1.F;Y\,E32[6_1]L+7^;+]6'K7K%G_9$?Y.F1F;=*K!'A7J[I6#Y82X2O-&-(ACNMLP\(\]-):"^L? MQORDM?_N '?E2N>_]R[=53'K%R74_$=U(KY6&1GF<&8/D&.MKP58,.Z26CA$ M)ZMH/1X5&/J*[TKN;!*=E\YC7=_3RI37K%Y3P]?OJC+U7LKJH#5;'!;Z-H?/ MFZ=EGJ4ZM676;5=BOIV5)#>W,@T8$RE #-OCN5 E:4X+TK.&/521+C= MY-3&HM;B1-;V^8TT+A!SI$I"&,C+PD0-:9$!JG4&,J1XQC652-" 8]"1D![_ M&/3@@+N-Q''?U($'SCUFK;7)+QU[D\;@RTG7WD.C.SJ11C*'!D<=>-P!>#E. M>-P9NFCT^#BOSPS90KS5D/--+<7Y+""=E27+* ,XH$=L!(4 %JT-2"?MD=> M_0F Y73=)^0AH3%LI81K3T^>6VZJ9<4.LW!6Z$*6.@=%*DRPQ7D!."GMQF8* M"1*"9*3TBV=]FI\:W;7"SHW>HYUH^$9;7NB[1EY#83IX%%;#61W)/K\B/JSV M8!ART2(TK\9'CM9"@#F-W(*>,@BQ'3XJK$LS0^1FUEC8ZHUI:@(X6T)5*48Y MIRG/BIB4]O];,HM,8_^T!/8:S/5*G#5-MNK+4[$8ZNQZ9KV<^=MJ4PE:G+WD MW6YMXL'/E>C7;OM9K>:S2IUB'[/66$8 0Q*"F! &&& $7F#5 % M3QD7.>=I&K 8^MK=/_XJZCLE;,TAE[E\Y7!ZZ;^*=9A[,TK%/. \- M^9E3SX,WV4^*^&'5U*[XO+9$MWW^;#XNN\EJ!;>>'BL!^)PRBK6),S)A17T8 M!!PQ LSH4Q:DQ*4N]L./V\CCWGC 0#+P&'(D2/S4V%TMU:K6Z+MDJ;;-.%+M M>?M*^;GWC=M $!GOD<6+MZNV$E#2VGV75);7:9)[X^/K&+L#%EG/V*'A5]$U M=@?DDKZQQQ/\F(T];OY@I\U\5<*0J3V1_+!FE0Z6LO&TI@(@@FQN(L\ @ZD$ M*K?'AJ%&6D W/G-MGAP$T'>^^2QN+( M,,J5V%72&C9$&!7.HY:G"ZLSS_MB5+-[=9?E; 33/*UXV_E!H["UKULM1WO? M%Q9S'O+V/K.Y_+!\RY[F6[;H%F$HN4X%SB#("JT @D@#@G4)*)*:98QD GFM MV]]N+$ZN"!.;+1-1&^P61#F"[!8]Q(1R8F#OH66OM0D]C[]U )2_< MX8D4(CHT.&IHZ [ RY#0X\[0DA=VNKQ^6M6SZBJ?^.UJM]RNG]^NI)II0@5D M10F$*!E 14Z!75$%I-00$\PED=*OYL75]J9&-4W%AB.;[Y+*:@-STEB>6--] M"U]:E4'6UM:E1R\!13 -QKP#&'[AQ M8Q=PB%V2WVMC(^86.($R;,32M#6%8.78;<Y5J;&&6^/5)X]A3_/X^A($'W1&9H8CN63 M!TG]OHI!+!XXV\:XW_\U-T^^^ZL7]_G>9PRF.>5Y:3]P#1!-S0>N,05$E 4F MD'!8*)]")L=%Y:=2G^3!MA&DVM[ Y//]3NZ#C?UQ#O(UOL;G=_U[ZSWG-\.U MZQ_6G]>KW[,C7&SE!.-<(D +PH($*$*,$4@T%P43&O!.74:4V\U-+5A MM9F<-L9VIJ6MP;YS^POXND[J^Z,VSFP^ +" .?QU-'I,WB\\>.19^W7W3J?K M-Z[OH?UX**IKGOIMS1XK&50N-,8FG@8I5P2@@MFR+%H"C)E$>4$,*7CI@EUN M:FJT4%G:+0K=V!HD.GL%8;(YU@9UJ8I]Y M]M3HX(OZ,=_89-B5-J_UW(YV5=:A%QV$8)IAR#D'>9$7 )4Y 12:;YI)4A %,UU"ISV_5?K ?)?/FG9.]$M]#.$&M]X2!& M"CL"#!@U' D'Z&68TN-)88QXJ(U=GQ3XN%KNO^=96>08:C/;*80A0)3EI3T? MG9K(IH0,P[3(I5?ULFN-38WE/BQ-*\9:\ZE94_WX["JJ;LP5"ZN!.>I@9G/L MJ2H+MK>Q!B-/'N&[:9 MBVJZ-4.E1$*CPFY&&M:0EC\P+T%&.!28()AJKY0&S_:G1BF5957][MU&)L;F MNHZW9QEOWTYPI9O!H!V<@4[.;1[,[ZC5#3&X* B\:7?FU/C*# M!4%S2FIACPE< -[QC?K[SE#H^Q]5AOM>M:2P>J(Y$D#1- >(46HBHI("@F5J M_F8X+[UF@Q=;FAIW'0Q-*DL]UWLO NJXW!L#IJ%7>U\@M!E(Y>4F%K'6>B^V M,^Y2[RUW3U9Z;]X0FKWY7[LZKK(G7LZG>%7DPU_6NOEB3_INYEOU5:U_S(6J M%P4[$DM5";,9+K544!*0:L%M@4,%B&8,B$)C21!B,O/BEJ$-GAQ%V1, H'(F M$1UO?#-(!^YF-\:;4N<-3)SWGS^\O3M?,>Q0)*K2YZC%6'25(F]FYBXB90&) MKN, 'RU7=F!S1TZW'0?\TXS=D=H-%Z-N3CA55FP^[;:;+5M6IWQ+I62FL "4 MI\0.&P1P+C!06#*:R8PIXI7[>ZVQJ5%^:;-?_[#G+ MO@IYAI3@4.: :XD HK9ND2Y2(%&N5,X(5%K/GJHWX>N6K;?C O^RX0$7--2W M^=*J8B6\KK@Q$-Z8(5XB7(!<"#/KRI#!VP -2BB@Z0990,X:O-\O'35EXJ+= M-CMDEID<'FBWV"06= /'%=WSNTU\L;E+.K;&%4*_A4A$W?.+38TN >F*>"D X1$.R#4SQQP" KQA;^ZP/5 M&5&_7H_K)]AG*ZG97(*EW,Q8662\Q!F W K#HE0"BC,!2,XT2F$A*2=ARGR= M5IR^K%'%J_:F56>+P[3UNC"Z$5,H-",K4JUTLK&>UN!,'2_TKQ/*4)B. MNO1R /=@=)V-\-8?0WN\U\J38;TQ2?+ZOWRU8J6;6:[S-E/":0I: D=C&+4@E(J4J0L8R( M$B&6EH4[E]]J;FHLWMIKM_];@^^JRAVV2D.]4N_#-C?A=B'OF" .3-M[_-YV M\6NL;&Y1\\S$CDK&K2\ *E0"G-"-8,4//)*"> MX/56IT;'#VNVW-@S@29*>5K/343-%M5KK*0MTK!NG;%?0NM-LMJ[XSEI=^L8 MM_E[=+@')N[&WKMD;W'2,3DYV'R7W#]:/#@?M)F1%#.[Z@]X*C5 @DG 4<$ YEF)(5>*^:T5GFMD M:JS4,7@>FC,@]8^Q(7= +T22Z['TV9Y$P3(VN27';R5(WD MRK5AWW=;L;*=9U:'8?ZZE//-=CWG.S/FSG"12EIB!AC-;-H:(X HC #ALM!4 M%QS[)9C?;G)JW_Z1<R'- WHTEXN(Y,&?L*Z3NEYCNZL-U=\F1 MR?%8Q!V>2)SBT."H#.,.P$N^\;@SC'W.3+J:'.A_*/E!&GZ;ZSGC"U5K-C8% M8^3]4G:V/L=)>3YX^;Y7+)O9/DEHL7!BYDJ6]VOOQ%/9DY M=)-':V9RN[4ZJ JD'&JI\Q0(!6T%'6'7M60!,BR@*#*5(N8DQ.G1YM2FNA^6 MQ5:0:VWT7NQQ0=ES[BHO=T$MAM;7)WMSD8.]0@@[N ,5:+'-H<=RU,W<( M3I;2/&X=2O5JG]/_V=JP6MYOZVFUC7D>5C:;S]QD\#"-?&MUY682*BX)MWEV MR);TT R05 N0,BARS#'/!/0)0X8QMYV/*>O7IF='4 MOX*,G)A(6!^@_;7$>K46*:_/V+69R\:B*I-"J[6=->_5*8ZNF!$(>[9+98 0J]K*LS+3)AI6TND8:RR#IA8/=ZHEBJZ=/?/9?+OI^ICP&N"_ROKE MD;5)QZ&[I--1;U^QHWJF)@[886,G+P[6V,"J4SR#- B)/W7E@"T9BT4AJ.")*^+Q*-\82!1K7^'%E MAEZE8TZ$BU['BG#]:K&>/U5SUZ5\.U^+W:(:DNL:Y#.6:I2SPHQPD"N !,X M%SD'+*6,8H4P1-17QOI:@U.;#';M3;3RW0J]B:_CSDA$U(;>%ND"9OF\8VSR M>VUN9(UK%V0B2EU?;6YTQ6L7Y\\)7SO=%[5VVJ]F;K 4YVMT:981+!@&G$-H M:$820'), R=>J7:: XC#UDZ[9L 4:J?52FZ^KA9R MIC!5.9,I*"DO 8+4!%^T3($2!2Y5+LN<>YW%Z&'+Y#C2:KNO=+*N3\7U$)OT M[!,W6AP)Z8'Y\5ATLCO-[GIRV)V]JR3W*[FXRIW$^C.0.F48J$,H5'I:\GHJ ME6&0756J#'QD;X7[SVS]:?W5%OV5E7;^7M2G*!##9GH**.<90%J4@#(M@,I@ M0:# $J9>9^H=VIP>-7;U[I_8.OEAS>U]A,T%?L?5T+B@#KV$>22A9 PV+VU2 MFYQ4-L<44 J *+YF^,467TLZ_!8$5Q3$;]X:>)+V[[OY]MD6^5@MU7+;J%&S MHF0J+3.0,ET )#4$G-(4"$A%#GG.*%=>AV?/M3(UOJF-3/96!BJ GT?4C5!Z MXS0PA?A#Y'_P]1H$L*H*USU&?VC">1,E#PM<\$ MUX5A UM^AQ/%0,:S@F-)I!+,9[/8O>E);O3:A99=O;9B_M?8W%G2BK*B=:X? M>JUD]43W=5>P]L9W5K &7[:Z@MBPRU7G&I[",M450!R7IZX](7 NM6 ;,S6K MA2CKH3;CD''&2X!S60)D_@0<*0XTUECR'.H<"J^ITTD34XM<*@OM:D5E8V#< M<@9)QUE0+WR&GO1X0N,_P;GH?:SYS&D#XTY?+CIX,ENY?&6D//'@D];'E^Q7 M>^R*SA_SQ6*&:%J0G"( TX(#1+GAC"++@6!9)E!I%ZFY2X@SNN53BY#JX]>L M5F9@C=4]LYD'Z_7K_#;IOAR8-@<2XGAYX6$AOL5@JJ]*SPSY*;PRKYI*_YJO M3O_4^Z&[SS]'?S"+7C>9?VB@;V;]#VY \&K-X23?_0\V7]3'\SH+Q-]7"_.\ M3:5V-LOS'!88$9!)A0 J( 5$E@)PA3G.A$:,:\\E&Y_V)QF5>*_+>"%.S.RR MS*0$F.9FUJES"EB9*: $TEDN94:IFOU0:[[R2 ;"O.N'<.A?BQ :9F]^]_M MP?9AN\5YS6PHJ$=8.#L^<[XWWQX;[^[Y-1XTRI51E\]"P(NWAN;5^M@+:2'0 MG%E-"WI,V%CS-S7_]MU\H?>&)=@W]7%G\VG-M/YE">/Z TLQ+#CG&&2E) #! M# .FLQ(H*O.4%J1(4>;'>U[M3X_U*K/"2Y;[H:\T$45AAIG

XC?H"/5?/;> MS+.VSXT8YE[;RN:Z[#:S5#*.4HQ!0;%5CLH%H,C,9)!,LP)J7N@,NC#F_GU574F^YTBZTFT4G_G%LV;;??7^_V*02?]18,])=(/*RHS3#&#!'.@1%H"E D$:(8P*+.,0IF6 M N,L2"3]T,;45L0/8N#SRL9 >?0.B SJ5$$( 1$E!R@U@3I16H"R8(762@I" MF=]"4$\8QUGN>0GD__.+K;3DN9YP#D^WD:TG1@./20=PCM:H!]"=/W4_MO)\ MIX77T9X_=?&B^OR92T,RL#R.R/WG:B$Y$_]=97QNK*YH4_68DZPH2EX +$I; MAZTP!$$,-Q1$H)1G2!N.<)?JCY.+J(Y'!S8[_EQ);NW?SO7$@>=I[$%#6 M.T8?7J>B5^F9@8G+_\1PZU1R\"J@B'B,WO))51JYUT9*0=KWWC?KEAV8F\Z3 MW<[;"ZB'?&F>.441<;Z1*Q2CI1%S@"("=?9F)GL[$VOHO]U6'?-^ ST&B5CHC<3^%U&,1>8N>-Q@Z:N/ M&)%^75PYYE6G.P*5',5W)7<+U6PQOF$;)>VA5[7<5*_,Q]52/3XM5L]*O9NO M392\6E>Y+_=_&',^FW>@.57V_%"EQQP*9!58(U4:CL6939)@&>"8IR C*D4% MUQI)K]/L ]DY.:INW-SOY(/*T^0S>ZZJ1MVOUU;(T_Y\EW1\3EJGD\KAQ'I\ MUQ[14%IR6M/39' BLO#S>X;W@ M6MG^A:VG685ZD#+1P]5T?K4"S [5DB.6-EY_8\OY/_:E.5:+N62-^N]GT_OM MO.*3;C0PV:)22ZK*@9XKZ,DS+&FI*5":YN:[IBG@)3)_I*Q,:5KD$#G-P8'*EW@Z^[QD:V?J_!P_FTYUW/!;/@@Q&JWW-;%[!9SX4TCT7O:<2?M M%?MOZ&VXCFMU5:.](Q>@BX7E:V@4CUZ6+A98O=2)XY6A^U++D!^J)V#$=4:@ M "7B"* ,*D#23-F#?C33+(-2>Z5+OVQ@:OS6VN=9E^(4-P5YD6D$1,$@0&69 M I;9*0;1E*?*S#8P] Q,X:UI@Q39N.1W)+H]>?RH M-'K)N9?T>/&Z,-H[K59F8M4G-I?O5%WT\_U/NR*I3!#[:?M=K9O#!TR4!..< M HA+0XDE*@!!>0ZXTJ6DBNB,\]E2?;.BS6X?>9@A3J\^K5_]KCF#+A98JQ-5 MF[NIIIDK:W'0^9' _G$CD@$Q'X=NSI22M-JT;1\TYE==4#D0_2Q'/P0C$5>@ M$:/26S^@7I)@SZ?UBA"_**OO:$+2SVJM5^M',Y57G_AB_JV*0FW#MC3DP_S1 M7/))?S7_NM%6(MG*5;#U]IWAH/N?\\VLR 1E1(^Z-#.R%J#EV*R'IL75)@T]_ M+ UK?I\_&4N$71K^IF8:<8(,^0.ITAP@B2@@D&: 9TAQ7L 2%\P]-_9B.U.C M]J:TQGQI&E.;;:5-\U1;ZWB8[!:PURDV(EP#>9&WL3CAN)L9?O'S$K]J83QRFQMR\/KA/WM%;?30@_ M_Z'J(WT?U?:3?F _]VME5)=,EK @D%JV#++ =$9 SC/)$I+Q:DH/.O$W6IS M:LQY9/+Q0=.[Q.HCF@C)F'^7W&]K\93OQ(SCC+$ M#8GEEL0(!S3G&B@F4UZF$B*EO1+TK[4V-?IJ;0N:A5_'U8U]HJ$U,.^X N6? M7>X"0*P<\:MMC9OI[>+V2;ZVTTW!NS"&>0XML(6=F7[]KM3V?BGOI9S;\)@M M#FE"FS?/1QOEF^L[Y9LJ27Q6Z++@*4I!RB $9KJI 2V+ F2UAC=L693:]1F^\9[_YF!LD/YL?-3*8IUB6A(&.I-*-.S@"'" *5<9H*+4OS MOZ @=]_$U :(O87)[];&I#(R-, ] .D9U0;!,W0HZX=,>$1[XGSL,/;0P.O$ MKB<.7@Q83Z\,K)C>U"UI"[!7ZM?O#H5-9FE14,5$ 7+(2H!0@0$3M 29A#@K M299!ZG6PZ%:#4_OLWYTI\E)M9^PVTJXXUY+[G@IY-U%W8X686 Z]S=%"9VRM MS]\WXOEW2C^LV7)39_H< MXIZC*YH-WP?39QLK8 "50 FN80I*24**D]*U?V[5F7W=W7[:^!^?*\_O6QNF+'P;NDT[=OC_NV M\3)YF$C?]BP^.F(?OVJ-T8'[NG\9T4@=X5\MM&_#KUL4-!)L-VM_QFHG<%[1 MR)Q\5>L?<[NB<4X.Y8']?*.62L^WOQK/)+FNV1 #<2WU\..!'FH@\?)]O MDJU%EEL+DT?V; **9&?'L^VJTALW3JB$+1:&;)*-#3K,%[#]KI+YLLJ]K_IN MK1;V4&9]2PW#)I$5.DUM)G/'?)T\U4/DYBYAF_8Y>B_6L]X7O9/F:='D;@-[ MZ99.N>=3Q]0D#W/XA?YXX$."=6Y.=S+W>N:_KM8V/?//;+[\M&SW0M\H\_XU MV7YF[)QEF&(S*MG#S%B8B0/2@$&)08E3G0KS)6"HVL/,#U["-STM<_KLCT\W M/XPPJ%F;$_/MRC8]PGR/Y^L+>!YVCM"7;K.)D;IFM"R5L^(X>W\28WEB/4I^ ML3[]R?9=Z]:=(6WK6)O-;%R+JJ,3">9XBCI]#1I;6R<2@&=4=F(].?"(QVZS M-0]:?[$!@*6*[_.G32/1#W/*<\ARP'/$ &)(F"F$F4P(A;6@1%'!O(Y&7VEK M:A.&UM0Z,&IM]3R><05:-WZ,!-C Q+?'ZLC,VQ4C_,]8W(8CUMF**RV->Z;B MMLLG9RD<;HF3>+(_9*1U@46),R"YP "IE (*%0&XA(IC 1F'7O4-+C4T-9;8 M9TC8I!+#QX^V?IHU^-^37UC/_!+/$UPQ(!L]GV20DUBWD!@H?>1USES=I M>@_>[=^#KM=MUM*DWH-QL]3BO0__;#EK?=Z+T7/8W+II\(RV&V;\4^6WN4$: M.]O-L=7 "8Q:F-]^NU_*O[#U?RN[A]DF1J6%N0,1 8J"8H"LU U5& '),D:$ MP;^$W&L*<[&IJ<4'7]FB$;;CZNMH9__4F+[L/JT MVVZVIMM-.Q^64CW6):@J;ENP^>/F_M$6HOJDW_]]QQ:56&Z5//'KRB[.6L'< MF9!"8V5XI; )6B@E*> %S$'!6)$:FLF9=E*"&-K0J5%396@RWUM:[:VN:UMM M3*(J)!)90Y$L5UL[C;%@V!27[7>U3%8'3,R#CD!)1(6*EY;?<.^(R_1F&CT_ M] )RW:F-EXEQ,VG\3!Y62VKB6@K;VVF6OT"'1Q.C,=)X_)$^MU+ M!'(2_3^6BN1KOP>^DI2#=\XM3#\ZB!J8W^;YNM5FM@\L-: MZ"V<>0R@8SI&#UB&SL&H$:ELNTLJZ^Z2#YO-+N8!_4O^QQ.T/'[\V.J59YT[ M(U5Y_KI0G1[SH"_JR;P(WPTS?%ZOOJW9X\>=3==H2I)O[G?;[ZOU_!]*/JS> MJ,/%DR/(4YEZ)%[VLF1I+W#\]K5<_E$R6 ME?W55D;E@9T"<&6SU5O3*W60^I>>:1O]^L]Q%62L7AEZH:3BZX-M2>/)7?)Q MWT.U-\G!G::S.A[%5"F* &PT0:,^MHRL?10!ME.9I!@/#5G>J9:>[<&5^E U ML\M&7U>+794\U^1K4L%*2#(.!%8I0$A!0*BBP!!P@1CA.:6Y^SJ-0XM3(].' M+U]]IL4NF+JL:T1&:F"".[8VJ3HD-1-)GI2 RHF,=<[N.;*R9N@[LX=CQ)-CGQK (^,]JJ=9L46EG/LZ75KK*M/)#M3M%4*>,YX2! M,BTT0) CP*C@@+-,,%7"E"*O L WVIL:\3;F5KM+[,A@OT#U%LQNH6A$\ ;F MXBYNQ[;&WYIS1"52I'BKM5%C04?77T9[KK>%4+U1]5!46[0?EVK>1\ M6YT!O4L:?P8Y ^$#8"16$E/WG=&[B*SY[F6[:PLUFK%;,SK\O7 ME=[^82:ZIJU9H232TF8<45D )#(&"&<00%E@1*1$!)6S'VK-5\ZK^E<;]/F> MNLT.N*9]L#?9-(96O&37B0QG[1YWM6@%>[2J$__8R[O\'RB_*W*4L&WRO]AR MQ];/__HO:0G_(T_O$ANJ5S&!O MH?<:.OW26II\W7?0QRL#A_^6@Q,HL38@KC2+_C>G\)3\SI1QK[TZ>Y[ MM-AU=,:V-):J^\Z\\& )2+Q-D2J2*4OUZ2= YIYD)A?\2:1GJMNRE**)6'X( M1 0"$?_V/[Y]GOSP%>>+\6SZ[W_A?V5_^0&G:9;'TX___I>_?_@9W%_^QW_\ MR[_\V_\&\#]?_O[+#Z]GZ>(S3I<_O)IC6&+^X8_Q\M,/RT_XPW_-YO\]_AI^ M>#<)RS*;?P;XC]5_]FKVY?M\_/'3\@?!A+KZV-7?SO]5L:R44 9B-@R4%!*B M$ Z2XM+GQ+1Q[O_X^*]*Q1"#Y&"4<:",=N"-=\"#R4[$R$00JR^=C*?__:_U MEQ@6^ .Q-UVL_OCO?_FT7'[YUQ]__..//_[Z+Y]_['U=]>?W0QWO1!^EK^X__\]9?WZ1-^#C">+I9AFNH"B_&_ M+E8__&66PG(E]2?I^F'K)^J?X.IC4'\$7(#D?_VVR'_YCW_YX8>U..:S"?Z. MY8?Z[[___N;.DN'S8E:6?X0Y_C7-/O]8/_+CJQE!XEWX6 E>?<'R^Q?\][\L MQI^_3*Y_]FF.Y=__0O_Y'P&J:AE?K_N_W_S7/]Z0\&6."\+-BN5?Z >77U*7 M.Y0<_+;$:<8UHU?K3&;ISH6V_X< M91Q??_^MK_T0X@1'@J/S,F;0&&F?6<4A^FS E*R9]M8YGN[R4+6R(+6L(+? M]->/LZ\_TAH$/2'K;RI_8V#E[,TP^S><8Y69ZKI<,\/<#$79?UBK=*H$5 M^TLRVKCZY*%PN5C QQ"^C-Z3-K R\FH2%HNWY?UREO[[Q;?Q8L1%(7M,AM6% M+,@V6PN1,PO621N]0".L>@0S)2SBBNK+E=; PF[3_WKV.8RG(Q-#UDHAH">1*&\X.*DUR25%CI9YP7ACV#RDXCQX::S> M65-9]X"6V>?/L^F*CQ>_XN>(\Q'#DG+QY+9XS*"4'%>M!RKU_LP.4[(?<'DY24'*A;&5#"08Z%3.J$"+Y4'%5DL7ELA3!X. M)B_W@(EX?C Y1,AGA,F64YGB"GQ#9G6:%YQ";@ MJ*MUY;8>J+L-@-A;D)T X/^Z"'/ZQLGWW_'+;+XB5XSJ"MXH,7D8Z$AF9 M/F[H?YS^1F)H@H5["W=E(]K!XACQ=H*0=S@?S_)/T_R://@1M[&@2@%<2H4. MQ$*B<2205'AA/!2#VC?!QYUE=T*'?';H.%RTG6#CPSQ,%^,JE$M\%T>.-3,! M3(WC5#2&SE49(2OMG"A!!_58I+O'47)OY9T0HIX=0HX2\)E!LDXP_CR>X&\7 M*V?:*Y%3B>L^&>&E6-%W!-.7M%OW\X_S/Z8CI ; MRS790\Z-JMD>!K&H#(E'"N!X\E*Y=BBY67BW#!I[GB Y4+X]061UCKZ=OYO/ MOHZG"4?))BMMD< *)E!>,/ F2ZLZ^Y9 %616^-HH!/'G=9#X)UJ,D>F8TO,=T,2S>I1$SXR&#_-07R>\__XYSB8CCCTAB;5MT-$L\G47JT9+L(-%Y=S*OTUI>(%>&DDHO%2&3!,!8/ MN3X=4KI6RR4Z V-Q1FBKF,(6%S";5]\-*<\M,=I TET@YLV4OBVDY?@KO@[+ M<,G6R,L28DH10HP25,0, 8,"^IG7,K$0;L+#HZYB-JV^&V*>6WJT@:2[0$R] MF)Z_"DO\.)M_'[DDE"G,0[%(@&+$@:B\5(2F)6:XJK3+U3C-:"TX1JD:U++INHY7'^Z89% M=X/%<\N!'B[7+F#QTV>1=\H9QD@0F ,=DV@@ MZ!B J14N\#$^KW.ZO7/^T\DQL7;BV7M*U!# M^)$RL:B894W>$,)MLA!U%&!92%+DP&UH@9'':-@-,\\G9]I8ZF?&T N23ZXR M^GD2/HY,P91U,<#1D5O%LP!GM2.#*!"9,\&XXR[=[BRW&S*>3_[T<%EV4LC^ M\WB1PN3_QC#_F7ZR&&49+5/"@Y!(MM#*3#AV#!)SFAL7F8^//:[/Y)%1;R+3Y)UC8R[L,I(3;F8?)FFO';_XG?1X$L'V/60UZ]&PY<$0,D%YND$HHKE%FW M\$/N+KL;0)Y=;O4(V9Z[AF.=U;NQ@U>OOJ+B7CN5 +6/-9]395/?<)1:GN"S M=N7(>HXM*^\&D>>33&TBX68H^;JG"\STF\5L,LZUV]S+ M,*EMU"B,P^7B[]-PD+ MR*24]8J"UU]<@I"]AJ*R5LEP(7AK<_I\6J'MI=ZG6Z'M(^L>T/*P2Y=C*0JI M%4B>:M4$C\1!"6""*]XDX[U^[.'>G[05VEYZ?;H5VCY"[@LF5UVZM!#.B>C MH*=$9G M,@:$'+,PDALKAW-6KJDX+TR&\%(.$W '$'FQ6%",>>W?NVP,5R* DH6$HM3PQ@X,%6,\ P-B;"UC[(+ M83U@Z2@ W/=7,OZ1%ZSGS -=?^'O#:2Q4=P.KOTSB>3%;W M@2O!W&)J5'+)W"4.*9E,6S#3B4T\0.;(*10I,;/64Q$>(>?,A][0H&JEB XP M]6Z.7\(X__3M2[UJ)L_P[?(3SN^8^5'V+D2;(PB.-0U2N_Q'Z<"BR ISEM(_ M]NK@$&SM0-9Y6MH.=Q"VUD0'X%H3_[:\'B^^S!9A\K?Y[.++FVF:7-1J:/II MH@TTGEY@?OL%UUT6KSDUR(5)$5A]V:>R8^!0D5NI(_#%*AH4&D>' M2/=P:,R68=($&K_,IA_OQ[DFI>*"]&!*/=F0^!" ; MR.@AI= DOWFLB#LP(._F,S*!R^_O)F$]-O(?%^,OE1-R.4=<"Z61:\BZ'M=U M4)(CL!/LGA]1!$]PT$_K! /J*\SAKEB#_,B:C-?YG M#2@^?[D@<+Z_+ :M_'CI'/U#%M-K16:3HI5 02N8(K6R3NC"VF?&'Z.H!\>[ M"8P:"KX+(/UM-LM_4& Z*CZ$@$8 8V8U*B5!2*9&N:R8' JWHG7!Q]7:/;C" M3D+BG'\=Q@FMA$))_^G;IN5_S%% EB=X!R]Q4Z1"T-6HP/FI) MWGM,_+%7%8< 9!>Z>O!_FX"GN1*ZL"^W$A*_S:;IRJTO 7VQLH8%9"8%T^"4 MI/,V""T,ET;<'W9^-)8V$G*>"10#@.=X,7=@AM;TCZ*T(@6>Z="L361K^X3@ MO(62-.>Q&(6L=4W9>N7S3)48K 9D+T'V$#R/0QQ/QLLQ+L@_7Y5=?II-2.B+ MZJLOOU^+IE!0EPIYZRG4UV>A7L'(*"!)Z2)RB]JW3KGL2ELGI8B_-*DW&T0A M'=B96WS=SUQY*WSVD@'FK,E_KQWB=*1HT#K4R=#.8ZVO+;93<]YKUF&TOQUB MQZBB U!=72"^"]_KG=Y5 I-;YKE!#E'$3+8\>O!22H@\29<\*AN;IXR&IDHLK&!#+AW=;:VS>"Y]*!I M@QD" &K6.O9ZDJCS'G4# :JM*CK UNOQUW'&:7ZP19CT.BH+Z#3YF%A?\*>( MH*WSSK L8WAL@LXAB-I"RGDSS /AJ(78.T#/*JS%V#M SU6ITW^-EY]>72R6L\\W7%TU]1ZA MHT"D]B#2LHXDDTE 2$E3I)J8MSQD[UNW2=B%KO/FI ?"57.%= "R6Z(ZJ/@D M^.!8%B1*2;&Q*H5\14?<%V22I215?'2ZQY$1WV"50X-EO >"YBG5V!=JKSA@ MQD=5!V 4EK%F:CCX;"UD;4I]#J%<\_N5 X_3P1+BPV/K$&%WD!J][Q#JQC8@M7;,_[E%/$A,-EK!JIHB\;-)(* M,1I#<8FMU]0FD&?)O8&4 Y=%.B%+ZW#PUO+=A( G273N)>P.C,\C$K&6Z,U2 M0>'!D!FMX[PLV5*.7EJ9K72/SFL^K/W#47NZQ_LTG+M91!O=;FP[29;>]A/4W5>EVD@>#561@?P^C#'L+B8?U\);+U-UE98 M9E^T4 $PU;LD8R,$E2T(+W(LM$_0MW[1O8V6\_I- T&IB>#W!Y!? VB*'RMH M/S1LO79?2B-G1YTV3#X2=(X7=0/XZJC7M66=./.$TU^L1('J#4&:RI1:'%I'J=Y, H%FW(9$)+\W:QV\GI MYIYEN*"ME3(Z.,Z>DM=(*2S,,DMQ10BT3XR!&&P&EY5D*CDOS8!)[(TT=7-= MS]L,;[BYV^DD.CS![RK$.3&7/,[GF M0C($Q:.!0#XY1&&-1#J/T\U V.<[UB$HKJ0*'+0G8ZVT=Q!-=,!+3$QZ)Q!; M5P@_N[$.^R#AB;$.^XB[@P-R>R-Z837+!T/)PX8&.*/!L&,B7R\)0ET22.8'BD&$,*49KW/GH& M8QWVTNO38QWV$7)?,+F:.)"0#N-Q H;*_]+E6(39_/;N(RW(Q>=@Q\ZJXKDXS09X,:,[3^NFR4ZQ& UH5 M%5@,V/P!]SX$=N+4'(B&^U>R@ZFF!]S=O@ D(BC:K&JBWT]PI:]I?O%Y-E^. M_[GZ^=8>3R..H2@=%5@LN;ZC#96\9=*=:VKO)N17LG9K 16L^AT Z M_$C;J%LBNQ?F;^95?<8[VG.?2.HC3P$8SRZ!UZL@BAL( ME@2:8B">A.?8O+1X![+.7>_0UMXU5D-?R%K1OWAQL?PTFU>3/N(^"!50 L-: M=H^<0^0R0+V!-TF%)%7KN^E'R#GOM?1P2#I*[#TBZ,UB<4%L>,U1%'(X50IU MO%5MHU8'71F5?(XN>M^\9=T64L[[1F]HY!P@[AY1\_9BN:"SN[Y;':4ZWT/[ M -H[V@&BRLL[;YFYH_!PJ^#.":%5]4A_G?Z58MSI[ MET6K]<\+4LOO53DC$T-B&LEPK@8/.9_!66J-9DO?N S=4M>RTU$X M\9T#I+U0.S S&ZJ:UZ@?27+SHW$6C%$(*D>* %26H"T% M[EZ$OK!-=68G;+ MK[+. =16YLW O>RW<5)RUJZA[:J$AJ^GV8K)1)=V;*=&$URO? M*IE203GFP"=!!Q3Z!"YI!\(H5[M9%-_\&?\64AK7RRF=.3GZHKK_&A2Q01:6 MU<*-PD2T+IGGZFH/%95U&2*)8;FK':DO>F1>%_'>A(0D7T1L9O-PI][P;,AX2 .W-_W%W&1YN,OES>%K\;S5)/A]*?+RIM,5C77ZQ@;.6TA5E9# MY IY9#K)9'/!T#K2?HJFLV/H6+7?/WQ:ZJ #3/U"0G MB"25U1%BE!0 VE+?$J,%3K$?\TR;HI\.BW9=[3Q7[>VA,8AT.S DOY) *$2L MI5B7#(@Z8<5*66L&:WZ@6'".7#MNM68AY &N,!\0<9Z;\>$,RG%2[@ FFV9T M!F?P*7B(.AHC4(DB6KNU]VGH)%(^4*!^ /(SR6E3 M2^?KL7&U:(C^/W\(WT8ZH6;7[A MO8&03LZT-D;K>%%W8+G63-1QEK?]PO>S21X5[R,=\ADP\G YK2ZR"%XCIJ"4 M8+Q]7YIMU)SY)>/QJMX(GJ/EW@&"_C:?+18U>APO1R9GY7GDP'TQH$K6X H9 M:HH/HQ8^,:];-U&[M7QWM>_'6)=#Q=I!LZO?2?!$P"<"]FO:,I/9ZH7(3]^^ MU,S32&I>6%*"J!>B=GI/X)50@$%H"D*9N*TY8,JH(5\#54=ZJ,A$*A:>F6/(,LXZL>5NK[=1T M5X-^#((:";T#^/P-IS@/D_J"+7\>3\?UU%Z.O^(5.R[)[)W.0/]*-4\5P GN M 2UM#)><3<];\O]=T C99)7T9"7YB4Y;;4= MA=?2 @M1\))=$J[Y$^M'*>JN*/T8+#44?@=0NBQMNS:L53:,3E\3P(AZLY*K MRV^# 2)?L^ BIM+:;WY 1'=5Z,< YC@1=^!#7S.PKE?[A8*!49:ISB+1P*2J MR2]3\UZUC0ER+$PDFVQKIV<#&=T5HS?!R8%B[@ IO\VFL[M<7&+^IK2QD""" MT9!KOE0I"B2#J/U2BDF*.YE":AUQ/4E4?R7IQ\"HK0XZ.*+>3+_B8M4B>:P5UUHX1?O/2XH'2@:>I]"/4W3>RXIA<=50%QT@Z^;P MOKK<&T\OB*F;-R0OL!U,&0JYC>0WRNC);T0.T4=+W@ Z=)I3C-%ZEM& [.QF*Y]+V4 O>N_ M"[QF\7(+O\0IUJL#KM$QF0O085'?4VKR8R7WX',J1>=HHVOM^VTA93?H/9?+ MWQ;R?A:6\WK:\[N:@B%E+9?S<;Q8UK*P#[,MFP=U+EPG!3[49@'U26;@6D(T M+F4M?5+->S,,P\ENH'TN=XH=:+L#4[EQ;/E=T6S\2/WA9+:XF-^J1\HFZII[ M!(XR@DH\@4^L0')6L6Q+":YU$5=#\G=#]W.Y^SR77CLPXP>S?C&O>_U36.#; MB^4[G(]G^9[+-$HR,TS6 C>*=G>4I U)0:?*VI(C%&+*K6M=!V3GO,F"LT&T MU59IC)=>M\[?PGAZ2Q!?9HLP>5LV?O0^^S;ZHCWSD)DC]D4PX!FOO_CL$DD M2^MQ-(U9.&_>H^LM4L5>X'M8!KM(#8ENF_=1)/?5+A'"X:MFN1)3JZ484!< M6+3,:!9:1Y=W"-C-67XNE8V'R_:,P%@_SKZ:OTX>]ZV&9]N2.->[#)&5[)F% M+#DG\&.$P'V"(FV63ECAW+V[BZW/X0^C8#< ]5[1>#(=='=<;N*,^'\9%N.T M;DU%'009=R(61E56F';CHD\I%H&O>SO\(>]33X)<@X1>@=W M#;?QUGG.8;EC!-Z%_$4_%>)6W U#Z."AV=^[5A+/=*<>50!CG@E*VM M=.UFCY[+*\3FFNC ,OT7CC]^JF,QOY*+]Q%_NZB]0=^6!S.AKG=DE#XDF1)D M6:>,64O.I718![I[:6SP.K4.1/>E<3=;]EP>+0ZJH6>$P/7!C\[++(@YB868 MT\I#1!5 *DR)?BXT/Q?\.O# AL7*@<#<7W%=M&CWPD&TS$-0Q3 D?\4W#QWW)/&\/EX/V&RBO#_72+)W*^5]PN4XA< M3W9WU3,.*WN$_8$GE]4'BTX+#:74E!E'\@ZR=B"#R1:%5EJV[FMUFLEE//ND MHA' 72+&O*RQN:?-R[D53B&3P[5E[WARV3[Z?F)RV3X2[L##NZ;^U20L%F3R M:P2UFLQD+4M*10V$M-)I_8#-+P-+$>)NP/< MW*;_<@0&9G(C5?: H1:D>B7!6?(B.;(0>2@^\-9U3 ^IZ 0IQZGW?F[C.%GW M@)95=F;%Q\O+$2=.IIQXK7N)PM$O))601)V-C@Z5-'6"[2!9L=M4G+DE]I%Z MW9@".UC('YB]-+SC/^/ SO+'TS MN(8G*ZWG(&T*H)@H9/,8 X/<9FN3U&:PH^ QPAJ'Z,883-$8T*CII)8Q UEU M 2HG.K&SUVA;9]%["M';8^&)@'T?>7=P %Y3OY8(.7U?9M.Z;5=A!HN2^XRU MLDQ6YX E5".(42>%<4>15D6T K?NGOD1D(ZPLF(9\760WDK,>;N1M,=.&ZEW )_M%SF&2YY%;81B:W=:2UM@E4UCR)) %+0- M6H_T/.Y:]%1YZ2;1U5'B[@ W&ZYT+$:OM##@:T<_)3/))=*F"M9RC9*BB=RZ M(=+SN1;=2[U/7XON(^L>T')S8_?BTDYFX943)4(TM>&C]:[V61)0K&;2A,QM M:9W >4A%=]>B>^EU^[7H(4+N"R97%[LD!XU%1)!%DS#W;\# >30X3< 4PV7/UY:4Q01H/4)H&*F9QVPGY]ZI QA9PLMJY[ M/O#V?/C^[PV]E,,$W %$WDQ3]=#KBZC5O]],']ZQ_#Z;3'Z>S?\(\SS2.>5( M+$)FIFXH$VH'! 3C)0L\4Y3@6SN[>Y+8B6-S("(>OO(?3#T=H.]65O-AE;]+ MQI,HH M660@L"*8Y\QY;XWEHGG:"_V!]PT\)_Z[0T<%NN7.)MN+@12(^YY7W MQ?)77'Z:D#^T R =[O\IYP=YF!!KVYN&4>(C@X<%2T*HYTQIG4]\OX3 M% ;KI7M*2!TN]PZLUG77I5OYA!'CUGH*\$ &E*!2L> 8F5^>$L.L$I;FM>R; MZ-@)0H-U:SPEA([60C]6Z-&\%(; E(T>:#/4-+Z6$ 1%:Q2?><^)63;0->D1 MV<+!6JEUDRW<1RM'YGA^FN:A0++\:UY<2:IY",+9(WMJB% '3]8.$3%>8K,&+2M); _ ME9U_9#JZL#]OQN[<*V4IYB70EZ*=I7*KHZS=V UQ2XQ">>:/R4[ M8.K>4# :6MN/AHW[B+X#W.PUB5)Z17&OBI",(@:%9!"]RV"2M_2_+'P>=E): M@]FB@]WOGAAU@RGNV BT_8U%32A/TWB"=W;:A]F^XO;:9)UX@:""6,^3\589 MT 6=+SX:U?QJ> @^SGMY?&*8GQT('=CHUT@KI_%Z$C%2-++2]32_^#R;+\?_ M7,^TUE*RHCEM;*8SD, S>.,]I"1*,38HVS[5MP-=Y_4$SH^>^_G!UJKL )Y7 MHT?NW@V.DN3,UT1$J#.75)U3[-$Y8%IBR,;YP%J_N]E,R7G=@NX@V$!='8#N M;V$\K;)[.WTS_8J7 AZ)&%G)%"-&I\CY=D6#XSQ"QH3!&9L];]U>=R,AYSVB MNX/<\X??(E3+./EB(EB?)(%,J^-WJQ(M<0A0(G< M,!AO+SUG+U"/Y3PZ&?O?#P M/OA:S)<5FMD;?9#VD^5WX?E5/O"[*?(_I8KZ2VX=Y6-6J1(G61YLAN#J-.0<%T9/LZ#BR M(EO.$>]=46VX==]UM=Y>$[;1\FQ D9\UX+KD:#Y+9*E7]QOOPP1?3/.O85EY M^OZV/.3.&$M..B:00M9N 2$2=QE!%F:RK7W:D>\*J+U6[NU9X1#@&DX5'<11 M#T7X(J79!6TF.B-P_'75N(!H9CHD!CPK5Y_\D,&/WA-W3D2F2E&L=="T"UV] MO21L"K[!%-1%.NDA5^_F^"6,\U6:XC([09OM[?(3SE\L%KA:*ILW%& @7T8=B R_# W$72GM[0'@B:#978J=@O=J"Y'C4_5K5-2]+.;^JQ1L=%Y2\+3N+IT91J\5K4K:\J.U9EUNO6-T7$4 MG_=,/WUAYZF4>SB49[0WV[SWVHW5S96&HT1F@3M%T9ZK5PS,$Y\QV3K1O#B, MY(WSY@_"CB'XO.?]B8%\.M4^*Y,\^BKD$CG$-3&97+ZRL M:U[*N3^5G?0^/]%+H5;JZL ^/K@H(%YIFRV_OYN$Z9(BP/H&]$O]R B58E%X M!M+6E)IRM*,3J].6JGQCP>A:IYIVIZ[+-T;-<#([B=*Z2"T]X.WEQ6(\Q<4" MUP]8JIRO>KN,',>HI"L4%08$5=O$N=K6)>=BK0X\\^;30_:AK\LG2"<#92O% M]5-W9I:'P>D+E=A "[C M".XRLS04D$^GVF=EDDZ;C,9@JWC!#QXS05M.(8J)($ZM+Z.WY_* M3N;5G"BSU$I='=C'.U6"&_MFVQRLK+.30ZH]-;,*X))78&V1,MLH=!HR5#J\ MS_FI\TC-4/%(H'2\BGK W&4.XN?9_'?\U\\:H#$BG""B1 M/#@C$1S7#+,5FJ0Y4,IH.U5=)HH&0UU;)764'KIDK#XZNFS\.O*J:!DX;2"9 M"ZA8'](;.B/0&<8CY]$-EC2_14:7Z9^A\76H&KI(@^\NLU'$VH2:9R ^!'FK MQ%O$(L@KL4QKR07RUM.4=J>NRT3.4,@;2&D=1!>5K?I/O5CZ&B:X*K8GB8T3 M 7Z5V9_FNS^X] !O#0?K1#96612I=4GF:3D\[[88+*KI&";/?1.-%*9*SWIY/9XF*.U^(K7A55C($8,9+X! ,O4@ G++G" M6DJG6B/M6)K/.P9JT'/V9*KL +K7.;;+1Z.O+N95_B.=.7JK(]C:ZT%I;2'D M4G-OV>7 N Q6-$;D%E+.:P!/BX=M \B.4$[#H91=:3NOY1H"0_?-V"!: MZM<\O<8T">NZX=GU+?^ECWN0H7KT"QN9K-V);F2\KKW_:XCIF&)T=!IQ6Y\* M%);!*Q\A>>N8ETH4TWJ//B#BN#:0MX3X]KX0-QW'/KHLE)5@,J?C.&D*Y;-C M( 3QC#F$K/V3Z#AHZ?,:G>-T?[??XY R[]?&_!3F4_(VZ[7T96E:'95RD'79 M\E6-[,HNA#:R*+>66BURDZ00H0B9$#BO?;0Q$+B86OOF<4]B M)IOD(&57'_=D!L%I"\A0*.6Y2*%UMY/]*#S6O&Q8;=,9*C%KY9.&P!BG8*#4 M,S0R8%)QZ1A:@O[PD0J<5U[>5F M*C9NAR0UR\)"3K9.JXP1HA8%4.K:$-2Y)%L7HQ]+\[D#M>$P^.C$J*&UVZ^Q M6[TQ>C@8]!"SM^6K&AG 70AM: K7VEZ]Q+I>['>?BQ @/*_U@<+107MU6]VDN6& M&\4*:!UX[:69(.;,(3ODM(^0-M+9!+:9Y/.;R1/A<].HL5.INE^C^7,8S_\S M3"YP=G,3^F9*XKU8S[@]Q'H^]9V-S.A>I#>RI]=KWJ#G!HT8?3&UY91E%1%& M%:W'J=0*29''*.)F+3* MLGF/OD<).J\=:X:+^U:JG1+ZM4$K?^CFS?AA1N?!E[1TUK82URH!_X^+\?+[ M33# 6,Z))W")=*N04!,MH[.-@@#F=51&M38D=RDXUG1\J&_\+N;?5\*[@2O+ MNG9[RF"Q/M=6UE*<09@U)M/_185%M.X?OYF2,Z?9#]?V??/00-#]VH7JEZNBV,>B(P?+ZT"^'"3XK#W( M8HUU6GO5?";L#F0=_89BPQ*SY>WDA8H2F8OK+O'*9EM[V4C0J%TNFN<0FS\J M?X*F,Y>F-\;*@Z<0+372K_5Y,\T7)*WO[_'CX:'0@R]I9'<>)ZZ1T;G\=+(O. (^U?52=Y.1$5;"Q&26!R?G699';:#GZ.>F][]V4'M5< M*/+2!2B--3?K([B@16U4:$LPN;K@ [/;77Z["38>/"%MK(Q^C418H:A*4-1=ZYK"_?!6B'TBGB M!'GS!NE[47CVF&<@;&V(?H;26[\VZ_U%7. _+NC+?OI:GUX?E*"]]QVM\K./ MD=;*;[F[QDUFG\F:4!,*0O%TPF5R>UV@$XD%;F1!Y*%](+2%EN/[ZMS]WAL( MUK5I]@$IX2G#+D,?:M.#PZ+-K5\V6$ND3<2>N#&2389)$2UD M9GB=L\O!!1:@ICL-0:Q>QYS6YK?+RV_X[M5#U&G^91SB>#)>?E]IX-;YGECR MJB (Z>IP$3*S7I!<4''GR0,-1K>6Q@%D/H]V2?L@:T,T,*CN.C@87X\7X>/' M>1U)M.K;TS)G%1 DT'Y.H\@HP3/& .FHK-T!*C4?%KY3H2=-P8]!03; MZZ??8W1SAYHCCM)'OW#0MCH#'JE;FZJHH&+V*8*5K#[>H>;_T\OM:U*\F87'K?J-@\:(4"3QE,KVV>'"6 M8F.9,W.H(S.EM2=_$*&=-N79!S\/+IT&5U@'9^433*X>XT\NZJS(N];92Q:8 M$PBESA)45CL@5P#!&:9EPJ31MVYV<""IYSU/SX',)DKK&IN7[&W9@CZA9,); M,.0F@$IU?'EDY*#HI!*Y*R;IUH-'#R3UO*G?$V.SG=+Z=?=N]Q0[PLG;\#4# M-#T;T*';LUF53H:0I@.D('1]BT>^/O<&BC">E^*+;=Y#\;2MSVYVQ66.ZI^8 MWV12XKB,<;WJ8K4L(?E6(%ZSE8O%Q><'EMRJDDMA!G2IS08%A5^^: :TAU2P MQN0AC]\F+#RK9FK[X'.[03R]ZOLUE+<;G!UA*#=\S0 =V 8TE/OVP,HHI'-U M!HYB E2T=#1K5, RQ1UUQ)<7[6<+G;0/V\U^V:MGU_J1Y?6 BI=A$J8)WW_" M56;S1')W((.AA(B85DN'+(6E<)G('-\[PV%;_-IDAHFGU'BA+GF.C;5CI]07K.[V@77HZ) MNW\QQ9A)/J '(VM-N2&_++CB(/CH(G?"*M9:D .Q2>L_'75#HG\'MK>Z6(^)W=H57E^;P,%I9Q/AN),&UE]F6PA MEI(AE!*3PNBS&LXG;L! Q\WN]L'==GMY:B7W:R7O=WHYPBQN^:J!6M(,:/BV M=AQ(2ABGLP+)50*%B4/M!T)ZE\X+DQ#CLVE,<^,[W%OAUISUEU?2OOV"1JCD MR%]AC@50.ECPRA9@Z!7F$AE7S9O5'$9JIUTK]L'0(P[?8$KKUU0=].3Q)O-P M2T2O<1G&DQ.^_GR4BG.^"-U=/,._$DT9HU2$4B^4H%"( I#(,4!AS%.0I*0I MK6^RAGLE>NLN=]6.\U=CK-M7HON@Y)$+]E9*Z:#6XTZ>=E4:L-KN*UU]&R]&JM:N>&$!\^JM M1N!UG)$'DA\6@XQH:MW!\@F2SGPT#X""QT:F'*F2OA'V>O8YC*%?-HP MP5_Q<\3Y2 H?HB3WE3,9B3=BRRF?P25IH_:>2]$ZN[(/?=W"[A!H;!AJ,HB> M.L#@ 3>8+[_O=4>ZWO?<.J]C <%)($K* -[K!+4.AGM=VP:T;G=T&L[.6RQ\ M@D.]0X!TL&WV8O"W\!DOS9!DMDA-A@$SBS5]ZL"QH(&):*+5QC(SP$7N(:2> MUZ#WB+IC!@0>"($S(GW=,_;#)WPW^XK3M6&Y/.(8<]SGQ*&$VBU:!P8Q<@5& M96;J*1OON[U;.^]N^OZ.7(FAU#IK*N,.[.&3!]$OXRF^H MB3/#P3/-P0J=<^0!(P[X0.T)ZL[[ON($Q_E BCJ[H5IS\_:/*7W?I_&7=SA/ M57,?<231QL29!Y[K] SO1+T[-9"=Q)"E0RF>SG\_L4CGJ9T#=3IK+^ .3-6[ M^2PAYD5]L5[CMJU2&YF@57)& !?U DE*"\Z90MM.F,P*YR*VKO;8F;C.XX[C M$#>LJOJ]ZWO8E:;Y1=Z>2PS6;N?D5W"[]JE@&6TI04'1@I#$[ZT'YY&+/ MHVW./EBX>UJVE?893\W%?#GZ/4P_XBI>3B9;G7RH U$U*),$!*X*D*F5J;B" M2NUT<4O?>FMCT)]N-L6=!<\#DT%4.#M6GCV X#(X#4(+7[@%;2*1G25"K%&O MR0:5E8[^8:U@<,Z_IIXM"'M,Z-+B,_(2+3 5@P,64 M@*<86+:>^S*0)]V ^O- <$C/X\P:/AC;7W$>9TURA%>^_D68$-/C67Y;?B49 M4'A9F;_ZVY$-QDFLS6QR?0A&!AN"" 5\C+27T1AA[W4#VAH'[;9B%\'0R?$P M&U@U'1C33<'E=X!L^#)>ADDE_8K1^ICW-UR.F)89 QTUM.-\;?(5R9.1%LCF MI9*PB+A;"+ //+=2<]Z+NEZ@V$99_<+NQ>?ZT.>?*W&.R*\15@8$IC36RCH% M/B4$:4HLW&-H/Z-@![+..P>C;R >K+Y^$?GF\Y),9(DBLU1OSH2E[26" BXD<]*55&3KKG.[T-5%I-T4.SM/ZSA4.STRFC84;P M!,?IX\Y,VS-UM[4&.U@/8/7$IVN=]I@\"V"EB:""X1"B="!M[4Y#D03'G2Z@ M^SM==W*=1]HP;ND@J,\H&9T0)4/T(8'F.@3+5 M3XK!UMO@<$#\&;;#35HN8U&"C YPQC)Q7C0XEP1HP3U+1EL;6^?BGWMMQY]I M&QP&A.>R!6Z];0HZQ&2#!Q%2O4:KP]EB31.K4&P25L78NNO&GB0^TZ773JFKT;VVG\/FZ4;\S)FZ^^Q>Y^I^;"GY6S.:,5_^==NLZ&,K M#";AG=DZ<08T62X$Q1G@,Z=SR]'A%:7/)$.#4IFX?@C]'3A?/5%"O[C%[?2QMG?M1RW4KH;SC[ M. ]?/HU3F*R">($B)L$-R.1JA8EGQ(3B%%=EPVJ_0M0[92V?>."RE8"SM[MI MI-]9:V&?&S'K?N*W6;AL]:.)=^(CD_,D!"AF$4+0DG[)IA2&)NTV4N\IQ&PC MX'SOXAHI=M9:RF=O/T,TU^&/Z?+15_1&%9L]<%E6-67U?4Z*(*,T,FE%/][U M"CK>ZVWB9M0M. >-%@1(1P2') M0CD53!;"N<)WU/OF%;0--A1X".#GPQ%H1W MD@NOA)0#U7QN&>!PVH89+;2Z.=]UF(C/^N)TQQCMIV^7_25KC1[]?_X0OHU" M4L@3G8-%U5[5)B!XSR1(%T(0KB1T ]51[$-F%['O@-K3).P M;F5I/7]V6AV5#?]5(W(#0%5992@+&)0)$U MDDM#\1 +F:E@E8RN]0O>!T0TG)&VFI+\?=5/?WWD1^V,E#Q!/+AG(K1W^^EV7(.VGURSITY.4;[CPPY.TKJ'?A%UTF"%0N7#*V2!#H:X1,6 MT,IH4)%^\3ESX(C).HX:FY>M;B6FEY:M1ZK[/HR:R+X#$-VF_S+NI ]1:($( M*D5#)WSA$+FAH,.7$J+T@6*.U@\]'E!Q9MBT4>_])QW'R?KLL?F*_A7Z065!<:H!5AC"_'!&3EHG)-Q=DP&EED,\4DOYI$%SOS.YTB=S=H*L#.+ M<1-]!I&\-C(#-SF "HJ,:6 :&#'&6#09>>L"KHV$]-*ON>UQ<[S,>P#.[//G M6ME;=]*53_<.Y^\_D6C7H07F46)%)Z8UN-63.242>"-H1P1%4J)?-+:> +P+ M7?T8H0/5_^!U86-=]%N\]%.8U\J=RMXEUY7)Y@V_#UBF45A^+(.-HO1;9*P) MN K79,&B43+ HBA<2Z5 --X!3VA39$QC:%T,N8V65JV][W__VL+G&&7,S$ ) MLB;J?2;?,!G0,=MD@XV1Z1T]H2>6.J\Y:J+I;7V\CQ=M!T?=]OC!!<IX/S?63= UI6A_\ZQKR:;N9U=#8*T,61 M!Q=Y;8KH+7#'#=/6)8VMJUPYG/O6]B:<*)EG)ZK% M%=J!LB9!K2Z .OA>\^"$*+OF<;8NTD>WYW8G3DN9GAT:KV;3KSA?CDD8J]VR M_O.B/G^H*AJ)J&4(24%V9%A5883S[,C$2I&0%:G"_0+>Q_HU/[;4.1V31LJ\ MWW6YF60[@,F&U,&*$IPFO!+;R-C@3, *>1$5C%S\*;6+T6)P6:5U/W&;(^@ M99<5SVE;A@%-3RY6(Z_XGM,%_/Q4'YG5ER.;GV<5T.:J3(DK,AL[MFOK".@16!PY6BZPU1W+Z6E]P-B'\/-V4A\#H M^?39 8A7I+\,B]KO]/,7G"XN53BO4TU6<[2_WWSD7?A>?_3BCS#/;[_4#R[> M7BP7RS"MI4Z_7:Q]2!/)&;6TBU&0"AAZ"(I)KF>(FE;*J;0<8"!^95HQV5/N+ MH/Y3^WOI]>G4_CY"[@LF5\6%Q988"TI(JCXB=8Y$$XD-49Q"CSJ'YAV<'U)Q MWJ*\X6!RB) [@,G&@_HF8M84&.?@R1'4K)8XRYJ,R0),3L1H1L[NSZ=O'DK< MI:B7FLY3.#@-==,KTEZ/*?88QXLEYE%T/NN$"6A'.MHYG$.0WM)N+()920*4 MK2^HGZ*IKT#M&/WO JU#E=$KN/X^S;8[82/)*XLK44U]96 ME*EU^]RGJ3JO.3LUP Y72 <0>S--L\]8QY==O5D>3R]JL\<+TDR<-*0(Z"+AYB2!".$-=Y[+*;U*X@]23SO/,\!P3>DJKI#(EGMM.80 M\PV#O^'R;?D0OMUE5#IMF3,1DK>,8IC ($82*FHE64J9A-#:!AY,['F'?)X, MG4.IKXM.'!NE.&(F.R)90\;ZR"TJ YX1+TG:DH*4&*(]Q4E\WH&=ISY\]Q+[ MX59NM@R3)MBYY8U>\3-B+&7&;:AE+;5;F<@0A0I@-7D/2CGCHVF,G UD[(0; M\PQQK.WN0/C,J?@%3D//+D(RJ*O M%KMSASTC=>V@H<#6$<\J M1E['\"((A]QPETO[%O9[DKA;IID]=Y VUE4'8= Z&/*+DP5AD6?DZB:;U?=I>!.X&P^=XXS&< MGOY\M;D'#NLY8KDSU^<.,:YGRX+U?<1-B/3E$NAE-E\7F]SZZ.+O"_K(FW+Y M8@SSK[C\-,OMZZ?;T32H&@<2W>#5V%R;F(,%:S!3$,P$D*M50' 5F C.YMS: M74UV(QCL7)6] MCTXZ ->&4D&4UC.=:CN'3-O1: ,NUBY^Z"P/-@=96E\_/)^J[+W4^W15]CZR M[@$M#PN&$143UG*0HK86T382!R6!=A(]TM]R-DS[PJZKLO?2Z]-5V?L(N0.8 M;+'!MT)BVY'>;\:JJA#A"W M;_K-1\E"40%"RIS8TQE\J%=X,H9@1!#!/HM4Z:E\]>/P<62N=!]E=5$0]/I! M>XB1,T+F%".9[$('0E)(?D- R#I)3%E$USQ ?$A%7W6X33%UI,B?E0F[%-RH MA&2DB@5T'?JNA FT+P)M$TQ*JU"R58/>5NY"9%_5MVLU6N86C X:A1=%F=:S[@XDM:\*W>&1V5AY9^\/ M^.CVHR-B/>+OUK'PTS\NQE_#A!B]/AID\%J:7.=ZU0>U-:7DL@Y05&$1G6#. M[MIJL@$Y?=7^-D'D>51UQE-\S3#Q-%]E,L/D]LWAB^6ZC/7*8[GJSOFVW.)] MY$*VSN4"7,A0Y_"JFL4B]Z5P8K(H+^RN#7*/H:.O>N*&:#R97/]/5$>W%PQV'URVATXZ ->&&B"! MA43 +"3N-*A 09$+(H&TV?I09^(..B"X[SJZO=3[=!W=/K+N 2T/.RI*9?-J MB*01SE,0)"2XZB '-+4Q=7 ^M3[Y#FQ;>I5F:^612 4]!.RA4 M)#N%&4)!PY0T.F+K+.V?JXYN+WP<6T>WA[+.FF=;WX[\CF&R^LSJZF-S[Q5A MC5)"29#5@U A1/#%:G#1I6)8"?S^)?_6&ZH=ENN\?NX0+ TCZOW1X]?HF>+' ML+S\[.D+ZC G%15GD(WQM1VL(W]46X@:/=%(/(K6O7G_; 5UI[%GARBL@WNG M_>JTA".[S%TF4:*@#:?)7"=1P$C:+LR9PE+KES5_IH*Z8Y XG*(Z\/'VO=S- M6M>$8H04K*A=(CP03P%<(=,?-05-[$2%G4?=Q)^O@&X )#915I=WJ9==/*WF M648.C/-ZER?K0(&T:@2+*(DU77QCS!U^%W^^0KACD'6\X+O$SY5K8%%([Z( MCSS4CI[D%=0:@SH/TW 1C1:M7S$?WSI&'UFG-_2AL=S5^M>YM];S\ M?NM/ZQRE9Y@X\@RGP; )H*PNYE@7!294@.&F(D:Q];%T?N8647N[(A]#_K+TR M.L54_>T<\?*F3P:-44H232UB5Z:.JI/F_VWORWK;2I)TW^]_"2#WY64 ;U5M MP&49MKL'][X0N5KLD7DT/*2KW+_^1I+48IF2N.3A2:F,!JIE2Q9C^2(C(C,6 M 4YKZZWF&)B< ET_$-7&D7:4ZG> T^%Z&+WSZG21%9XNM=^!-J'ON8\;AT@#J:B!N"W[<;F M1GX?TT4I!'G5H8%-J#%.!6* Z3)T4W(,0#6UD+2Q4@;KC:O]&K0[=>,69 Q^ M!E963P/ ^[WKXI_3BXL)Q7.9F3(@+&6-L8G!'!J/<+".HX0P:(FD]C7SU6>/ M6SLQ&&@.$FT#D'C@G/U]WO7]A#C,9J0O UP9IC8R"O"IC"B/*5D>C16L]NW4 M8S2-6_0PALO;7Q4-0&O+.;K>RO:EM,5@^C2-FPU6+^9SAW^[XOYC^>HLGRT7 MI1ZN_Y>[6*9_3+^<3X)F*CF.[*Y>:ZEF8&7,(+7S9_RD,Z)8+S)JF79PX;A0O#VTT*?0&2A/PU'&@TGF)+H&*N^^Y M]UZ[/?99XQ9;5(?7 )N$2X_&,AGM(]^3==-H<(//S'QDG.1RE;GZ$6I4E+@ M=0J8[P1#E'+:D5WO<8^G9MPY0*>#W)!*>@:@_)B^I=DR?4:\]:5,?9((P;/: M)_ \$1 $WQ#+AJ!(OI0?.#,;>+"BP5$0P)L3 D@GD&$=>E=:1)R UB_"*&FX2 M[\NORPM7)L%?14ANBO&1U9F1H"$EYC"<)AF]$ _@> K4*8XI(SD"M]L^<^0= MHR?$W]$2?R(5P-<=DEW^7%K"/BSGX=SUZ<-\&E*U4N"=/F6(FN#]V1NG.-C+ M8+@S&$R2Y,JT0 .>,3RPC##HF742NG:39N/%P9$+F;+00 6W( 0OG;E1 DO" M9ZJB<+;VNN5G71R\#\*.+@[>1WD-76?>+4H,0BI#B($H,P.A(N9Y(FF0GI-0 MVL:Y',HJGW9Q\%[ZW[$X>!]E-(JI'PO62%0Q2^LATB1 6$S ROAK,%2Q'()2 M*M8^X9YHJM^[.'@?/8R>'6PO9C6*$V&I 5XNI$1@#(Q%%KBFA";*E7:/ M1VQ/N#AX+Q7N4!R\CSQ'A\2#Y:O,6D<$9T"U*&_60H$3+$-9ZY!55.QS)33M2N%=Z#O"=6.GQ,/#24TMK&XPUC[]W7*RN6 MQ&M%R[M+V0LKDI%@N0J0E/3$&^VIJ%U"O">)XSK*P:"R.R2/UEL#L'S?E8%- MEVF17GQ!%[(J:M@<^%IPFE2@9=EA $%( I:I(Z"X#LJJ M%'3U@?D[$3:NVSTEXNKKJ0'PO5KVB^YKFJ\*G4NHG@1.W%'Z?@J[F+RP8-I 8DGK.93((*/)AL0.RG_F5G!AWEWF>:+[Q\N'(IC[4,O M5ZON#:5:YT#!N#+#7):%#(EKB'A $"^SULPT;!'W,M9PBVLKUE$'%,_,4LX6 MYVE>;C%_/#JLX9X("CI@L"D<0X&03, +2I5']^GU4./A!F.JX0[>5BSD># T M8!W77?':<\XT34"9H2A5M&^,"0,$B\D3HT8S53LQV&O@P#AMM\=@[2#1-@") MFC9R<^_:3YP(* 53RF]8*..VRN"MC!$6#TI[;9G6MSL+%LBS"N#X89# Q:I5 ,*]!^)3 IRC!JR1")L1$>6=VT#ZM M/T.1W7!/\2'H;UOM#6R&&B#GOO6-";4FAM*#Q;CS9<>#PG1".I!62B)LR&FP M%Z5A.&JX?;D5[W D#(Y=X?>YR5CI)I6X+1>A0R3>$M!29A!)&T")&(@A<,6< MXND4\^7J,M5R_W,K)G(\&IZGE=R61N0Z<<<5*,?1FVK'P97G=*)$T"XR(GSM M^JJ!6&FY([L5BSA4\T?;P=B1U%7@N/V<2(N)#U;;8!-@%)G*()!49J9;H,%Q MKX-4/#?RJ/L8*[O9P=_F(;>JYAM()>ZOR/MGG_+RXMTTIXD6&.\9FH!K+E#8 MR8+A3@(E*DF)DE:F=D*P"UV[0?/I/:E6UTF[(S->(Y/]8KI8XF^LOC1OYU]> M:4#&8MJ'U0C)98IGEYOQ/3T>4_B-RZYW%[_/N^5E?SVV@*##EDE$ ML,YAW.H-XHJ.@0M9%UQ>MO?S^(RG7-T7;25^7D.*13K(,'&B4$2TQ&_#>,$ C-$$&HZVL M7:1R(M;&+7(<$M%WC]P6L=+ P],/'*Z*\S$H6L_]6?6ZE>V'7DH!JHSK%LPJ M\(92T"2KP*A)L?H#TB,DC0O9)F'4#:?3MB&Z:2+1FF-,%!6DO&K(M&5(G1; MC _*(4,^U1X'\BA1HY^L]2"P.[P.T$<; -MBAVLV\6_RR^^?W$6ZFEN0+'*1 M&5@O47)64? T$E A1\YEDJ+Z<*U]Z&L6=H= XV?@#:.G-C!X([GWW6([KQO> MA+79N!('2:% 1&'!IDS AIB)-E1[6GM1R3[TC=L8,#@&A]%3 Q@#MWJGC5&4 M2_1IGED-@BL\QP)S8%1V0A"NJ*_=9BC(1%H!)AZ1GC^5QJIEU(D F)H.P(H/1 MBI>[-F^,EBJ+G7K3=@?8F%'6T>K;#H,#9#DZ$+Y->Q3V6?XPGW;S]2JV-_-Y M-W_5(2EAI8CX[V6_*/Q=N6;N@_"90'8673,Q&IR* B*/V7CM?*8[E=,]BI7] M:6L"3H? H#NA3AI('X<_VV^*7K)DS'@9(-& \:/,Z/$EX2"ESSS&)"RM??M] M0O;&;5%OV4>WCK71LY;2JK_X?O;G#'_?^?02#YI0L/,E38PE5+@4P21M0929 M=)Y*#\J;J!DUPE&^8ZYR[X<\]_N5 T'1U==0 ^?]AWD74HK];ZB(\N!UEM>L MK5/^M[-2HK8:\SIQ/G(CE$73UA3#,&XQ!;064E#**:>#R+4O"'>[S9@.R,.[*I=;MJ M#4_M=.=^+'TBLQ3+BEQDL7\1PGIM;HJO$YXNZ%\=0*VNW'=BNQJ_=ZHK0\IXXZ)>BH K:''-N*4&\D]++@?=MY/.)-)>!;!*(_) MLB &/"DK J1CU E&LZ3U@Y"#:!UW\M-3 ?1)D#!Z%GLHE]>9S#^ZB^A=^)\/ M\V[]+M9/).8E5!@"1)2JM1 "^*@T).V4="(:P79-7P<@;]RY3JVCOPU4/"6S M^)G5=58QX;P8>]"8-Y1X#$\%3"AX+ /YK3$JD:@',(/[R!EY6-.SPWT5M;<6 M\-S7??([YAXEK3Z;7?WX)'*;T7():!O1RWG+P3B>05%-F$N:$.^'C'=V)W7D MH4RM(_^40'@:,T4V.7:^[PZIKS5?9.V5^I0YHP40D$V974=L1%\E@1*XZ"@@6,HIBI+ M\M? 7%D@2+!!),N4#I'#/9N[( M7M X9N[(/GIJ (,GZHW.5D4+!E4FJ1E+!7>VJCU\S']J( M"AI$6 -VMQ>#M[IZ);$F>TH@"L) F"3 RBC T1"D,2RR(=S KYD/-5!7:>;# M/A 8_6UFZSP")APUFBHP&F4E+ _@E"5@4LI!"9]SWG4'T_.9^;"76A^?^;"/ MC!LX#T]Y\8ZY1W!*1#3:U>P":E JG)2;<,^176(]I\6OE]U_:(_RV4=2/^INX@3H;(AP5N@E&%F;Y,#$[4 35A@ MUBJAQ:"A]W[D/O?$].2(/PH/3POZFR]F7][\=9EF?9ID-'(1-"OK 3$VM1;# M4IL9>)H4DY08IP9XTCV4W.<> 9T<^D?AH0WH_\S4=2W8;]V\5,F4:IF;2IF[ M;48V**J=]N76N!3K4 7>ZES591PD%;&4"@\P/O;;G#,-IY@N<$T:>PC?U)__NT;U8WD(%QTL#B MO*T\(1]O'=(5R-<2C$XS,5^_?WX>^ MOT__YS&P'DSCU8[M06O&-^VNZ[VO;A9?_;3T>_AR\AHT#%!I7ETT(Q6ATR"U MX3D 9U&71@>,R$V*$!U)F1DKLAG@5OHY%J'CF>*D(@(,+R5[EFLPUD@(FJ!$ MN4K>U>Z5_E6$?B2BQRI"WP)2HT4_6>A#8NPA]'WVT ;#=BYN-]3EKG<$S6>;8905689[K*2%*,F)$ M_K7\LA(TCBE"WT=/#6#P1,6:0?)2\Y^ T,1 2$'!J#)X*UGJN(J*5F],_56$ MWD94T"#"&K"[0TM5<^(I&B<@IU@J'[@%C[H!Z8ASC%B2B/M5A-XFZBH5H>\# M@3:+T(.D/!EJ@%$F093MYUX'"2XS)G16*OM=)_X\GR+TO=3Z>!'Z/C)NX#P\ MY?6]I\Q(+Q1X*2F(:"RX,@_4<\*\"5$Q7OMNX5<1^M\J(CD,:PV8X3Y%F:X_ M1W&5_RN+,;YA"K1:AI&$4\1SR(27,4?!@ G&0/**$T.$$WJ //4XHI][J'(@ M'(\HV#T>&T_+&%Z$4!81].^[12H/">\Z-^L_II"0=SRNWJ?%1.2@ M5[.PHR#6$69!B1#*RDD'AJ J*+4A$B^]9'$\4WF(].<>?)W<2*KAI 'S6!._ MJES;V9%N.+4D:.58@,C+4&#A-'B5,[@4;7+:&!5K5P(<3NW?I_;]&",X$1H: MJ.:]5<%T$+LBF*S0F,%ZAV:NHP=O+0..?^:1,6:K#Z0[DN2_3W'[,19P2ERT M.U'WTZ(+__/2]2F^ZKZ6'J_5[_QTCC^T^ML/[OMJN?M\[F9?5@I]W\W2U\N+ M[GM*KZ=EDW8W?X&_,WY /;\(B^FWZ>+[,;62PU)4J7+RA&*K6$>Y-K>S?)OF MCVFUGFC5Y+JBW]^B_Z8(34='K!<&9% :T9X9.)H$LD)JGFQM@1U)\N@/%Z?"YUU/<$I5MY (E&/G,_[PZ@T1J66! M([66Q!+-:0$F(QM640SRLJ)4U<;I#P2,B[J3JOYN"'ZP'AH T8VX;AOK+7^' M0=W/[K!P?,/V;.7\;CU"6BH(@H5#<#:"P!P:G(P*K);>Q&"<2;5[K8?@8UQ( M'P&KN^?BV#IN .=OKDZ $O"=718!;)ZXB:<2\X\,PI6-&D&1\IR@@/&HG#+) M\NK7A/<2,_(A.CI.[NXKKZ*T!M#W,6%X,PT8_ZQ8^>=LNN@_?OKGAAD72,J8 M_J)96X+9+R=E?9&$Q"E-,2.GOG99XX,$C?M&TQP*ZRFO 23N&Q[=W-&$) PW M&F7&37EV11$::CQD[QD-7@>::M>['$SLR @>,1@]C7Z; O(]Q\1]I\3:C_2_ MXP\N^K>S]1ZYW^==WT]DR&7&O 9-RIJ8A*[%1Z9 4\9=R$YI=?*X=7\V6@DB M!@7@OB'NP&AX:A?#[]V\W()_2_5O>'_ZU8->U3[,2!MWKLXHH\O.%!$P.A!2 M*C"$&XC21X=(\LP/L*RZL3O7?8.YM2O46AM;UGPH$S:<[Z.UMD&X28:U8VC:P8(3E"-#1H'+T0*S)"N5.(GJ5\/Y MX1#8N^%\'WVT ;#=&YEC(I8XS&456^V+,P2\9!PB<5QE+:@A0[PW/Y>&\[V@ M<4S#^3YZ:@"#!^=[-^DF8Y0X9BE00#S5[5UL MG=Y?GUCWS:)]XE74W!@&D@4*@KDB1&] 4"J0+V\\JYX<;:6DE1NGT^!A)SCN MI9P&(/;FQQNZ[4Q]=G^]3+.4IXLR=?+V=Z[FRA/)M"S798;HA'8=-7@B2E>E MH $_U3M=&Y)U*&_\S6M8"(^@_ 8@O[I0?-OW&!Z]7LZGLR_KR]\5]_VM)^?^ MS5]I'J8HC@GS/A'.+1!O,0]@P8%+R@+E"67/>""B^AO8WE2.VSTT]FD\K%); M@.V13QU7C%^_=GPN+1IO9PN45C\-_W(7RS0Q.1'-- &65021' =O/8&4##%! MBD!U[6:)4_ U;D_1V*;1&G :,*:=/-_[;E;F*Z=U@4F_8OOV]\M=^OMN\7_3 MXF,*W9?9]#^;4I&-X";.Q922TH!,.G2,Y?HH>0_<6FV2C,E5MZ:3,#9N@])3 M")I."IWG;$^3E"3'0)(#9:[4696X,OM49GY*'UBPV=:>"#(8,^.N[GBN=K,7 M1)ZSK:R]\V_=?/-7Y>?H)" /-!5Q"%2<*)=OOJRG5CY)KVQ@G-;>^W%:#L?= M'/)IX,+5;&_6;F\Y786N7?YO.W"Q,2SS;+^;+U17V,;51._[J2K51AS!2 MJ3;J^J-O]8%?5Y$(03&WQG!%?V>^X?H.?;$OO[= MZZD+9=K.3?/Y'\F5#XMG,[24Y;S3;)A0Q!,NAMEC>#QM+"Y#[SU M=-@2,C=R7#FSG_G;U$J@W7L2N (E,1P1Q*#Q1R- HM$[H;3,KG: NQ>!C>"T M(D+N V%U=;6$Q;>SR^6B7TF,;HIG$LN.IZ1!\IQ!L"3 "&HAB*AL"IEA!CH4 M\GXFIQ&*BQPI6(W2$9D)L#2RLIC."I%B]+QVO<8#Y(S[ MGS?'48?/]43']S.JP<@B3. M:,$D>.44""HQT!#109)$A"AUIKYV!\7]U(R+NO$0T@VBK@: 5\,_W;Q@*>(U MX50!8P(C8QT(N,@=H$BYUT8;9T.#U]KOVMAZTTBL,!HB&C"'[2M'MKPY3(QP M647G02F#(LX<+5[2 "P''M'O$71UE:&^,W&-W "='D#=*;39 $Q??'/3BV+I MOW7STL1WXX5>)[^X^=.$&163UQZBI65K;>E"T=( $=%FQF6TO/9PNUUI>_IY M61V0#J++!C#Z=E5K\O4^BY,LL!"" :JI <%C!,_1 $WVTE&36:"UP]J'*7KZ MOK\.'BOJK0$4KL6YC9&LK8XD8&2D2T^_RQHP!\A@;40I\:Q#K#XP^3YBQNU+ M: =[=;15;5G),,.X/J;+Y3RUAUWO.R; M1='FUE.&9(WC&A0O-T..8_B&'ANTEM1&=-"Q^JO'0_0T,#FB@LYW@M(!"A@1 M3.N=\'>"@-6.H^679;]XC^'>(J79YS]1S-__7YIWG__LKFIO@M#>1@)9BU)[ M0SE8X3%>2T3X'!2W23\:W1S^^2U"ZA#==R=51 OGUM6JNK='W8?*N@6T=%^_=K,5'R\V M1Z85E$G%&=A$"0I$:G V82YB9'19*)&->:0_CJVIKHP& MW0WNUC'C^V4QELVHQ?[%S4M#[N?NY:T ,TXR58E%R2#ZU=J$5+:%, XR M6^^43IP85STX.H+@%JZ=*L)GV_RID^BR >#^(+_U"T) ^<[7X^7_2,AFFEN//+ M>BO&];+[M[/M [G*E*KWR;#T9_U\T7Y1GYZNV'6YY- M9AXB0]"8]459XFVL_X-Q+S,C7$35P7EQ?=7 MYYA]8P@9$B;/Y=2=A.0HS3I@YD11,*9T'7K\BD=-1,B!&6$?/7UV^JB1!R+7 MQ$A]T3X=U[7Y_X'\UOV_?2"GM2,[0WNL[*VE*A/ @$:#$,R!$1@Y*R%E%%Q[ M(Y^*Q[JUT^'.)]P2\LLK!:SO;W(D-O*L(5AC0+C@P3A-P NC D\RD^K-G0>0 MV:B7VP<[#VQ6&T19#61YUX\5+Y<]IBM]?QVOE@<+XI2,P7J0S"(SZ-C!*92@ M351Y:I@S<;"7P&T$-;,_;1@XW/=.>+1N6@#:FO;-$X=B'$F/%KQU97>!Q\35 MDP@FFQ 28R+3Z@//;Q/0R OA\8J]"YF#I3QZ+'XK4/S#S=QZBN>&G\U+%C'$ M<^LS2.0,8U MP'%EP1&G&=52Q[M5>?>7NCSZ:4WXLT,4V0THU08.DA<7%V>+ M\S2_LID-%SEPQJ0IKYPA8]Y9YL4P[L%1JTGB1#-?.TC:3DD3F=P1N*DHYP;0 M\H"GOKF>35YQ(FP"8SCRI() _XQ9KF0F9\,BY]4W=.Y"5S/;YTX3[=365 /H M^YB^I=DRK3O,,GNOJ;YF[_"Q3*6;*7O,0I(\;/[:^(R!@ . M6>1**K19&=']1UVV]HDD8N:J>FW# 60VX1TK8J4[K>(.QN:W-/==)71>7]Z^ MG07DZEW7]Q.A57*9,1051]*E1R92(""X("E[Z8WVE=&WA8PF?.APZ#I6\*.B M9QU77FVP_]QM'B,_S#OD:O&]U$HO7LQB>1:]7%\>;FSE=XQ("JMGL_52W-5S MV%G^X1]>_ZM)$(I+%@-H[R5F092N;YXY%9R%%+6/?L=8?VA:1]X -Q1:&U3T MZ$GJZX2?&Z:;J_#+B[32\BR^^%J$_Y_-6H?5%NAUY^[VK="81=;<."> RU-1!^WKB7JT!FS> -1R\3RCFM M?PYCF-2_^0N#'=3V=.;FWU=B?]_-BBB0M(N58I"\U"\F.C!)(U?E4;!TD$8. MEJ$\; Y&8:2#DJI]@S<@.R.O5ALZX&@%".T^Y'Y:^C[][Q)_V9MOY?[DF$D! MVW]5K4$!.Q!:ZSWVQX^ZV?MALT?-Z !IW<<2)1@M X+2"F?1>7M=N\GG/EJ. MOA_Z\?>NKS$4"U:4*8*1ZP)I@P<^4PI8S!B,&^ZRJ%[CO86.D7/L&MK_Z9+G M6'$WX%7O[^^RC BOA 5MLL <3HC2_%D*?H4/!$\(FFK77A_7.'DJ\!R@YYU[ M)O<1>@/HV=+OY=!\D-8 TI?9YMH1<-:@??F WU#>:E/[E?WI]$SNI=['>R;W MD?7HV>:ZC:^,5"Q?O-R\P 2B;=#E8I&71QWCRY0F32 ZD;+,PBJW:U'BU@]H MKA]R+YUU=078P(EQ]RS%?[:R#&JEH!G3 .+*@,(H(QA>[@ZS9]RJ:**M_FJU MG921KVNK^YH* F\3-QN#TEIR)QD%3,T8%'F S]H!D=H3R;1*U7?R,UC]RX7#T]NH>6D9]L!O98 MAXF\ >BLIU>L8[_IMVE,L]A_2/-5U^/K%"Y<:7I4GB6F8P:F7$0#$P0-C CP MSD=3JM44JSU3;1>ZFCJ/#D3 UF$B%=4Q_/WOYAOE/][UZ;_^S_\'4$L#!!0 M ( $M@85A*FN%EN@< !0J 6 86US=V$M,C R-#$S,65X,S$Q+FAT M;>U:;6_;MA;^OE_!)5B; +9C^25);3= UF98@'OWDG78QX&6J)@()6HD93UQK-/N]-@?VMS(*0_M3CHESNIQ M1D?A>73D)QF-=3(_&R5RRF3R=D_V^MTN[\6]XS+N7R;PY$33_H-=IG?0+-YS)Q$T&4;O]W=Z:J!.WKLF5 MO,X'7F&TIAKF5N&Y;EM M6F%D&@2M_)_ C)CBX/8RZO!GU#OCAJ_W>R3#J)_43-;Z[ MN/IP^=NADWHL$N\[B%0+UY&8'J/+E ?<\MPH- 9'-VD^N9 M$LDUW.[C94*4$@T5,LPY.17+&4QWAE MF,[ D$X'N0V!7,3"6F[F))+Q&X%Y5\:T>)= &4RI?&;"'"002X-,!+$T+*Q C=;*[.A[[#6GA>VPI-57E !*'3 M5.+1A^R2(1=Y<"#8"U90< 12* LA#YB]MXPO-KP<[!2%>E@H2OQ/H'XM!W]948/85'2<5B M'M!)XS.BK170!A"1+CM/E*Y-E&(BLO,NE"$Q$SZ_?W(%]97PB&J6O1<6-3<\ MXG/&P^%J4#J+>6EW[T)Y92S@^FJFD*ET:3 %O]46D\ID!*Y'X>JTB49K1*: M$8K[6%:I:AF/1D5VU"A!3-#%:B43O].SY=C*1'(CR0 9$JJGV)Q&*BTE.0]] MZS.B)R!M!13"'L]W*E"SR;A4G'@39GDEELD2/4+J7:T8\-=8D""H#?U%\LE4 M]K6 ,KX+E)U7W09>=E^O.\,&4)O*A-# KMHV+8'71]8'+>!N372EL/+\=UL95)2F &BL3Z=QK$WB%? EUK7(D245 ML(,641 H203E8\ 'P"L+4-"S14A\R"ZF7)5^O9'[1)JBA)!3&&ZWE *O]D\[ MT !@8Y8^S;4(&-=NOLUV(7A^$):4(&5/EP5LW%=NGF,B^ ) MZ./C21,\QY@F6/7!79MNI\U/E3]]R];8/F*M$^7K."X-.7>%7[>,FFGK\)Z. MB3"6C3'07V%+S0[NZ9(")5B%=Z0KQ5&Q"K]OHRU=7B[T.@Q:3;A=)"-:OQY5 M(O'$YOU1D[Z+,@ZR/=Y)ZD326 M/$"TM K4)240U!Z1/C^[W>X7,N>L^QV:6J0J9TS.;\KB"6 M KZOLLVB^)P)?D/I(V1UGT!\/>(/=>J-[Z,B6M6)82>UA3IX@HY6+)CCWNA7 M50RZ((0H-AHAAUDD,%MF" "JSSRS.WZ+S=(.5'#WVF_,-O" M?>P+,^K[^4N$X><(5?@XX(F9U4,1X'\&"U?OVM>LW4Z?47\'^FR3(_9V\MHC M1%\D:OZI]E=%(I60L(GYXV]6Z_>\EM0C5U#W]-\5].\*^J?EG7<3*5)V<2OB MDDZYV<\K)U._&&$EG?*Q@U_"Y0*VH1NBX9[S?74&M/:5WF*Q'?D]Y2[?]*WL M9N]\PEAHZ[\;&(3[NZFX]Z/&:L_:7G;A8Q!9Z3:[//!M8?4S?)5YY+\&_3]0 M2P,$% @ 2V!A6#?=)!*T!P DR< !8 !A;7-W82TR,#(T,3,Q97@S M,3(N:'1MY5IK<]LV%OV^OP)KSR;VC"2+>MB.I'C&=9P93W?;K3>[_;@#$:"$ M,4FP "A9_?5[+D#J8J70Q>/M)9=*R'^2J, MYV\;EN>V::5121"TZE>)&3&Y?YP'AQ=DYG@R[46K,]1BBD>2;C;__]]^LWA]%I>QAU M>3/J'?'C-X>]LV'4%_43-5Y=WWZZ^7AS=?GIYL3J-N&NP_ M*B>_LJL6^QX"$VD;+);&J63!W)2[-X?]\^'^A@P++@2&::8R<8/N:1U!E0O, M,FA&Y\]F;-2JS?CS9]]T2]1N]R MT,8QG;./VF0L:C=_8CIAEQDTB'G._J43-^=&-MA-'K<0J'>/!^KEAJ7SXL+R M';<(!MR>+=A=KN>I%!,XV4?'A)@(#15RC0R#&;C*&<\7K,R=*24L0,[QZ0?! MXBS#DU$\90F/\EP)@ REK$&@"9(FXI$&>"*$$W35<8K,)O'TP-F M% S=(HDPA .!I MH,-/9[T^,;=3EJ1Z;FM4&CE1UAF.B3B]#'I#R\8:N&RMS):VKQ5?O1>'KT\; MP7AK*^Q4B9X6OTX2A4A M;)QJ6Z(?4:+1::EW;\+98BQA*.KF4+.T:7! %C8,V4] M74!*YGXN2CHK[S^@1DNAZ M[L=?8TF"H"WTE^*)-/5*VH+'?NOQ;U! F#-E*#8E7TOD+)DD M2/UJ!C/MCA3^YO"\$YT-[3[<$!YW9W4??G3$NK:A=ACKTCVNP3[LQ9?2D@JC MY,NU*QO7)9='M R>@#X^>C3!RX^@P(H.SMEV,FU(JKSG6W9&\@GKF,A;QW%I MR)5K3+ECU$Q;A_?^6"&!?ACHE["I94>/=$F ":RP!]*5XJ@KI=]+T38K+Y=Z M'0>MIMPNTPJM38\A*3QI>7]4A++ CNE.IM7&ZH%\XW>[Z#?@YL44K/T77K N MH_&%LM4?IXAZ2316:YPH9QV6J^5.P'I"(MRJ4):J<50I3AN[S#W^!8;,L-]W M4GZ&4,<:V8W:A8)^?I C@!?\98D?\9MJI7K%R5]*!?7]ZBKSV.^_CE]/:7J) M[295 RJA0RSG*_5827BZRAO+$G$N^1TE@I"-?2KP=80_1*FWGD^*7U7-A=W- M#EK@ AVM7++"H[&NJ@]T0E7X>(@S]"J@+6"'RL\IE.9Y)(.>>3ZB3,5$M79D6J%Q*M\ZD. MZY5OP 'A^T,RUA..K*LW3A<#SSTCY\O/2GZ,\$K3A*M37E@YJ/\8@F>*E"\& M*O<.\YV&FZ/3I>'\ BFUFL MWY2]0#1 M]1=DA;;^FG80KE1F\M%ORJH=2GO5A8]!!*7;[O*%S[>JG^&CN!/_,=[_ %!+ M P04 " !+8&%8NT<% #(*0 %@ &%M#,R M,2YH=&WM6FUOVS80_KY?<7.Q-@'\(OFE26TW0)"VV NV=DVW?AQH\601E4B5 MI&)[OWY'4FKC.,F2%MV:1OE@1+HC[X5WI)X'G&>VR(_F&3)^]-W\^UX/GJFD M*E!:2#0RBQPJ(^02WG(T[Z#7J[5.5+G18IE9&$;#,;Q5^ITX8T%NA,H^J&SI6IQ;7LL%TLY M]0Z3-%447BU.5*[T]$'D_V9.TDM9(?+-]-$;4:"!WW %KU7!Y*.N8=+T#&J1 M!D4C_D:R2,;]XRHX=$#SY$)BXV \="X]7V=B(2R,AOUX/G#ZY\(*+E%N]-'- M9;M)87I)>5DH:U4Q'9%;YV)/:"E0_T_!GZ"V(A4)LT)) Z\J;2I&;E@%IYBX MEP\?Q(^CV9/H,:AT)P5??X!O,H13IA=,HNF]7.>X@>/$4BS4'M$0]N)#^*-_ MVC_I;\<;CR;1_LW#_>+!C:\,KI(1]<#9$8E\H=)EN9!$IMP3@-V]T6(.P((66WZ2_PK>6],IE+ MAE26ZHB"I,6B,ZTD%>?'S3;MN<,G+FT48'71KR](*Y/OTGTI#^< M^(W"TG%A>6.Y/AS[D9<-+-\5#D<'S=A+Y=<.OE8X^D+SQH=WS.%;I7C@5U W M&LV./ ZKRZEY6P05N9 Z]S?^2X(*^^E7%M;X8&;\ M;XCPQSXO I MEUV"^0W9X!^; 2MA$!A7I=/R^-.YQ&RET=,6P,H2F38>BV]*].BW\"Q C=$.+\U"@R9@B\TH!2JS/A2 V"R%?"4,SI8*JK&:9//E04P[G6:+Z:M+A#7DBS\6QPA-=7;*J M:_OBO'G:8A09TOY"(16"QA0UTJ'LB2*Y 7+,%;GG^"Y:_6ALU 5<)TA?(V0S MF"$;N':\D\DW8-"ZJ&SF;#C"R3$\V\9,E62UM=TBN4DI7+AV2-GS_-548\X< M=WOE1<2Z>**/0]B"/JHJNSOD7^[\U;_A)N7 W^#\!U!+ 0(4 Q0 ( $M@ M85AY[>J,%D8! &--%0 2 " 0 !A;7-W82TR,#(T,#$S M,2YH=&U02P$"% ,4 " !+8&%8>)$SE0P. #>D0 $@ M@ %&1@$ 86US=V$M,C R-# Q,S$N>'-D4$L! A0#% @ 2V!A6+S(1,QW M'P ID0! !8 ( !@E0! &%M&UL4$L! A0#% @ 2V!A6)J&DXTS

#,R ;,2YH=&U02P4& D "0!< @ C @# end XML 71 amswa-20240131_htm.xml IDEA: XBRL DOCUMENT 0000713425 2023-05-01 2024-01-31 0000713425 us-gaap:CommonClassAMember 2024-02-28 0000713425 us-gaap:CommonClassBMember 2024-02-28 0000713425 2024-01-31 0000713425 2023-04-30 0000713425 us-gaap:CommonClassAMember 2023-04-30 0000713425 us-gaap:CommonClassAMember 2024-01-31 0000713425 us-gaap:CommonClassBMember 2023-04-30 0000713425 us-gaap:CommonClassBMember 2024-01-31 0000713425 2022-05-01 2023-04-30 0000713425 us-gaap:SubscriptionAndCirculationMember 2023-11-01 2024-01-31 0000713425 us-gaap:SubscriptionAndCirculationMember 2022-11-01 2023-01-31 0000713425 us-gaap:SubscriptionAndCirculationMember 2023-05-01 2024-01-31 0000713425 us-gaap:SubscriptionAndCirculationMember 2022-05-01 2023-01-31 0000713425 us-gaap:LicenseMember 2023-11-01 2024-01-31 0000713425 us-gaap:LicenseMember 2022-11-01 2023-01-31 0000713425 us-gaap:LicenseMember 2023-05-01 2024-01-31 0000713425 us-gaap:LicenseMember 2022-05-01 2023-01-31 0000713425 amswa:ProfessionalServicesAndOtherMember 2023-11-01 2024-01-31 0000713425 amswa:ProfessionalServicesAndOtherMember 2022-11-01 2023-01-31 0000713425 amswa:ProfessionalServicesAndOtherMember 2023-05-01 2024-01-31 0000713425 amswa:ProfessionalServicesAndOtherMember 2022-05-01 2023-01-31 0000713425 us-gaap:MaintenanceMember 2023-11-01 2024-01-31 0000713425 us-gaap:MaintenanceMember 2022-11-01 2023-01-31 0000713425 us-gaap:MaintenanceMember 2023-05-01 2024-01-31 0000713425 us-gaap:MaintenanceMember 2022-05-01 2023-01-31 0000713425 2023-11-01 2024-01-31 0000713425 2022-11-01 2023-01-31 0000713425 2022-05-01 2023-01-31 0000713425 us-gaap:CommonClassBMember 2023-11-01 2024-01-31 0000713425 us-gaap:CommonClassBMember 2022-11-01 2023-01-31 0000713425 us-gaap:CommonClassBMember 2023-05-01 2024-01-31 0000713425 us-gaap:CommonClassBMember 2022-05-01 2023-01-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2022-10-31 0000713425 us-gaap:CommonClassBMember us-gaap:CommonStockMember 2022-10-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2022-10-31 0000713425 us-gaap:RetainedEarningsMember 2022-10-31 0000713425 us-gaap:TreasuryStockCommonMember 2022-10-31 0000713425 2022-10-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2022-11-01 2023-01-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2022-11-01 2023-01-31 0000713425 us-gaap:RetainedEarningsMember 2022-11-01 2023-01-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-01-31 0000713425 us-gaap:CommonClassBMember us-gaap:CommonStockMember 2023-01-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2023-01-31 0000713425 us-gaap:RetainedEarningsMember 2023-01-31 0000713425 us-gaap:TreasuryStockCommonMember 2023-01-31 0000713425 2023-01-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-10-31 0000713425 us-gaap:CommonClassBMember us-gaap:CommonStockMember 2023-10-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2023-10-31 0000713425 us-gaap:RetainedEarningsMember 2023-10-31 0000713425 us-gaap:TreasuryStockCommonMember 2023-10-31 0000713425 2023-10-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-11-01 2024-01-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2023-11-01 2024-01-31 0000713425 us-gaap:TreasuryStockCommonMember 2023-11-01 2024-01-31 0000713425 us-gaap:RetainedEarningsMember 2023-11-01 2024-01-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2024-01-31 0000713425 us-gaap:CommonClassBMember us-gaap:CommonStockMember 2024-01-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2024-01-31 0000713425 us-gaap:RetainedEarningsMember 2024-01-31 0000713425 us-gaap:TreasuryStockCommonMember 2024-01-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2022-04-30 0000713425 us-gaap:CommonClassBMember us-gaap:CommonStockMember 2022-04-30 0000713425 us-gaap:AdditionalPaidInCapitalMember 2022-04-30 0000713425 us-gaap:RetainedEarningsMember 2022-04-30 0000713425 us-gaap:TreasuryStockCommonMember 2022-04-30 0000713425 2022-04-30 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2022-05-01 2023-01-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2022-05-01 2023-01-31 0000713425 us-gaap:RetainedEarningsMember 2022-05-01 2023-01-31 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-04-30 0000713425 us-gaap:CommonClassBMember us-gaap:CommonStockMember 2023-04-30 0000713425 us-gaap:AdditionalPaidInCapitalMember 2023-04-30 0000713425 us-gaap:RetainedEarningsMember 2023-04-30 0000713425 us-gaap:TreasuryStockCommonMember 2023-04-30 0000713425 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-05-01 2024-01-31 0000713425 us-gaap:AdditionalPaidInCapitalMember 2023-05-01 2024-01-31 0000713425 us-gaap:TreasuryStockCommonMember 2023-05-01 2024-01-31 0000713425 us-gaap:RetainedEarningsMember 2023-05-01 2024-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-09-30 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-09-01 2023-09-30 0000713425 srt:MinimumMember 2023-05-01 2024-01-31 0000713425 srt:MaximumMember 2023-05-01 2024-01-31 0000713425 2024-02-01 2024-01-31 0000713425 amswa:DomesticMember 2023-11-01 2024-01-31 0000713425 amswa:DomesticMember 2022-11-01 2023-01-31 0000713425 amswa:DomesticMember 2023-05-01 2024-01-31 0000713425 amswa:DomesticMember 2022-05-01 2023-01-31 0000713425 amswa:ForeignMember 2023-11-01 2024-01-31 0000713425 amswa:ForeignMember 2022-11-01 2023-01-31 0000713425 amswa:ForeignMember 2023-05-01 2024-01-31 0000713425 amswa:ForeignMember 2022-05-01 2023-01-31 0000713425 2025-02-01 2024-01-31 0000713425 amswa:ClassAAndClassBMember 2023-11-20 2023-11-20 0000713425 us-gaap:CommonClassAMember 2023-05-01 2024-01-31 0000713425 us-gaap:CommonClassAMember 2023-11-01 2024-01-31 0000713425 us-gaap:CommonClassAMember 2022-11-01 2023-01-31 0000713425 us-gaap:CommonClassAMember 2022-05-01 2023-01-31 0000713425 amswa:GarvisAILimitedMember 2023-09-05 0000713425 amswa:GarvisAILimitedMember 2023-09-05 2023-09-05 0000713425 amswa:GarvisAILimitedMember 2023-11-01 2024-01-31 0000713425 amswa:GarvisAILimitedMember 2023-05-01 2024-01-31 0000713425 amswa:GarvisAILimitedMember 2024-01-31 0000713425 amswa:GarvisAILimitedMember us-gaap:NoncompeteAgreementsMember 2023-09-05 0000713425 amswa:GarvisAILimitedMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-09-05 0000713425 amswa:StarboardSolutionsCorpMember 2022-06-28 2022-06-28 0000713425 amswa:StarboardSolutionsCorpMember 2022-06-28 0000713425 amswa:StarboardSolutionsCorpMember 2024-01-31 0000713425 amswa:StarboardSolutionsCorpMember 2023-11-01 2024-01-31 0000713425 amswa:StarboardSolutionsCorpMember 2023-05-01 2024-01-31 0000713425 amswa:StarboardSolutionsCorpMember 2022-11-01 2023-01-31 0000713425 amswa:StarboardSolutionsCorpMember 2022-05-01 2023-01-31 0000713425 amswa:StarboardSolutionsCorpMember us-gaap:NoncompeteAgreementsMember 2022-06-28 0000713425 amswa:StarboardSolutionsCorpMember us-gaap:TechnologyBasedIntangibleAssetsMember 2022-06-28 0000713425 amswa:StarboardSolutionsCorpMember us-gaap:CustomerRelationshipsMember 2022-06-28 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-09-18 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-09-18 2023-09-18 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2024-01-31 0000713425 srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember 2022-11-01 2023-01-31 0000713425 srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember 2022-05-01 2023-01-31 0000713425 srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember 2023-05-01 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-11-01 2024-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2022-11-01 2023-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-05-01 2024-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2022-05-01 2023-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember amswa:ThePovenMethodMember 2023-04-30 0000713425 us-gaap:DisposalGroupNotDiscontinuedOperationsMember amswa:TransportationRatingSolutionsMember 2023-11-15 0000713425 us-gaap:DisposalGroupNotDiscontinuedOperationsMember amswa:TransportationRatingSolutionsMember 2023-11-15 2023-11-15 0000713425 us-gaap:DisposalGroupNotDiscontinuedOperationsMember amswa:TransportationRatingSolutionsMember 2023-11-01 2024-01-31 0000713425 us-gaap:DisposalGroupNotDiscontinuedOperationsMember amswa:TransportationRatingSolutionsMember 2023-05-01 2024-01-31 0000713425 us-gaap:EmployeeStockOptionMember 2023-05-01 2024-01-31 0000713425 us-gaap:EmployeeStockOptionMember 2022-05-01 2023-01-31 0000713425 us-gaap:RestrictedStockUnitsRSUMember 2023-05-01 2024-01-31 0000713425 us-gaap:RestrictedStockUnitsRSUMember 2022-05-01 2023-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember 2023-11-01 2024-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember 2022-11-01 2023-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember 2023-05-01 2024-01-31 0000713425 us-gaap:DiscontinuedOperationsDisposedOfBySaleMember 2022-05-01 2023-01-31 0000713425 us-gaap:FairValueInputsLevel1Member 2024-01-31 0000713425 us-gaap:FairValueInputsLevel2Member 2024-01-31 0000713425 us-gaap:FairValueInputsLevel3Member 2024-01-31 0000713425 us-gaap:FairValueInputsLevel1Member us-gaap:USTreasurySecuritiesMember 2024-01-31 0000713425 us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2024-01-31 0000713425 us-gaap:FairValueInputsLevel3Member us-gaap:USTreasurySecuritiesMember 2024-01-31 0000713425 us-gaap:USTreasurySecuritiesMember 2024-01-31 0000713425 us-gaap:FairValueInputsLevel1Member 2023-04-30 0000713425 us-gaap:FairValueInputsLevel2Member 2023-04-30 0000713425 us-gaap:FairValueInputsLevel3Member 2023-04-30 0000713425 us-gaap:FairValueInputsLevel1Member us-gaap:USTreasurySecuritiesMember 2023-04-30 0000713425 us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2023-04-30 0000713425 us-gaap:FairValueInputsLevel3Member us-gaap:USTreasurySecuritiesMember 2023-04-30 0000713425 us-gaap:USTreasurySecuritiesMember 2023-04-30 0000713425 amswa:StockRepurchasePlanAugustNineteenTwentyZeroTwoMember us-gaap:CommonClassAMember 2002-08-19 0000713425 amswa:StockRepurchasePlanAugustNineteenTwentyZeroTwoMember us-gaap:CommonClassAMember 2002-08-19 2024-01-31 0000713425 amswa:StockRepurchasePlanAugustNineteenTwentyZeroTwoMember us-gaap:CommonClassAMember 2023-05-01 2024-01-31 0000713425 amswa:SupplyChainManagementSegmentMember 2023-11-01 2024-01-31 0000713425 amswa:SupplyChainManagementSegmentMember 2022-11-01 2023-01-31 0000713425 amswa:SupplyChainManagementSegmentMember 2023-05-01 2024-01-31 0000713425 amswa:SupplyChainManagementSegmentMember 2022-05-01 2023-01-31 0000713425 us-gaap:AllOtherSegmentsMember 2023-11-01 2024-01-31 0000713425 us-gaap:AllOtherSegmentsMember 2022-11-01 2023-01-31 0000713425 us-gaap:AllOtherSegmentsMember 2023-05-01 2024-01-31 0000713425 us-gaap:AllOtherSegmentsMember 2022-05-01 2023-01-31 0000713425 amswa:ClassAAndClassBMember us-gaap:SubsequentEventMember 2024-02-21 2024-02-21 shares iso4217:USD iso4217:USD shares pure amswa:segment amswa:supplyChain false 2024 Q3 0000713425 --04-30 P1Y 10-Q true 2024-01-31 false 000-12456 AMERICAN SOFTWARE, INC. GA 58-1098795 470 East Paces Ferry Road, N.E. Atlanta GA 30305 404 261-4381 Common Stock AMSWA NASDAQ Yes Yes Accelerated Filer false false false 31398542 1821587 55854000 90059000 22454000 23451000 220000 418000 22796000 23476000 1343000 1569000 6973000 7831000 0 3603000 109420000 149989000 0 486000 32454000 32371000 5897000 6444000 43534000 43202000 59000 391000 46393000 29558000 16258000 14062000 10948000 2143000 6311000 6609000 179028000 195620000 1086000 2131000 2516000 4077000 3654000 3756000 3275000 3638000 37154000 43124000 0 318000 47685000 57044000 249000 288000 47934000 57332000 0.10 0.10 50000000 50000000 36933495 31398542 36907242 32318610 3693000 3691000 0.10 0.10 10000000 10000000 1821587 1821587 1821587 1821587 1 1 182000 182000 187731000 182722000 -24718000 -22748000 5534953 4588632 35794000 25559000 131094000 138288000 179028000 195620000 14114000 13003000 41235000 37391000 277000 1017000 795000 2025000 3418000 4758000 11107000 15687000 7727000 8649000 23990000 26384000 25536000 27427000 77127000 81487000 4944000 4005000 13768000 11682000 3000 358000 168000 541000 2694000 3498000 8610000 10682000 1449000 1607000 4877000 4757000 9090000 9468000 27423000 27662000 16446000 17959000 49704000 53825000 4546000 4402000 13064000 13220000 5039000 4904000 16083000 15537000 5853000 5883000 16775000 17350000 193000 25000 346000 81000 15631000 15214000 46268000 46188000 815000 2745000 3436000 7637000 777000 701000 2938000 1274000 3640000 633000 2788000 34000 5232000 4079000 9162000 8945000 1080000 907000 1775000 1882000 4152000 3172000 7387000 7063000 0 88000 255000 475000 0 0 2124000 0 64000 43000 567000 152000 -64000 45000 1812000 323000 4088000 3217000 9199000 7386000 0.12 0.09 0.22 0.21 0.12 0.09 0.22 0.21 0 0 0.05 0.01 0 0 0.05 0.01 0.12 0.09 0.27 0.22 0.12 0.09 0.27 0.22 0.11 0.11 0.33 0.33 33292000 33759000 33842000 33711000 33337000 33965000 33866000 34006000 0.12 0.09 0.27 0.22 36503495 3650000 1821587 182000 175733000 -21418000 -25559000 132588000 43000 5000 505000 510000 1294000 1294000 3217000 3217000 3716000 3716000 36546495 3655000 1821587 182000 177532000 -21917000 -25559000 133893000 36929495 3693000 1821587 182000 186100000 -25152000 -30373000 134450000 4000 45000 45000 1586000 1586000 5421000 5421000 4088000 4088000 3654000 3654000 36933495 3693000 1821587 182000 187731000 -24718000 -35794000 131094000 36405695 3641000 1821587 182000 171948000 -18171000 -25559000 132041000 140800 14000 1640000 1654000 3944000 3944000 7386000 7386000 11132000 11132000 36546495 3655000 1821587 182000 177532000 -21917000 -25559000 133893000 36907242 3691000 1821587 182000 182722000 -22748000 -25559000 138288000 26253 2000 289000 291000 4720000 4720000 10235000 10235000 9199000 9199000 11169000 11169000 36933495 3693000 1821587 182000 187731000 -24718000 -35794000 131094000 9199000 7386000 1812000 323000 3641000 2389000 4720000 3919000 1331000 92000 282000 -3377000 1438000 0 2124000 0 3958000 8284000 6772000 870000 -4267000 11816000 1150000 -579000 -3854000 -1578000 -5298000 -1247000 7916000 -11574000 1554000 1108000 9470000 -10466000 539000 3655000 25041000 6500000 660000 0 -24920000 -10155000 1825000 0 -23095000 -10155000 290000 1654000 10235000 0 11272000 11117000 -21217000 -9463000 -34842000 -30084000 90696000 110690000 55854000 80606000 4345000 5441000 3654000 3716000 Presentation and Summary of Significant Accounting Policies<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of Presentation</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements ("condensed consolidated financial statements") have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these condensed consolidated financial statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at January 31, 2024, results of operations for the three and nine months ended January 31, 2024 and 2023, consolidated statements of shareholders’ equity for the three and nine months ended January 31, 2024 and 2023, and cash flows for the nine months ended January 31, 2024 and 2023. The Company’s results for the three months ended January 31, 2024 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2023. The terms “fiscal 2024” and “fiscal 2023” refer to our fiscal years ending April 30, 2024 and 2023, respectively.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of these condensed consolidated financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosures of contingent assets and liabilities, at the date of the condensed consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Note 1 in the Notes to Consolidated Financial Statements contained in the Annual Report describes the significant accounting policies that we have used in preparing our consolidated financial statements. On an ongoing basis, we evaluate our estimates, including, but not limited to, those related to revenue reserves and allowances. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Our actual results could differ materially from these estimates under different assumptions or conditions. </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Principles of Consolidation</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying condensed consolidated financial statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In September 2023, we disposed of our 100% equity interest in our information technology staffing firm, The Proven Method ("TPM") for approximately $2.1 million in cash. For further information regarding the transaction, see Note F to the accompanying condensed consolidated financial statements.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Accounting Pronouncements</span></div><div style="text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%;text-decoration:underline">Accounting Standards Update ("ASU") 2021-08 </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">— </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In October 2021, the Financial Accounting Standards Board ("FASB") issued ASU 2021-08, "Business Combinations (Topic 805): </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">Accounting for Contract Assets and Contract Liabilities from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">." Under current GAAP, an acquirer generally recognizes assets acquired and liabilities assumed in a business combination, including contract assets and contract liabilities arising from revenue contracts with customers and other similar contracts that are accounted for in accordance with Accounting Standards Codification ("ASC") Topic 606, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">Revenue from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> ("Topic 606"), at fair value on the acquisition date. ASU 2021-08 requires that an entity recognize and measure contract assets and contract liabilities acquired in a business combination in accordance with Topic 606. At the acquisition date, an acquirer should account for the related revenue contracts in accordance with Topic 606 as if it had originated the contracts, which should generally result in an acquirer recognizing and measuring the acquired contract assets and contract liabilities consistent with how they were recognized and measured in the acquiree’s financial statements. This update also provides certain practical expedients for acquirers when recognizing and measuring acquired contract assets and contract liabilities from revenue contracts in a business combination. The amendments in this update are effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years and should be applied prospectively to business combinations occurring on or after the effective date of the amendments. The Company adopted this update prospectively on May 1, 2023 and it did not have a material impact to our condensed consolidated financial statements.</span></div> <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of Presentation</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements ("condensed consolidated financial statements") have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these condensed consolidated financial statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at January 31, 2024, results of operations for the three and nine months ended January 31, 2024 and 2023, consolidated statements of shareholders’ equity for the three and nine months ended January 31, 2024 and 2023, and cash flows for the nine months ended January 31, 2024 and 2023. The Company’s results for the three months ended January 31, 2024 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2023. The terms “fiscal 2024” and “fiscal 2023” refer to our fiscal years ending April 30, 2024 and 2023, respectively.</span></div>The preparation of these condensed consolidated financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosures of contingent assets and liabilities, at the date of the condensed consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Note 1 in the Notes to Consolidated Financial Statements contained in the Annual Report describes the significant accounting policies that we have used in preparing our consolidated financial statements. On an ongoing basis, we evaluate our estimates, including, but not limited to, those related to revenue reserves and allowances. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Our actual results could differ materially from these estimates under different assumptions or conditions. <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Principles of Consolidation</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying condensed consolidated financial statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In September 2023, we disposed of our 100% equity interest in our information technology staffing firm, The Proven Method ("TPM") for approximately $2.1 million in cash. For further information regarding the transaction, see Note F to the accompanying condensed consolidated financial statements.</span></div> 1 2100000 <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Accounting Pronouncements</span></div><div style="text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%;text-decoration:underline">Accounting Standards Update ("ASU") 2021-08 </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">— </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In October 2021, the Financial Accounting Standards Board ("FASB") issued ASU 2021-08, "Business Combinations (Topic 805): </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">Accounting for Contract Assets and Contract Liabilities from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">." Under current GAAP, an acquirer generally recognizes assets acquired and liabilities assumed in a business combination, including contract assets and contract liabilities arising from revenue contracts with customers and other similar contracts that are accounted for in accordance with Accounting Standards Codification ("ASC") Topic 606, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">Revenue from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> ("Topic 606"), at fair value on the acquisition date. ASU 2021-08 requires that an entity recognize and measure contract assets and contract liabilities acquired in a business combination in accordance with Topic 606. At the acquisition date, an acquirer should account for the related revenue contracts in accordance with Topic 606 as if it had originated the contracts, which should generally result in an acquirer recognizing and measuring the acquired contract assets and contract liabilities consistent with how they were recognized and measured in the acquiree’s financial statements. This update also provides certain practical expedients for acquirers when recognizing and measuring acquired contract assets and contract liabilities from revenue contracts in a business combination. The amendments in this update are effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years and should be applied prospectively to business combinations occurring on or after the effective date of the amendments. The Company adopted this update prospectively on May 1, 2023 and it did not have a material impact to our condensed consolidated financial statements.</span></div> Revenue Recognition<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    In accordance with ASU 2014-09, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (Topic 606), we recognize revenue when we transfer control of the promised goods or services to our clients, in an amount that reflects the consideration we expect to </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">receive, in exchange for those goods or services. We derive our revenue from software licenses, maintenance services, consulting, implementation and training services, and Software-as-a-Service (“SaaS”), which includes a subscription to our software, as well as support, hosting and managed services.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes revenue in accordance with the following steps:</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 1 - Identification of the Contract with the Client</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:27pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 2 - Identification of Promised Goods and Services and Evaluation of Whether the Promised Goods and Services are Distinct Performance Obligations</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 3 - Determination of the Transaction Price</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 4 - Allocation of the Transaction Price to Distinct Performance Obligations</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 5 - Attribution of Revenue for Each Distinct Performance Obligation</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Nature of Products and Services</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Subscription. </span><span style="color:#010202;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subscription fees include SaaS revenue for the right to use the software for a limited period of time in an environment hosted by the Company or by a third-party. The client accesses and uses the software on an as-needed basis over the Internet or via a dedicated line; however, the client has no right to take delivery of the software. The underlying arrangements typically include a single fee for the service that is billed monthly, quarterly or annually. The Company’s SaaS solutions represent a series of distinct services that are substantially the same and have the same pattern of transfer to the client. Revenue from a SaaS solution is generally recognized ratably over the term of the arrangement.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">License.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Our perpetual software licenses provide the client with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the client. Our perpetual software licenses are sold with maintenance under which we provide clients with telephone consulting, product updates on a when available basis, and releases of new versions of products previously purchased by the client, as well as error reporting and correction services.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Professional Services and Other.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Our services revenue consists of fees generated from consulting, implementation and training services, including reimbursements of out-pocket expenses in connection with our services. Services are typically optional to our clients, and are distinct from our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. We believe the output method of hours worked provides the best depiction of the transfer of our services since the client is receiving the benefit from our services as the work is performed. The total amount of expense reimbursement included in professional services and other revenue was immaterial for the three and nine months ended January 31, 2024 and 2023.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Maintenance.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Revenue is derived from maintenance under which we provide clients with telephone consulting, product updates and releases of new versions of products previously purchased by the client on a when and-if-available basis, as well as error reporting and correction services. Maintenance for perpetual licenses is renewable, generally on an annual basis, at the option of the client. Maintenance terms typically range from <span style="-sec-ix-hidden:f-448">one</span> to three years. Revenue related to maintenance is generally paid in advance and recognized ratably over the term of the agreement since the Company is standing ready to provide a series of maintenance services that are substantially the same each period over the term; therefore, time is the best measure of progress. Support services for subscriptions are included in the subscription fees and are recognized as a component of such fees.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Indirect Channel Revenue.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> We record revenue from sales made through the indirect sales channels on a gross basis, because we control the goods or services and act as the principal in the transaction. In reaching this determination, we evaluated sales through our indirect channel on a case-by-case basis and considered a number of factors including indicators of control such as the party having the primary responsibility to provide specified goods or services and the party having discretion in establishing prices.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sales Taxes.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> We account for sales taxes collected from clients on a net basis.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contract Balances.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Timing of invoicing to clients may differ from timing of revenue recognition and these timing differences result in unbilled accounts receivables or contract liabilities (deferred revenue) on the Company’s Condensed Consolidated Balance Sheets. Fees for our software licenses are generally due within 30 days of contract execution. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our clients. SaaS solutions and maintenance are typically billed in advance on a monthly, quarterly, or annual basis. Services are typically billed as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">have determined that our contracts generally do not include significant financing component. The primary purpose of our invoicing terms is to provide clients with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude any financing component from consideration for any contracts with payment terms of one year or less since we rarely offer terms extending beyond one year. The consideration in our client contracts is fixed.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have an unconditional right to consideration for all goods and services transferred to our clients. That unconditional right to consideration is reflected in billed and unbilled accounts receivable in the accompanying Condensed Consolidated Balance Sheets in accordance with Topic 606.</span></div><div style="text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Deferred revenue consists of amounts collected prior to having completed the performance of maintenance, SaaS, hosting, and managed services. We typically invoice clients for cloud subscription and support fees in advance on a monthly, quarterly or annual basis, with payment due at the start of the cloud subscription or support term. During the nine months ended January 31, 2024, we recognized $38.1 million of revenue that was included in the deferred revenue balance as of April 30, 2023.</span></div><div style="margin-bottom:8pt;margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.904%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.107%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.380%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.109%"></td><td style="width:0.1%"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="2" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">January 31,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">April 30,<br/>2023</span></td></tr><tr style="height:14pt"><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,154 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,124 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Remaining Performance Obligations.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> A performance obligation is a promise in a contract to transfer a distinct good or service to the client and is the unit of account under Topic 606. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied by transferring the promised good or service to the client. The Company identifies and tracks the performance obligations at contract inception so that the Company can monitor and account for the performance obligations over the life of the contract. Remaining performance obligations represent the transaction price of orders for which products have not been delivered or services have not been performed. As of January 31, 2024, the aggregate amount of the transaction price allocated to remaining performance obligations was approximately $119.5 million. The Company expects to recognize revenue on approximately 51% of the remaining performance obligations over the next 12 months, with the remainder recognized thereafter.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Disaggregated Revenue.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company disaggregates revenue from contracts with clients by geography, as it believes it best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s revenue by geography is as follows:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.005%"><tr><td style="width:1.0%"></td><td style="width:38.091%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.851%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.696%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.497%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.499%"></td><td style="width:0.1%"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended<br/>January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended<br/>January 31,</span></td></tr><tr style="height:12pt"><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:14pt"><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Domestic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,040 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,078 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,646 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,633 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,496 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,349 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,481 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,854 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,536 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,427 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,127 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,487 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Contract Costs.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company capitalizes the incremental costs of obtaining a contract with a client if the Company expects to recover those costs. The incremental costs of obtaining a contract are those that the Company incurs to obtain a contract with a client that it would not have incurred if the contract had not been obtained (for example, a sales commission). The Company capitalizes the costs incurred to fulfill a contract only if those costs meet all of the following criteria:</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The costs relate directly to a contract or to an anticipated contract that the Company can specifically identify.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The costs generate or enhance resources of the Company that will be used in satisfying (or in continuing to satisfy) performance obligations in the future.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The costs are expected to be recovered.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    Certain sales commissions incurred by the Company were determined to be incremental costs to obtain the related contracts, which are deferred and amortized ratably over the economic benefit period. These deferred commission costs are classified as current or non-current based on the timing of when the Company expects to recognize the expense. The current and non-current portions of deferred commissions are included in prepaid expenses and other current assets and other assets, respectively, in the Company’s Condensed Consolidated Balance Sheets. Total deferred commissions at January 31, 2024 and April 30, 2023 were $2.6 million and $3.0 million, respectively. Amortization of sales commissions was $0.4 million and $1.2 million for the three and nine months ended January 31, 2024 and $0.4 million and $1.2 million for the three and nine months ended January 31, 2023, which is included in "Sales and marketing" expense in the accompanying Condensed Consolidated Statements of Operations. No impairment losses were recognized during the periods.</span></div> Revenue Recognition<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    In accordance with ASU 2014-09, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (Topic 606), we recognize revenue when we transfer control of the promised goods or services to our clients, in an amount that reflects the consideration we expect to </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">receive, in exchange for those goods or services. We derive our revenue from software licenses, maintenance services, consulting, implementation and training services, and Software-as-a-Service (“SaaS”), which includes a subscription to our software, as well as support, hosting and managed services.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes revenue in accordance with the following steps:</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 1 - Identification of the Contract with the Client</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:27pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 2 - Identification of Promised Goods and Services and Evaluation of Whether the Promised Goods and Services are Distinct Performance Obligations</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 3 - Determination of the Transaction Price</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 4 - Allocation of the Transaction Price to Distinct Performance Obligations</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Step 5 - Attribution of Revenue for Each Distinct Performance Obligation</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Nature of Products and Services</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Subscription. </span><span style="color:#010202;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subscription fees include SaaS revenue for the right to use the software for a limited period of time in an environment hosted by the Company or by a third-party. The client accesses and uses the software on an as-needed basis over the Internet or via a dedicated line; however, the client has no right to take delivery of the software. The underlying arrangements typically include a single fee for the service that is billed monthly, quarterly or annually. The Company’s SaaS solutions represent a series of distinct services that are substantially the same and have the same pattern of transfer to the client. Revenue from a SaaS solution is generally recognized ratably over the term of the arrangement.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">License.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Our perpetual software licenses provide the client with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the client. Our perpetual software licenses are sold with maintenance under which we provide clients with telephone consulting, product updates on a when available basis, and releases of new versions of products previously purchased by the client, as well as error reporting and correction services.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Professional Services and Other.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Our services revenue consists of fees generated from consulting, implementation and training services, including reimbursements of out-pocket expenses in connection with our services. Services are typically optional to our clients, and are distinct from our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. We believe the output method of hours worked provides the best depiction of the transfer of our services since the client is receiving the benefit from our services as the work is performed. The total amount of expense reimbursement included in professional services and other revenue was immaterial for the three and nine months ended January 31, 2024 and 2023.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Maintenance.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Revenue is derived from maintenance under which we provide clients with telephone consulting, product updates and releases of new versions of products previously purchased by the client on a when and-if-available basis, as well as error reporting and correction services. Maintenance for perpetual licenses is renewable, generally on an annual basis, at the option of the client. Maintenance terms typically range from <span style="-sec-ix-hidden:f-448">one</span> to three years. Revenue related to maintenance is generally paid in advance and recognized ratably over the term of the agreement since the Company is standing ready to provide a series of maintenance services that are substantially the same each period over the term; therefore, time is the best measure of progress. Support services for subscriptions are included in the subscription fees and are recognized as a component of such fees.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Indirect Channel Revenue.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> We record revenue from sales made through the indirect sales channels on a gross basis, because we control the goods or services and act as the principal in the transaction. In reaching this determination, we evaluated sales through our indirect channel on a case-by-case basis and considered a number of factors including indicators of control such as the party having the primary responsibility to provide specified goods or services and the party having discretion in establishing prices.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sales Taxes.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> We account for sales taxes collected from clients on a net basis.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contract Balances.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Timing of invoicing to clients may differ from timing of revenue recognition and these timing differences result in unbilled accounts receivables or contract liabilities (deferred revenue) on the Company’s Condensed Consolidated Balance Sheets. Fees for our software licenses are generally due within 30 days of contract execution. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our clients. SaaS solutions and maintenance are typically billed in advance on a monthly, quarterly, or annual basis. Services are typically billed as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">have determined that our contracts generally do not include significant financing component. The primary purpose of our invoicing terms is to provide clients with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude any financing component from consideration for any contracts with payment terms of one year or less since we rarely offer terms extending beyond one year. The consideration in our client contracts is fixed.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have an unconditional right to consideration for all goods and services transferred to our clients. That unconditional right to consideration is reflected in billed and unbilled accounts receivable in the accompanying Condensed Consolidated Balance Sheets in accordance with Topic 606.</span></div><div style="text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Deferred revenue consists of amounts collected prior to having completed the performance of maintenance, SaaS, hosting, and managed services. We typically invoice clients for cloud subscription and support fees in advance on a monthly, quarterly or annual basis, with payment due at the start of the cloud subscription or support term. During the nine months ended January 31, 2024, we recognized $38.1 million of revenue that was included in the deferred revenue balance as of April 30, 2023.</span></div><div style="margin-bottom:8pt;margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.904%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.107%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.380%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.109%"></td><td style="width:0.1%"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="2" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">January 31,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">April 30,<br/>2023</span></td></tr><tr style="height:14pt"><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,154 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,124 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Remaining Performance Obligations.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> A performance obligation is a promise in a contract to transfer a distinct good or service to the client and is the unit of account under Topic 606. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied by transferring the promised good or service to the client. The Company identifies and tracks the performance obligations at contract inception so that the Company can monitor and account for the performance obligations over the life of the contract. Remaining performance obligations represent the transaction price of orders for which products have not been delivered or services have not been performed. As of January 31, 2024, the aggregate amount of the transaction price allocated to remaining performance obligations was approximately $119.5 million. The Company expects to recognize revenue on approximately 51% of the remaining performance obligations over the next 12 months, with the remainder recognized thereafter.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Disaggregated Revenue.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company disaggregates revenue from contracts with clients by geography, as it believes it best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s revenue by geography is as follows:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.005%"><tr><td style="width:1.0%"></td><td style="width:38.091%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.851%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.696%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.497%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.499%"></td><td style="width:0.1%"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended<br/>January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended<br/>January 31,</span></td></tr><tr style="height:12pt"><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:14pt"><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Domestic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,040 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,078 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,646 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,633 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,496 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,349 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,481 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,854 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,536 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,427 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,127 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,487 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">    Contract Costs.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company capitalizes the incremental costs of obtaining a contract with a client if the Company expects to recover those costs. The incremental costs of obtaining a contract are those that the Company incurs to obtain a contract with a client that it would not have incurred if the contract had not been obtained (for example, a sales commission). The Company capitalizes the costs incurred to fulfill a contract only if those costs meet all of the following criteria:</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The costs relate directly to a contract or to an anticipated contract that the Company can specifically identify.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The costs generate or enhance resources of the Company that will be used in satisfying (or in continuing to satisfy) performance obligations in the future.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The costs are expected to be recovered.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    Certain sales commissions incurred by the Company were determined to be incremental costs to obtain the related contracts, which are deferred and amortized ratably over the economic benefit period. These deferred commission costs are classified as current or non-current based on the timing of when the Company expects to recognize the expense. The current and non-current portions of deferred commissions are included in prepaid expenses and other current assets and other assets, respectively, in the Company’s Condensed Consolidated Balance Sheets. Total deferred commissions at January 31, 2024 and April 30, 2023 were $2.6 million and $3.0 million, respectively. Amortization of sales commissions was $0.4 million and $1.2 million for the three and nine months ended January 31, 2024 and $0.4 million and $1.2 million for the three and nine months ended January 31, 2023, which is included in "Sales and marketing" expense in the accompanying Condensed Consolidated Statements of Operations. No impairment losses were recognized during the periods.</span></div> P3Y 38100000 <div style="margin-bottom:8pt;margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.904%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.107%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.380%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.109%"></td><td style="width:0.1%"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="2" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">January 31,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">April 30,<br/>2023</span></td></tr><tr style="height:14pt"><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,154 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,124 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 37154000 43124000 119500000 0.51 P12M <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s revenue by geography is as follows:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.005%"><tr><td style="width:1.0%"></td><td style="width:38.091%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.851%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.696%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.497%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.422%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.499%"></td><td style="width:0.1%"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended<br/>January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended<br/>January 31,</span></td></tr><tr style="height:12pt"><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:14pt"><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Domestic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,040 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,078 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,646 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,633 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,496 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,349 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,481 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,854 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,536 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,427 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,127 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,487 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 20040000 21078000 60646000 63633000 5496000 6349000 16481000 17854000 25536000 27427000 77127000 81487000 2600000 3000000 400000 1200000 400000 1200000 0 0 0 0 Declaration of Dividend Payable<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 20, 2023, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend was payable on February 16, 2024 to Class A and Class B shareholders of record at the close of business on February 2, 2024.</span></div> 0.11 Earnings Per Common Share<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has two classes of common stock. Class B common shares are convertible into Class A common shares at any time, on a one-for-one basis. Under the Company’s Articles of Incorporation, if dividends are declared, holders of Class A common shares shall receive a $0.05 dividend per share prior to the Class B common shares receiving any dividend and holders of Class A common shares shall receive a dividend at least equal to Class B common shares dividends on a per share basis. As a result, the Company has computed the earnings per share in compliance with the Earnings Per Share Topic of the FASB ASC 260, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Earnings Per Share</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, which requires companies that have multiple classes of equity securities to use the “two-class” method in computing earnings per share.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the Company’s basic earnings per share calculation, the Company uses the “two-class” method. Basic earnings per share are calculated by dividing net earnings attributable to each class of common stock by the weighted average number of shares outstanding. All undistributed earnings are allocated evenly between Class A and B common shares in the earnings per share calculation to the extent that earnings equal or exceed $0.05 per share. If Class B shares convert to Class A shares during the period, the distributed net earnings for Class B shares is calculated using the weighted average common shares outstanding during the period.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Diluted earnings per share is calculated similarly to basic earnings per share, except that the calculation is adjusted to give effect to dilutive elements including stock options and restricted stock units ("RSUs") issuable under the Company's stock incentive plans, to the extent these are dilutive. For the Company’s diluted earnings per share calculation for Class A shares, the Company uses the “if-converted” method. This calculation assumes that all Class B common shares are converted into Class A common shares and, as a result, assumes there are no holders of Class B common shares to participate in undistributed earnings.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the Company’s diluted earnings per share calculation for Class B shares, the Company uses the “two-class” method. This calculation does not assume that all Class B common shares are converted into Class A common shares. In addition, this method assumes the dilutive effect of Class A stock options and RSUs were converted to Class A shares and the undistributed earnings are allocated evenly to both Class A and B shares including Class A shares issued pursuant to those converted stock options. This allocation is based on management’s judgment after considering the dividend rights of the two-classes of common stock, the control of the Class B shareholders and the convertibility rights of the Class B shares into Class A shares.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts):</span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basic earnings per common share:</span></div><div style="margin-top:8pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.467%"><tr><td style="width:1.0%"></td><td style="width:52.039%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.538%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.412%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.926%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.412%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.772%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.412%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.389%"></td><td style="width:0.1%"></td></tr><tr style="height:20pt"><td colspan="3" rowspan="2" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended January 31, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31, 2024</span></td></tr><tr style="height:27pt"><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.01 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.01 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.06)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.06)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.05 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,454 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,568 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">601 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">410 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,864)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(106)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,892 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,812 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,704 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average common shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,470 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,020 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:23pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="2" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended January 31, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31, 2023</span></td></tr><tr style="height:33pt"><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.02)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.02)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.11)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.11)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.21 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.01 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,515 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">201 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,532 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">601 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(472)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,545)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(202)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,998 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,664 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,043 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,987 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average common shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,937 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,890 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">`</span></div><div style="margin-top:3pt;text-align:justify"><span><br/></span></div><div style="margin-top:3pt;text-align:justify"><span><br/></span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Diluted EPS for Class A Common Shares Using the If-Converted Method</span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:62.243%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,470 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,514 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,088 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,336 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,704 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,020 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,704 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,044 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,199 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,866 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:13pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,043 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,937 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,043 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,143 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,217 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,965 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,987 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,890 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">294 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,987 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,184 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,386 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,006 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Diluted EPS for Class B Common Shares Using the Two-Class Method</span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:62.243%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:8pt;text-align:justify"><span><br/></span></div><div style="margin-top:13pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-top:8pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">____________</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Amounts adjusted for rounding</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three and nine months ended January 31, 2024 we excluded options to purcha</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">se 6,481,015 and 6,184,717 Class A Common Shares, respectively, and for the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">three and nine months ended </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">January 31, 2023 we excluded options to purchase 4,445,248 and 3,718,454 Class A Common Shares, respectively. We excluded these option share amounts because the exercise prices of those options were greater than the average market price of the Class A Common Shares during the applicable period. As of January 31, 2024, we had a total of 6,522,415 options outstanding and as of January 31, 2023, we had a total of 5,677,804 options outstanding.</span></div> 1 0.05 0.05 <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts):</span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basic earnings per common share:</span></div><div style="margin-top:8pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.467%"><tr><td style="width:1.0%"></td><td style="width:52.039%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.538%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.412%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.926%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.412%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.772%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.412%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.389%"></td><td style="width:0.1%"></td></tr><tr style="height:20pt"><td colspan="3" rowspan="2" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended January 31, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31, 2024</span></td></tr><tr style="height:27pt"><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.01 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.01 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.06)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.06)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.05 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,454 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,568 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">601 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">410 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,864)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(106)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,892 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,812 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,704 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average common shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,470 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,020 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:23pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr style="height:23pt"><td colspan="3" rowspan="2" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended January 31, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31, 2023</span></td></tr><tr style="height:33pt"><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.33 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.02)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.02)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.11)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.11)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.21 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.01 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Distributed earnings</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,515 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">201 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,532 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">601 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Undistributed losses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(472)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,545)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(202)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from continuing operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,998 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,664 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,043 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,987 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average common shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,937 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,890 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">`</span></div> 0.11 0.11 0.33 0.33 0.01 0.01 -0.06 -0.06 0.12 0.12 0.22 0.27 0 0 0.05 0 0.12 0.12 0.27 0.27 3454000 200000 10568000 601000 410000 24000 -1864000 -106000 3864000 224000 6892000 495000 0 0 1812000 0 3864000 224000 8704000 495000 31470000 1822000 32020000 1822000 0.11 0.11 0.33 0.33 -0.02 -0.02 -0.11 -0.11 0.09 0.09 0.21 0.22 0 0 0.01 0 0.09 0.09 0.22 0.22 3515000 201000 10532000 601000 -472000 -27000 -3545000 -202000 2998000 174000 6664000 399000 45000 0 323000 0 3043000 174000 6987000 399000 31937000 1822000 31890000 1822000 <div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Diluted EPS for Class A Common Shares Using the If-Converted Method</span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:62.243%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,470 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,514 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,088 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,336 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,704 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,020 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,704 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,044 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,199 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,866 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:13pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,043 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,937 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,043 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,143 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,217 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,965 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class A<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,987 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,890 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">294 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,987 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,184 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Class B Common Share Conversion*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class A Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,386 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,006 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 3864000 31470000 0.12 44000 3864000 31514000 0.12 224000 1822000 4088000 33336000 0.12 8704000 32020000 0.27 24000 8704000 32044000 0.27 495000 1822000 9199000 33866000 0.27 3043000 31937000 0.09 206000 3043000 32143000 0.09 174000 1822000 3217000 33965000 0.09 6987000 31890000 0.22 294000 6987000 32184000 0.22 399000 1822000 7386000 34006000 0.22 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Diluted EPS for Class B Common Shares Using the Two-Class Method</span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:62.243%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:13pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2024</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.27 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:8pt;text-align:justify"><span><br/></span></div><div style="margin-top:13pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.09 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-top:8pt;text-align:justify"><span><br/></span></div><div style="margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended January 31, 2023</span></div><div style="margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:62.429%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.664%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.667%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Undistributed<br/>&amp; Distributed<br/>Earnings<br/>to Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Class B<br/>Common<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">EPS*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Per Basic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation of undistributed earnings from Class A Common Shares to Class B Common Shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted EPS for Class B Common Shares</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.22 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">____________</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Amounts adjusted for rounding</span></div> 224000 1822000 0.12 0 224000 1822000 0.12 495000 1822000 0.27 0 495000 1822000 0.27 174000 1822000 0.09 -1000 175000 1822000 0.09 399000 1822000 0.22 -2000 401000 1822000 0.22 6481015 6184717 4445248 3718454 6522415 5677804 Acquisitions<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for business combinations using the acquisition method of accounting and, accordingly, the identifiable assets acquired and liabilities assumed are recorded based upon management’s estimates of current fair values as of the acquisition date. The estimation process includes analyses based on income and market approaches. Goodwill represents the excess purchase price over the fair value of net assets, including the amount assigned to identifiable intangible assets. The goodwill generated is due in part to the synergies that are not included in the fair value of identifiable intangible assets. Goodwill recorded in an acquisition is assigned to applicable reporting units based on expected revenues. Identifiable intangible assets with finite lives are amortized over their useful lives. Amortization of current technology is recorded in cost of revenue-subscription fees and amortization of all other intangible assets is recorded in amortization of acquisition-related intangibles. Acquisition-related costs, including advisory, legal, accounting, valuation and other costs, are expensed in general and administrative expenses in the periods in which such costs are incurred. The results of operations of acquired businesses are included in the condensed consolidated financial statements from the acquisition date.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Effective September 5, 2023, the Company entered into a Stock Purchase Agreement (“Garvis Purchase Agreement”) with privately-held Garvis AI Limited, a private limited company organized and registered under the laws of England and Wales (“Garvis”). Pursuant to the Garvis Purchase Agreement, the Company acquired 100% of the total issued and outstanding shares of capital stock of Garvis, a visionary SaaS startup that can combine a large language model-based AI interface (e.g. ChatGPT) with AI-native demand forecasting. </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Garvis designed from the ground up an AI-first forecasting solution now called DemandAI+. When combined with Generative AI, DemandAI+ creates a modern, more inclusive, and intuitive planning paradigm that quickly digitizes supply chain relationships and exposes that data to any stakeholder across the organization. By simply asking questions planners, executives, and non-planners alike get answers to unanticipated queries in real-time, providing transparency for more informed decisions that saves precious planning time. Demand AI+, built for the cloud, will be embedded into the Logility Digital Supply Chain Platform. The combined solutions will enable a new supply chain planning paradigm with DemandAI+ that moves beyond conventional methods to plan demand and inventory at the speed of the market.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the terms of the Garvis Purchase Agreement, the Company acquired the capital stock for cash consideration paid net of cash acquired of approximately $25.0 million, subject to certain post-closing adjustments. The Company incurred acquisition costs of approximately $167,000 and $504,000 during the three and nine months ended January 31, 2024. The operating results of Garvis are not material for proforma disclosure. The Company preliminarily allocated $16.8 million of the total purchase price to goodwill, which has been assigned to the Supply Chain Management segment and is not deductible for income tax purposes.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%">The following preliminary allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of September 5, 2023 (in thousands):</span></div><div style="text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:90.643%"><tr><td style="width:1.0%"></td><td style="width:65.996%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.029%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.445%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Useful Life</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">457 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,835 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total assets acquired</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,433 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(617)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,708)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities assumed</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,325)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net assets acquired</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,108 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Current technology and non-compete agreements are being amortized on a straight-line basis over the remaining estimated economic life of the assets, including the period being reported.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Effective June 28, 2022, the Company acquired certain assets of privately-held Starboard Solutions Corp., a Michigan based innovator of supply chain network design software (“Starboard”), pursuant to the terms of an asset purchase agreement, dated as of June 28, 2022 (the “Starboard Purchase Agreement”).</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Starboard creates an interactive supply chain digital twin of the physical supply chain network and uses gaming technology to provide an intuitive user experience where users can easily explore answers to various "what if" questions. Starboard offers a unique supply chain visualization solution that can optimize for unknown locations, meaning users do not have to map their plans to a physical location. Applying Starboard’s rich set of reference costs with Logility’s lane rates and time data structures, users have the ability to quickly analyze options in regions for which they have no prior data and assess better locations for future plants, warehouses or third-party logistic locations. The intuitive design and ease of configuration makes the Starboard network design solution stand out. The Starboard software is built for recurring use, eliminating the need for a consulting project to model potential resolutions to unexpected supply chain disruptions. The integration of Starboard’s capabilities into the Logility Digital Supply Chain Platform will offer supply chain leaders enhanced integrated business planning outcomes. Users will be able to model a response to disruptions and update their operating plan within the Logility Digital Supply Chain Platform in minutes to enact the new operating paradigm.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the terms of the Starboard Purchase Agreement, the Company acquired the assets in exchange for a purchase price of approximately $6.5 million in cash, subject to certain post-closing adjustments, plus up to a maximum aggregate amount of $6.0 million (the "Aggregate Maximum Earnout Payment") of contingent earnout payments upon satisfaction of certain subscription revenue targets over a three year earnout period (the "Earnout Period"). For each year of the Earnout Period (each, a "Calculation Period"), the Company will pay, as additional consideration, $2.0 million once subscription revenue (i.e., revenue contracted for and recorded as revenue in accordance with GAAP) for the applicable Calculation Period equals $1.5 million, plus one dollar of additional consideration for each dollar of subscription revenue in excess of $1.5 million, subject to the Aggregate Maximum Earnout Payment. If the subscription revenue for each Calculation Period is less than $1.5 million, no additional payment shall be due for such Calculation Period. The contingent earnout payments are subject to the recipient's continued service with the Company; therefore, any additional consideration will be accounted for as post-combination services and will be expensed in the period(s) payments are accruable. The cumulative earnout paid as of January 31, 2024 was $0. The Company incurred acquisition costs of approximately $0, $0, $50,000 and $186,000 during the three and nine months ended January 31, 2024 and 2023, respectively. The operating results of Starboard are not material for proforma disclosure. We allocated $3.7 million of the total purchase price to goodwill, which has been assigned to the Supply Chain Management segment and is deductible for income tax purposes.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of June 28, 2022 (in thousands):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:74.706%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Useful Life</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,670 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">170 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current technology</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,500 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">160 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total assets acquired</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,590 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(90)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net assets acquired</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,500 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div>Non-compete agreements, current technology and customer relationships are being amortized on a straight-line basis over the remaining estimated economic life of the assets, including the period being reported. <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for business combinations using the acquisition method of accounting and, accordingly, the identifiable assets acquired and liabilities assumed are recorded based upon management’s estimates of current fair values as of the acquisition date. The estimation process includes analyses based on income and market approaches. Goodwill represents the excess purchase price over the fair value of net assets, including the amount assigned to identifiable intangible assets. The goodwill generated is due in part to the synergies that are not included in the fair value of identifiable intangible assets. Goodwill recorded in an acquisition is assigned to applicable reporting units based on expected revenues. Identifiable intangible assets with finite lives are amortized over their useful lives. Amortization of current technology is recorded in cost of revenue-subscription fees and amortization of all other intangible assets is recorded in amortization of acquisition-related intangibles. Acquisition-related costs, including advisory, legal, accounting, valuation and other costs, are expensed in general and administrative expenses in the periods in which such costs are incurred. The results of operations of acquired businesses are included in the condensed consolidated financial statements from the acquisition date.</span></div> 1 25000000 167000 504000 16800000 <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%">The following preliminary allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of September 5, 2023 (in thousands):</span></div><div style="text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:90.643%"><tr><td style="width:1.0%"></td><td style="width:65.996%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.029%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.445%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Useful Life</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">457 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,835 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total assets acquired</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,433 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(617)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,708)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities assumed</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,325)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net assets acquired</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,108 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following allocation of the total purchase price reflects the fair value of the assets acquired and liabilities assumed as of June 28, 2022 (in thousands):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:74.706%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Useful Life</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,670 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">170 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current technology</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,500 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">160 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total assets acquired</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,590 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(90)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net assets acquired</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,500 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div> 67000 457000 47000 27000 16835000 2000000 P3Y 9000000 P3Y 28433000 617000 2708000 3325000 25108000 6500000 6000000 P3Y 2000000 1500000 1 1500000 1500000 0 0 0 50000 186000 3700000 90000 3670000 170000 P5Y 2500000 P3Y 160000 P6Y 6590000 90000 6500000 Divestitures<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Discontinued Operations</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September 18, 2023, the Company disposed of its 100% equity interest in its information technology staffing firm, TPM to Marathon TS, Inc., an IT professional services firm for approximately $2.1 million in cash, of which $300,000 is held in escrow. The amounts held in escrow are limited to claims arising out of or relating to any pre-closing taxes. Any escrow amounts that are not subject to then outstanding indemnification claims shall be released to the Company in equal $100,000 increments on the 12, 24 and 36 month anniversary of the transaction closing date and are included in prepaid expenses and other current assets and other assets in the Condensed Consolidated Balance Sheet as of January 31, 2024. There have not been any submitted, or expected, indemnification claims against these escrowed funds. This transaction enables us to focus on our core supply chain planning business allowing Logility to continue to expand its AI-first supply chain management platform. </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with applicable accounting guidance for the disposal of long-lived assets, the results of TPM are presented as discontinued operations and, as such, have been excluded from both continuing operations and segment results in the accompanying Condensed Consolidated Balance Sheets, Condensed Consolidated Statements of Operations, Condensed Consolidated Statements of Cash Flows and in the Notes to Condensed Consolidated Financial Statements. TPM was previously reported in the former IT Consulting segment. During the second quarter of fiscal 2024, the Company identified an error, originating in 2017, resulting in an understatement of professional services and other cost of revenue and other current liabilities. The error was determined to be immaterial to all impacted periods and has been corrected in the previously issued condensed consolidated financial statements presented herein. Subsequent to presenting the results of TPM as discontinued operations, the amounts related to the error resulted in an adjustment to decrease earnings from operations of discontinued operations by $123,000 and $168,000 in the three and nine months ended January 31, 2023, respectively. The error resulted in an increase to retained deficit and an increase to other current liabilities of approximately $1.0 million in prior periods presented.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is selected financial information included in Earnings from discontinued operations for TPM:</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:12pt;text-align:justify;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.152%"><tr><td style="width:1.0%"></td><td style="width:36.011%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.345%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended<br/>January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended<br/>January 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,584 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,258 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,926 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,959 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,942 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total operating expenses</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">570 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">718 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,841 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gain on disposal of discontinued operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,124 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings before income taxes</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,379 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">475 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">567 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings (loss) from discontinued operations, net of taxes</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(64)</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,812 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is selected financial information included in current assets and current liabilities from discontinued operations for TPM:</span></div><div style="margin-bottom:8pt;margin-top:12pt;text-align:justify;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.152%"><tr><td style="width:1.0%"></td><td style="width:67.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.430%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">April 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">637 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts receivable, less allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,964 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets of discontinued operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,603 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities of discontinued operations</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">318 </span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Other Divestitures</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 15 2023, we signed an asset purchase agreement for the sale of our Transportation Rating Solutions ("TRS") business which consists of on-premise freight shipping solutions for LTL, truckload and rail shipments within North America to FOG Software Group ("FOG") a division of Vela Software for approximately $1.1 million in cash, of which, $440,000 is subject to various holdback provisions, which will expire 120 days following the date of the agreement. The divestiture of TRS will allow us to focus on our core supply chain planning business allowing Logility to continue to expand its AI-first supply chain management platform. The purchase price is subject to a working capital adjustment. We recognized a pre-tax gain of approximately $1.4 million which is recorded within Other Income in the accompanying Condensed Consolidated Statements of Operations for the three and nine months ended January 31, 2024. Earnings from the business were not material and the results of the business through the date of sale were reflected in continuing operations within the SCM segment.</span></div> 1 2100000 300000 100000 -123000 -168000 1000000 -1000000 <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is selected financial information included in Earnings from discontinued operations for TPM:</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:12pt;text-align:justify;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.152%"><tr><td style="width:1.0%"></td><td style="width:36.011%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.345%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended<br/>January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended<br/>January 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,584 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,258 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,926 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,959 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,942 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total operating expenses</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">570 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">718 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,841 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gain on disposal of discontinued operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,124 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings before income taxes</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,379 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">475 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">567 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings (loss) from discontinued operations, net of taxes</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(64)</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,812 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is selected financial information included in current assets and current liabilities from discontinued operations for TPM:</span></div><div style="margin-bottom:8pt;margin-top:12pt;text-align:justify;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.152%"><tr><td style="width:1.0%"></td><td style="width:67.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.421%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.430%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">April 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">637 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts receivable, less allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,964 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets of discontinued operations</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,603 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities of discontinued operations</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">318 </span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 0 3584000 4932000 12258000 0 2926000 3959000 9942000 0 570000 718000 1841000 0 0 -2124000 0 0 88000 2379000 475000 64000 43000 567000 152000 -64000 45000 1812000 323000 0 637000 0 2964000 0 2000 0 3603000 0 318000 1100000 440000 P120D 1400000 1400000 Stock-Based Compensation<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the first quarter of fiscal 2024, the Compensation Committee of our Board of Directors awarded RSUs to independent directors not employed by the Company that will vest, and shares of Class A common stock will be issued, on the first anniversary of the date of the grant. The RSU awards replace option grants for Class A common stock previously awarded to independent directors. In addition, stock option grants for employees and contractors for Class A common shares were issued, as follows:</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:90.350%"><tr><td style="width:1.0%"></td><td style="width:72.200%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.844%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.609%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.847%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Awards granted:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">    Options</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,485,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,519,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">    RSUs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,411 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total awards granted</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,580,411 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,519,000 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span><br/></span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of each option award is estimated on the date of grant using the Black-Scholes option pricing model and the fair value of each RSU award is estimated on the date of grant using the fair value method. The forfeiture rates are estimated using historical data. We recorded total compensation cost related to stock options and RSUs of approximately $1.6 million and $1.3 million of which, $0 and $8,000 was included in discontinued operations, and income tax expense of approximately $69,000 from option expirations and income tax benefits of approximately $4,000 from option exercises during the three months ended January 31, 2024 and 2023, respectively. We recorded total compensation cost related to stock options and RSUs of approximately $4.7 million and $3.9 million, of which $0 and $16,000 was included in discontinued operations, and income tax expense of approximately $69,000 from option expirations and income tax benefits of approximately $67,000 from option exercises during the nine months ended January 31, 2024 and 2023, respectively. We record stock-based compensation expense on a straight-line basis over the vesting period directly to additional paid-in capital.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the nine months ended January 31, 2024 and 2023, we issued 26,253 and 140,800 shares of Class A common stock, respectively, resulting from the exercise of stock options. The total intrinsic value of options exercised during the nine months ended January 31, 2024 and 2023 based on market value at the exercise dates was approximately $40,000 and $589,000, respectively. As of January 31, 2024, unrecognized compensation cost related to unvested stock option and RSU awards approximated $14.6 million, respectively, which we expect to recognize over a weighted average period of 1.71 years.</span></div> In addition, stock option grants for employees and contractors for Class A common shares were issued, as follows:<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:90.350%"><tr><td style="width:1.0%"></td><td style="width:72.200%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.844%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.609%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.847%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Awards granted:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">    Options</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,485,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,519,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">    RSUs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,411 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total awards granted</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,580,411 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,519,000 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 1485000 1519000 95411 0 1580411 1519000 1600000 1300000 0 8000 -69000 4000 4700000 3900000 0 16000 -69000 67000 26253 140800 40000 589000 14600000 14600000 P1Y8M15D Fair Value of Financial Instruments<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We measure our investments based on a fair value hierarchy disclosure framework that prioritizes and ranks the level of market price observability used in measuring assets and liabilities at fair value. A number of factors affect market price observability, including the type of asset or liability and its characteristics. This hierarchy prioritizes the inputs into three broad levels as follows:</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1—Quoted prices for identical instruments in active markets.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2—Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs and significant value drivers are observable in active markets.</span></div><div style="margin-bottom:8pt;margin-top:8pt;padding-left:45pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3—Valuations derived from valuation techniques in which one or more significant inputs or significant value drivers are unobservable.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a general description of the valuation methodologies we use for financial assets and liabilities measured at fair value, including the general classification of such assets and liabilities pursuant to the valuation hierarchy.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash Equivalents</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">—Cash equivalents include investments in government obligation based money-market funds, other money market instruments and interest-bearing deposits with initial terms of three months or less. The fair value of cash equivalents approximates its carrying value due to the short-term nature of these instruments.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Marketable Securities</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">—Marketable securities utilizing Level 1 inputs include active exchange-traded equity securities and equity index funds, and most U.S. government debt securities, as these securities all have quoted prices in active markets. Marketable securities utilizing Level 2 inputs include municipal bonds. We value these securities using market-corroborated pricing or other models that use observable inputs such as yield curves.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of January 31, 2024 and April 30, 2023, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:38.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.630%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">January 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Quoted Prices<br/>in Active<br/>Markets for<br/>Identical Assets<br/>(Level 1)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Other<br/>Observable<br/>Inputs<br/>(Level 2)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Unobservable<br/>Inputs<br/>(Level 3)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,464 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,464 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,625 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,625 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Marketable securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,829 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,829 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,918 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,918 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:17pt;margin-top:17pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:38.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.630%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">April 30, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Quoted Prices<br/>in Active<br/>Markets for<br/>Identical Assets<br/>(Level 1)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Other<br/>Observable<br/>Inputs<br/>(Level 2)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Unobservable<br/>Inputs<br/>(Level 3)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,352 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,352 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,305 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,305 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Marketable securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,632 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,632 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,289 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,289 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of January 31, 2024 and April 30, 2023, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:38.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.630%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">January 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Quoted Prices<br/>in Active<br/>Markets for<br/>Identical Assets<br/>(Level 1)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Other<br/>Observable<br/>Inputs<br/>(Level 2)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Unobservable<br/>Inputs<br/>(Level 3)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,464 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,464 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,625 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,625 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Marketable securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,829 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,829 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,918 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,918 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:17pt;margin-top:17pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:38.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.630%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">April 30, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Quoted Prices<br/>in Active<br/>Markets for<br/>Identical Assets<br/>(Level 1)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Other<br/>Observable<br/>Inputs<br/>(Level 2)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Significant<br/>Unobservable<br/>Inputs<br/>(Level 3)</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,352 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,352 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,305 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,305 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Marketable securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,632 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,632 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,289 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,289 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 51464000 0 0 51464000 4625000 0 0 4625000 17829000 0 0 17829000 73918000 0 0 73918000 81352000 0 0 81352000 7305000 0 0 7305000 16632000 0 0 16632000 105289000 0 0 105289000 Stock Repurchases<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 19, 2002, our Board of Directors authorized the repurchase of up to an additional 2.0 million shares of our Class A common stock. We have made and will make these repurchases through open market purchases at prevailing market </span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">prices. The timing of any repurchase will depend upon market conditions, the market price of our Class A common stock and management’s assessment of our liquidity and cash flow needs. Under this repurchase plan, we have repurchased 2,000,000 shares of Class A common stock at a cost of approximately $16.4 million, which had a $10.2 million impact on fiscal 2024. As of January 31, 2024, under all repurchase plans previously authorized, including this most recent plan, we have repurchased a total of 5,534,953 shares of common stock at a cost of approximately $35.8 million.</span></div> 2000000 2000000 16400000 10200000 5534953 35800000 Comprehensive Income<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not included Condensed Consolidated Statements of Comprehensive Income in the accompanying unaudited condensed consolidated financial statements since comprehensive income and net earnings presented in the accompanying Condensed Consolidated Statements of Operations would be substantially the same.</span></div> Industry Segments<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FASB ASC 280, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Segment Reporting</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, establishes standards for reporting information about operating segments. Operating segments are defined as components of a public entity about which separate financial information is available that is evaluated regularly by the chief operating decision makers (“CODMs”), or decision making group, in deciding how to allocate resources and in assessing performance. Our CODMs are our Chief Executive Officer and President and our Chief Financial Officer. While our CODMs are apprised of a variety of financial metrics and information, we manage our business primarily on a segment basis, with the CODMs evaluating performance based upon segment operating profit or loss that includes an allocation of common expenses, but excludes certain unallocated corporate expenses, which are included in the Other segment. Our CODMs review the operating results of our two segments, assess performance and allocate resources in a manner that is consistent with the changing market dynamics that we have experienced. The two operating segments are: (1) Supply Chain Management (“SCM”) and (2) Other.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The SCM segment leverages a single platform spanning seven supply chain process areas, including product, demand, inventory, supply, deploy, integrated business planning and supply chain data management. The Other segment consists of (i) American Software enterprise resource planning ("ERP"), which provides purchasing and materials management, client order processing, financial, e-commerce and traditional manufacturing solutions, and (ii) unallocated corporate overhead expenses.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All of our revenue is derived from external clients. We do not have any inter-segment revenue. Our income taxes and dividends are paid at a consolidated level. Consequently, it is not practical to show these items by operating segment.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the following table, we have broken down the intersegment transactions applicable to the three and nine months ended January 31, 2024 and 2023 (in thousands):</span></div><div style="margin-bottom:8pt;margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:93.421%"><tr><td style="width:1.0%"></td><td style="width:38.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.453%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.453%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.453%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.460%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,009 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,952 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,558 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,886 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">475 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,569 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,601 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,536 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,427 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,127 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,487 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income\(loss):</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,119 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,763 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,587 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,304)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,018)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,960)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,950)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">815 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,745 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,436 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,637 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital expenditures:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">434 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,604 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">935 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,051 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">949 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">589 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,655 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,462 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">675 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,115 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,042 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">526 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">347 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,634 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">788 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,641 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,389 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings\(loss) before income taxes:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,094 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,353 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,695 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,578)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,015)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11,191)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,750)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,232 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,079 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,162 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,945 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 2 2 7 <div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the following table, we have broken down the intersegment transactions applicable to the three and nine months ended January 31, 2024 and 2023 (in thousands):</span></div><div style="margin-bottom:8pt;margin-top:13pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:93.421%"><tr><td style="width:1.0%"></td><td style="width:38.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.453%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.453%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.453%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.460%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended January 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Nine Months Ended January 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,009 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,952 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,558 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,886 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">475 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,569 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,601 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,536 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,427 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,127 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,487 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income\(loss):</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,119 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,763 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,587 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,304)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,018)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,960)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,950)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">815 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,745 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,436 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,637 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital expenditures:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">434 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,604 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">935 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,051 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">949 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">589 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,655 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,462 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">675 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,115 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,042 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">526 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">347 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,634 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">788 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,641 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,389 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings\(loss) before income taxes:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supply Chain Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,094 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,353 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,695 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,578)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,015)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11,191)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,750)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,232 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,079 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,162 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,945 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 25009000 26952000 75558000 79886000 527000 475000 1569000 1601000 25536000 27427000 77127000 81487000 6119000 7763000 18396000 22587000 -5304000 -5018000 -14960000 -14950000 815000 2745000 3436000 7637000 21000 14000 434000 1604000 47000 935000 155000 2051000 68000 949000 589000 3655000 1462000 675000 3115000 2042000 172000 113000 526000 347000 1634000 788000 3641000 2389000 7810000 8094000 20353000 22695000 -2578000 -4015000 -11191000 -13750000 5232000 4079000 9162000 8945000 Major Clients<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No single client accounted for more than 10% of total revenue for the three and nine months ended January 31, 2024 and 2023.</span></div> Contingencies<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company more often than not indemnifies its clients against damages and costs resulting from third-party claims of intellectual property infringement associated with use of the Company’s products. The Company historically has not been required to make any payments under such indemnification obligations. However, the Company continues to monitor the circumstances that are subject to indemnification to identify whether it is probable that a loss has occurred, and would recognize any such losses under such indemnification obligations when they are estimable.</span></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:24.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, the Company warrants to clients that the Company’s products operate substantially in accordance with the software product’s specifications. Historically, no costs have been incurred related to software product warranties and none are expected in the future, and as such no accruals for software product warranty costs have been made. Additionally, the Company is involved in various claims arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on the financial position or results of operations of the Company.</span></div> Subsequent Event<div style="margin-bottom:8pt;margin-top:8pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 21, 2024, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend is payable on May 17, 2024 to Class A and Class B shareholders of record at the close of business on May 3, 2024.</span></div> 0.11 Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.12 and $0.09 for the three months ended January 31, 2024 and 2023, and $0.27 and $0.22 for the nine months ended January 31, 2024 and 2023. See Note D to the condensed consolidated financial statements. Amounts adjusted for rounding