0001654954-24-000525.txt : 20240112 0001654954-24-000525.hdr.sgml : 20240112 20240112165153 ACCESSION NUMBER: 0001654954-24-000525 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 67 CONFORMED PERIOD OF REPORT: 20231130 FILED AS OF DATE: 20240112 DATE AS OF CHANGE: 20240112 FILER: COMPANY DATA: COMPANY CONFORMED NAME: AEHR TEST SYSTEMS CENTRAL INDEX KEY: 0001040470 STANDARD INDUSTRIAL CLASSIFICATION: INSTRUMENTS FOR MEAS & TESTING OF ELECTRICITY & ELEC SIGNALS [3825] ORGANIZATION NAME: 08 Industrial Applications and Services IRS NUMBER: 942424084 STATE OF INCORPORATION: CA FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-22893 FILM NUMBER: 24532625 BUSINESS ADDRESS: STREET 1: 400 KATO TERRACE CITY: FREMONT STATE: CA ZIP: 94539 BUSINESS PHONE: 5106239400 MAIL ADDRESS: STREET 1: 400 KATO TERRACE CITY: FREMONT STATE: CA ZIP: 94539 10-Q 1 aehr_10q.htm FORM 10-Q aehr_10q.htm

 

UNITED STATES SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

 

FORM 10-Q

 

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

 

 

 

For the quarterly period ended November 30, 2023 

 

or

 

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

 

 

 

For the transition period from _______________ to ______________   

 

Commission File Number 000-22893

 

AEHR TEST SYSTEMS

(Exact name of Registrant as Specified in its Charter)

 

California 

 

94-2424084 

(State or Other Jurisdiction of Incorporation or Organization)

 

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

 

 

400 Kato Terrace, Fremont, CA

 

94539 

(Address of Principal Executive Offices)

 

(Zip Code)

 

(510) 623-9400

(Registrant’s Telephone Number, Including Area Code)

 

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

 

Title of each class

Trading Symbol(s)

Name of each exchange on which registered

Common Stock par value of $0.01 per share

AEHR

The NASDAQ Capital 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 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, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company” and “emerging growth company” in Rule 12b-2 of the Exchange Act.

 

Large accelerated filer 

Accelerated filer 

Non-accelerated filer   

Smaller reporting company 

 

 

Emerging growth company 

 

If an emerging growth company, indicated 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 ☒

 

There were 28,849,237 shares of the Registrant’s Common Stock outstanding as of December 31, 2023.

 

 

 

TABLE OF CONTENTS

 

 

Page

PART I FINANCIAL INFORMATION

 

Item 1. Condensed Consolidated Financial Statements (Unaudited)

3

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

19

Item 3. Quantitative and Qualitative Disclosures About Market Risk

23

Item 4. Controls and Procedures

23

PART II OTHER INFORMATION

 

Item 1. Legal Proceedings

24

Item 1A. Risk Factors

24

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

24

Item 3. Defaults Upon Senior Securities

24

Item 4. Mine Safety Disclosures

24

Item 5. Other Information

24

Item 6. Exhibits

25

SIGNATURES 

26

 

 
2

Table of Contents

 

PART I — FINANCIAL INFORMATION

 

Item 1. Financial Statements

 

AEHR TEST SYSTEMS

CONDENSED CONSOLIDATED BALANCE SHEETS

(Unaudited)

 

 

 

November 30,

 

 

May 31,

 

(In thousands, except par value)

 

2023

 

 

2023

 

ASSETS

 

 

 

 

 

 

Current assets:

 

 

 

 

 

 

Cash and cash equivalents

 

$50,514

 

 

$30,054

 

Short-term investments

 

 

-

 

 

 

17,853

 

Accounts receivable, net

 

 

4,573

 

 

 

16,594

 

Inventories

 

 

33,817

 

 

 

23,908

 

Prepaid expenses and other current assets

 

 

2,861

 

 

 

621

 

Total current assets

 

 

91,765

 

 

 

89,030

 

Property and equipment, net

 

 

3,185

 

 

 

2,759

 

Operating lease right-of-use assets, net

 

 

5,987

 

 

 

6,123

 

Other non-current assets

 

 

238

 

 

 

231

 

Total assets

 

$101,175

 

 

$98,143

 

LIABILITIES AND SHAREHOLDERS’ EQUITY

 

 

 

 

 

 

 

 

Current liabilities:

 

 

 

 

 

 

 

 

Accounts payable

 

$4,183

 

 

$9,206

 

Accrued expenses

 

 

3,232

 

 

 

4,143

 

Operating lease liabilities, short-term

 

 

397

 

 

 

137

 

Deferred revenue, short-term

 

 

147

 

 

 

2,822

 

Total current liabilities

 

 

7,959

 

 

 

16,308

 

Operating lease liabilities, long-term

 

 

6,016

 

 

 

6,163

 

Deferred revenue, long-term

 

 

4

 

 

 

31

 

Other long-term liabilities

 

 

42

 

 

 

41

 

Total liabilities

 

 

14,021

 

 

 

22,543

 

Commitments and contingencies (Note 6)

 

 

 

 

 

 

 

 

Shareholders’ equity:

 

 

 

 

 

 

 

 

Preferred stock, $0.01 par value: Authorized: 10,000 shares;

 

 

 

 

 

 

 

 

Issued and outstanding: none

 

 

-

 

 

 

-

 

Common stock, $0.01 par value: Authorized: 75,000 shares;

 

 

 

 

 

 

 

 

Issued and outstanding: 28,826 shares and 28,539 shares at November 30, 2023 and May 31, 2023, respectively

 

 

288

 

 

 

285

 

Additional paid-in-capital

 

 

128,543

 

 

 

127,776

 

Accumulated other comprehensive loss

 

 

(134)

 

 

(155)

Accumulated deficit

 

 

(41,543)

 

 

(52,306)

Total shareholders' equity

 

 

87,154

 

 

 

75,600

 

Total liabilities and shareholders’ equity

 

$101,175

 

 

$98,143

 

 

The Condensed Consolidated Balance Sheet as of May 31, 2023 has been derived from the audited consolidated financial statements at that date.

 

See accompanying Notes to Condensed Consolidated Financial Statements (unaudited)

 

 
3

Table of Contents

 

AEHR TEST SYSTEMS

CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS

(Unaudited)

 

 

 

 

 

 

 

 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands, except per share data)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

$19,837

 

 

$14,007

 

 

$39,194

 

 

$23,595

 

Services

 

 

1,594

 

 

 

808

 

 

 

2,861

 

 

 

1,891

 

Total revenue

 

 

21,431

 

 

 

14,815

 

 

 

42,055

 

 

 

25,486

 

Cost of revenue:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

 

9,707

 

 

 

6,497

 

 

 

19,626

 

 

 

12,011

 

Services

 

 

766

 

 

 

407

 

 

 

1,490

 

 

 

1,083

 

Total cost of revenue

 

 

10,473

 

 

 

6,904

 

 

 

21,116

 

 

 

13,094

 

Gross profit

 

 

10,958

 

 

 

7,911

 

 

 

20,939

 

 

 

12,392

 

Operating expenses:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Research and development

 

 

1,972

 

 

 

1,551

 

 

 

4,429

 

 

 

3,049

 

Selling, general and administrative

 

 

3,518

 

 

 

2,875

 

 

 

6,927

 

 

 

5,400

 

Total operating expenses

 

 

5,490

 

 

 

4,426

 

 

 

11,356

 

 

 

8,449

 

Income from operations

 

 

5,468

 

 

 

3,485

 

 

 

9,583

 

 

 

3,943

 

Interest income, net

 

 

631

 

 

 

263

 

 

 

1,212

 

 

 

384

 

Other income (expense), net

 

 

10

 

 

 

(5)

 

 

4

 

 

 

19

 

Income before provision for income taxes

 

 

6,109

 

 

 

3,743

 

 

 

10,799

 

 

 

4,346

 

Provision for income taxes

 

 

20

 

 

 

18

 

 

 

36

 

 

 

32

 

Net income

 

$6,089

 

 

$3,725

 

 

$10,763

 

 

$4,314

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net income per share:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$0.21

 

 

$0.14

 

 

$0.37

 

 

$0.16

 

Diluted

 

$0.20

 

 

$0.13

 

 

$0.36

 

 

$0.15

 

Shares used in per share calculations:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

 

28,801

 

 

 

27,579

 

 

 

28,725

 

 

 

27,410

 

Diluted

 

 

29,769

 

 

 

29,080

 

 

 

29,700

 

 

 

28,934

 

 

See accompanying Notes to Condensed Consolidated Financial Statements (unaudited)

 

 
4

Table of Contents

 

AEHR TEST SYSTEMS

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME

(Unaudited)

 

 

 

 

 

 

 

 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Net income

 

$6,089

 

 

$3,725

 

 

$10,763

 

 

$4,314

 

Other comprehensive income (loss), net of tax:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net change in cumulative translation adjustment

 

 

7

 

 

 

1

 

 

 

4

 

 

 

(44)

Net change in unrealized gain (loss) on investments

 

 

-

 

 

 

(6)

 

 

17

 

 

 

(6)

Comprehensive income

 

$6,096

 

 

$3,720

 

 

$10,784

 

 

$4,264

 

 

See accompanying Notes to Condensed Consolidated Financial Statements (unaudited)

 

 
5

Table of Contents

 

AEHR TEST SYSTEMS

CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY

(Unaudited)

 

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

 

 

 

 

 

Additional

 

 

Other

 

 

 

 

Total

 

 

 

Common Stock

 

 

Paid-in

 

 

Comprehensive

 

 

Accumulated

 

 

Shareholders'

 

(In thousands)

 

Shares

 

 

Amount

 

 

Capital

 

 

Income (loss)

 

 

Deficit

 

 

Equity

 

Three Months Ended November 30, 2023

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Balances, August 31, 2023

 

 

28,763

 

 

$288

 

 

$127,630

 

 

$(141)

 

$(47,632)

 

$80,145

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock under employee plans

 

 

74

 

 

 

-

 

 

 

774

 

 

 

-

 

 

 

-

 

 

 

774

 

Issuance cost of common stock offering

 

 

-

 

 

 

-

 

 

 

(72)

 

 

-

 

 

 

-

 

 

 

(72)

Shares repurchased for tax withholdings on vesting of restricted stock units

 

 

(11)

 

 

-

 

 

 

(448)

 

 

-

 

 

 

-

 

 

 

(448)

Stock-based compensation

 

 

-

 

 

 

-

 

 

 

659

 

 

 

-

 

 

 

-

 

 

 

659

 

Net income

 

 

-

 

 

 

-

 

 

 

-

 

 

 

-

 

 

 

6,089

 

 

 

6,089

 

Foreign currency translation adjustment

 

 

-

 

 

 

-

 

 

 

-

 

 

 

7

 

 

 

-

 

 

 

7

 

Balances, November 30, 2023

 

 

28,826

 

 

$288

 

 

$128,543

 

 

$(134)

 

$(41,543)

 

$87,154

 

  

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

 

 

 

 

 

Additional

 

 

Other

 

 

 

 

 

 

 

Common Stock

 

 

Paid-in

 

 

Comprehensive

 

 

Accumulated

 

 

Shareholders'

 

 

Total

 

(In thousands)

 

Shares

 

 

Amount

 

 

Capital

 

 

Income (loss)

 

 

Deficit

 

 

Equity

 

Six Months Ended November 30, 2023

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Balances, May 31, 2023

 

 

28,539

 

 

$285

 

 

$127,776

 

 

$(155)

 

$(52,306)

 

$75,600

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock under employee plans

 

 

321

 

 

 

3

 

 

 

1,089

 

 

 

-

 

 

 

-

 

 

 

1,092

 

Issuance cost of common stock offering

 

 

-

 

 

 

-

 

 

 

(72)

 

 

-

 

 

 

-

 

 

 

(72)

Shares repurchased for tax withholdings on vesting of restricted stock units

 

 

(34)

 

 

-

 

 

 

(1,460)

 

 

-

 

 

 

-

 

 

 

(1,460)

Stock-based compensation

 

 

-

 

 

 

-

 

 

 

1,210

 

 

 

-

 

 

 

-

 

 

 

1,210

 

Net income

 

 

-

 

 

 

-

 

 

 

-

 

 

 

-

 

 

 

10,763

 

 

 

10,763

 

Foreign currency translation adjustment

 

 

-

 

 

 

-

 

 

 

-

 

 

 

4

 

 

 

-

 

 

 

4

 

Net unrealized gains on investments

 

 

-

 

 

 

-

 

 

 

-

 

 

 

17

 

 

 

-

 

 

 

17

 

Balances, November 30, 2023

 

 

28,826

 

 

$288

 

 

$128,543

 

 

$(134)

 

$(41,543)

 

$87,154

 

 

See accompanying Notes to Condensed Consolidated Financial Statements (unaudited)

 

 
6

Table of Contents

 

 

 

 

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Additional

 

 

Other

 

 

 

 

 

 

 

 

 

Common Stock

 

 

Paid-in

 

 

Comprehensive

 

 

Accumulated

 

 

Shareholders'

 

 

Total

 

(In thousands)

 

Shares

 

 

Amount

 

 

Capital

 

 

Income (loss)

 

 

Deficit

 

 

Equity

 

Three Months Ended November 30, 2022

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Balances, August 31, 2022

 

 

27,395

 

 

$274

 

 

$117,668

 

 

$(150)

 

$(66,274)

 

$51,518

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock under employee plans

 

 

339

 

 

 

3

 

 

 

654

 

 

 

-

 

 

 

-

 

 

 

657

 

Shares repurchased for tax withholdings on vesting of restricted stock units

 

 

(2)

 

 

-

 

 

 

(37)

 

 

-

 

 

 

-

 

 

 

(37)

Stock-based compensation

 

 

-

 

 

 

-

 

 

 

809

 

 

 

-

 

 

 

-

 

 

 

809

 

Net income

 

 

-

 

 

 

-

 

 

 

-

 

 

 

-

 

 

 

3,725

 

 

 

3,725

 

Foreign currency translation adjustment

 

 

-

 

 

 

-

 

 

 

-

 

 

 

1

 

 

 

-

 

 

 

1

 

Net unrealized loss on investments

 

 

-

 

 

 

-

 

 

 

-

 

 

 

(6)

 

 

-

 

 

 

(6)

Balances, November 30, 2022

 

 

27,732

 

 

$277

 

 

$119,094

 

 

$(155)

 

$(62,549)

 

$56,667

 

   

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

 

 

 

 

 

Additional

 

 

Other

 

 

 

 

 

 

 

Common Stock

 

 

Paid-in

 

 

Comprehensive

 

 

Accumulated

 

 

Shareholders'

 

 

Total

 

(In thousands)

 

Shares

 

 

Amount

 

 

Capital

 

 

Income (loss)

 

 

Deficit

 

 

Equity

 

Six Months Ended November 30, 2022

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Balances, May 31, 2022

 

 

27,120

 

 

$271

 

 

$117,686

 

 

$(105)

 

$(66,863)

 

$50,989

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock under employee plans

 

 

761

 

 

 

7

 

 

 

1,105

 

 

 

-

 

 

 

-

 

 

 

1,112

 

Shares repurchased for tax withholdings on vesting of restricted stock units

 

 

(149)

 

 

(1)

 

 

(1,215)

 

 

-

 

 

 

-

 

 

 

(1,216)

Stock-based compensation

 

 

-

 

 

 

-

 

 

 

1,518

 

 

 

-

 

 

 

-

 

 

 

1,518

 

Net income

 

 

-

 

 

 

-

 

 

 

-

 

 

 

-

 

 

 

4,314

 

 

 

4,314

 

Foreign currency translation adjustment

 

 

-

 

 

 

-

 

 

 

-

 

 

 

(44)

 

 

-

 

 

 

(44)

Net unrealized loss on investments

 

 

-

 

 

 

-

 

 

 

-

 

 

 

(6)

 

 

-

 

 

 

(6)

Balances, November 30, 2022

 

 

27,732

 

 

$277

 

 

$119,094

 

 

$(155)

 

$(62,549)

 

$56,667

 

 

See accompanying Notes to Condensed Consolidated Financial Statements (unaudited)

 

 
7

Table of Contents

 

AEHR TEST SYSTEMS

Condensed Consolidated Statements of Cash Flows

(Unaudited)

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

Cash flows from operating activities:

 

 

 

 

 

 

Net income

 

$10,763

 

 

$4,314

 

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

 

 

 

 

 

 

 

 

Stock-based compensation expense

 

 

1,160

 

 

 

1,503

 

Depreciation and amortization

 

 

283

 

 

 

225

 

Accretion of investment discount

 

 

(130)

 

 

(64)

Amortization of operating lease right-of-use assets

 

 

337

 

 

 

356

 

Provision for doubtful accounts

 

 

-

 

 

 

24

 

Changes in operating assets and liabilities:

 

 

 

 

 

 

 

 

Accounts receivable

 

 

12,037

 

 

 

2,618

 

Inventories

 

 

(9,996)

 

 

(3,094)

Prepaid expenses and other current assets

 

 

(2,245)

 

 

(196)

Accounts payable

 

 

(5,099)

 

 

(210)

Accrued expenses

 

 

(974)

 

 

(1,045)

Deferred revenue

 

 

(2,703)

 

 

1,221

 

Operating lease liabilities

 

 

(89)

 

 

(390)

Income taxes payable

 

 

12

 

 

 

4

 

Net cash provided by operating activities

 

 

3,356

 

 

 

5,266

 

 

 

 

 

 

 

 

 

 

Cash flows from investing activities:

 

 

 

 

 

 

 

 

Purchases of property and equipment

 

 

(440)

 

 

(99)

Proceeds from maturities of investments

 

 

18,000

 

 

 

-

 

Purchases of investments

 

 

-

 

 

 

(17,652)

Net cash provided by (used in) investing activities

 

 

17,560

 

 

 

(17,751)

 

 

 

 

 

 

 

 

 

Cash flows from financing activities:

 

 

 

 

 

 

 

 

Proceeds from issuance of common stock under employee plans

 

 

1,092

 

 

 

1,112

 

Shares repurchased for tax withholdings on vesting of restricted stock units

 

 

(1,460)

 

 

(1,216)

Issuance cost of common stock offering

 

 

(72)

 

 

-

 

Net cash used in financing activities

 

 

(440)

 

 

(104)

 

 

 

 

 

 

 

 

 

Effect of exchange rate changes on cash, cash equivalents and restricted cash

 

 

(16)

 

 

(21)

 

 

 

 

 

 

 

 

 

Net increase (decrease) in cash, cash equivalents and restricted cash

 

 

20,460

 

 

 

(12,610)

 

 

 

 

 

 

 

 

 

Cash, cash equivalents and restricted cash, beginning of period (1)

 

 

30,204

 

 

 

31,564

 

Cash, cash equivalents and restricted cash, end of period (1)

 

$50,664

 

 

$18,954

 

 

(1) Includes restricted cash in other assets.

 

See accompanying Notes to Condensed Consolidated Financial Statements (unaudited)

 

 
8

Table of Contents

 

AEHR TEST SYSTEMS

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(Unaudited)

 

1. ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES

 

Organization – Aehr Test Systems (the “Company”) was incorporated in California in May 1977 and develops and manufactures test and burn-in equipment used in the semiconductor industry.  The Company’s principal products are the FOX-XP, FOX-NP, and FOX-CP wafer contact and singulated die/module parallel test and burn-in systems, the WaferPak full wafer contactor, the DiePak carrier, the WaferPak aligner, the DiePak autoloader, and test fixtures.

 

Basis of PresentationThe unaudited Condensed Consolidated Financial Statements included in this quarterly report on Form 10-Q include the accounts of the Company and its wholly-owned subsidiaries and have been prepared in accordance with U.S. generally accepted accounting principles (“GAAP”) for interim financial reporting and the rules and regulations of the Securities and Exchange Commission (the “SEC”) for interim reporting. Accordingly, the unaudited Condensed Consolidated Financial Statements do not include certain information and footnote disclosures normally included in the annual consolidated financial statements. In the opinion of management, the unaudited Condensed Consolidated Financial Statements for the interim periods presented have been prepared on a basis consistent with the May 31, 2023 audited Consolidated Financial Statements and reflect all adjustments, consisting of normal recurring adjustments, necessary for a fair presentation of the condensed consolidated financial position and results of operations as of and for such periods indicated. These unaudited Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements contained in the Company's Annual Report on Form 10-K for the year ended May 31, 2023.

 

Principles of ConsolidationThe Company’s Condensed Consolidated Financial Statements include the accounts of the Company and its wholly-owned subsidiaries and all significant intercompany accounts and transactions have been eliminated upon consolidation.

 

Critical Accounting Policies and use of Estimates – The Company’s significant accounting policies are disclosed in the Company’s Annual Report on Form 10-K for the year ended May 31, 2023. There have been no significant changes in the Company’s significant accounting policies during the three and six months ended November 30, 2023. The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Significant estimates in these Condensed Consolidated Financial Statements include valuation of inventory at the lower of cost or net realizable value and warranty reserves. Actual results could differ from those estimates.

 

Reclassifications - Certain reclassifications have been made to the prior period Condensed Consolidated Financial Statements to conform to the current period presentation. The reclassifications had no impact on net income, total assets, total liabilities, or shareholders’ equity.

 

Concentration of Credit Risk – Financial instruments which subject the Company to concentrations of credit risk consist principally of cash and cash equivalents and accounts receivable. The Company performs credit evaluations of its customers’ financial condition and generally requires no collateral. The Company had revenues from individual customers in excess of 10% of total revenues as follows: 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

 

 

2023

 

 

2022

 

 

2023

 

 

2022

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Customer A

 

 

46.9%

 

 

79.0%

 

 

66.9%

 

 

74.0%

Customer B

 

 

34.6%

 

*

 

 

 

20.0%

 

*

 

Customer C

 

*

 

 

 

15.0%

 

*

 

 

 

18.0%

 

* Amount was less than 10% of total revenue

 

The Company had gross accounts receivable from individual customers in excess of 10% of gross accounts receivable as follows: 

 

 
9

Table of Contents

 

 

 

November 30,

 

 

May 31,

 

 

 

2023

 

 

2023

 

 

 

 

 

 

 

 

Customer A

 

 

29.2%

 

 

81.6%

Customer B

 

 

22.8%

 

 

16.5%

Customer D

 

 

22.6%

 

*

 

Customer E

 

 

14.7%

 

*

 

 

* Amount was less than 10% of total gross accounts receivable

 

Recent Accounting Pronouncements —The Company's accounts receivable are recorded at invoiced amounts less allowance for any credit losses. According to the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2016-13 that the Company adopted on June 1, 2023, the Company recognizes credit losses based on forward-looking current expected credit losses ("CECL"). The Company makes estimates of expected credit losses based upon its assessment of various factors, including the age of accounts receivable balances, credit quality of its customers, current economic conditions, reasonable and supportable forecasts of future economic conditions, and other factors that may affect its ability to collect from customers. The allowance for credit losses is recognized in the condensed consolidated statements of operations. The uncollectible accounts receivable are written off in the period in which a determination is made that all commercially reasonable means of recovering them have been exhausted. The total allowance for credit losses was $0 at both November 30, 2023 and May 31, 2023, and there was no write-off of accounts receivable for the periods presented. The adoption of ASU 2016-13 did not have a material impact on the Company’s Condensed Consolidated Financial Statements.

 

Although there are several other new accounting pronouncements issued by the FASB, the Company does not believe any of these accounting pronouncements had or will have a significant impact on its Condensed Consolidated Financial Statements.

 

2. FAIR VALUE OF FINANCIAL INSTRUMENTS

 

Fair Value of Measurements — The Company measures its cash equivalents and money market funds at fair value on a recurring basis. Fair value is an exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that is determined based on assumptions that market participants would use in pricing an asset or a liability. Assets and liabilities recorded at fair value are measured and classified in accordance with a three-tier fair value hierarchy based on the observability of the inputs available in the market used to measure fair value:

 

Level 1 — Observable inputs that reflect quoted prices (unadjusted) for identical assets or liabilities in active markets.

 

Level 2 — Inputs that are based upon quoted prices for similar instruments in active markets, quoted prices for identical or similar instruments in markets that are not active, and model-based valuation techniques for which all significant inputs are observable in the market or can be derived from observable market data. Where applicable, these models project future cash flows and discount the future amounts to a present value using market-based observable inputs including interest rate curves, foreign exchange rates, and credit ratings.

 

Level 3 — Unobservable inputs that are supported by little or no market activities.

 

The following table represents the Company’s assets measured at fair value on a recurring basis as of November 30, 2023, and the basis for that measurement:

 

 

 

Balance as of

 

 

 

 

 

 

 

(In thousands)

 

November 30, 2023

 

 

Level 1

 

 

Level 2

 

 

Level 3

 

Money market funds

 

$46,606

 

 

$46,606

 

 

$-

 

 

$-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Total

 

$46,606

 

 

$46,606

 

 

$-

 

 

$-

 

 

 
10

Table of Contents

 

The following table represents the Company’s assets measured at fair value on a recurring basis as of May 31, 2023, and the basis for that measurement:

 

 

 

Balance as of

 

 

 

 

 

 

 

(In thousands)

 

May 31, 2023

 

 

Level 1

 

 

Level 2

 

 

Level 3

 

Money market funds

 

$27,022

 

 

$27,022

 

 

$-

 

 

$-

 

U. S. treasury securities

 

 

17,853

 

 

 

17,853

 

 

 

 

 

 

 

 

 

Total

 

$44,875

 

 

$44,875

 

 

$-

 

 

$-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Included in money market funds as of November 30, 2023 and May 31, 2023 is $150,000 restricted cash representing a security deposit for the Company’s United States manufacturing and office space lease. There were no financial liabilities measured at fair value as of November 30, 2023 and May 31, 2023. There were no transfers between Level 1 and Level 2 fair value measurements during the three and six months ended November 30, 2023. The carrying amounts of financial instruments, including cash equivalents, accounts receivable, accounts payable and certain other accrued liabilities, approximate fair value due to their short maturities.

 

The following table summarizes the Company’s cash, cash equivalents and investments by security type as of November 30, 2023 and May 31, 2023, respectively:

 

 

 

 

 

Gross

 

 

 

Balances as of November 30, 2023

 

 

 

Unrealized

 

 

Estimated

 

(In thousands)

 

Cost

 

 

Loss

 

 

Fair Value

 

Cash

 

$4,058

 

 

$-

 

 

$4,058

 

Cash equivalents:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$46,456

 

 

$-

 

 

$46,456

 

Total cash and cash equivalents

 

$50,514

 

 

$-

 

 

$50,514

 

Long-term investments:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$150

 

 

$-

 

 

$150

 

Total cash, cash equivalents and investments

 

$50,664

 

 

$-

 

 

$50,664

 

 

 

 

 

 

Gross

 

 

 

Balances as of May 31, 2023

 

 

 

Unrealized

 

 

Estimated

 

(In thousands)

 

Cost

 

 

Loss

 

 

Fair Value

 

Cash

 

$3,182

 

 

$-

 

 

$3,182

 

Cash equivalents:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$26,872

 

 

$-

 

 

$26,872

 

Total cash and cash equivalents

 

$30,054

 

 

$-

 

 

$30,054

 

Short term investments:

 

 

 

 

 

 

 

 

 

 

 

 

U. S. treasury securities

 

$17,870

 

 

$(17)

 

$17,853

 

Long-term investments:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$150

 

 

$-

 

 

$150

 

Total cash, cash equivalents and investments

 

$48,074

 

 

$(17 )

 

$48,057

 

 

Long-term investments are included in other assets on the accompanying Condensed Consolidated Balance Sheets. Unrealized gains and temporary losses on investments classified as available-for-sale debt securities are included within accumulated other comprehensive loss, net of any related tax effect. Upon realization, those amounts are reclassified from accumulated other comprehensive loss to results of operations.

 

3. BALANCE SHEET INFORMATION

 

Inventories

 

 
11

Table of Contents

 

Inventories consisted of the following:

 

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

Raw materials and sub-assemblies

 

$20,717

 

 

$15,953

 

Work in process

 

 

11,926

 

 

 

5,764

 

Finished goods

 

 

1,174

 

 

 

2,191

 

 

 

$33,817

 

 

$23,908

 

 

Property and equipment

 

Property and equipment, net consisted of the following:

 

 

 

Useful life

 

November 30,

 

 

May 31,

 

(In thousands)

 

(in years)

 

2023

 

 

2023

 

Leasehold improvements

 

 *

 

$1,553

 

 

$1,310

 

Machinery and equipment

 

 3 - 6

 

 

5,782

 

 

 

5,445

 

Test equipment

 

 4 - 6

 

 

3,121

 

 

 

2,998

 

Furniture and fixtures

 

 2 - 6

 

 

702

 

 

 

706

 

 

 

 

 

 

11,158

 

 

 

10,459

 

Less: accumulated depreciation and amortization

 

 

 

 

(7,973)

 

 

(7,700)

 

 

 

 

$3,185

 

 

$2,759

 

 

* Lesser of estimated useful life or lease term.

 

Product warranties

 

The Company provides for the estimated cost of product warranties at the time revenues are recognized on the products shipped. While the Company engages in extensive product quality programs and processes, including actively monitoring and evaluating the quality of its component suppliers, the Company’s warranty obligation is affected by product failure rates, material usage and service delivery costs incurred in correcting a product failure. Should actual product failure rates, material usage or service delivery costs differ from the Company’s estimates, revisions to the estimated warranty liability would be required. The standard warranty period is one year for systems and ninety days for parts and service.

 

The following is a summary of changes in the Company's liability for product warranties during the three and six months ended November 30, 2023 and 2022:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Balance at the beginning of the period

 

$232

 

 

$424

 

 

$267

 

 

$410

 

Accruals for warranties issued during the period

 

 

162

 

 

 

5

 

 

 

227

 

 

 

123

 

Adjustments to previously existing warranty accruals

 

 

-

 

 

 

-

 

 

 

-

 

 

 

61

 

Consumption of reserves

 

 

(173)

 

 

(118)

 

 

(273)

 

 

(283)

Balance at the end of the period

 

$221

 

 

$311

 

 

$221

 

 

$311

 

 

Deferred revenue

 

Deferred revenue, short-term consisted of the following:

 

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

Customer deposits

 

$68

 

 

$2,690

 

Deferred revenue

 

 

79

 

 

 

132

 

 

 

$147

 

 

$2,822

 

 

 
12

Table of Contents

 

4. INCOME TAX  

 

The Company is subject to U.S federal and state and foreign income taxes as a corporation. The Company’s tax provision and the resulting effective tax rate for the interim period is determined based upon its estimated annual effective tax rate adjusted for the effect of discrete items arising in that quarter. The Company recorded a provision for income taxes of $20,000 and $36,000 for the three and six months ended November 30, 2023, respectively, which consisted primarily of foreign withholding taxes and foreign income taxes. The Company recorded a provision for income taxes of $18,000 and $32,000 for the three and six months ended November 30, 2022, respectively, which consisted primarily of foreign withholding taxes and foreign income taxes.

 

Income taxes have been provided using the liability method whereby deferred tax assets and liabilities are determined based on differences between financial reporting and tax bases of assets and liabilities and net operating loss and tax credit carryforwards measured using the enacted tax rates and laws that will be in effect when the differences are expected to reverse, or the carryforwards are utilized. Valuation allowances are established when it is determined that it is more likely than not that such assets will not be realized.

 

Since fiscal 2009, a full valuation allowance was established against all deferred tax assets, as management determined that it was more likely than not that certain deferred tax assets would not be realized. The Company continues to reassess the need for a valuation allowance on a quarterly basis.

 

The Company accounts for uncertain tax positions consistent with authoritative guidance. The guidance prescribes a “more likely than not” recognition threshold and measurement attribute for the financial statement recognition and measurement of a tax position taken or expected to be taken in a tax return. The Company recognizes interest and penalties related to unrecognized tax benefits as a component of income taxes.

 

5. BORROWING ARRANGEMENTS

 

On January 16, 2020, the Company entered into a Loan and Security Agreement (the “Loan Agreement”) with Silicon Valley Bank (“SVB”). Pursuant to the Loan Agreement, the Company may borrow up to (a) the lesser of (i) the revolving line of $4.0 million or (ii) the amount available under the borrowing base under a revolving line of credit which is collateralized by all the Company’s assets except intellectual property. The borrowing base is 80% of eligible accounts, as determined by SVB from the Company’s most recent borrowing base statement; provided, however, SVB has the right to decrease the foregoing percentage in its good faith business judgment to mitigate the impact of certain events or conditions, which may adversely affect the collateral or its value. Subject to an event of default, the principal amount outstanding under the revolving line of credit will accrue interest at a floating per annum rate equal to the greater of (a) the prime rate plus an additional percentage of up to 1%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 4.75%. Interest is payable monthly on the last calendar day of each month and the outstanding principal amount, the unpaid interest and all other obligations are due on the maturity date, which is 364 days from the effective date of January 13, 2020.

 

On January 14, 2021, the Company entered into the First Amendment to Loan and Security Agreement (the “Amendment”) with SVB. The Amendment, among other things, extended the Revolving Line Maturity Date to July 14, 2021; provided, however, that if the Company achieved specified operating metrics on a consolidated basis on or prior to May 31, 2021 the Amended Revolving Line Maturity Date would be extended to January 13, 2022.

 

On January 11, 2022, the Company entered into the Second Amendment to the Loan and Security Agreement (the “Second Amendment”) with SVB. The Second Amendment, among other things, (A) increased the available amount of the line up to the lesser of (i) $10 million or (ii) the available amount under the borrowing base, under a revolving line of credit, (B) allowed for borrowing up to $3 million of the available balance based upon eligible customer purchase orders, (C) reduced the interest rate for account advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.0%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.25%, reduces the interest rate for purchase order advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.5%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.75%, and (D) extended the maturity date to January 13, 2023.

 

On January 10, 2023, the Company entered into the Third Amendment to the Loan and Security Agreement (the “Third Amendment”) with SVB. The Third Amendment, among other things, extends the Revolving Line Maturity Date to January 13, 2024, provided, however, that (i) if the Company submits a fiscal year 2024 plan of record that is generally acceptable to SVB, and (ii) the minimum net liquidity at the end of November 30, 2023 is at least $20.0 million, the Amended Revolving Line Maturity Date would be extended to January 13, 2025. The Company terminated the revolving line on January 4, 2024.

 

As of November 30, 2023, the Company had not drawn against the credit facility and was in compliance with all covenants related to obligations to meet reporting requirements. The balance available to borrow under the line as of November 30, 2023 was $4,212,000.  There are no financial covenants in the agreement.

 

 
13

Table of Contents

 

6. COMMITMENTS AND CONTINGENCIES

 

Purchase Obligations

 

The Company has purchase obligations to certain suppliers. In some cases, the products the Company purchases are unique and have provisions against cancellation of the order.

 

Contingencies

 

The Company may, from time to time, be involved in legal proceedings arising in the ordinary course of business. While there can be no assurances as to the ultimate outcome of any litigation involving the Company, management does not believe any pending legal proceedings will result in judgment or settlement that will have a material adverse effect on the Company’s consolidated financial position, results of operations or cash flows.

 

In the normal course of business to facilitate sales of its products, the Company indemnifies other parties, including customers, with respect to certain matters, for example, including against losses arising from a breach of representations or covenants, or from intellectual property infringement or other claims. These agreements may limit the time within which an indemnification claim can be made and the amount of the claim. In addition, the Company has entered into indemnification agreements with its officers and directors, and the Company’s bylaws contain similar indemnification obligations to the Company’s agents.

 

It is not possible to determine the maximum potential amount under these indemnification agreements due to the limited history of prior indemnification claims and the unique facts and circumstances involved in each particular agreement. To date, payments made by the Company under these agreements have not had a material impact on the Company’s operating results, financial position or cash flow.

 

7. SHAREHOLDERS’ EQUITY

 

On August 25, 2021, the Board of Directors authorized management to take actions necessary for the execution of a $75 million shelf registration. A Registration Statement on Form S-3 was filed with the SEC on September 3, 2021. A Prospectus Supplement for an "At the Market" ("ATM") sale of $25 million of common stock was subsequently filed on September 17, 2021. On October 8, 2021, the Company executed the ATM offering by selling 1,696,729 shares of common stock at an average selling price of $14.73 per share. The gross proceeds to the Company were $25.0 million, before commission fees of $0.7 million and offering expenses of $0.3 million. Another Prospectus Supplement for an ATM sale of $25 million of common stock was subsequently filed on February 8, 2023. The Company partially executed the ATM offering by selling 208,917 shares of common stock at an average selling price of $34.78 per share. The gross proceeds to the Company were $7.3 million, before commissions of $0.2 million and offering expenses of $0.2 million. As of November 30, 2023, the remaining amount of the ATM offering was $17.7 million.

 

8. ACCUMULATED OTHER COMPREHENSIVE LOSS

 

Changes in the components of accumulated other comprehensive loss, net of tax, were as follows (in thousands):

 

 

 

Cumulative

 

 

Unrealized loss

 

 

 

(In thousands)

 

translation adjustment

 

 

on investments, net

 

 

Total

 

Balance as of May 31, 2023

 

$(138)

 

$(17)

 

$(155)

Other comprehensive income (loss) before reclassifications

 

 

4

 

 

 

17

 

 

 

21

 

Balance as of November 30, 2023

 

$(134)

 

$-

 

 

$(134)

 

9. REVENUE

 

Revenue recognition

 

The Company recognizes revenue when promised goods or services are transferred to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services by following a five-step process: (1) identify the contract with a customer, (2) identify the performance obligations in the contract, (3) determine the transaction price, (4) allocate the transaction price, and (5) recognize revenue when or as the Company satisfies a performance obligation, as further described below.

 

 
14

Table of Contents

 

Performance obligations include sales of systems, contactors, spare parts, and services, as well as installation and training services included in customer contracts. A contract’s transaction price is allocated to each distinct performance obligation. In determining the transaction price, the Company evaluates whether the price is subject to refund or adjustment to determine the net consideration to which the Company expects to be entitled. The Company generally does not grant return privileges, except for defective products during the warranty period.

 

For contracts that contain multiple performance obligations, the Company allocates the transaction price to the performance obligations on a relative standalone selling price basis. Standalone selling prices are based on multiple factors including, but not limited to historical discounting trends for products and services and pricing practices in different geographies. Revenue for systems and spares is recognized at a point in time, which is generally upon shipment or delivery and evidenced by transfer of title and risk of loss to the customer. Revenue from services is recognized over time as the customer receives the benefit over the contractual period of generally one year or less.

 

The Company has elected the practical expedient to not assess whether a contract has a significant financing component as the Company’s standard payment terms are less than one year. The Company sells its products primarily through a direct sales force. In certain international markets, the Company sells its products through independent distributors.

 

Disaggregation of revenue

 

The following presents information about the Company’s net revenues in different geographic areas, which are based upon ship-to locations, and by product category:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Asia

 

$18,922

 

 

$12,216

 

 

$38,153

 

 

$20,024

 

Europe

 

 

1,833

 

 

 

44

 

 

 

2,437

 

 

 

44

 

United States

 

 

676

 

 

 

2,555

 

 

 

1,465

 

 

 

5,418

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Systems

 

$10,685

 

 

$7,400

 

 

$18,779

 

 

$16,494

 

Contactors

 

 

9,152

 

 

 

6,607

 

 

 

20,415

 

 

 

7,101

 

Services

 

 

1,594

 

 

 

808

 

 

 

2,861

 

 

 

1,891

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

With the exception of the amount of service contracts and extended warranties, the Company’s product net revenues are recognized at a point in time when control transfers to the customer. The following presents net revenues based on timing of recognition:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Timing of revenue recognition:

 

 

 

 

 

 

 

 

 

 

 

 

Products and services transferred at a point in time

 

$20,974

 

 

$14,427

 

 

$40,985

 

 

$24,681

 

Services transferred over time

 

 

457

 

 

 

388

 

 

 

1,070

 

 

 

805

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

Contract balances   

 

Accounts receivable are recognized in the period the Company delivers goods or provides services and when the Company’s right to consideration is unconditional. Contract assets include unbilled receivables which represent revenues that are earned in advance of scheduled billings to customers. These amounts are primarily related to product sales where transfer of control has occurred but the Company has not yet invoiced. As of November 30, 2023, unbilled receivables were $2,051,000 and were included in prepaid expenses and other current assets on the accompanying Condensed Consolidated Balance Sheets. Contract assets were not significant as of May 31, 2023.

 

 
15

Table of Contents

 

Contract liabilities include payments received in advance of performance under a contract and are satisfied as the associated revenue is recognized. Contract liabilities as of November 30, 2023 and May 31, 2023 were $151,000 and $2,853,000, respectively,  and were included in deferred revenue, short-term and deferred revenue, long-term on the accompanying Condensed Consolidated Balance Sheets. During the three and six months ended November 30, 2023, the Company recognized $2,101,000 and $2,771,000 in revenue, respectively, which were included in contract liabilities as of May 31, 2023.

 

Remaining performance obligations

 

On November 30, 2023, the Company had $83,000 of remaining performance obligations, which were comprised of service contracts and extended warranty contracts not yet delivered. The Company expects to recognize approximately 63.5% of its remaining performance obligations as revenue in the remainder of fiscal 2024, and an additional 36.5% in fiscal 2025 and thereafter. The foregoing excludes the value of other remaining performance obligations, as they have original durations of one year or less and excludes information about variable consideration allocated entirely to a wholly unsatisfied performance obligation.

 

Costs to obtain or fulfill a contract

 

The Company generally expenses sales commissions when incurred as a component of selling, general and administrative expenses as the amortization period is typically less than one year. Additionally, the majority of the Company’s cost of fulfillment as a manufacturer of products is classified as inventory and fixed assets, which are accounted for under the respective guidance for those asset types. Other costs of contract fulfillment are immaterial due to the nature of the Company’s products and their respective manufacturing process.

 

10. STOCK-BASED COMPENSATION

 

Stock-based compensation expense consists of expenses for stock options, restricted stock units (“RSUs”), performance RSUs (“PRSUs”), restricted shares, performance restricted shares and employee stock purchase plan (“ESPP”), purchase rights. Stock-based compensation expense for stock options and ESPP purchase rights is measured at each grant date, based on the fair value of the award using the Black-Scholes option valuation model, and is recognized as expense over the employee’s requisite service period. This model was developed for use in estimating the value of publicly traded options that have no vesting restrictions and are fully transferable. The Company’s employee stock options have characteristics significantly different from those of publicly traded options. For RSUs, PRSUs, restricted shares and performance restricted shares, stock-based compensation expense is based on the fair value of the Company’s common stock at the grant date and is recognized as expense over the employee’s requisite service period. All of the Company’s stock-based compensation is accounted for as equity instruments. See Note 13 in the Company’s Annual Report on Form 10-K for fiscal 2023 filed on August 28, 2023 for further information regarding the 2016 Equity Incentive Plan and the ESPP. On October 23, 2023, the shareholders of the Company approved the 2023 Equity Incentive Plan and on October 27, 2023, the Company filed the Form S-8 to issue awards during this quarter onwards from a pool of 1,500,000 shares. Full value awards, which are equity awards other than options, stock appreciation rights or other awards that are based solely on an increase in value of the shares following the grant date, when granted or forfeited will be counted as the same number of common stock shares added or deducted to the remaining available shares for issuance under the 2023 Equity Incentive Plan. 

 

The following table summarizes the stock-based compensation expense for the three and six months ended November 30, 2023 and 2022:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Cost of sales

 

$101

 

 

$85

 

 

$164

 

 

$177

 

Research and development

 

 

139

 

 

 

201

 

 

 

292

 

 

 

355

 

Selling, general and administrative

 

 

398

 

 

 

507

 

 

 

704

 

 

 

971

 

 

 

$638

 

 

$793

 

 

$1,160

 

 

$1,503

 

 

There was $170,000 and $120,000 in stock-based compensation expense capitalized as part of inventory as of November 30, 2023 and as of May 31, 2023, respectively.

 

 

 
16

Table of Contents

 

The Company’s nonvested RSU, PRSU and restricted shares activities during the three and six months ended November 30, 2023, were as follows:

 

 

 

 

 

 

Weighted

 

 

 

 

 

Average Grant

 

 

 

 

 

Date Fair

 

 

 

Shares

 

 

Value

 

 

 

(in thousands)

 

 

Per Share

 

Unvested, May 31, 2023

 

 

345

 

 

$6.40

 

Granted

 

 

-

 

 

 

 

 

Vested

 

 

(77)

 

 

7.16

 

Forfeited

 

 

(52)

 

 

5.79

 

Unvested, August 31, 2023

 

 

216

 

 

$6.27

 

Granted

 

 

203

 

 

 

31.51

 

Vested

 

 

(28)

 

 

8.02

 

Forfeited

 

 

(1)

 

 

29.79

 

Unvested, November 30, 2023

 

 

390

 

 

$19.28

 

 

Under the ESPP, the Company issued 24,000 and 109,000 shares, respectively, during the six months ended November 30, 2023 and 2022. As of November 30, 2023 and 2022, there were 373,000 and 499,000 ESPP shares available for issuance, respectively.

 

11. NET INCOME PER SHARE

 

Basic net income per share is determined using the weighted average number of common shares outstanding during the period. Diluted net income per share is determined using the weighted average number of common shares and potential common shares (representing the hypothetical number of incremental shares issuable under the assumed exercise of outstanding stock options, and vesting of outstanding RSUs and ESPP shares) during the period using the treasury stock method. The calculation of dilutive shares outstanding excludes securities that would have an antidilutive effect on net income per share.

 

The following table presents the computation of basic and diluted net income per share:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands, except per share data)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Numerator:

 

 

 

 

 

 

 

 

 

 

 

 

Net income

 

$6,089

 

 

$3,725

 

 

$10,763

 

 

$4,314

 

Denominator:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic weighted average shares outstanding

 

 

28,801

 

 

 

27,579

 

 

 

28,725

 

 

 

27,410

 

Dilutive effect of common equivalent shares outstanding

 

 

968

 

 

 

1,501

 

 

 

975

 

 

 

1,524

 

Diluted weighted average shares outstanding

 

 

29,769

 

 

 

29,080

 

 

 

29,700

 

 

 

28,934

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net income per share - Basic

 

$0.21

 

 

$0.14

 

 

$0.37

 

 

$0.16

 

Net income per share - Diluted

 

$0.20

 

 

$0.13

 

 

$0.36

 

 

$0.15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Antidilutive employee share-based award shares, excluded

 

 

9

 

 

 

14

 

 

 

4

 

 

 

14

 

 

 
17

Table of Contents

 

12. SEGMENT AND CONCENTRATION INFORMATION

 

Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker, or group, in deciding how to allocate resources and in assessing performance.

 

The Company’s chief operating decision maker, the chief executive officer, reviews discrete financial information presented on a consolidated basis for purposes of regularly making operating decisions and assessing financial performance. Accordingly, the Company considers itself to be in one operating segment.

 

Long-lived assets, net by geographic area are as follows:

 

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

United States

 

$3,121

 

 

$2,713

 

International

 

 

64

 

 

 

46

 

Total long-lived assets, net

 

$3,185

 

 

$2,759

 

 

 
18

Table of Contents

 

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

 

The following discussion of our financial condition and results of operations contains forward-looking statements within the meaning of Section 27A of the Securities Act of 1933 and Section 21E of the Securities Exchange Act of 1934. All statements other than statements of historical fact may be forward-looking statements. In some cases, you can identify forward-looking statements by terminology such as “may,” “could,” “should,” “expect,” “plan,” “anticipate,” “believe,” “estimate,” “predict,” “potential”, “target” or “continue,” the negative effect of terms like these or other similar expressions. Any statement concerning future financial performance (including future revenues, earnings or growth rates), ongoing business strategies or prospects, and possible actions taken by us or our subsidiaries, which may be provided by us are also forward-looking statements. These forward-looking statements are only predictions. Forward-looking statements are based on current expectations and projections about future events and are inherently subject to a variety of risks and uncertainties, many of which are beyond our control, which could cause actual results to differ materially from those anticipated or projected. All forward-looking statements included in this document are based on information available to us on the date of filing and we further caution investors that our business and financial performance are subject to substantial risks and uncertainties. We assume no obligation to update any such forward-looking statements. In evaluating these statements, you should specifically consider various factors, including the risk factors set forth in Item 1. “Business” and Item 7. “Management’s Discussion and Analysis of Financial Condition and Results of Operations” in our Annual Report on Form 10-K for the year ended May 31, 2023, filed with the Securities and Exchange Commission on August 28, 2023. All references to “we”, “us”, “our”, “Aehr Test”, “Aehr Test Systems” or the “Company” refer to Aehr Test Systems.  

 

Overview

 

We are a leading provider of test solutions for testing, burning-in, and stabilizing semiconductor devices in wafer level, singulated die, and package part form, and have installed thousands of systems worldwide. Increasing quality, reliability, safety, and security needs of semiconductors used across multiple applications, including electric vehicles, electric vehicle charging infrastructure, solar and wind power, computing, data and telecommunications infrastructure, and solid-state memory and storage, are driving additional test requirements, incremental capacity needs, and new opportunities for our test products and solutions.

 

We have developed and introduced several innovative products including the FOX-P family of test and burn-in systems and FOX WaferPak Aligner, FOX WaferPak Contactor, FOX DiePak Carrier and FOX DiePak Loader. The FOX-XP and FOX-NP systems are full wafer contact and singulated die/module test and burn-in systems that can test, burn-in, and stabilize a wide range of devices such as leading-edge silicon carbide-based and other power semiconductors, 2D and 3D sensors used in mobile phones, tablets, and other computing devices, memory semiconductors, processors, microcontrollers, systems-on-a-chip, and photonics and integrated optical devices. The FOX-CP system is a low-cost single-wafer compact test solution for logic, memory and photonic devices and the newest addition to the FOX-P product family. The FOX WaferPak Contactor contains a unique full wafer contactor capable of testing wafers up to 300mm that enables Integrated Circuit manufacturers to perform test, burn-in, and stabilization of full wafers on the FOX-P systems. The FOX DiePak Carrier allows testing, burning in, and stabilization of singulated bare die and modules up to 1,024 devices in parallel per DiePak on the FOX-NP and FOX-XP systems up to nine DiePaks at a time.

 

Our net revenue consists primarily of sales of FOX-P systems, WaferPak Aligners and DiePak Loaders, WaferPak contactors, DiePak carriers, test fixtures, upgrades and spare parts, service contracts revenues, and non-recurring engineering charges. Our selling arrangements may include contractual customer acceptance provisions, which are mostly deemed perfunctory or inconsequential, and installation of the product occurs after shipment, transfer of title and risk of loss.

 

Critical Accounting Estimates

 

Our discussion and analysis of our financial condition and results of operations are based upon our Condensed Consolidated Financial Statements, which have been prepared in accordance with accounting principles generally accepted in the United States of America. The preparation of these Condensed Consolidated Financial Statements requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues and expenses, and related disclosure of contingent assets and liabilities. On an ongoing basis, we evaluate our estimates, assumptions and judgments, including those related to customer programs and incentives, product returns, credit losses, inventories, income taxes, warranty obligations, and long-term service contracts. Our estimates are derived from historical experience and on various other assumptions that are believed to be reasonable under the circumstances. Those results form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates under different assumptions or conditions. For a discussion of the critical accounting policies, see “Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations – Critical Accounting Policies and Estimates” in our Annual Report on Form 10-K for the fiscal year ended May 31, 2023.

 

There have been no material changes to our critical accounting policies and estimates during the three and six months ended November 30, 2023 compared to those discussed in our Annual Report on Form 10-K for the fiscal year ended May 31, 2023.

 

 
19

Table of Contents

 

Results of Operations

 

Discussion of Results of Operations for the Three and Six Months Ended November 30, 2023 compared to the Three and Six Months Ended November 30, 2022

 

Revenues

 

Revenue by Category

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Products

 

$19,837

 

 

$14,007

 

 

 

42%

 

$39,194

 

 

$23,595

 

 

 

66%

Services

 

 

1,594

 

 

 

808

 

 

 

97%

 

 

2,861

 

 

 

1,891

 

 

 

51%

Total revenues

 

$21,431

 

 

$14,815

 

 

 

45%

 

$42,055

 

 

$25,486

 

 

 

65%

Products as a percentage of total revenues

 

 

92.6%

 

 

94.5%

 

 

 

 

 

 

93.2%

 

 

92.6%

 

 

 

 

Services as a percentage of total revenues

 

 

7.4%

 

 

5.5%

 

 

 

 

 

 

6.8%

 

 

7.4%

 

 

 

 

 

Revenue increased to $21.4 million for the three months ended November 30, 2023 from $14.8 million for the three months ended November 30, 2022, driven by growth in all our revenue streams. Our systems revenue increased by $3.3 million, our contactors revenue increased by $2.5 million, and our services revenue increased by $0.8 million.

 

Revenue increased to $42.1 million for the six months ended November 30, 2023 from $25.5 million for the six months ended November 30, 2022, also driven by growth in all our revenue streams.  Our contactors revenue increased by $13.3 million, our systems revenue increased by $2.3 million, and our services revenue increased by $1.0 million.

 

Revenue by Geography

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Asia

 

$18,922

 

 

$12,216

 

 

 

55%

 

$38,153

 

 

$20,024

 

 

 

91%

Europe

 

 

1,833

 

 

 

44

 

 

N.M.

 

 

 

2,437

 

 

 

44

 

 

N.M

 

United States

 

$676

 

 

$2,555

 

 

(74

%)

 

$1,465

 

 

$5,418

 

 

(73

%)

Total revenues

 

$21,431

 

 

$14,815

 

 

 

45%

 

$42,055

 

 

$25,486

 

 

 

65%

Asia as a percentage of total revenues

 

 

88.3%

 

 

82.5%

 

 

 

 

 

 

90.7%

 

 

78.6%

 

 

 

 

Europe as a percentage of total revenues

 

 

8.6%

 

 

0.3%

 

 

 

 

 

 

5.8%

 

 

0.2%

 

 

 

 

United States as a percentage of total revenues

 

 

3.1%

 

 

17.2%

 

 

 

 

 

 

3.5%

 

 

21.2%

 

 

 

 

N.M.-Not meaningful

 

On a geographic basis, revenues represent products that were shipped to or services that were performed at our customer locations. For the three and six months ended November 30, 2023, international revenues significantly increased, compared to the same periods in the prior year, primarily as a result of the shipments to our customers in Asia and Europe, partially offset by the decline in net revenue from a customer in the United States.

 

Gross Margin

 

Gross Profit by Category

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Products

 

$10,130

 

 

$7,510

 

 

 

35%

 

$19,568

 

 

$11,584

 

 

 

69%

Services

 

 

828

 

 

 

401

 

 

 

106%

 

 

1,371

 

 

 

808

 

 

 

70%

Gross profit

 

$10,958

 

 

$7,911

 

 

 

39%

 

$20,939

 

 

$12,392

 

 

 

69%

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Gross Margin by Category

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

 

51.1%

 

 

53.6%

 

 

 

 

 

 

49.9%

 

 

49.1%

 

 

 

 

Services

 

 

51.9%

 

 

49.6%

 

 

 

 

 

 

47.9%

 

 

42.7%

 

 

 

 

Gross margin

 

 

51.1%

 

 

53.4%

 

 

 

 

 

 

49.8%

 

 

48.6%

 

 

 

 

 

Gross profit increased to $11.0 million for the three months ended November 30, 2023 from $7.9 million for the three months ended November 30, 2022. Gross margin decreased to 51.1% for the three months ended November 30, 2023 from 53.4% for the three months ended November 30, 2022. The decrease in gross margin of 2.3 percentage points was primarily due to an increase in inventory reserve, and higher warranty expenses and logistics costs.

 

 
20

Table of Contents

 

Gross profit increased to $20.9 million for the six months ended November 30, 2023 from $12.4 million for the six months ended November 30, 2022. Gross margin increased to 49.8% for the six months ended November 30, 2023 from 48.6% for the six months ended November 30, 2022. The increase in gross margin of 1.2 percentage points was primarily due to the increased sales of higher margin contactor products, as well as manufacturing efficiencies due to higher production rates.

 

Research and Development

 

 

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Research and development

 

$1,972

 

 

$1,551

 

 

 

27%

 

$4,429

 

 

$3,049

 

 

 

45%

As a percentage of total revenues

 

 

9.2%

 

 

10.5%

 

 

 

 

 

 

10.5%

 

 

12.0%

 

 

 

 

 

Research and development expenses consist primarily of compensation and benefits for product development personnel, outside development service costs, travel expenses, facilities cost allocations, and stock-based compensation charges. Research and development expenses increased to $2.0 million for the three months ended November 30, 2023, compared to $1.6 million for the three months ended November 30, 2022. The increase of $0.4 million was primarily driven by higher employment costs due to an increase in headcount. We anticipate our expenses in research and development will fluctuate in absolute dollars from period to period as a result of the timing of product development projects and revenue generating activity requirements.

 

Research and development expenses increased to $4.4 million for the six months ended November 30, 2023, compared to $3.0 million for the six months ended November 30, 2022. The increase of $1.4 million was primarily due to non-recurring engineering services charges of $0.6 million and higher employment related costs of $0.5 million.

 

Selling, General and Administrative

 

 

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Selling, general and administrative

 

$3,518

 

 

$2,875

 

 

 

22%

 

$6,927

 

 

$5,400

 

 

 

28%

As a percentage of total revenues

 

 

16.4%

 

 

19.4%

 

 

 

 

 

 

16.5%

 

 

21.2%

 

 

 

 

 

Selling, general and administrative expenses consist primarily of compensation and benefits for sales, marketing and general and administrative personnel, legal and accounting service costs, marketing communications costs, travel expenses, facilities cost allocations, and stock-based compensation charges. Selling, general and administrative expenses increased to $3.5 million for the three months ended November 30, 2023, compared to $2.9 million for the three months ended November 30, 2022. The increase of $0.6 million was primarily driven by higher employment cost due to an increase in headcount.  

 

Selling, general and administrative expenses increased to $6.9 million for the six months ended November 30, 2023, compared to $5.4 million for the six months ended November 30, 2022. The increase of $1.5 million was primarily due to an increase in employment cost of $1.3 million and an increase in audit and legal service fees of $0.3 million.

 

Interest and Other Income (Expense), Net

 

 

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Interest income

 

$631

 

 

$263

 

 

 

140%

 

$1,212

 

 

$384

 

 

 

216%

Other income (expense), net

 

 

10

 

 

 

(5)

 

 

300%

 

 

4

 

 

 

19

 

 

(79

%)

Interest and other income (expense), net

 

$641

 

 

$258

 

 

 

148%

 

$1,216

 

 

$403

 

 

 

202%

 

Interest and other income (expense), net, primarily consists of interest income and foreign currency transaction exchange gains and losses. Interest and other income (expense), net, increased for the three and six months ended November 30, 2023, compared to the same periods in the prior year, primarily driven by higher interest income earned due to higher yields from our investments in money market funds.

 

 
21

Table of Contents

 

Provision for Income Taxes 

 

 

 

Three Months Ended November 30,

 

 

Percent

 

 

Six Months Ended November 30,

 

 

Percent

 

(Dollars in thousands)

 

2023

 

 

2022

 

 

Change

 

 

2023

 

 

2022

 

 

Change

 

Provision for income taxes

 

$20

 

 

$18

 

 

 

11%

 

$36

 

 

$32

 

 

 

13%

 

Income tax expense was not significant due to the available net operating losses and research and development credits carryforwards.

 

Liquidity and Capital Resources

 

Cash, cash equivalents, and restricted cash were $50.7 million as of November 30, 2023, compared to $19.0 million as of November 30, 2022. We believe that our existing cash resources and anticipated funds from operations will satisfy our cash requirements to fund our operating activities, capital expenditures and other obligations for the next twelve months.

 

 

 

Six Months Ended November 30,

 

 

 

(In thousands)

 

2023

 

 

2022

 

 

Change

 

Operating activities

 

$3,356

 

 

$5,266

 

 

$(1,910)

Investing activities

 

 

17,560

 

 

 

(17,751)

 

 

35,311

 

Financing activities

 

 

(440)

 

 

(104)

 

 

(336)

Effect of exchange rate changes on cash, cash equivalents and restricted cash

 

 

(16)

 

 

(21)

 

 

5

 

Net increase in cash, cash equivalents and restricted cash

 

$20,460

 

 

$(12,610)

 

$33,070

 

 

Net Cash Flows Provided by Operating Activities

 

Cash flow from operating activities during the six months ended November 30, 2023 mostly consisted of net income, adjusted for certain non-cash items which primarily consisted of depreciation and amortization, share-based compensation expense and amortization of operating lease right-of-use assets. The $1.9 million decrease in cash flows from operating activities for the six months ended November 30, 2023, compared to the six months ended November 30, 2022, was driven primarily by an increase in cash used in inventory production and vendor payments due to anticipated customer demand, and a decrease in cash provided by deferred revenue due to timing of customer deposits and revenue recognition, partially offset by an increase in cash provided by collection of accounts receivable and a higher net income.

 

Net Cash Flows Provided by (Used in) Investing Activities

 

Net cash provided by investing activities increased by $35.3 million for the six months ended November 30, 2023 compared to the six months ended November 30, 2022. The increase was primarily due to the maturity of our short-term investments, which were purchased in the six months ended November 30, 2022.

 

Net Cash Flows Used in Financing Activities

 

Net cash used in financing activities increased by $0.3 million for the six months ended November 30, 2023, compared to the six months ended November 30, 2022. For the six months ended November 30, 2023, net cash used in financing activities primarily consisted of cash used to repurchase shares of our common stock on vesting of RSUs, partially offset by the proceeds from issuance of common stock under our employee plans.

 

Off-Balance Sheet Agreements 

 

We do not have any off-balance sheet arrangements, investments in special purpose entities or undisclosed borrowings or debt. There have been no material changes in the composition, magnitude or other key characteristics of our contractual obligations or other commitments as disclosed in the Company's Annual Report on Form 10-K for the year ended May 31, 2023.  

 

 
22

Table of Contents

 

Item 3. Quantitative and Qualitative Disclosures about Market Risk

 

As a smaller reporting company, we are not required to provide the information under this item.

 

Item 4. Controls and Procedures

 

Evaluation of Disclosure Controls and Procedures

 

Our management, with the participation of our chief executive officer, or CEO, and chief financial officer, or CFO, evaluated the effectiveness of our "disclosure controls and procedures" as defined in Exchange Act Rules 13a-15(e) and 15d-15(e) as of November 30, 2023, in connection with the filing of this Quarterly Report on Form 10-Q. Based on that evaluation as of November 30, 2023, our CEO and CFO concluded that our disclosure controls and procedures were effective to ensure that information we are required to disclose in reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in rules and forms of the SEC and accumulated and communicated to our management as appropriate to allow timely decisions regarding required disclosures.    

 

Changes in Internal Control over Financial Reporting

 

There were no changes in the Company's internal control over financial reporting during the three and six months ended November 30, 2023, that have materially affected, or are reasonably likely to materially affect, the Company's internal control over financial reporting. 

 

 
23

Table of Contents

 

PART II — OTHER INFORMATION

 

Item 1. Legal Proceedings

 

From time to time, we are subject to various claims and legal proceedings that arise in the ordinary course of business. We accrue for losses related to litigation when a potential loss is probable and the loss can be reasonably estimated in accordance with FASB requirements. During the reported period, we were not a party to any material legal proceedings, thus no loss was probable and no amount was accrued as of November 30, 2023.

 

Item 1A. Risk Factors

 

Item 1A, “Risk Factors,” on pages 10 through 16 of the Company’s Annual Report on Form 10-K for the year ended May 31, 2023, provides information on the significant risks associated with our business. There have been no subsequent material changes to these risks.  

 

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

 

None. 

 

Item 3. Defaults Upon Senior Securities

 

None.  

 

Item 4. Mine Safety Disclosures

 

Not Applicable. 

 

Item 5. Other Information

 

None.

 

 
24

Table of Contents

 

Item 6. Exhibits

 

Exhibit

Number 

 

Description 

 

 

 

3.1(1)

 

Restated Article of Incorporation of Registrant

 

 

 

3.2(2)

 

Amended and Restated Bylaws of the Registrant

 

 

 

4.1(3)

 

Form of Common Stock certificate

 

 

 

31.01

 

Certification of the principal executive officer pursuant to Exchange Act Rules 13a-14(a) and 15d-14(a), as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.†

 

 

 

31.02

 

Certification of the principal financial and accounting officer pursuant to Exchange Act Rules 13a-14(a) and 15d-14(a), as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.†

 

 

 

32.01

 

Certification pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.**

 

 

 

32.02

 

Certification pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.**

 

 

 

101.INS 

 

XBRL Instance Document.†

 

 

 

101.SCH    

 

XBRL Taxonomy Extension Schema Document.†

 

 

 

101.CAL

 

XBRL Taxonomy Extension Calculation Linkbase Document.†

 

 

 

101.DEF

 

XBRL Taxonomy Extension Definition Linkbase Document.†

 

 

 

101.LAB 

 

XBRL Taxonomy Extension Label Linkbase Document.†

 

 

 

101.PRE 

 

XBRL Taxonomy Extension Presentation Linkbase Document.† 

 

1

 Incorporated by reference to the same-numbered exhibit previously filed with the Company’s Registration Statement on Form S-1 filed June 11, 1997 (File No. 333-28987).

2

Incorporated by reference to Exhibit 3.1 previously filed with the Company’s Current Report on Form 8-K filed September 9, 2020 (File No. 000-22893).

3

Incorporated by reference to the same-numbered exhibit previously filed with Amendment No.1 to the Company’s Registration Statement on Form S-1 filed July 17, 1997 (File No. 333-28987).

Filed herewith.

 **

Furnished, and not filed.

 

 
25

Table of Contents

 

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.

 

 

AEHR TEST SYSTEMS 

 

 

 

 

 

Date:  January 12, 2024

By:

/s/ GAYN ERICKSON

 

 

 

Gayn Erickson

 

 

 

President and Chief Executive Officer

 

 

 

(Principal Executive Officer)

 

 

Date: January 12, 2024

By:

/s/ CHRIS P. SIU

 

 

 

Chris P. Siu

 

 

 

Executive Vice President of Finance,

Chief Financial Officer and Secretary

 

 

 

(Principal Financial and Accounting Officer)

 

 

 
26
EX-31.01 2 aehr_ex3101.htm CERTIFICATION aehr_ex3101.htm

EXHIBIT 31.01

 

CERTIFICATIONS

 

 I, Gayn Erickson, certify that:

 

1. I have reviewed this quarterly report on Form 10-Q of Aehr Test Systems;

 

2. Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4. The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

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

 

 

By:

 /s/ GAYN ERICKSON

 

 

 

Gayn Erickson

 

 

 

President and Chief Executive Officer 

 

 

 

(Principal Executive Officer) 

 

 

Date: January12, 2024

 

EX-31.02 3 aehr_ex3102.htm CERTIFICATION aehr_ex3102.htm

EXHIBIT 31.02

 

CERTIFICATIONS

 

I, Chris P. Siu, certify that:

 

1. I have reviewed this quarterly report on Form 10-Q of Aehr Test Systems;

 

2. Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4. The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

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

 

By:

/s/ CHRIS P. SIU

Chris P. Siu

Executive Vice President of Finance,

Chief Financial Officer and Secretary

(Principal Financial and Accounting Officer)

 

Date: January12, 2024

 

EX-32.01 4 aehr_ex3201.htm CERTIFICATION aehr_ex3201.htm

EXHIBIT 32.01

 

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

In connection with the Quarterly Report of Aehr Test Systems (the “Company”) on Form 10-Q for the quarter ended November 30, 2023, as filed with the Securities and Exchange Commission on January 12, 2024 (the “Report”), I, Gayn Erickson, President and Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to my knowledge:

 

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

 

(2) The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.

 

 

By:

 /s/ GAYN ERICKSON

 

 

 

Gayn Erickson

 

 

 

President and Chief Executive Officer 

 

 

 

(Principal Executive Officer) 

 

 

Date: January12, 2024

 

 

EX-32.02 5 aehr_ex3202.htm CERTIFICATION aehr_ex3202.htm

EXHIBIT 32.02

 

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

In connection with the Quarterly Report of Aehr Test Systems (the “Company”) on Form 10-Q for the quarter ended November 30, 2023 as filed with the Securities and Exchange Commission on January 12, 2024 (the “Report”), I, Chris P. Siu, Executive Vice President of Finance, Chief Financial Officer and Secretary of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to my knowledge:

 

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

 

(2) The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.

 

 

By:

/s/ CHRIS P. SIU

 

 

 

Chris P. Siu

 

 

 

Executive Vice President of Finance,

Chief Financial Officer and Secretary

 

 

 

(Principal Financial and Accounting Officer)

 

 

Date: January 12, 2024

EX-101.SCH 6 aehr-20231130.xsd XBRL TAXONOMY EXTENSION SCHEMA 000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited) link:presentationLink link:calculationLink link:definitionLink 000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) link:presentationLink link:calculationLink link:definitionLink 000007 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 000008 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES link:presentationLink link:calculationLink link:definitionLink 000009 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS link:presentationLink link:calculationLink link:definitionLink 000010 - Disclosure - BALANCE SHEET INFORMATION link:presentationLink link:calculationLink link:definitionLink 000011 - Disclosure - INCOME TAX link:presentationLink link:calculationLink link:definitionLink 000012 - Disclosure - BORROWING ARRANGEMENTS link:presentationLink link:calculationLink link:definitionLink 000013 - Disclosure - COMMITMENTS AND CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 000014 - Disclosure - SHAREHOLDERS EQUITY link:presentationLink link:calculationLink link:definitionLink 000015 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS link:presentationLink link:calculationLink link:definitionLink 000016 - Disclosure - REVENUE link:presentationLink link:calculationLink link:definitionLink 000017 - Disclosure - STOCK-BASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 000018 - Disclosure - NET INCOME PER SHARE link:presentationLink link:calculationLink link:definitionLink 000019 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION link:presentationLink link:calculationLink link:definitionLink 000020 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Policies) link:presentationLink link:calculationLink link:definitionLink 000021 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Tables) link:presentationLink link:calculationLink link:definitionLink 000022 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 000023 - Disclosure - BALANCE SHEET INFORMATION (Tables) link:presentationLink link:calculationLink link:definitionLink 000024 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS (Tables) link:presentationLink link:calculationLink link:definitionLink 000025 - Disclosure - REVENUE (Tables) link:presentationLink link:calculationLink link:definitionLink 000026 - Disclosure - STOCK-BASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 000027 - Disclosure - NET INCOME PER SHARE (Tables) link:presentationLink link:calculationLink link:definitionLink 000028 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION (Tables) link:presentationLink link:calculationLink link:definitionLink 000029 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details) link:presentationLink link:calculationLink link:definitionLink 000030 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000031 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 000032 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details 1) link:presentationLink link:calculationLink link:definitionLink 000033 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000034 - Disclosure - BALANCE SHEET INFORMATION (Details) link:presentationLink link:calculationLink link:definitionLink 000035 - Disclosure - BALANCE SHEET INFORMATION (Details 1) link:presentationLink link:calculationLink link:definitionLink 000036 - Disclosure - BALANCE SHEET INFORMATION (Details 2) link:presentationLink link:calculationLink link:definitionLink 000037 - Disclosure - BALANCE SHEET INFORMATION (Details 3) link:presentationLink link:calculationLink link:definitionLink 000038 - Disclosure - INCOME TAXES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000039 - Disclosure - BORROWING ARRANGEMENTS (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000040 - Disclosure - SHAREHOLDERS EQUITY (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000041 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS (Details) link:presentationLink link:calculationLink link:definitionLink 000042 - Disclosure - REVENUE (Details) link:presentationLink link:calculationLink link:definitionLink 000043 - Disclosure - REVENUE (Details 1) link:presentationLink link:calculationLink link:definitionLink 000044 - Disclosure - REVENUE (Details 2) link:presentationLink link:calculationLink link:definitionLink 000045 - Disclosure - REVENUE (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000046 - Disclosure - STOCK-BASED COMPENSATION (Details) link:presentationLink link:calculationLink link:definitionLink 000047 - Disclosure - STOCK-BASED COMPENSATION (Details 1) link:presentationLink link:calculationLink link:definitionLink 000048 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000049 - Disclosure - NET INCOME PER SHARE (Details) link:presentationLink link:calculationLink link:definitionLink 000050 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.LAB 7 aehr-20231130_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE Cover [Abstract] Entity Registrant Name Entity Central Index Key Document Type Amendment Flag Current Fiscal Year End Date Entity Small Business Entity Shell Company Entity Emerging Growth Company Entity Current Reporting Status Document Period End Date Entity Filer Category Document Fiscal Period Focus Document Fiscal Year Focus Entity Common Stock Shares Outstanding Document Quarterly Report Document Transition Report Entity File Number Entity Incorporation State Country Code Entity Tax Identification Number Entity Address Address Line 1 Entity Address City Or Town Entity Address State Or Province Entity Address Postal Zip Code City Area Code Local Phone Number Security 12b Title Trading Symbol Security Exchange Name Entity Interactive Data Current CONDENSED CONSOLIDATED BALANCE SHEETS ASSETS Current assets: Cash and cash equivalents Short-term investments Accounts receivable, net Inventories Prepaid expenses and other current assets Total current assets [Assets, Current] Property and equipment, net Operating lease right-of-use assets, net Other non-current assets Total assets [Assets] LIABILITIES AND SHAREHOLDERS' EQUITY Current liabilities: Accounts payable Accrued expenses Operating lease liabilities, short-term Deferred revenue, short-term Total current liabilities [Liabilities, Current] Operating lease liabilities, long-term Deferred revenue, long-term Other long-term liabilities Total liabilities [Liabilities] Commitments and contingencies (Note 6) Shareholders' equity: Preferred stock, $0.01 par value: Authorized: 10,000 shares Issued and outstanding: none Common stock, $0.01 par value: Authorized: 75,000 shares Issued and outstanding: 28,826 shares and 28,539 shares at November 30, 2023 and May 31, 2023, respectively Additional paid-in-capital Accumulated other comprehensive loss [Accumulated Other Comprehensive Income (Loss), Net of Tax] Accumulated deficit Total shareholders' equity [Stockholders' Equity Attributable to Parent] Total liabilities and shareholders' equity [Liabilities and Equity] Preferred stock, par value Preferred stock, shares authorized Preferred stock, shares issued Preferred stock, shares outstanding Common stock, par value Common stock, shares authorized Common stock, shares issued Common stock, shares outstanding CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited) Statement [Table] Statement [Line Items] Product and Service [Axis] Product [Member] Services [Member] Revenue: Total revenue Cost of revenue: Total cost of revenue Gross profit [Gross Profit] Operating expenses: Research and development Selling, general and administrative Total operating expenses [Operating Expenses] Income from operations Interest income, net Other income (expense), net Income before provision for income taxes [Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest] Provision for income taxes Net income [Net Income (Loss) Attributable to Parent] Net income per share: Basic Diluted Shares used in per share calculations: Basic [Weighted Average Number of Shares Issued, Basic] Diluted [Weighted Average Number of Shares Outstanding, Diluted] CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited) Net income Net change in cumulative translation adjustment Net change in unrealized gain (loss) on investments Comprehensive income [Other Comprehensive Income (Loss), Tax] CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) Equity Components [Axis] Common Stock Additional Paid-In Capital Accumulated other comprehensive loss AOCI Attributable to Parent [Member] Retained Earnings (Accumulated Deficit) Balance, shares [Shares, Issued] Balance, amount Issuance of common stock under employee plans, shares Issuance of common stock under employee plans, amount Shares repurchased for tax withholdings on vesting of restricted stock units, shares Shares repurchased for tax withholdings on vesting of restricted stock units, amount [Payment, Tax Withholding, Share-Based Payment Arrangement] Stock-based compensation Net income Foreign currency translation adjustment Net unrealized loss on investments Issuance cost of common stock offering Balance, shares Balance, amount CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) Cash flows from operating activities: Stock-based compensation expense Adjustments to reconcile net income to net cash provided by operating activities: Depreciation and amortization Accretion of investment discount Amortization of operating lease right-of-use assets Provision for doubtful accounts Changes in operating assets and liabilities: Accounts receivable Inventories [Increase (Decrease) in Inventories] Prepaid expenses and other current assets [Increase (Decrease) in Prepaid Expense and Other Assets] Accounts payable [Increase (Decrease) in Accounts Payable] Accrued expenses [Increase (Decrease) in Accrued Liabilities] Deferred revenue Operating lease liabilities Income taxes payable Net cash provided by operating activities [Net Cash Provided by (Used in) Operating Activities] Cash flows from investing activities: Purchases of property and equipment [Payments to Acquire Property, Plant, and Equipment] Proceeds from maturities of investments Purchases of investments [Payments to Acquire Investments] Net cash provided by (used in) investing activities [Net Cash Provided by (Used in) Investing Activities] Cash flows from financing activities: Proceeds from issuance of common stock under employee plans Issuance cost of common stock offering [Sale of Stock, Number of Shares Issued in Transaction] Net cash used in financing activities [Net Cash Provided by (Used in) Financing Activities] Effect of exchange rate changes on cash, cash equivalents and restricted cash Net increase (decrease) in cash, cash equivalents and restricted cash [Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect] Cash, cash equivalents and restricted cash, beginning of period (1) [Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents] Cash, cash equivalents and restricted cash, end of period (1) ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES Business Description and Accounting Policies [Text Block] FAIR VALUE OF FINANCIAL INSTRUMENTS FAIR VALUE OF FINANCIAL INSTRUMENTS Fair Value Disclosures [Text Block] BALANCE SHEET INFORMATION BALANCE SHEET INFORMATION Supplemental Balance Sheet Disclosures [Text Block] INCOME TAX INCOME TAXES BORROWING ARRANGEMENTS BORROWING ARRANGEMENTS Debt Disclosure [Text Block] COMMITMENTS AND CONTINGENCIES COMMITMENTS AND CONTINGENCIES Commitments and Contingencies Disclosure [Text Block] SHAREHOLDERS EQUITY SHAREHOLDERS EQUITY Stockholders' Equity Note Disclosure [Text Block] ACCUMULATED OTHER COMPREHENSIVE LOSS ACCUMULATED OTHER COMPREHENSIVE LOSS Comprehensive Income (Loss) Note [Text Block] REVENUE REVENUE Revenue from Contract with Customer [Text Block] STOCK-BASED COMPENSATION STOCK-BASED COMPENSATION Share-Based Payment Arrangement [Text Block] NET INCOME PER SHARE Earnings Per Share [Text Block] SEGMENT AND CONCENTRATION INFORMATION SEGMENT AND CONCENTRATION INFORMATION Segment Reporting Disclosure [Text Block] Organization Basis of Presentation Principles of Consolidation Critical Accounting Policies and use of Estimates Reclassifications Concentration of Credit Risk Recent Accounting Pronouncements Schedule of financial instruments Fair value by hierarchy Cash, cash equivalents and investments by security type Inventories Schedule of Inventory, Current [Table Text Block] Property and equipment, net Property, Plant and Equipment [Table Text Block] Liability for product warranties Customer deposits and deferred revenue, short-term Schedule of Changes in the components of accumulated other comprehensive loss, net of tax Disaggregation of revenue Compensation costs related to the Company's stock-based compensation Nonvested RSU activity Net income earnings per share Property and equipment by geographic region Concentration Risk By Benchmark Axis Concentration Risk By Type Axis Revenue Customer A Customer B Accounts Receivable Customer C Customer D Customer E Concentration Risk, Percentage Revenue [Member] Concentration risk Allowance for credit losses Financial Instrument Axis Fair Value By Fair Value Hierarchy Level Axis Plan Name [Axis] Fair Value By Asset Class Axis Money Market Funds Level 1 [Member] Level 2 [Member] Level 3 [Member] U.S. treasury securities US Treasury Securities Assets [Member] Investment securities Cost [Member] Money Market Funds Gross Unrealized Loss Estimated Fair Value [Member] U S Treasury Securities [Member] Cash equivalents Long-term investments Cash Total cash and cash equivalents Total cash, cash equivalents and investments Total cash, cash equivalents and investments [Cash, Cash Equivalents, and Short-Term Investments] Short-term Investments Short-term Investments Transfer between Level 1 and Level 2 fair value measurements Restricted cash Financial liabilities at fair value Raw materials and sub-assemblies Work in process Finished goods Inventories Leasehold improvements Furniture and fixtures Machinery and equipment Test equipment Property and equipment, gross Less: Accumulated depreciation and amortization [Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment] Property and equipment, net Balance at the beginning of the period [Standard and Extended Product Warranty Accrual] Accruals for warranties issued during the period Adjustments to previously existing warranty accruals Consumption of reserves [Standard and Extended Product Warranty Accrual, Decrease for Payments] Balance at the End of the period Customer deposits Deferred revenue [Deferred Revenue and Credits, Current] Deferred revenue, short-term [Deferred Revenue] Provision for income taxes Original Loan and Security Agreement Second Amendment To Loan And Security Agreement First Amendment to Loan and Security Agreement Third Amendment to Loan and Security Agreement Balance available to borrow under the line of credit Line of Credit, maximum borrowing Variable interest rate Revolving line maturity date Revolving line termination date Minimum liquidity net Sale of common stock price per share Sale of common stock shares Gross proceeds Commission fees Offering expenses Remaining amount of the ATM offering Shelf registration amount Other Comprehensive Income Location Axis Cumulative Translation Adjustments [Member] Unrealized Loss on Investments Net [Member] Balance at the beginning of the year Other comprehensive loss before reclassifications Balance at the ending of the year Income Tax Authority, Name [Axis] Europe Asia US [Member] Net sales Systems [Member] Services [Member] [Services [Member]] Contactors [Member] Net sales Timing Of Transfer Of Good Or Service Axis Products And Services Transferred At A Point In Time [Member] Services Transferred over Time [Member] Statement Scenario Axis Subsequent Event Type [Axis] Scenario Forecast [Member] Subsequent Event Contract liabilities Contract assets Recognition of contract liabilities Remaining performance obligations Remaining performance obligation revenue recognition Income Statement Location Axis Cost of Sales Selling, General and Administrative Research and Development Total stock-based compensation Award Type Axis Nonvested RSU Activty Unvested May 31, 2023, beginning (in thousands) [Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant] Shares, Granted (in thousands) Shares, Vested (in thousands) [Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period] Shares, Forfeited (in thousands) [Stock Issued During Period, Shares, Restricted Stock Award, Forfeited] Unvested August 31, 2023, ending (in thousands) Weighted Average Grant Date Fair Value Per Share, beginning [Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value] Granted Vested Forfeited Weighted Average Grant Date Fair Value Per Share, Ending Awards shares issued Stock-based compensation expense capitalized Employee stock purchase plan shares available for issuance Employee stock purchase plan shares issued Denominator: Weighted average shares outstanding Dilutive effect of common equivalent shares outstanding Denominator: Diluted weighted average shares outstanding Basic net income (loss) per share Diluted net income (loss) per share Antidilutive employee share-based award shares, excluded Income Tax Authority Name Axis International Property and equipment, net EX-101.CAL 8 aehr-20231130_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.PRE 9 aehr-20231130_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE EX-101.DEF 10 aehr-20231130_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.4
Cover - shares
6 Months Ended
Nov. 30, 2023
Dec. 31, 2023
Cover [Abstract]    
Entity Registrant Name AEHR TEST SYSTEMS  
Entity Central Index Key 0001040470  
Document Type 10-Q  
Amendment Flag false  
Current Fiscal Year End Date --05-31  
Entity Small Business true  
Entity Shell Company false  
Entity Emerging Growth Company false  
Entity Current Reporting Status Yes  
Document Period End Date Nov. 30, 2023  
Entity Filer Category Non-accelerated Filer  
Document Fiscal Period Focus Q2  
Document Fiscal Year Focus 2024  
Entity Common Stock Shares Outstanding   28,849,237
Document Quarterly Report true  
Document Transition Report false  
Entity File Number 000-22893  
Entity Incorporation State Country Code CA  
Entity Tax Identification Number 94-2424084  
Entity Address Address Line 1 400 Kato Terrace  
Entity Address City Or Town Fremont  
Entity Address State Or Province CA  
Entity Address Postal Zip Code 94539  
City Area Code 510  
Local Phone Number 623-9400  
Security 12b Title Common Stock par value of $0.01 per share  
Trading Symbol AEHR  
Security Exchange Name NASDAQ  
Entity Interactive Data Current Yes  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.4
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
Current assets:    
Cash and cash equivalents $ 50,514 $ 30,054
Short-term investments 0 17,853
Accounts receivable, net 4,573 16,594
Inventories 33,817 23,908
Prepaid expenses and other current assets 2,861 621
Total current assets 91,765 89,030
Property and equipment, net 3,185 2,759
Operating lease right-of-use assets, net 5,987 6,123
Other non-current assets 238 231
Total assets 101,175 98,143
Current liabilities:    
Accounts payable 4,183 9,206
Accrued expenses 3,232 4,143
Operating lease liabilities, short-term 397 137
Deferred revenue, short-term 147 2,822
Total current liabilities 7,959 16,308
Operating lease liabilities, long-term 6,016 6,163
Deferred revenue, long-term 4 31
Other long-term liabilities 42 41
Total liabilities 14,021 22,543
Shareholders' equity:    
Preferred stock, $0.01 par value: Authorized: 10,000 shares Issued and outstanding: none 0 0
Common stock, $0.01 par value: Authorized: 75,000 shares Issued and outstanding: 28,826 shares and 28,539 shares at November 30, 2023 and May 31, 2023, respectively 288 285
Additional paid-in-capital 128,543 127,776
Accumulated other comprehensive loss (134) (155)
Accumulated deficit (41,543) (52,306)
Total shareholders' equity 87,154 75,600
Total liabilities and shareholders' equity $ 101,175 $ 98,143
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.4
CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Nov. 30, 2023
May 31, 2023
CONDENSED CONSOLIDATED BALANCE SHEETS    
Preferred stock, par value $ 0.01 $ 0.01
Preferred stock, shares authorized 10,000 10,000,000
Preferred stock, shares issued 0 0
Preferred stock, shares outstanding 0 0
Common stock, par value $ 0.01 $ 0.01
Common stock, shares authorized 75,000 75,000
Common stock, shares issued 28,826 28,539
Common stock, shares outstanding 28,826 28,539
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.4
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Revenue:        
Total revenue $ 21,431 $ 14,815 $ 42,055 $ 25,486
Cost of revenue:        
Total cost of revenue 10,473 6,904 21,116 13,094
Gross profit 10,958 7,911 20,939 12,392
Operating expenses:        
Research and development 1,972 1,551 4,429 3,049
Selling, general and administrative 3,518 2,875 6,927 5,400
Total operating expenses 5,490 4,426 11,356 8,449
Income from operations 5,468 3,485 9,583 3,943
Interest income, net 631 263 1,212 384
Other income (expense), net 10 (5) 4 19
Income before provision for income taxes 6,109 3,743 10,799 4,346
Provision for income taxes 20 18 36 32
Net income $ 6,089 $ 3,725 $ 10,763 $ 4,314
Net income per share:        
Basic $ 0.21 $ 0.14 $ 0.37 $ 0.16
Diluted $ 0.20 $ 0.13 $ 0.36 $ 0.15
Shares used in per share calculations:        
Basic 28,801 27,579 28,725 27,410
Diluted 29,769 29,080 29,700 28,934
Product [Member]        
Revenue:        
Total revenue $ 19,837 $ 14,007 $ 39,194 $ 23,595
Cost of revenue:        
Total cost of revenue 9,707 6,497 19,626 12,011
Services [Member]        
Revenue:        
Total revenue 1,594 808 2,861 1,891
Cost of revenue:        
Total cost of revenue $ 766 $ 407 $ 1,490 $ 1,083
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.4
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited)        
Net income $ 6,089 $ 3,725 $ 10,763 $ 4,314
Net change in cumulative translation adjustment 7 1 4 (44)
Net change in unrealized gain (loss) on investments 0 (6) 17 (6)
Comprehensive income $ 6,096 $ 3,720 $ 10,784 $ 4,264
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.4
CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
Total
Common Stock
Additional Paid-In Capital
Accumulated other comprehensive loss
Retained Earnings (Accumulated Deficit)
Balance, shares at May. 31, 2022   27,120      
Balance, amount at May. 31, 2022 $ 50,989 $ 271 $ 117,686 $ (105) $ (66,863)
Issuance of common stock under employee plans, shares   761      
Issuance of common stock under employee plans, amount 1,112 $ 7 1,105 0 0
Shares repurchased for tax withholdings on vesting of restricted stock units, shares   (149)      
Shares repurchased for tax withholdings on vesting of restricted stock units, amount (1,216) $ (1) (1,215) 0 0
Stock-based compensation 1,518 0 1,518 0 0
Net income 4,314 0 0 0 4,314
Foreign currency translation adjustment (44) 0 0 (44) 0
Net unrealized loss on investments (6) $ 0 0 (6) 0
Balance, shares at Nov. 30, 2022   27,732      
Balance, amount at Nov. 30, 2022 56,667 $ 277 119,094 (155) (62,549)
Balance, shares at Aug. 31, 2022   27,395      
Balance, amount at Aug. 31, 2022 51,518 $ 274 117,668 (150) (66,274)
Issuance of common stock under employee plans, shares   339      
Issuance of common stock under employee plans, amount 657 $ 3 654 0 0
Shares repurchased for tax withholdings on vesting of restricted stock units, shares   (2)      
Shares repurchased for tax withholdings on vesting of restricted stock units, amount (37) $ 0 (37) 0 0
Stock-based compensation 809 0 809 0 0
Net income 3,725 0 0 0 3,725
Foreign currency translation adjustment 1 0 0 1 0
Net unrealized loss on investments (6) $ 0 0 (6) 0
Balance, shares at Nov. 30, 2022   27,732      
Balance, amount at Nov. 30, 2022 56,667 $ 277 119,094 (155) (62,549)
Balance, shares at May. 31, 2023   28,539      
Balance, amount at May. 31, 2023 75,600 $ 285 127,776 (155) (52,306)
Issuance of common stock under employee plans, shares   321      
Issuance of common stock under employee plans, amount 1,092 $ 3 1,089 0 0
Shares repurchased for tax withholdings on vesting of restricted stock units, shares   (34)      
Shares repurchased for tax withholdings on vesting of restricted stock units, amount (1,460) $ 0 (1,460) 0 0
Stock-based compensation 1,210 0 1,210 0 0
Net income 10,763 0 0 0 10,763
Foreign currency translation adjustment 4 0 0 4 0
Net unrealized loss on investments 17 0 0 17 0
Issuance cost of common stock offering (72) $ 0 (72) 0 0
Balance, shares at Nov. 30, 2023   28,826      
Balance, amount at Nov. 30, 2023 87,154 $ 288 128,543 (134) (41,543)
Balance, shares at Aug. 31, 2023   28,763      
Balance, amount at Aug. 31, 2023 80,145 $ 288 127,630 (141) (47,632)
Issuance of common stock under employee plans, shares   74      
Issuance of common stock under employee plans, amount 774 $ 0 774 0 0
Shares repurchased for tax withholdings on vesting of restricted stock units, shares   (11)      
Shares repurchased for tax withholdings on vesting of restricted stock units, amount (448) $ 0 (448) 0 0
Stock-based compensation 659 0 659 0 0
Net income 6,089 0 0 0 6,089
Foreign currency translation adjustment 7 0 0 7 0
Issuance cost of common stock offering (72) $ 0 (72) 0 0
Balance, shares at Nov. 30, 2023   28,826      
Balance, amount at Nov. 30, 2023 $ 87,154 $ 288 $ 128,543 $ (134) $ (41,543)
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.4
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) - USD ($)
$ in Thousands
6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Cash flows from operating activities:    
Net income $ 10,763 $ 4,314
Stock-based compensation expense 1,160 1,503
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 283 225
Accretion of investment discount (130) (64)
Amortization of operating lease right-of-use assets 337 356
Provision for doubtful accounts 0 24
Changes in operating assets and liabilities:    
Accounts receivable 12,037 2,618
Inventories (9,996) (3,094)
Prepaid expenses and other current assets (2,245) (196)
Accounts payable (5,099) (210)
Accrued expenses (974) (1,045)
Deferred revenue (2,703) 1,221
Operating lease liabilities (89) (390)
Income taxes payable 12 4
Net cash provided by operating activities 3,356 5,266
Cash flows from investing activities:    
Purchases of property and equipment (440) (99)
Proceeds from maturities of investments 18,000 0
Purchases of investments 0 (17,652)
Net cash provided by (used in) investing activities 17,560 (17,751)
Cash flows from financing activities:    
Proceeds from issuance of common stock under employee plans 1,092 1,112
Shares repurchased for tax withholdings on vesting of restricted stock units, amount $ (1,460) (1,216)
Issuance cost of common stock offering (72,000)  
Net cash used in financing activities $ (440) (104)
Effect of exchange rate changes on cash, cash equivalents and restricted cash (16) (21)
Net increase (decrease) in cash, cash equivalents and restricted cash 20,460 (12,610)
Cash, cash equivalents and restricted cash, beginning of period (1) 30,204 31,564
Cash, cash equivalents and restricted cash, end of period (1) $ 50,664 $ 18,954
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.4
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES
6 Months Ended
Nov. 30, 2023
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES  
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES

1. ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES

 

Organization – Aehr Test Systems (the “Company”) was incorporated in California in May 1977 and develops and manufactures test and burn-in equipment used in the semiconductor industry.  The Company’s principal products are the FOX-XP, FOX-NP, and FOX-CP wafer contact and singulated die/module parallel test and burn-in systems, the WaferPak full wafer contactor, the DiePak carrier, the WaferPak aligner, the DiePak autoloader, and test fixtures.

 

Basis of PresentationThe unaudited Condensed Consolidated Financial Statements included in this quarterly report on Form 10-Q include the accounts of the Company and its wholly-owned subsidiaries and have been prepared in accordance with U.S. generally accepted accounting principles (“GAAP”) for interim financial reporting and the rules and regulations of the Securities and Exchange Commission (the “SEC”) for interim reporting. Accordingly, the unaudited Condensed Consolidated Financial Statements do not include certain information and footnote disclosures normally included in the annual consolidated financial statements. In the opinion of management, the unaudited Condensed Consolidated Financial Statements for the interim periods presented have been prepared on a basis consistent with the May 31, 2023 audited Consolidated Financial Statements and reflect all adjustments, consisting of normal recurring adjustments, necessary for a fair presentation of the condensed consolidated financial position and results of operations as of and for such periods indicated. These unaudited Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements contained in the Company's Annual Report on Form 10-K for the year ended May 31, 2023.

 

Principles of ConsolidationThe Company’s Condensed Consolidated Financial Statements include the accounts of the Company and its wholly-owned subsidiaries and all significant intercompany accounts and transactions have been eliminated upon consolidation.

 

Critical Accounting Policies and use of Estimates – The Company’s significant accounting policies are disclosed in the Company’s Annual Report on Form 10-K for the year ended May 31, 2023. There have been no significant changes in the Company’s significant accounting policies during the three and six months ended November 30, 2023. The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Significant estimates in these Condensed Consolidated Financial Statements include valuation of inventory at the lower of cost or net realizable value and warranty reserves. Actual results could differ from those estimates.

 

Reclassifications - Certain reclassifications have been made to the prior period Condensed Consolidated Financial Statements to conform to the current period presentation. The reclassifications had no impact on net income, total assets, total liabilities, or shareholders’ equity.

 

Concentration of Credit Risk – Financial instruments which subject the Company to concentrations of credit risk consist principally of cash and cash equivalents and accounts receivable. The Company performs credit evaluations of its customers’ financial condition and generally requires no collateral. The Company had revenues from individual customers in excess of 10% of total revenues as follows: 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

 

 

2023

 

 

2022

 

 

2023

 

 

2022

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Customer A

 

 

46.9%

 

 

79.0%

 

 

66.9%

 

 

74.0%

Customer B

 

 

34.6%

 

*

 

 

 

20.0%

 

*

 

Customer C

 

*

 

 

 

15.0%

 

*

 

 

 

18.0%

 

* Amount was less than 10% of total revenue

 

The Company had gross accounts receivable from individual customers in excess of 10% of gross accounts receivable as follows: 

 

 

November 30,

 

 

May 31,

 

 

 

2023

 

 

2023

 

 

 

 

 

 

 

 

Customer A

 

 

29.2%

 

 

81.6%

Customer B

 

 

22.8%

 

 

16.5%

Customer D

 

 

22.6%

 

*

 

Customer E

 

 

14.7%

 

*

 

 

* Amount was less than 10% of total gross accounts receivable

 

Recent Accounting Pronouncements —The Company's accounts receivable are recorded at invoiced amounts less allowance for any credit losses. According to the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2016-13 that the Company adopted on June 1, 2023, the Company recognizes credit losses based on forward-looking current expected credit losses ("CECL"). The Company makes estimates of expected credit losses based upon its assessment of various factors, including the age of accounts receivable balances, credit quality of its customers, current economic conditions, reasonable and supportable forecasts of future economic conditions, and other factors that may affect its ability to collect from customers. The allowance for credit losses is recognized in the condensed consolidated statements of operations. The uncollectible accounts receivable are written off in the period in which a determination is made that all commercially reasonable means of recovering them have been exhausted. The total allowance for credit losses was $0 at both November 30, 2023 and May 31, 2023, and there was no write-off of accounts receivable for the periods presented. The adoption of ASU 2016-13 did not have a material impact on the Company’s Condensed Consolidated Financial Statements.

 

Although there are several other new accounting pronouncements issued by the FASB, the Company does not believe any of these accounting pronouncements had or will have a significant impact on its Condensed Consolidated Financial Statements.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.4
FAIR VALUE OF FINANCIAL INSTRUMENTS
6 Months Ended
Nov. 30, 2023
FAIR VALUE OF FINANCIAL INSTRUMENTS  
FAIR VALUE OF FINANCIAL INSTRUMENTS

2. FAIR VALUE OF FINANCIAL INSTRUMENTS

 

Fair Value of Measurements — The Company measures its cash equivalents and money market funds at fair value on a recurring basis. Fair value is an exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that is determined based on assumptions that market participants would use in pricing an asset or a liability. Assets and liabilities recorded at fair value are measured and classified in accordance with a three-tier fair value hierarchy based on the observability of the inputs available in the market used to measure fair value:

 

Level 1 — Observable inputs that reflect quoted prices (unadjusted) for identical assets or liabilities in active markets.

 

Level 2 — Inputs that are based upon quoted prices for similar instruments in active markets, quoted prices for identical or similar instruments in markets that are not active, and model-based valuation techniques for which all significant inputs are observable in the market or can be derived from observable market data. Where applicable, these models project future cash flows and discount the future amounts to a present value using market-based observable inputs including interest rate curves, foreign exchange rates, and credit ratings.

 

Level 3 — Unobservable inputs that are supported by little or no market activities.

 

The following table represents the Company’s assets measured at fair value on a recurring basis as of November 30, 2023, and the basis for that measurement:

 

 

 

Balance as of

 

 

 

 

 

 

 

(In thousands)

 

November 30, 2023

 

 

Level 1

 

 

Level 2

 

 

Level 3

 

Money market funds

 

$46,606

 

 

$46,606

 

 

$-

 

 

$-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Total

 

$46,606

 

 

$46,606

 

 

$-

 

 

$-

 

The following table represents the Company’s assets measured at fair value on a recurring basis as of May 31, 2023, and the basis for that measurement:

 

 

 

Balance as of

 

 

 

 

 

 

 

(In thousands)

 

May 31, 2023

 

 

Level 1

 

 

Level 2

 

 

Level 3

 

Money market funds

 

$27,022

 

 

$27,022

 

 

$-

 

 

$-

 

U. S. treasury securities

 

 

17,853

 

 

 

17,853

 

 

 

 

 

 

 

 

 

Total

 

$44,875

 

 

$44,875

 

 

$-

 

 

$-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Included in money market funds as of November 30, 2023 and May 31, 2023 is $150,000 restricted cash representing a security deposit for the Company’s United States manufacturing and office space lease. There were no financial liabilities measured at fair value as of November 30, 2023 and May 31, 2023. There were no transfers between Level 1 and Level 2 fair value measurements during the three and six months ended November 30, 2023. The carrying amounts of financial instruments, including cash equivalents, accounts receivable, accounts payable and certain other accrued liabilities, approximate fair value due to their short maturities.

 

The following table summarizes the Company’s cash, cash equivalents and investments by security type as of November 30, 2023 and May 31, 2023, respectively:

 

 

 

 

 

Gross

 

 

 

Balances as of November 30, 2023

 

 

 

Unrealized

 

 

Estimated

 

(In thousands)

 

Cost

 

 

Loss

 

 

Fair Value

 

Cash

 

$4,058

 

 

$-

 

 

$4,058

 

Cash equivalents:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$46,456

 

 

$-

 

 

$46,456

 

Total cash and cash equivalents

 

$50,514

 

 

$-

 

 

$50,514

 

Long-term investments:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$150

 

 

$-

 

 

$150

 

Total cash, cash equivalents and investments

 

$50,664

 

 

$-

 

 

$50,664

 

 

 

 

 

 

Gross

 

 

 

Balances as of May 31, 2023

 

 

 

Unrealized

 

 

Estimated

 

(In thousands)

 

Cost

 

 

Loss

 

 

Fair Value

 

Cash

 

$3,182

 

 

$-

 

 

$3,182

 

Cash equivalents:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$26,872

 

 

$-

 

 

$26,872

 

Total cash and cash equivalents

 

$30,054

 

 

$-

 

 

$30,054

 

Short term investments:

 

 

 

 

 

 

 

 

 

 

 

 

U. S. treasury securities

 

$17,870

 

 

$(17)

 

$17,853

 

Long-term investments:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$150

 

 

$-

 

 

$150

 

Total cash, cash equivalents and investments

 

$48,074

 

 

$(17 )

 

$48,057

 

 

Long-term investments are included in other assets on the accompanying Condensed Consolidated Balance Sheets. Unrealized gains and temporary losses on investments classified as available-for-sale debt securities are included within accumulated other comprehensive loss, net of any related tax effect. Upon realization, those amounts are reclassified from accumulated other comprehensive loss to results of operations.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.4
BALANCE SHEET INFORMATION
6 Months Ended
Nov. 30, 2023
BALANCE SHEET INFORMATION  
BALANCE SHEET INFORMATION

3. BALANCE SHEET INFORMATION

 

Inventories

Inventories consisted of the following:

 

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

Raw materials and sub-assemblies

 

$20,717

 

 

$15,953

 

Work in process

 

 

11,926

 

 

 

5,764

 

Finished goods

 

 

1,174

 

 

 

2,191

 

 

 

$33,817

 

 

$23,908

 

 

Property and equipment

 

Property and equipment, net consisted of the following:

 

 

 

Useful life

 

November 30,

 

 

May 31,

 

(In thousands)

 

(in years)

 

2023

 

 

2023

 

Leasehold improvements

 

 *

 

$1,553

 

 

$1,310

 

Machinery and equipment

 

 3 - 6

 

 

5,782

 

 

 

5,445

 

Test equipment

 

 4 - 6

 

 

3,121

 

 

 

2,998

 

Furniture and fixtures

 

 2 - 6

 

 

702

 

 

 

706

 

 

 

 

 

 

11,158

 

 

 

10,459

 

Less: accumulated depreciation and amortization

 

 

 

 

(7,973)

 

 

(7,700)

 

 

 

 

$3,185

 

 

$2,759

 

 

* Lesser of estimated useful life or lease term.

 

Product warranties

 

The Company provides for the estimated cost of product warranties at the time revenues are recognized on the products shipped. While the Company engages in extensive product quality programs and processes, including actively monitoring and evaluating the quality of its component suppliers, the Company’s warranty obligation is affected by product failure rates, material usage and service delivery costs incurred in correcting a product failure. Should actual product failure rates, material usage or service delivery costs differ from the Company’s estimates, revisions to the estimated warranty liability would be required. The standard warranty period is one year for systems and ninety days for parts and service.

 

The following is a summary of changes in the Company's liability for product warranties during the three and six months ended November 30, 2023 and 2022:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Balance at the beginning of the period

 

$232

 

 

$424

 

 

$267

 

 

$410

 

Accruals for warranties issued during the period

 

 

162

 

 

 

5

 

 

 

227

 

 

 

123

 

Adjustments to previously existing warranty accruals

 

 

-

 

 

 

-

 

 

 

-

 

 

 

61

 

Consumption of reserves

 

 

(173)

 

 

(118)

 

 

(273)

 

 

(283)

Balance at the end of the period

 

$221

 

 

$311

 

 

$221

 

 

$311

 

 

Deferred revenue

 

Deferred revenue, short-term consisted of the following:

 

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

Customer deposits

 

$68

 

 

$2,690

 

Deferred revenue

 

 

79

 

 

 

132

 

 

 

$147

 

 

$2,822

 

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.4
INCOME TAX
6 Months Ended
Nov. 30, 2023
INCOME TAX  
INCOME TAXES

4. INCOME TAX  

 

The Company is subject to U.S federal and state and foreign income taxes as a corporation. The Company’s tax provision and the resulting effective tax rate for the interim period is determined based upon its estimated annual effective tax rate adjusted for the effect of discrete items arising in that quarter. The Company recorded a provision for income taxes of $20,000 and $36,000 for the three and six months ended November 30, 2023, respectively, which consisted primarily of foreign withholding taxes and foreign income taxes. The Company recorded a provision for income taxes of $18,000 and $32,000 for the three and six months ended November 30, 2022, respectively, which consisted primarily of foreign withholding taxes and foreign income taxes.

 

Income taxes have been provided using the liability method whereby deferred tax assets and liabilities are determined based on differences between financial reporting and tax bases of assets and liabilities and net operating loss and tax credit carryforwards measured using the enacted tax rates and laws that will be in effect when the differences are expected to reverse, or the carryforwards are utilized. Valuation allowances are established when it is determined that it is more likely than not that such assets will not be realized.

 

Since fiscal 2009, a full valuation allowance was established against all deferred tax assets, as management determined that it was more likely than not that certain deferred tax assets would not be realized. The Company continues to reassess the need for a valuation allowance on a quarterly basis.

 

The Company accounts for uncertain tax positions consistent with authoritative guidance. The guidance prescribes a “more likely than not” recognition threshold and measurement attribute for the financial statement recognition and measurement of a tax position taken or expected to be taken in a tax return. The Company recognizes interest and penalties related to unrecognized tax benefits as a component of income taxes.

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.4
BORROWING ARRANGEMENTS
6 Months Ended
Nov. 30, 2023
BORROWING ARRANGEMENTS  
BORROWING ARRANGEMENTS

5. BORROWING ARRANGEMENTS

 

On January 16, 2020, the Company entered into a Loan and Security Agreement (the “Loan Agreement”) with Silicon Valley Bank (“SVB”). Pursuant to the Loan Agreement, the Company may borrow up to (a) the lesser of (i) the revolving line of $4.0 million or (ii) the amount available under the borrowing base under a revolving line of credit which is collateralized by all the Company’s assets except intellectual property. The borrowing base is 80% of eligible accounts, as determined by SVB from the Company’s most recent borrowing base statement; provided, however, SVB has the right to decrease the foregoing percentage in its good faith business judgment to mitigate the impact of certain events or conditions, which may adversely affect the collateral or its value. Subject to an event of default, the principal amount outstanding under the revolving line of credit will accrue interest at a floating per annum rate equal to the greater of (a) the prime rate plus an additional percentage of up to 1%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 4.75%. Interest is payable monthly on the last calendar day of each month and the outstanding principal amount, the unpaid interest and all other obligations are due on the maturity date, which is 364 days from the effective date of January 13, 2020.

 

On January 14, 2021, the Company entered into the First Amendment to Loan and Security Agreement (the “Amendment”) with SVB. The Amendment, among other things, extended the Revolving Line Maturity Date to July 14, 2021; provided, however, that if the Company achieved specified operating metrics on a consolidated basis on or prior to May 31, 2021 the Amended Revolving Line Maturity Date would be extended to January 13, 2022.

 

On January 11, 2022, the Company entered into the Second Amendment to the Loan and Security Agreement (the “Second Amendment”) with SVB. The Second Amendment, among other things, (A) increased the available amount of the line up to the lesser of (i) $10 million or (ii) the available amount under the borrowing base, under a revolving line of credit, (B) allowed for borrowing up to $3 million of the available balance based upon eligible customer purchase orders, (C) reduced the interest rate for account advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.0%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.25%, reduces the interest rate for purchase order advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.5%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.75%, and (D) extended the maturity date to January 13, 2023.

 

On January 10, 2023, the Company entered into the Third Amendment to the Loan and Security Agreement (the “Third Amendment”) with SVB. The Third Amendment, among other things, extends the Revolving Line Maturity Date to January 13, 2024, provided, however, that (i) if the Company submits a fiscal year 2024 plan of record that is generally acceptable to SVB, and (ii) the minimum net liquidity at the end of November 30, 2023 is at least $20.0 million, the Amended Revolving Line Maturity Date would be extended to January 13, 2025. The Company terminated the revolving line on January 4, 2024.

 

As of November 30, 2023, the Company had not drawn against the credit facility and was in compliance with all covenants related to obligations to meet reporting requirements. The balance available to borrow under the line as of November 30, 2023 was $4,212,000.  There are no financial covenants in the agreement.

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.4
COMMITMENTS AND CONTINGENCIES
6 Months Ended
Nov. 30, 2023
COMMITMENTS AND CONTINGENCIES  
COMMITMENTS AND CONTINGENCIES

6. COMMITMENTS AND CONTINGENCIES

 

Purchase Obligations

 

The Company has purchase obligations to certain suppliers. In some cases, the products the Company purchases are unique and have provisions against cancellation of the order.

 

Contingencies

 

The Company may, from time to time, be involved in legal proceedings arising in the ordinary course of business. While there can be no assurances as to the ultimate outcome of any litigation involving the Company, management does not believe any pending legal proceedings will result in judgment or settlement that will have a material adverse effect on the Company’s consolidated financial position, results of operations or cash flows.

 

In the normal course of business to facilitate sales of its products, the Company indemnifies other parties, including customers, with respect to certain matters, for example, including against losses arising from a breach of representations or covenants, or from intellectual property infringement or other claims. These agreements may limit the time within which an indemnification claim can be made and the amount of the claim. In addition, the Company has entered into indemnification agreements with its officers and directors, and the Company’s bylaws contain similar indemnification obligations to the Company’s agents.

 

It is not possible to determine the maximum potential amount under these indemnification agreements due to the limited history of prior indemnification claims and the unique facts and circumstances involved in each particular agreement. To date, payments made by the Company under these agreements have not had a material impact on the Company’s operating results, financial position or cash flow.

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.4
SHAREHOLDERS EQUITY
6 Months Ended
Nov. 30, 2023
SHAREHOLDERS EQUITY  
SHAREHOLDERS EQUITY

7. SHAREHOLDERS’ EQUITY

 

On August 25, 2021, the Board of Directors authorized management to take actions necessary for the execution of a $75 million shelf registration. A Registration Statement on Form S-3 was filed with the SEC on September 3, 2021. A Prospectus Supplement for an "At the Market" ("ATM") sale of $25 million of common stock was subsequently filed on September 17, 2021. On October 8, 2021, the Company executed the ATM offering by selling 1,696,729 shares of common stock at an average selling price of $14.73 per share. The gross proceeds to the Company were $25.0 million, before commission fees of $0.7 million and offering expenses of $0.3 million. Another Prospectus Supplement for an ATM sale of $25 million of common stock was subsequently filed on February 8, 2023. The Company partially executed the ATM offering by selling 208,917 shares of common stock at an average selling price of $34.78 per share. The gross proceeds to the Company were $7.3 million, before commissions of $0.2 million and offering expenses of $0.2 million. As of November 30, 2023, the remaining amount of the ATM offering was $17.7 million.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.4
ACCUMULATED OTHER COMPREHENSIVE LOSS
6 Months Ended
Nov. 30, 2023
ACCUMULATED OTHER COMPREHENSIVE LOSS  
ACCUMULATED OTHER COMPREHENSIVE LOSS

8. ACCUMULATED OTHER COMPREHENSIVE LOSS

 

Changes in the components of accumulated other comprehensive loss, net of tax, were as follows (in thousands):

 

 

 

Cumulative

 

 

Unrealized loss

 

 

 

(In thousands)

 

translation adjustment

 

 

on investments, net

 

 

Total

 

Balance as of May 31, 2023

 

$(138)

 

$(17)

 

$(155)

Other comprehensive income (loss) before reclassifications

 

 

4

 

 

 

17

 

 

 

21

 

Balance as of November 30, 2023

 

$(134)

 

$-

 

 

$(134)
XML 26 R16.htm IDEA: XBRL DOCUMENT v3.23.4
REVENUE
6 Months Ended
Nov. 30, 2023
REVENUE  
REVENUE

9. REVENUE

 

Revenue recognition

 

The Company recognizes revenue when promised goods or services are transferred to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services by following a five-step process: (1) identify the contract with a customer, (2) identify the performance obligations in the contract, (3) determine the transaction price, (4) allocate the transaction price, and (5) recognize revenue when or as the Company satisfies a performance obligation, as further described below.

Performance obligations include sales of systems, contactors, spare parts, and services, as well as installation and training services included in customer contracts. A contract’s transaction price is allocated to each distinct performance obligation. In determining the transaction price, the Company evaluates whether the price is subject to refund or adjustment to determine the net consideration to which the Company expects to be entitled. The Company generally does not grant return privileges, except for defective products during the warranty period.

 

For contracts that contain multiple performance obligations, the Company allocates the transaction price to the performance obligations on a relative standalone selling price basis. Standalone selling prices are based on multiple factors including, but not limited to historical discounting trends for products and services and pricing practices in different geographies. Revenue for systems and spares is recognized at a point in time, which is generally upon shipment or delivery and evidenced by transfer of title and risk of loss to the customer. Revenue from services is recognized over time as the customer receives the benefit over the contractual period of generally one year or less.

 

The Company has elected the practical expedient to not assess whether a contract has a significant financing component as the Company’s standard payment terms are less than one year. The Company sells its products primarily through a direct sales force. In certain international markets, the Company sells its products through independent distributors.

 

Disaggregation of revenue

 

The following presents information about the Company’s net revenues in different geographic areas, which are based upon ship-to locations, and by product category:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Asia

 

$18,922

 

 

$12,216

 

 

$38,153

 

 

$20,024

 

Europe

 

 

1,833

 

 

 

44

 

 

 

2,437

 

 

 

44

 

United States

 

 

676

 

 

 

2,555

 

 

 

1,465

 

 

 

5,418

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Systems

 

$10,685

 

 

$7,400

 

 

$18,779

 

 

$16,494

 

Contactors

 

 

9,152

 

 

 

6,607

 

 

 

20,415

 

 

 

7,101

 

Services

 

 

1,594

 

 

 

808

 

 

 

2,861

 

 

 

1,891

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

With the exception of the amount of service contracts and extended warranties, the Company’s product net revenues are recognized at a point in time when control transfers to the customer. The following presents net revenues based on timing of recognition:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Timing of revenue recognition:

 

 

 

 

 

 

 

 

 

 

 

 

Products and services transferred at a point in time

 

$20,974

 

 

$14,427

 

 

$40,985

 

 

$24,681

 

Services transferred over time

 

 

457

 

 

 

388

 

 

 

1,070

 

 

 

805

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

Contract balances   

 

Accounts receivable are recognized in the period the Company delivers goods or provides services and when the Company’s right to consideration is unconditional. Contract assets include unbilled receivables which represent revenues that are earned in advance of scheduled billings to customers. These amounts are primarily related to product sales where transfer of control has occurred but the Company has not yet invoiced. As of November 30, 2023, unbilled receivables were $2,051,000 and were included in prepaid expenses and other current assets on the accompanying Condensed Consolidated Balance Sheets. Contract assets were not significant as of May 31, 2023.

Contract liabilities include payments received in advance of performance under a contract and are satisfied as the associated revenue is recognized. Contract liabilities as of November 30, 2023 and May 31, 2023 were $151,000 and $2,853,000, respectively,  and were included in deferred revenue, short-term and deferred revenue, long-term on the accompanying Condensed Consolidated Balance Sheets. During the three and six months ended November 30, 2023, the Company recognized $2,101,000 and $2,771,000 in revenue, respectively, which were included in contract liabilities as of May 31, 2023.

 

Remaining performance obligations

 

On November 30, 2023, the Company had $83,000 of remaining performance obligations, which were comprised of service contracts and extended warranty contracts not yet delivered. The Company expects to recognize approximately 63.5% of its remaining performance obligations as revenue in the remainder of fiscal 2024, and an additional 36.5% in fiscal 2025 and thereafter. The foregoing excludes the value of other remaining performance obligations, as they have original durations of one year or less and excludes information about variable consideration allocated entirely to a wholly unsatisfied performance obligation.

 

Costs to obtain or fulfill a contract

 

The Company generally expenses sales commissions when incurred as a component of selling, general and administrative expenses as the amortization period is typically less than one year. Additionally, the majority of the Company’s cost of fulfillment as a manufacturer of products is classified as inventory and fixed assets, which are accounted for under the respective guidance for those asset types. Other costs of contract fulfillment are immaterial due to the nature of the Company’s products and their respective manufacturing process.

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.4
STOCK-BASED COMPENSATION
6 Months Ended
Nov. 30, 2023
STOCK-BASED COMPENSATION  
STOCK-BASED COMPENSATION

10. STOCK-BASED COMPENSATION

 

Stock-based compensation expense consists of expenses for stock options, restricted stock units (“RSUs”), performance RSUs (“PRSUs”), restricted shares, performance restricted shares and employee stock purchase plan (“ESPP”), purchase rights. Stock-based compensation expense for stock options and ESPP purchase rights is measured at each grant date, based on the fair value of the award using the Black-Scholes option valuation model, and is recognized as expense over the employee’s requisite service period. This model was developed for use in estimating the value of publicly traded options that have no vesting restrictions and are fully transferable. The Company’s employee stock options have characteristics significantly different from those of publicly traded options. For RSUs, PRSUs, restricted shares and performance restricted shares, stock-based compensation expense is based on the fair value of the Company’s common stock at the grant date and is recognized as expense over the employee’s requisite service period. All of the Company’s stock-based compensation is accounted for as equity instruments. See Note 13 in the Company’s Annual Report on Form 10-K for fiscal 2023 filed on August 28, 2023 for further information regarding the 2016 Equity Incentive Plan and the ESPP. On October 23, 2023, the shareholders of the Company approved the 2023 Equity Incentive Plan and on October 27, 2023, the Company filed the Form S-8 to issue awards during this quarter onwards from a pool of 1,500,000 shares. Full value awards, which are equity awards other than options, stock appreciation rights or other awards that are based solely on an increase in value of the shares following the grant date, when granted or forfeited will be counted as the same number of common stock shares added or deducted to the remaining available shares for issuance under the 2023 Equity Incentive Plan. 

 

The following table summarizes the stock-based compensation expense for the three and six months ended November 30, 2023 and 2022:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Cost of sales

 

$101

 

 

$85

 

 

$164

 

 

$177

 

Research and development

 

 

139

 

 

 

201

 

 

 

292

 

 

 

355

 

Selling, general and administrative

 

 

398

 

 

 

507

 

 

 

704

 

 

 

971

 

 

 

$638

 

 

$793

 

 

$1,160

 

 

$1,503

 

 

There was $170,000 and $120,000 in stock-based compensation expense capitalized as part of inventory as of November 30, 2023 and as of May 31, 2023, respectively.

 

The Company’s nonvested RSU, PRSU and restricted shares activities during the three and six months ended November 30, 2023, were as follows:

 

 

 

 

 

 

Weighted

 

 

 

 

 

Average Grant

 

 

 

 

 

Date Fair

 

 

 

Shares

 

 

Value

 

 

 

(in thousands)

 

 

Per Share

 

Unvested, May 31, 2023

 

 

345

 

 

$6.40

 

Granted

 

 

-

 

 

 

 

 

Vested

 

 

(77)

 

 

7.16

 

Forfeited

 

 

(52)

 

 

5.79

 

Unvested, August 31, 2023

 

 

216

 

 

$6.27

 

Granted

 

 

203

 

 

 

31.51

 

Vested

 

 

(28)

 

 

8.02

 

Forfeited

 

 

(1)

 

 

29.79

 

Unvested, November 30, 2023

 

 

390

 

 

$19.28

 

 

Under the ESPP, the Company issued 24,000 and 109,000 shares, respectively, during the six months ended November 30, 2023 and 2022. As of November 30, 2023 and 2022, there were 373,000 and 499,000 ESPP shares available for issuance, respectively.

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.4
NET INCOME PER SHARE
6 Months Ended
Nov. 30, 2023
Net income per share:  
NET INCOME PER SHARE

11. NET INCOME PER SHARE

 

Basic net income per share is determined using the weighted average number of common shares outstanding during the period. Diluted net income per share is determined using the weighted average number of common shares and potential common shares (representing the hypothetical number of incremental shares issuable under the assumed exercise of outstanding stock options, and vesting of outstanding RSUs and ESPP shares) during the period using the treasury stock method. The calculation of dilutive shares outstanding excludes securities that would have an antidilutive effect on net income per share.

 

The following table presents the computation of basic and diluted net income per share:

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands, except per share data)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Numerator:

 

 

 

 

 

 

 

 

 

 

 

 

Net income

 

$6,089

 

 

$3,725

 

 

$10,763

 

 

$4,314

 

Denominator:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic weighted average shares outstanding

 

 

28,801

 

 

 

27,579

 

 

 

28,725

 

 

 

27,410

 

Dilutive effect of common equivalent shares outstanding

 

 

968

 

 

 

1,501

 

 

 

975

 

 

 

1,524

 

Diluted weighted average shares outstanding

 

 

29,769

 

 

 

29,080

 

 

 

29,700

 

 

 

28,934

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net income per share - Basic

 

$0.21

 

 

$0.14

 

 

$0.37

 

 

$0.16

 

Net income per share - Diluted

 

$0.20

 

 

$0.13

 

 

$0.36

 

 

$0.15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Antidilutive employee share-based award shares, excluded

 

 

9

 

 

 

14

 

 

 

4

 

 

 

14

 

XML 29 R19.htm IDEA: XBRL DOCUMENT v3.23.4
SEGMENT AND CONCENTRATION INFORMATION
6 Months Ended
Nov. 30, 2023
SEGMENT AND CONCENTRATION INFORMATION  
SEGMENT AND CONCENTRATION INFORMATION

12. SEGMENT AND CONCENTRATION INFORMATION

 

Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker, or group, in deciding how to allocate resources and in assessing performance.

 

The Company’s chief operating decision maker, the chief executive officer, reviews discrete financial information presented on a consolidated basis for purposes of regularly making operating decisions and assessing financial performance. Accordingly, the Company considers itself to be in one operating segment.

 

Long-lived assets, net by geographic area are as follows:

 

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

United States

 

$3,121

 

 

$2,713

 

International

 

 

64

 

 

 

46

 

Total long-lived assets, net

 

$3,185

 

 

$2,759

 

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.4
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Policies)
6 Months Ended
Nov. 30, 2023
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES  
Organization

Organization – Aehr Test Systems (the “Company”) was incorporated in California in May 1977 and develops and manufactures test and burn-in equipment used in the semiconductor industry.  The Company’s principal products are the FOX-XP, FOX-NP, and FOX-CP wafer contact and singulated die/module parallel test and burn-in systems, the WaferPak full wafer contactor, the DiePak carrier, the WaferPak aligner, the DiePak autoloader, and test fixtures.

Basis of Presentation

Basis of PresentationThe unaudited Condensed Consolidated Financial Statements included in this quarterly report on Form 10-Q include the accounts of the Company and its wholly-owned subsidiaries and have been prepared in accordance with U.S. generally accepted accounting principles (“GAAP”) for interim financial reporting and the rules and regulations of the Securities and Exchange Commission (the “SEC”) for interim reporting. Accordingly, the unaudited Condensed Consolidated Financial Statements do not include certain information and footnote disclosures normally included in the annual consolidated financial statements. In the opinion of management, the unaudited Condensed Consolidated Financial Statements for the interim periods presented have been prepared on a basis consistent with the May 31, 2023 audited Consolidated Financial Statements and reflect all adjustments, consisting of normal recurring adjustments, necessary for a fair presentation of the condensed consolidated financial position and results of operations as of and for such periods indicated. These unaudited Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements contained in the Company's Annual Report on Form 10-K for the year ended May 31, 2023.

Principles of Consolidation

Principles of ConsolidationThe Company’s Condensed Consolidated Financial Statements include the accounts of the Company and its wholly-owned subsidiaries and all significant intercompany accounts and transactions have been eliminated upon consolidation.

Critical Accounting Policies and use of Estimates

Critical Accounting Policies and use of Estimates – The Company’s significant accounting policies are disclosed in the Company’s Annual Report on Form 10-K for the year ended May 31, 2023. There have been no significant changes in the Company’s significant accounting policies during the three and six months ended November 30, 2023. The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Significant estimates in these Condensed Consolidated Financial Statements include valuation of inventory at the lower of cost or net realizable value and warranty reserves. Actual results could differ from those estimates.

Reclassifications

Reclassifications - Certain reclassifications have been made to the prior period Condensed Consolidated Financial Statements to conform to the current period presentation. The reclassifications had no impact on net income, total assets, total liabilities, or shareholders’ equity.

Concentration of Credit Risk

Concentration of Credit Risk – Financial instruments which subject the Company to concentrations of credit risk consist principally of cash and cash equivalents and accounts receivable. The Company performs credit evaluations of its customers’ financial condition and generally requires no collateral. The Company had revenues from individual customers in excess of 10% of total revenues as follows: 

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

 

 

2023

 

 

2022

 

 

2023

 

 

2022

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Customer A

 

 

46.9%

 

 

79.0%

 

 

66.9%

 

 

74.0%

Customer B

 

 

34.6%

 

*

 

 

 

20.0%

 

*

 

Customer C

 

*

 

 

 

15.0%

 

*

 

 

 

18.0%

 

* Amount was less than 10% of total revenue

 

The Company had gross accounts receivable from individual customers in excess of 10% of gross accounts receivable as follows: 

 

 

November 30,

 

 

May 31,

 

 

 

2023

 

 

2023

 

 

 

 

 

 

 

 

Customer A

 

 

29.2%

 

 

81.6%

Customer B

 

 

22.8%

 

 

16.5%

Customer D

 

 

22.6%

 

*

 

Customer E

 

 

14.7%

 

*

 

 

* Amount was less than 10% of total gross accounts receivable

Recent Accounting Pronouncements

Recent Accounting Pronouncements —The Company's accounts receivable are recorded at invoiced amounts less allowance for any credit losses. According to the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2016-13 that the Company adopted on June 1, 2023, the Company recognizes credit losses based on forward-looking current expected credit losses ("CECL"). The Company makes estimates of expected credit losses based upon its assessment of various factors, including the age of accounts receivable balances, credit quality of its customers, current economic conditions, reasonable and supportable forecasts of future economic conditions, and other factors that may affect its ability to collect from customers. The allowance for credit losses is recognized in the condensed consolidated statements of operations. The uncollectible accounts receivable are written off in the period in which a determination is made that all commercially reasonable means of recovering them have been exhausted. The total allowance for credit losses was $0 at both November 30, 2023 and May 31, 2023, and there was no write-off of accounts receivable for the periods presented. The adoption of ASU 2016-13 did not have a material impact on the Company’s Condensed Consolidated Financial Statements.

 

Although there are several other new accounting pronouncements issued by the FASB, the Company does not believe any of these accounting pronouncements had or will have a significant impact on its Condensed Consolidated Financial Statements.

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.4
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Tables)
6 Months Ended
Nov. 30, 2023
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES  
Schedule of financial instruments

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

 

 

2023

 

 

2022

 

 

2023

 

 

2022

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Customer A

 

 

46.9%

 

 

79.0%

 

 

66.9%

 

 

74.0%

Customer B

 

 

34.6%

 

*

 

 

 

20.0%

 

*

 

Customer C

 

*

 

 

 

15.0%

 

*

 

 

 

18.0%

 

 

November 30,

 

 

May 31,

 

 

 

2023

 

 

2023

 

 

 

 

 

 

 

 

Customer A

 

 

29.2%

 

 

81.6%

Customer B

 

 

22.8%

 

 

16.5%

Customer D

 

 

22.6%

 

*

 

Customer E

 

 

14.7%

 

*

 

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.4
FAIR VALUE OF FINANCIAL INSTRUMENTS (Tables)
6 Months Ended
Nov. 30, 2023
FAIR VALUE OF FINANCIAL INSTRUMENTS  
Fair value by hierarchy

 

 

Balance as of

 

 

 

 

 

 

 

(In thousands)

 

November 30, 2023

 

 

Level 1

 

 

Level 2

 

 

Level 3

 

Money market funds

 

$46,606

 

 

$46,606

 

 

$-

 

 

$-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Total

 

$46,606

 

 

$46,606

 

 

$-

 

 

$-

 

 

 

Balance as of

 

 

 

 

 

 

 

(In thousands)

 

May 31, 2023

 

 

Level 1

 

 

Level 2

 

 

Level 3

 

Money market funds

 

$27,022

 

 

$27,022

 

 

$-

 

 

$-

 

U. S. treasury securities

 

 

17,853

 

 

 

17,853

 

 

 

 

 

 

 

 

 

Total

 

$44,875

 

 

$44,875

 

 

$-

 

 

$-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Cash, cash equivalents and investments by security type

 

 

 

 

Gross

 

 

 

Balances as of November 30, 2023

 

 

 

Unrealized

 

 

Estimated

 

(In thousands)

 

Cost

 

 

Loss

 

 

Fair Value

 

Cash

 

$4,058

 

 

$-

 

 

$4,058

 

Cash equivalents:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$46,456

 

 

$-

 

 

$46,456

 

Total cash and cash equivalents

 

$50,514

 

 

$-

 

 

$50,514

 

Long-term investments:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$150

 

 

$-

 

 

$150

 

Total cash, cash equivalents and investments

 

$50,664

 

 

$-

 

 

$50,664

 

 

 

 

 

Gross

 

 

 

Balances as of May 31, 2023

 

 

 

Unrealized

 

 

Estimated

 

(In thousands)

 

Cost

 

 

Loss

 

 

Fair Value

 

Cash

 

$3,182

 

 

$-

 

 

$3,182

 

Cash equivalents:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$26,872

 

 

$-

 

 

$26,872

 

Total cash and cash equivalents

 

$30,054

 

 

$-

 

 

$30,054

 

Short term investments:

 

 

 

 

 

 

 

 

 

 

 

 

U. S. treasury securities

 

$17,870

 

 

$(17)

 

$17,853

 

Long-term investments:

 

 

 

 

 

 

 

 

 

 

 

 

Money market funds

 

$150

 

 

$-

 

 

$150

 

Total cash, cash equivalents and investments

 

$48,074

 

 

$(17 )

 

$48,057

 

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.4
BALANCE SHEET INFORMATION (Tables)
6 Months Ended
Nov. 30, 2023
BALANCE SHEET INFORMATION  
Inventories

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

Raw materials and sub-assemblies

 

$20,717

 

 

$15,953

 

Work in process

 

 

11,926

 

 

 

5,764

 

Finished goods

 

 

1,174

 

 

 

2,191

 

 

 

$33,817

 

 

$23,908

 

Property and equipment, net

 

 

Useful life

 

November 30,

 

 

May 31,

 

(In thousands)

 

(in years)

 

2023

 

 

2023

 

Leasehold improvements

 

 *

 

$1,553

 

 

$1,310

 

Machinery and equipment

 

 3 - 6

 

 

5,782

 

 

 

5,445

 

Test equipment

 

 4 - 6

 

 

3,121

 

 

 

2,998

 

Furniture and fixtures

 

 2 - 6

 

 

702

 

 

 

706

 

 

 

 

 

 

11,158

 

 

 

10,459

 

Less: accumulated depreciation and amortization

 

 

 

 

(7,973)

 

 

(7,700)

 

 

 

 

$3,185

 

 

$2,759

 

Liability for product warranties

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Balance at the beginning of the period

 

$232

 

 

$424

 

 

$267

 

 

$410

 

Accruals for warranties issued during the period

 

 

162

 

 

 

5

 

 

 

227

 

 

 

123

 

Adjustments to previously existing warranty accruals

 

 

-

 

 

 

-

 

 

 

-

 

 

 

61

 

Consumption of reserves

 

 

(173)

 

 

(118)

 

 

(273)

 

 

(283)

Balance at the end of the period

 

$221

 

 

$311

 

 

$221

 

 

$311

 

Customer deposits and deferred revenue, short-term

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

Customer deposits

 

$68

 

 

$2,690

 

Deferred revenue

 

 

79

 

 

 

132

 

 

 

$147

 

 

$2,822

 

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.4
ACCUMULATED OTHER COMPREHENSIVE LOSS (Tables)
6 Months Ended
Nov. 30, 2023
ACCUMULATED OTHER COMPREHENSIVE LOSS  
Schedule of Changes in the components of accumulated other comprehensive loss, net of tax

 

 

Cumulative

 

 

Unrealized loss

 

 

 

(In thousands)

 

translation adjustment

 

 

on investments, net

 

 

Total

 

Balance as of May 31, 2023

 

$(138)

 

$(17)

 

$(155)

Other comprehensive income (loss) before reclassifications

 

 

4

 

 

 

17

 

 

 

21

 

Balance as of November 30, 2023

 

$(134)

 

$-

 

 

$(134)
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.4
REVENUE (Tables)
6 Months Ended
Nov. 30, 2023
REVENUE  
Disaggregation of revenue

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Asia

 

$18,922

 

 

$12,216

 

 

$38,153

 

 

$20,024

 

Europe

 

 

1,833

 

 

 

44

 

 

 

2,437

 

 

 

44

 

United States

 

 

676

 

 

 

2,555

 

 

 

1,465

 

 

 

5,418

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Systems

 

$10,685

 

 

$7,400

 

 

$18,779

 

 

$16,494

 

Contactors

 

 

9,152

 

 

 

6,607

 

 

 

20,415

 

 

 

7,101

 

Services

 

 

1,594

 

 

 

808

 

 

 

2,861

 

 

 

1,891

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Timing of revenue recognition:

 

 

 

 

 

 

 

 

 

 

 

 

Products and services transferred at a point in time

 

$20,974

 

 

$14,427

 

 

$40,985

 

 

$24,681

 

Services transferred over time

 

 

457

 

 

 

388

 

 

 

1,070

 

 

 

805

 

 

 

$21,431

 

 

$14,815

 

 

$42,055

 

 

$25,486

 

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.4
STOCK-BASED COMPENSATION (Tables)
6 Months Ended
Nov. 30, 2023
STOCK-BASED COMPENSATION  
Compensation costs related to the Company's stock-based compensation

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Cost of sales

 

$101

 

 

$85

 

 

$164

 

 

$177

 

Research and development

 

 

139

 

 

 

201

 

 

 

292

 

 

 

355

 

Selling, general and administrative

 

 

398

 

 

 

507

 

 

 

704

 

 

 

971

 

 

 

$638

 

 

$793

 

 

$1,160

 

 

$1,503

 

Nonvested RSU activity

 

 

 

 

 

Weighted

 

 

 

 

 

Average Grant

 

 

 

 

 

Date Fair

 

 

 

Shares

 

 

Value

 

 

 

(in thousands)

 

 

Per Share

 

Unvested, May 31, 2023

 

 

345

 

 

$6.40

 

Granted

 

 

-

 

 

 

 

 

Vested

 

 

(77)

 

 

7.16

 

Forfeited

 

 

(52)

 

 

5.79

 

Unvested, August 31, 2023

 

 

216

 

 

$6.27

 

Granted

 

 

203

 

 

 

31.51

 

Vested

 

 

(28)

 

 

8.02

 

Forfeited

 

 

(1)

 

 

29.79

 

Unvested, November 30, 2023

 

 

390

 

 

$19.28

 

XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.4
NET INCOME PER SHARE (Tables)
6 Months Ended
Nov. 30, 2023
Net income per share:  
Net income earnings per share

 

 

Three Months Ended November 30,

 

 

Six Months Ended November 30,

 

(In thousands, except per share data)

 

2023

 

 

2022

 

 

2023

 

 

2022

 

Numerator:

 

 

 

 

 

 

 

 

 

 

 

 

Net income

 

$6,089

 

 

$3,725

 

 

$10,763

 

 

$4,314

 

Denominator:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic weighted average shares outstanding

 

 

28,801

 

 

 

27,579

 

 

 

28,725

 

 

 

27,410

 

Dilutive effect of common equivalent shares outstanding

 

 

968

 

 

 

1,501

 

 

 

975

 

 

 

1,524

 

Diluted weighted average shares outstanding

 

 

29,769

 

 

 

29,080

 

 

 

29,700

 

 

 

28,934

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net income per share - Basic

 

$0.21

 

 

$0.14

 

 

$0.37

 

 

$0.16

 

Net income per share - Diluted

 

$0.20

 

 

$0.13

 

 

$0.36

 

 

$0.15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Antidilutive employee share-based award shares, excluded

 

 

9

 

 

 

14

 

 

 

4

 

 

 

14

 

XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.4
SEGMENT AND CONCENTRATION INFORMATION (Tables)
6 Months Ended
Nov. 30, 2023
SEGMENT AND CONCENTRATION INFORMATION  
Property and equipment by geographic region

 

 

November 30,

 

 

May 31,

 

(In thousands)

 

2023

 

 

2023

 

United States

 

$3,121

 

 

$2,713

 

International

 

 

64

 

 

 

46

 

Total long-lived assets, net

 

$3,185

 

 

$2,759

 

XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.4
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details)
3 Months Ended 6 Months Ended 12 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Revenue | Customer A          
Concentration Risk, Percentage 46.90% 79.00% 66.90% 74.00%  
Revenue | Customer B          
Concentration Risk, Percentage 34.60% 0.00% 20.00% 0.00%  
Revenue | Customer C          
Concentration Risk, Percentage 0.00% 15.00% 0.00% 18.00%  
Accounts Receivable | Customer A          
Concentration Risk, Percentage     29.20%   81.60%
Accounts Receivable | Customer B          
Concentration Risk, Percentage     22.80%   16.50%
Accounts Receivable | Customer D          
Concentration Risk, Percentage     22.60%   0.00%
Accounts Receivable | Customer E          
Concentration Risk, Percentage     14.70%   0.00%
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.4
ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) - USD ($)
6 Months Ended
Nov. 30, 2023
May 31, 2023
Allowance for credit losses $ 0 $ 0
Revenue [Member]    
Concentration risk 10.00%  
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.4
FAIR VALUE OF FINANCIAL INSTRUMENTS (Details) - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
Assets [Member]    
Investment securities $ 46,606 $ 44,875
U.S. treasury securities    
Investment securities   17,853
Level 1 [Member] | Assets [Member]    
Investment securities 46,606 44,875
Level 2 [Member] | Assets [Member]    
Investment securities 0 0
Level 3 [Member] | Assets [Member]    
Investment securities 0 0
Money Market Funds    
Investment securities 46,606 27,022
Money Market Funds | Level 1 [Member]    
Investment securities 46,606 27,022
Money Market Funds | Level 2 [Member]    
Investment securities 0 0
Money Market Funds | Level 3 [Member]    
Investment securities $ 0 0
US Treasury Securities | Level 1 [Member]    
Investment securities   $ 17,853
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.4
FAIR VALUE OF FINANCIAL INSTRUMENTS (Details 1) - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
Nov. 30, 2022
May 31, 2022
Total cash and cash equivalents $ 50,514 $ 30,054    
Total cash, cash equivalents and investments 50,664 30,204 $ 18,954 $ 31,564
Short-term Investments 0 17,853    
Short-term Investments 0 (17,853)    
Cost [Member]        
Cash 4,058 3,182    
Total cash and cash equivalents 50,514 30,054    
Total cash, cash equivalents and investments 50,664 48,074    
Cost [Member] | Money Market Funds        
Cash equivalents 46,456 26,872    
Long-term investments 150 150    
Cost [Member] | U S Treasury Securities [Member]        
Short-term Investments   17,870    
Short-term Investments   (17,870)    
Gross Unrealized Loss        
Cash 0 0    
Total cash and cash equivalents 0 0    
Total cash, cash equivalents and investments 0 (17)    
Gross Unrealized Loss | Money Market Funds        
Cash equivalents 0 0    
Long-term investments 0 0    
Gross Unrealized Loss | U S Treasury Securities [Member]        
Short-term Investments   17    
Short-term Investments   (17)    
Estimated Fair Value [Member]        
Cash 4,058 3,182    
Total cash and cash equivalents 50,514 30,054    
Total cash, cash equivalents and investments 50,664 48,057    
Estimated Fair Value [Member] | Money Market Funds        
Cash equivalents 46,456 26,872    
Long-term investments $ 150 150    
Estimated Fair Value [Member] | U S Treasury Securities [Member]        
Short-term Investments   17,853    
Short-term Investments   $ (17,853)    
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.4
FAIR VALUE OF FINANCIAL INSTRUMENTS (Details Narrative) - USD ($)
3 Months Ended
Aug. 31, 2023
Nov. 30, 2023
May 31, 2023
FAIR VALUE OF FINANCIAL INSTRUMENTS      
Transfer between Level 1 and Level 2 fair value measurements $ 0    
Restricted cash   $ 150,000 $ 150,000
Financial liabilities at fair value   $ 0 $ 0
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.4
BALANCE SHEET INFORMATION (Details) - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
BALANCE SHEET INFORMATION    
Raw materials and sub-assemblies $ 20,717 $ 15,953
Work in process 11,926 5,764
Finished goods 1,174 2,191
Inventories $ 33,817 $ 23,908
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.4
BALANCE SHEET INFORMATION (Details 1) - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
BALANCE SHEET INFORMATION    
Leasehold improvements $ 1,553 $ 1,310
Furniture and fixtures 702 706
Machinery and equipment 5,782 5,445
Test equipment 3,121 2,998
Property and equipment, gross 11,158 10,459
Less: Accumulated depreciation and amortization (7,973) (7,700)
Property and equipment, net $ 3,185 $ 2,759
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.4
BALANCE SHEET INFORMATION (Details 2) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
BALANCE SHEET INFORMATION        
Balance at the beginning of the period $ 232 $ 424 $ 267 $ 410
Accruals for warranties issued during the period 162 5 227 123
Adjustments to previously existing warranty accruals 0 0 0 61
Consumption of reserves (173) (118) (273) (283)
Balance at the End of the period $ 221 $ 311 $ 221 $ 311
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.4
BALANCE SHEET INFORMATION (Details 3) - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
BALANCE SHEET INFORMATION    
Customer deposits $ 68 $ 2,690
Deferred revenue 79 132
Deferred revenue, short-term $ 147 $ 2,822
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.4
INCOME TAXES (Details Narrative) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
INCOME TAX        
Provision for income taxes $ 20 $ 18 $ 36 $ 32
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.4
BORROWING ARRANGEMENTS (Details Narrative)
6 Months Ended
Nov. 30, 2023
USD ($)
Original Loan and Security Agreement  
Balance available to borrow under the line of credit $ 4,212,000
Line of Credit, maximum borrowing $ 4,000,000.0
Variable interest rate the greater of (a) the prime rate plus an additional percentage of up to 1%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 4.75%
Second Amendment To Loan And Security Agreement  
Line of Credit, maximum borrowing $ 10,000,000
Variable interest rate the greater of (a) prime rate plus an additional percentage up to 1.0%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.25%, reduces the interest rate for purchase order advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.5%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.75%
Revolving line maturity date Jan. 13, 2023
First Amendment to Loan and Security Agreement  
Revolving line maturity date Jan. 13, 2022
Third Amendment to Loan and Security Agreement  
Revolving line maturity date Jan. 13, 2025
Revolving line termination date January 4, 2024
Minimum liquidity net $ 20,000,000.0
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.4
SHAREHOLDERS EQUITY (Details Narrative) - USD ($)
$ / shares in Units, $ in Millions
6 Months Ended
Feb. 08, 2023
Oct. 08, 2021
Nov. 30, 2023
Aug. 25, 2021
SHAREHOLDERS EQUITY        
Sale of common stock price per share $ 34.78 $ 14.73    
Sale of common stock shares 208,917 1,696,729 72,000  
Gross proceeds $ 7.3 $ 25.0    
Commission fees 0.2 0.7    
Offering expenses $ 0.2 $ 0.3    
Remaining amount of the ATM offering     $ 17.7  
Shelf registration amount       $ 75.0
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.4
ACCUMULATED OTHER COMPREHENSIVE LOSS (Details)
$ in Thousands
6 Months Ended
Nov. 30, 2023
USD ($)
Balance at the beginning of the year $ (155)
Other comprehensive loss before reclassifications 21
Balance at the ending of the year (134)
Unrealized Loss on Investments Net [Member]  
Balance at the beginning of the year (17)
Other comprehensive loss before reclassifications 17
Balance at the ending of the year 0
Cumulative Translation Adjustments [Member]  
Balance at the beginning of the year (138)
Other comprehensive loss before reclassifications 4
Balance at the ending of the year $ (134)
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.4
REVENUE (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Net sales $ 21,431 $ 14,815 $ 42,055 $ 25,486
Europe        
Net sales 1,833 44 2,437 44
Asia        
Net sales 18,922 12,216 38,153 20,024
US [Member]        
Net sales $ 676 $ 2,555 $ 1,465 $ 5,418
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.4
REVENUE (Details 1) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Net sales $ 21,431 $ 14,815 $ 42,055 $ 25,486
Systems [Member]        
Net sales 10,685 7,400 18,779 16,494
Services [Member]        
Net sales 1,594 808 2,861 1,891
Contactors [Member]        
Net sales $ 9,152 $ 6,607 $ 20,415 $ 7,101
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.4
REVENUE (Details 2) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Net sales $ 21,431 $ 14,815 $ 42,055 $ 25,486
Products And Services Transferred At A Point In Time [Member]        
Net sales 20,974 14,427 40,985 24,681
Services Transferred over Time [Member]        
Net sales $ 457 $ 388 $ 1,070 $ 805
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.4
REVENUE (Details Narrative) - USD ($)
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2023
Nov. 30, 2025
Nov. 30, 2024
May 31, 2023
Contract liabilities $ 151,000 $ 151,000     $ 2,853,000
Contract assets 2,051,000 2,051,000      
Recognition of contract liabilities 2,101,000 2,771,000      
Remaining performance obligations $ 83,000 $ 83,000      
Scenario Forecast [Member] | Subsequent Event          
Remaining performance obligation revenue recognition     36.50% 63.50%  
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.4
STOCK-BASED COMPENSATION (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Total stock-based compensation $ 638 $ 793 $ 1,160 $ 1,503
Cost of Sales        
Total stock-based compensation 101 85 164 177
Selling, General and Administrative        
Total stock-based compensation 398 507 704 971
Research and Development        
Total stock-based compensation $ 139 $ 201 $ 292 $ 355
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.23.4
STOCK-BASED COMPENSATION (Details 1) - Nonvested RSU Activty - $ / shares
shares in Thousands
3 Months Ended
Nov. 30, 2023
Aug. 31, 2023
Unvested May 31, 2023, beginning (in thousands) 216 345
Shares, Granted (in thousands) 203  
Shares, Vested (in thousands) (28) (77)
Shares, Forfeited (in thousands) (1) (52)
Unvested August 31, 2023, ending (in thousands) 390 216
Weighted Average Grant Date Fair Value Per Share, beginning $ 6.27 $ 6.40
Granted 31.51  
Vested 8.02 7.16
Forfeited 29.79 5.79
Weighted Average Grant Date Fair Value Per Share, Ending $ 19.28 $ 6.27
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.23.4
STOCK-BASED COMPENSATION (Details Narrative) - USD ($)
6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
May 31, 2023
STOCK-BASED COMPENSATION      
Awards shares issued 1,500,000    
Stock-based compensation expense capitalized $ 170,000   $ 120,000
Employee stock purchase plan shares available for issuance 373,000 499,000  
Employee stock purchase plan shares issued 24,000 109,000  
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.23.4
NET INCOME PER SHARE (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Nov. 30, 2023
Nov. 30, 2022
Nov. 30, 2023
Nov. 30, 2022
Net income per share:        
Net income $ 6,089 $ 3,725 $ 10,763 $ 4,314
Denominator: Weighted average shares outstanding 28,801 27,579 28,725 27,410
Dilutive effect of common equivalent shares outstanding 968 1,501 975 1,524
Denominator: Diluted weighted average shares outstanding 29,769 29,080 29,700 28,934
Basic net income (loss) per share $ 0.21 $ 0.14 $ 0.37 $ 0.16
Diluted net income (loss) per share $ 0.20 $ 0.13 $ 0.36 $ 0.15
Antidilutive employee share-based award shares, excluded 9,000 14,000 4,000 14,000
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.23.4
SEGMENT AND CONCENTRATION INFORMATION (Details) - USD ($)
$ in Thousands
Nov. 30, 2023
May 31, 2023
Property and equipment, net $ 3,185 $ 2,759
US [Member]    
Property and equipment, net 3,121 2,713
International    
Property and equipment, net $ 64 $ 46
XML 61 aehr_10q_htm.xml IDEA: XBRL DOCUMENT 0001040470 2023-06-01 2023-11-30 0001040470 aehr:InternationalMember 2023-05-31 0001040470 aehr:InternationalMember 2023-11-30 0001040470 country:US 2023-05-31 0001040470 country:US 2023-11-30 0001040470 aehr:NonvestedRSUActivtyMember 2023-11-30 0001040470 aehr:NonvestedRSUActivtyMember 2023-08-31 0001040470 aehr:NonvestedRSUActivtyMember 2023-06-01 2023-08-31 0001040470 aehr:NonvestedRSUActivtyMember 2023-09-01 2023-11-30 0001040470 aehr:NonvestedRSUActivtyMember 2023-05-31 0001040470 us-gaap:ResearchAndDevelopmentExpenseMember 2023-09-01 2023-11-30 0001040470 us-gaap:ResearchAndDevelopmentExpenseMember 2022-06-01 2022-11-30 0001040470 us-gaap:ResearchAndDevelopmentExpenseMember 2023-06-01 2023-11-30 0001040470 us-gaap:ResearchAndDevelopmentExpenseMember 2022-09-01 2022-11-30 0001040470 us-gaap:GeneralAndAdministrativeExpenseMember 2023-09-01 2023-11-30 0001040470 us-gaap:GeneralAndAdministrativeExpenseMember 2022-06-01 2022-11-30 0001040470 us-gaap:GeneralAndAdministrativeExpenseMember 2023-06-01 2023-11-30 0001040470 us-gaap:GeneralAndAdministrativeExpenseMember 2022-09-01 2022-11-30 0001040470 us-gaap:CostOfSalesMember 2023-09-01 2023-11-30 0001040470 us-gaap:CostOfSalesMember 2022-09-01 2022-11-30 0001040470 us-gaap:CostOfSalesMember 2023-06-01 2023-11-30 0001040470 us-gaap:CostOfSalesMember 2022-06-01 2022-11-30 0001040470 srt:ScenarioForecastMember us-gaap:SubsequentEventMember 2025-11-30 0001040470 srt:ScenarioForecastMember us-gaap:SubsequentEventMember 2024-11-30 0001040470 aehr:ServicesTransferredOverTimeMember 2023-06-01 2023-11-30 0001040470 aehr:ServicesTransferredOverTimeMember 2022-09-01 2022-11-30 0001040470 aehr:ServicesTransferredOverTimeMember 2023-09-01 2023-11-30 0001040470 aehr:ServicesTransferredOverTimeMember 2022-06-01 2022-11-30 0001040470 aehr:ProductsAndServicesTransferredAtAPointInTimeMember 2023-06-01 2023-11-30 0001040470 aehr:ProductsAndServicesTransferredAtAPointInTimeMember 2022-09-01 2022-11-30 0001040470 aehr:ProductsAndServicesTransferredAtAPointInTimeMember 2023-09-01 2023-11-30 0001040470 aehr:ProductsAndServicesTransferredAtAPointInTimeMember 2022-06-01 2022-11-30 0001040470 aehr:ServicesMember 2022-09-01 2022-11-30 0001040470 aehr:ServicesMember 2023-09-01 2023-11-30 0001040470 aehr:ContactorsMember 2022-09-01 2022-11-30 0001040470 aehr:ContactorsMember 2023-09-01 2023-11-30 0001040470 aehr:SystemsMember 2022-09-01 2022-11-30 0001040470 aehr:SystemsMember 2023-09-01 2023-11-30 0001040470 aehr:ServicesMember 2022-06-01 2022-11-30 0001040470 aehr:ContactorsMember 2022-06-01 2022-11-30 0001040470 aehr:SystemsMember 2022-06-01 2022-11-30 0001040470 aehr:ContactorsMember 2023-06-01 2023-11-30 0001040470 aehr:ServicesMember 2023-06-01 2023-11-30 0001040470 aehr:SystemsMember 2023-06-01 2023-11-30 0001040470 srt:AsiaMember 2022-06-01 2022-11-30 0001040470 srt:EuropeMember 2022-06-01 2022-11-30 0001040470 country:US 2022-06-01 2022-11-30 0001040470 country:US 2022-09-01 2022-11-30 0001040470 country:US 2023-09-01 2023-11-30 0001040470 srt:EuropeMember 2022-09-01 2022-11-30 0001040470 srt:EuropeMember 2023-09-01 2023-11-30 0001040470 srt:AsiaMember 2022-09-01 2022-11-30 0001040470 srt:AsiaMember 2023-09-01 2023-11-30 0001040470 srt:AsiaMember 2023-06-01 2023-11-30 0001040470 srt:EuropeMember 2023-06-01 2023-11-30 0001040470 country:US 2023-06-01 2023-11-30 0001040470 aehr:UnrealizedLossOnInvestmentsMember 2023-11-30 0001040470 aehr:CumulativeTranslationAdjustmentsMember 2023-11-30 0001040470 aehr:UnrealizedLossOnInvestmentsMember 2023-06-01 2023-11-30 0001040470 aehr:CumulativeTranslationAdjustmentsMember 2023-06-01 2023-11-30 0001040470 aehr:UnrealizedLossOnInvestmentsMember 2023-05-31 0001040470 aehr:CumulativeTranslationAdjustmentsMember 2023-05-31 0001040470 2021-08-25 0001040470 2023-02-01 2023-02-08 0001040470 2021-10-01 2021-10-08 0001040470 2023-02-08 0001040470 2021-10-08 0001040470 aehr:ThirdAmendmentToLoanAndSecurityAgreementMember 2023-11-30 0001040470 aehr:ThirdAmendmentToLoanAndSecurityAgreementMember 2023-06-01 2023-11-30 0001040470 aehr:FirstAmendmentToLoanAndSecurityAgreementMember 2023-06-01 2023-11-30 0001040470 aehr:SecondAmendmentToLoanAndSecurityAgreementMember 2023-06-01 2023-11-30 0001040470 aehr:OriginalLoanAndSecurityAgreementMember 2023-06-01 2023-11-30 0001040470 aehr:SecondAmendmentToLoanAndSecurityAgreementMember 2023-11-30 0001040470 aehr:OriginalLoanAndSecurityAgreementMember 2023-11-30 0001040470 2023-06-01 2023-08-31 0001040470 aehr:UnitedStateTreasurySecuritiesMember aehr:EstimatedFairValueMember 2023-05-31 0001040470 aehr:UnitedStateTreasurySecuritiesMember aehr:GrossUnrealizedLossMember 2023-05-31 0001040470 aehr:UnitedStateTreasurySecuritiesMember aehr:CostMember 2023-05-31 0001040470 aehr:EstimatedFairValueMember 2023-11-30 0001040470 aehr:EstimatedFairValueMember 2023-05-31 0001040470 aehr:GrossUnrealizedLossMember 2023-11-30 0001040470 aehr:GrossUnrealizedLossMember 2023-05-31 0001040470 aehr:CostMember 2023-11-30 0001040470 aehr:CostMember 2023-05-31 0001040470 aehr:MoneyMarketFundMember aehr:EstimatedFairValueMember 2023-11-30 0001040470 aehr:MoneyMarketFundMember aehr:GrossUnrealizedLossMember 2023-11-30 0001040470 aehr:MoneyMarketFundMember aehr:EstimatedFairValueMember 2023-05-31 0001040470 aehr:MoneyMarketFundMember aehr:GrossUnrealizedLossMember 2023-05-31 0001040470 aehr:MoneyMarketFundMember aehr:CostMember 2023-11-30 0001040470 aehr:MoneyMarketFundMember aehr:CostMember 2023-05-31 0001040470 us-gaap:FairValueInputsLevel3Member aehr:MoneyMarketFundMember 2023-11-30 0001040470 us-gaap:FairValueInputsLevel2Member aehr:MoneyMarketFundMember 2023-11-30 0001040470 us-gaap:FairValueInputsLevel1Member aehr:MoneyMarketFundMember 2023-11-30 0001040470 aehr:MoneyMarketFundMember 2023-11-30 0001040470 us-gaap:AssetsMember us-gaap:FairValueInputsLevel3Member 2023-11-30 0001040470 us-gaap:AssetsMember us-gaap:FairValueInputsLevel3Member 2023-05-31 0001040470 us-gaap:AssetsMember us-gaap:FairValueInputsLevel2Member 2023-11-30 0001040470 us-gaap:AssetsMember us-gaap:FairValueInputsLevel2Member 2023-05-31 0001040470 us-gaap:AssetsMember us-gaap:FairValueInputsLevel1Member 2023-11-30 0001040470 us-gaap:AssetsMember us-gaap:FairValueInputsLevel1Member 2023-05-31 0001040470 us-gaap:AssetsMember 2023-11-30 0001040470 us-gaap:AssetsMember 2023-05-31 0001040470 us-gaap:FairValueInputsLevel1Member aehr:USTreasurySecurityMember 2023-05-31 0001040470 aehr:UStreasurysecuritiesMember 2023-05-31 0001040470 us-gaap:FairValueInputsLevel3Member aehr:MoneyMarketFundMember 2023-05-31 0001040470 us-gaap:FairValueInputsLevel2Member aehr:MoneyMarketFundMember 2023-05-31 0001040470 us-gaap:FairValueInputsLevel1Member aehr:MoneyMarketFundMember 2023-05-31 0001040470 aehr:MoneyMarketFundMember 2023-05-31 0001040470 aehr:RevenueMember 2023-06-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerEMember 2023-06-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerDMember 2023-06-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerEMember 2022-12-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerBMember 2023-06-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerCMember 2022-06-01 2022-11-30 0001040470 aehr:RevenuesMember aehr:CustomerCMember 2023-06-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerCMember 2023-09-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerBMember 2022-06-01 2022-11-30 0001040470 aehr:RevenuesMember aehr:CustomerBMember 2023-06-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerBMember 2023-09-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerAMember 2022-06-01 2022-11-30 0001040470 aehr:RevenuesMember aehr:CustomerAMember 2023-06-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerCMember 2022-09-01 2022-11-30 0001040470 aehr:RevenuesMember aehr:CustomerBMember 2022-09-01 2022-11-30 0001040470 aehr:RevenuesMember aehr:CustomerAMember 2023-09-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerAMember 2023-06-01 2023-11-30 0001040470 aehr:RevenuesMember aehr:CustomerAMember 2022-09-01 2022-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerDMember 2022-12-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerAMember 2022-12-01 2023-11-30 0001040470 us-gaap:AccountsReceivableMember aehr:CustomerBMember 2022-12-01 2023-11-30 0001040470 us-gaap:RetainedEarningsMember 2023-09-01 2023-11-30 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-09-01 2023-11-30 0001040470 us-gaap:AdditionalPaidInCapitalMember 2023-09-01 2023-11-30 0001040470 us-gaap:CommonStockMember 2023-09-01 2023-11-30 0001040470 2023-08-31 0001040470 us-gaap:RetainedEarningsMember 2023-08-31 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-08-31 0001040470 us-gaap:AdditionalPaidInCapitalMember 2023-08-31 0001040470 us-gaap:CommonStockMember 2023-08-31 0001040470 us-gaap:RetainedEarningsMember 2023-11-30 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-11-30 0001040470 us-gaap:AdditionalPaidInCapitalMember 2023-11-30 0001040470 us-gaap:CommonStockMember 2023-11-30 0001040470 us-gaap:RetainedEarningsMember 2023-06-01 2023-11-30 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-01 2023-11-30 0001040470 us-gaap:AdditionalPaidInCapitalMember 2023-06-01 2023-11-30 0001040470 us-gaap:CommonStockMember 2023-06-01 2023-11-30 0001040470 us-gaap:RetainedEarningsMember 2023-05-31 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-05-31 0001040470 us-gaap:AdditionalPaidInCapitalMember 2023-05-31 0001040470 us-gaap:CommonStockMember 2023-05-31 0001040470 us-gaap:RetainedEarningsMember 2022-09-01 2022-11-30 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-09-01 2022-11-30 0001040470 us-gaap:AdditionalPaidInCapitalMember 2022-09-01 2022-11-30 0001040470 us-gaap:CommonStockMember 2022-09-01 2022-11-30 0001040470 2022-08-31 0001040470 us-gaap:RetainedEarningsMember 2022-08-31 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-08-31 0001040470 us-gaap:AdditionalPaidInCapitalMember 2022-08-31 0001040470 us-gaap:CommonStockMember 2022-08-31 0001040470 2022-11-30 0001040470 us-gaap:RetainedEarningsMember 2022-11-30 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-11-30 0001040470 us-gaap:AdditionalPaidInCapitalMember 2022-11-30 0001040470 us-gaap:CommonStockMember 2022-11-30 0001040470 us-gaap:RetainedEarningsMember 2022-06-01 2022-11-30 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-06-01 2022-11-30 0001040470 us-gaap:AdditionalPaidInCapitalMember 2022-06-01 2022-11-30 0001040470 us-gaap:CommonStockMember 2022-06-01 2022-11-30 0001040470 2022-05-31 0001040470 us-gaap:RetainedEarningsMember 2022-05-31 0001040470 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-05-31 0001040470 us-gaap:AdditionalPaidInCapitalMember 2022-05-31 0001040470 us-gaap:CommonStockMember 2022-05-31 0001040470 2022-06-01 2022-11-30 0001040470 2022-09-01 2022-11-30 0001040470 2023-09-01 2023-11-30 0001040470 us-gaap:ServiceMember 2022-06-01 2022-11-30 0001040470 us-gaap:ServiceMember 2022-09-01 2022-11-30 0001040470 us-gaap:ServiceMember 2023-06-01 2023-11-30 0001040470 us-gaap:ServiceMember 2023-09-01 2023-11-30 0001040470 us-gaap:ProductMember 2022-06-01 2022-11-30 0001040470 us-gaap:ProductMember 2022-09-01 2022-11-30 0001040470 us-gaap:ProductMember 2023-06-01 2023-11-30 0001040470 us-gaap:ProductMember 2023-09-01 2023-11-30 0001040470 2023-05-31 0001040470 2023-11-30 0001040470 2023-12-31 iso4217:USD shares iso4217:USD shares pure 0001040470 false --05-31 Q2 2024 0.01 10000000 0 0 0 0 0.01 75000 28539 28826 0 0 0 0 0 0 0 0 150000 0 0 10-Q true 2023-11-30 false 000-22893 AEHR TEST SYSTEMS CA 94-2424084 400 Kato Terrace Fremont CA 94539 510 623-9400 Common Stock par value of $0.01 per share AEHR NASDAQ Yes Yes Non-accelerated Filer true false false 28849237 50514000 30054000 0 17853000 4573000 16594000 33817000 23908000 2861000 621000 91765000 89030000 3185000 2759000 5987000 6123000 238000 231000 101175000 98143000 4183000 9206000 3232000 4143000 397000 137000 147000 2822000 7959000 16308000 6016000 6163000 4000 31000 42000 41000 14021000 22543000 0.01 10000 0 0 0.01 75000 28826 28539 288000 285000 128543000 127776000 -134000 -155000 -41543000 -52306000 87154000 75600000 101175000 98143000 19837000 14007000 39194000 23595000 1594000 808000 2861000 1891000 21431000 14815000 42055000 25486000 9707000 6497000 19626000 12011000 766000 407000 1490000 1083000 10473000 6904000 21116000 13094000 10958000 7911000 20939000 12392000 1972000 1551000 4429000 3049000 3518000 2875000 6927000 5400000 5490000 4426000 11356000 8449000 5468000 3485000 9583000 3943000 631000 263000 1212000 384000 10000 -5000 4000 19000 6109000 3743000 10799000 4346000 20000 18000 36000 32000 6089000 3725000 10763000 4314000 0.21 0.14 0.37 0.16 0.20 0.13 0.36 0.15 28801 27579 28725 27410 29769 29080 29700 28934 6089000 3725000 10763000 4314000 7000 1000 4000 -44000 0 -6000 17000 -6000 6096000 3720000 10784000 4264000 28763000 288000 127630000 -141000 -47632000 80145000 74000 0 774000 0 0 774000 0 -72000 0 0 -72000 -11000 0 448000 0 0 448000 0 659000 0 0 659000 0 0 0 6089000 6089000 0 0 7000 0 7000 28826000 288000 128543000 -134000 -41543000 87154000 28539000 285000 127776000 -155000 -52306000 75600000 321000 3000 1089000 0 0 1092000 0 -72000 0 0 -72000 -34000 0 1460000 0 0 1460000 0 1210000 0 0 1210000 0 0 0 10763000 10763000 0 0 4000 0 4000 0 0 17000 0 17000 28826000 288000 128543000 -134000 -41543000 87154000 27395000 274000 117668000 -150000 -66274000 51518000 339000 3000 654000 0 0 657000 -2000 0 37000 0 0 37000 0 809000 0 0 809000 0 0 0 3725000 3725000 0 0 1000 0 1000 0 0 -6000 0 -6000 27732000 277000 119094000 -155000 -62549000 56667000 27120000 271000 117686000 -105000 -66863000 50989000 761000 7000 1105000 0 0 1112000 -149000 1000 1215000 0 0 1216000 0 1518000 0 0 1518000 0 0 0 4314000 4314000 0 0 -44000 0 -44000 0 0 -6000 0 -6000 27732000 277000 119094000 -155000 -62549000 56667000 10763000 4314000 1160000 1503000 283000 225000 -130000 -64000 337000 356000 0 24000 12037000 2618000 -9996000 -3094000 -2245000 -196000 -5099000 -210000 -974000 -1045000 -2703000 1221000 -89000 -390000 12000 4000 3356000 5266000 440000 99000 18000000 0 0 17652000 17560000 -17751000 1092000 1112000 1460000 1216000 72000 -440000 -104000 -16000 -21000 20460000 -12610000 30204000 31564000 50664000 18954000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>1. ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Organization</em> – Aehr Test Systems (the “Company”) was incorporated in California in May 1977 and develops and manufactures test and burn-in equipment used in the semiconductor industry.  The Company’s principal products are the FOX-XP, FOX-NP, and FOX-CP wafer contact and singulated die/module parallel test and burn-in systems, the WaferPak full wafer contactor, the DiePak carrier, the WaferPak aligner, the DiePak autoloader, and test fixtures.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><em>Basis of Presentation</em><strong> – </strong>The unaudited Condensed Consolidated Financial Statements included in this quarterly report on Form 10-Q include the accounts of the Company and its wholly-owned subsidiaries and have been prepared in accordance with U.S. generally accepted accounting principles (“GAAP”) for interim financial reporting and the rules and regulations of the Securities and Exchange Commission (the “SEC”) for interim reporting. Accordingly, the unaudited Condensed Consolidated Financial Statements do not include certain information and footnote disclosures normally included in the annual consolidated financial statements. In the opinion of management, the unaudited Condensed Consolidated Financial Statements for the interim periods presented have been prepared on a basis consistent with the May 31, 2023 audited Consolidated Financial Statements and reflect all adjustments, consisting of normal recurring adjustments, necessary for a fair presentation of the condensed consolidated financial position and results of operations as of and for such periods indicated. These unaudited Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements contained in the Company's Annual Report on Form 10-K for the year ended May 31, 2023. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><em>Principles of Consolidation</em><strong> – </strong>The Company’s Condensed Consolidated Financial Statements include the accounts of the Company and its wholly-owned subsidiaries and all significant intercompany accounts and transactions have been eliminated upon consolidation. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Critical Accounting Policies and use of Estimates<strong> </strong></em>– The Company’s significant accounting policies are disclosed in the Company’s Annual Report on Form 10-K for the year ended May 31, 2023. There have been no significant changes in the Company’s significant accounting policies during the three and six months ended November 30, 2023. The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Significant estimates in these Condensed Consolidated Financial Statements include valuation of inventory at the lower of cost or net realizable value and warranty reserves. Actual results could differ from those estimates.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Reclassifications - </em>Certain reclassifications have been made to the prior period Condensed Consolidated Financial Statements to conform to the current period presentation. The reclassifications had no impact on net income, total assets, total liabilities, or shareholders’ equity.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><em>Concentration of Credit Risk</em> – Financial instruments which subject the Company to concentrations of credit risk consist principally of cash and cash equivalents and accounts receivable. The Company performs credit evaluations of its customers’ financial condition and generally requires no collateral. The Company had revenues from individual customers in excess of 10% of total revenues as follows: </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer A</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">46.9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">79.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">66.9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">74.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer B</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer C</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="font-size:10pt;font-family:times new roman;margin:0px">* Amount was less than 10% of total revenue</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company had gross accounts receivable from individual customers in excess of 10% of gross accounts receivable as follows: </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer A</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">29.2</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">81.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer B</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">22.8</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16.5</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer D</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">22.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer E</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14.7</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">* Amount was less than 10% of total gross accounts receivable</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Recent Accounting Pronouncements —</em>The Company's accounts receivable are recorded at invoiced amounts less allowance for any credit losses. According to the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2016-13 that the Company adopted on June 1, 2023, the Company recognizes credit losses based on forward-looking current expected credit losses ("CECL"). The Company makes estimates of expected credit losses based upon its assessment of various factors, including the age of accounts receivable balances, credit quality of its customers, current economic conditions, reasonable and supportable forecasts of future economic conditions, and other factors that may affect its ability to collect from customers. The allowance for credit losses is recognized in the condensed consolidated statements of operations. The uncollectible accounts receivable are written off in the period in which a determination is made that all commercially reasonable means of recovering them have been exhausted. The total allowance for credit losses was $0 at both November 30, 2023 and May 31, 2023, and there was no write-off of accounts receivable for the periods presented. The adoption of ASU 2016-13 did not have a material impact on the Company’s Condensed Consolidated Financial Statements.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Although there are several other new accounting pronouncements issued by the FASB, the Company does not believe any of these accounting pronouncements had or will have a significant impact on its Condensed Consolidated Financial Statements.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Organization</em> – Aehr Test Systems (the “Company”) was incorporated in California in May 1977 and develops and manufactures test and burn-in equipment used in the semiconductor industry.  The Company’s principal products are the FOX-XP, FOX-NP, and FOX-CP wafer contact and singulated die/module parallel test and burn-in systems, the WaferPak full wafer contactor, the DiePak carrier, the WaferPak aligner, the DiePak autoloader, and test fixtures.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><em>Basis of Presentation</em><strong> – </strong>The unaudited Condensed Consolidated Financial Statements included in this quarterly report on Form 10-Q include the accounts of the Company and its wholly-owned subsidiaries and have been prepared in accordance with U.S. generally accepted accounting principles (“GAAP”) for interim financial reporting and the rules and regulations of the Securities and Exchange Commission (the “SEC”) for interim reporting. Accordingly, the unaudited Condensed Consolidated Financial Statements do not include certain information and footnote disclosures normally included in the annual consolidated financial statements. In the opinion of management, the unaudited Condensed Consolidated Financial Statements for the interim periods presented have been prepared on a basis consistent with the May 31, 2023 audited Consolidated Financial Statements and reflect all adjustments, consisting of normal recurring adjustments, necessary for a fair presentation of the condensed consolidated financial position and results of operations as of and for such periods indicated. These unaudited Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements contained in the Company's Annual Report on Form 10-K for the year ended May 31, 2023. </p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><em>Principles of Consolidation</em><strong> – </strong>The Company’s Condensed Consolidated Financial Statements include the accounts of the Company and its wholly-owned subsidiaries and all significant intercompany accounts and transactions have been eliminated upon consolidation. </p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Critical Accounting Policies and use of Estimates<strong> </strong></em>– The Company’s significant accounting policies are disclosed in the Company’s Annual Report on Form 10-K for the year ended May 31, 2023. There have been no significant changes in the Company’s significant accounting policies during the three and six months ended November 30, 2023. The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Significant estimates in these Condensed Consolidated Financial Statements include valuation of inventory at the lower of cost or net realizable value and warranty reserves. Actual results could differ from those estimates.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Reclassifications - </em>Certain reclassifications have been made to the prior period Condensed Consolidated Financial Statements to conform to the current period presentation. The reclassifications had no impact on net income, total assets, total liabilities, or shareholders’ equity.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><em>Concentration of Credit Risk</em> – Financial instruments which subject the Company to concentrations of credit risk consist principally of cash and cash equivalents and accounts receivable. The Company performs credit evaluations of its customers’ financial condition and generally requires no collateral. The Company had revenues from individual customers in excess of 10% of total revenues as follows: </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer A</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">46.9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">79.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">66.9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">74.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer B</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer C</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="font-size:10pt;font-family:times new roman;margin:0px">* Amount was less than 10% of total revenue</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company had gross accounts receivable from individual customers in excess of 10% of gross accounts receivable as follows: </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer A</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">29.2</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">81.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer B</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">22.8</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16.5</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer D</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">22.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer E</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14.7</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">* Amount was less than 10% of total gross accounts receivable</p> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer A</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">46.9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">79.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">66.9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">74.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer B</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer C</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18.0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer A</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">29.2</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">81.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer B</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">22.8</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16.5</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer D</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">22.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer E</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14.7</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">*</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 0.469 0.790 0.669 0.740 0.346 0.200 0.150 0.180 0.10 0.292 0.816 0.228 0.165 0.226 0.147 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Recent Accounting Pronouncements —</em>The Company's accounts receivable are recorded at invoiced amounts less allowance for any credit losses. According to the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2016-13 that the Company adopted on June 1, 2023, the Company recognizes credit losses based on forward-looking current expected credit losses ("CECL"). The Company makes estimates of expected credit losses based upon its assessment of various factors, including the age of accounts receivable balances, credit quality of its customers, current economic conditions, reasonable and supportable forecasts of future economic conditions, and other factors that may affect its ability to collect from customers. The allowance for credit losses is recognized in the condensed consolidated statements of operations. The uncollectible accounts receivable are written off in the period in which a determination is made that all commercially reasonable means of recovering them have been exhausted. The total allowance for credit losses was $0 at both November 30, 2023 and May 31, 2023, and there was no write-off of accounts receivable for the periods presented. The adoption of ASU 2016-13 did not have a material impact on the Company’s Condensed Consolidated Financial Statements.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Although there are several other new accounting pronouncements issued by the FASB, the Company does not believe any of these accounting pronouncements had or will have a significant impact on its Condensed Consolidated Financial Statements.</p> 0 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>2. FAIR VALUE OF FINANCIAL INSTRUMENTS</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Fair Value of Measurements —</em> The Company measures its cash equivalents and money market funds at fair value on a recurring basis. Fair value is an exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that is determined based on assumptions that market participants would use in pricing an asset or a liability. Assets and liabilities recorded at fair value are measured and classified in accordance with a three-tier fair value hierarchy based on the observability of the inputs available in the market used to measure fair value:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">Level 1 — Observable inputs that reflect quoted prices (unadjusted) for identical assets or liabilities in active markets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">Level 2 — Inputs that are based upon quoted prices for similar instruments in active markets, quoted prices for identical or similar instruments in markets that are not active, and model-based valuation techniques for which all significant inputs are observable in the market or can be derived from observable market data. Where applicable, these models project future cash flows and discount the future amounts to a present value using market-based observable inputs including interest rate curves, foreign exchange rates, and credit ratings.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">Level 3 — Unobservable inputs that are supported by little or no market activities.</p><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The following table represents the Company’s assets measured at fair value on a recurring basis as of November 30, 2023, and the basis for that measurement:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Balance as of</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30, 2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 1</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 2</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 3</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The following table represents the Company’s assets measured at fair value on a recurring basis as of May 31, 2023, and the basis for that measurement:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Balance as of</strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;"></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;"></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;"></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31, 2023</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 1</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 2</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 3</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">27,022</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">27,022</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">U. S. treasury securities</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">17,853</td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">17,853</td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">44,875</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">44,875</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Included in money market funds as of November 30, 2023 and May 31, 2023 is $150,000 restricted cash representing a security deposit for the Company’s United States manufacturing and office space lease. There were no financial liabilities measured at fair value as of November 30, 2023 and May 31, 2023. There were no transfers between Level 1 and Level 2 fair value measurements during the three and six months ended November 30, 2023. The carrying amounts of financial instruments, including cash equivalents, accounts receivable, accounts payable and certain other accrued liabilities, approximate fair value due to their short maturities.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="font-size:10pt;font-family:times new roman;margin:0px">The following table summarizes the Company’s cash, cash equivalents and investments by security type as of November 30, 2023 and May 31, 2023, respectively:</p><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balances as of November 30, 2023</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Unrealized</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cost</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Loss</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Fair Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,058</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,058</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash equivalents:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,456</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,456</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash and cash equivalents</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,514</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,514</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term investments:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash, cash equivalents and investments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,664</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,664</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balances as of May 31, 2023</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Unrealized</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cost</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Loss</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Fair Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,182</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,182</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash equivalents:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">26,872</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">26,872</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash and cash equivalents</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">30,054</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">30,054</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Short term investments:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">U. S. treasury securities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">17,870</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">17,853</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term investments:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash, cash equivalents and investments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">48,074</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">(17 </td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">48,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Long-term investments are included in other assets on the accompanying Condensed Consolidated Balance Sheets. Unrealized gains and temporary losses on investments classified as available-for-sale debt securities are included within accumulated other comprehensive loss, net of any related tax effect. Upon realization, those amounts are reclassified from accumulated other comprehensive loss to results of operations.</p> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Balance as of</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30, 2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 1</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 2</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 3</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">46,606</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Balance as of</strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;"></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;"></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="width:9%;"></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31, 2023</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 1</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 2</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Level 3</strong></p></td><td style="PADDING-BOTTOM: 1px;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">27,022</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">27,022</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;">$</td><td style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">U. S. treasury securities</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">17,853</td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">17,853</td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">44,875</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">44,875</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;">$</td><td style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 46606000 46606000 0 0 46606000 46606000 0 0 27022000 27022000 0 0 17853000 17853000 44875000 44875000 0 0 150000 <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balances as of November 30, 2023</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Unrealized</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cost</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Loss</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Fair Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,058</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,058</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash equivalents:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,456</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46,456</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash and cash equivalents</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,514</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,514</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term investments:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash, cash equivalents and investments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,664</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">50,664</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balances as of May 31, 2023</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Unrealized</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cost</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Loss</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Fair Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,182</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,182</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash equivalents:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">26,872</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">26,872</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash and cash equivalents</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">30,054</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">30,054</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Short term investments:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">U. S. treasury securities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">17,870</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">17,853</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term investments:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Money market funds</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total cash, cash equivalents and investments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">48,074</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">(17 </td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: black 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: black 3px double;width:9%;vertical-align:bottom;text-align:right;">48,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 4058000 0 4058000 46456000 0 46456000 50514000 0 50514000 150000 0 150000 50664000 0 50664000 3182000 0 3182000 26872000 0 26872000 30054000 0 30054000 17870000 17000 17853000 150000 0 150000 48074000 17000 48057000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>3. BALANCE SHEET INFORMATION</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Inventories</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Inventories consisted of the following:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Raw materials and sub-assemblies</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,717</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15,953</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Work in process</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">11,926</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,764</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Finished goods</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,174</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,191</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">33,817</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">23,908</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Property and equipment</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Property and equipment, net consisted of the following:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Useful life</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>(in years)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> * </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,553</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,310</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Machinery and equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> 3 - 6 </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,782</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,445</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Test equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> 4 - 6 </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,121</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,998</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Furniture and fixtures</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> 2 - 6 </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">702</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">706</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">11,158</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">10,459</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: accumulated depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(7,973</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(7,700</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,185</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,759</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">* Lesser of estimated useful life or lease term.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Product warranties</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company provides for the estimated cost of product warranties at the time revenues are recognized on the products shipped. While the Company engages in extensive product quality programs and processes, including actively monitoring and evaluating the quality of its component suppliers, the Company’s warranty obligation is affected by product failure rates, material usage and service delivery costs incurred in correcting a product failure. Should actual product failure rates, material usage or service delivery costs differ from the Company’s estimates, revisions to the estimated warranty liability would be required. The standard warranty period is one year for systems and ninety days for parts and service.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The following is a summary of changes in the Company's liability for product warranties during the three and six months ended November 30, 2023 and 2022:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at the beginning of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">232</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">424</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">267</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">410</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accruals for warranties issued during the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">162</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">227</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">123</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Adjustments to previously existing warranty accruals</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">61</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Consumption of reserves</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(173</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(118</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(273</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(283</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at the end of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">221</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">311</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">221</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">311</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Deferred revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Deferred revenue, short-term consisted of the following:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer deposits</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">68</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,690</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Deferred revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">79</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">132</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">147</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,822</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Raw materials and sub-assemblies</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,717</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15,953</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Work in process</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">11,926</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,764</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Finished goods</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,174</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,191</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">33,817</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">23,908</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 20717000 15953000 11926000 5764000 1174000 2191000 33817000 23908000 <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Useful life</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>(in years)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> * </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,553</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,310</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Machinery and equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> 3 - 6 </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,782</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,445</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Test equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> 4 - 6 </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,121</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,998</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Furniture and fixtures</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"> 2 - 6 </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">702</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">706</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">11,158</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">10,459</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: accumulated depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(7,973</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(7,700</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,185</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,759</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 1553000 1310000 5782000 5445000 3121000 2998000 702000 706000 11158000 10459000 7973000 7700000 3185000 2759000 <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at the beginning of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">232</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">424</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">267</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">410</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accruals for warranties issued during the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">162</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">227</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">123</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Adjustments to previously existing warranty accruals</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">61</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Consumption of reserves</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(173</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(118</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(273</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(283</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at the end of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">221</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">311</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">221</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">311</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 232000 424000 267000 410000 162000 5000 227000 123000 0 0 0 61000 173000 118000 273000 283000 221000 311000 <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer deposits</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">68</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,690</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Deferred revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">79</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">132</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">147</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,822</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 68000 2690000 79000 132000 147000 2822000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>4. INCOME TAX</strong>  </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company is subject to U.S federal and state and foreign income taxes as a corporation. The Company’s tax provision and the resulting effective tax rate for the interim period is determined based upon its estimated annual effective tax rate adjusted for the effect of discrete items arising in that quarter. The Company recorded a provision for income taxes of $20,000 and $36,000 for the three and six months ended November 30, 2023, respectively, which consisted primarily of foreign withholding taxes and foreign income taxes. The Company recorded a provision for income taxes of $18,000 and $32,000 for the three and six months ended November 30, 2022, respectively, which consisted primarily of foreign withholding taxes and foreign income taxes.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Income taxes have been provided using the liability method whereby deferred tax assets and liabilities are determined based on differences between financial reporting and tax bases of assets and liabilities and net operating loss and tax credit carryforwards measured using the enacted tax rates and laws that will be in effect when the differences are expected to reverse, or the carryforwards are utilized. Valuation allowances are established when it is determined that it is more likely than not that such assets will not be realized.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Since fiscal 2009, a full valuation allowance was established against all deferred tax assets, as management determined that it was more likely than not that certain deferred tax assets would not be realized. The Company continues to reassess the need for a valuation allowance on a quarterly basis.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company accounts for uncertain tax positions consistent with authoritative guidance. The guidance prescribes a “more likely than not” recognition threshold and measurement attribute for the financial statement recognition and measurement of a tax position taken or expected to be taken in a tax return. The Company recognizes interest and penalties related to unrecognized tax benefits as a component of income taxes.</p> 20000 36000 18000 32000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>5. BORROWING ARRANGEMENTS</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">On January 16, 2020, the Company entered into a Loan and Security Agreement (the “Loan Agreement”) with Silicon Valley Bank (“SVB”). Pursuant to the Loan Agreement, the Company may borrow up to (a) the lesser of (i) the revolving line of $4.0 million or (ii) the amount available under the borrowing base under a revolving line of credit which is collateralized by all the Company’s assets except intellectual property. The borrowing base is 80% of eligible accounts, as determined by SVB from the Company’s most recent borrowing base statement; provided, however, SVB has the right to decrease the foregoing percentage in its good faith business judgment to mitigate the impact of certain events or conditions, which may adversely affect the collateral or its value. Subject to an event of default, the principal amount outstanding under the revolving line of credit will accrue interest at a floating per annum rate equal to the greater of (a) the prime rate plus an additional percentage of up to 1%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 4.75%. Interest is payable monthly on the last calendar day of each month and the outstanding principal amount, the unpaid interest and all other obligations are due on the maturity date, which is 364 days from the effective date of January 13, 2020.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">On January 14, 2021, the Company entered into the First Amendment to Loan and Security Agreement (the “Amendment”) with SVB. The Amendment, among other things, extended the Revolving Line Maturity Date to July 14, 2021; provided, however, that if the Company achieved specified operating metrics on a consolidated basis on or prior to May 31, 2021 the Amended Revolving Line Maturity Date would be extended to January 13, 2022. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">On January 11, 2022, the Company entered into the Second Amendment to the Loan and Security Agreement (the “Second Amendment”) with SVB. The Second Amendment, among other things, (A) increased the available amount of the line up to the lesser of (i) $10 million or (ii) the available amount under the borrowing base, under a revolving line of credit, (B) allowed for borrowing up to $3 million of the available balance based upon eligible customer purchase orders, (C) reduced the interest rate for account advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.0%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.25%, reduces the interest rate for purchase order advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.5%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.75%, and (D) extended the maturity date to January 13, 2023.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">On January 10, 2023, the Company entered into the Third Amendment to the Loan and Security Agreement (the “Third Amendment”) with SVB. The Third Amendment, among other things, extends the Revolving Line Maturity Date to January 13, 2024, provided, however, that (i) if the Company submits a fiscal year 2024 plan of record that is generally acceptable to SVB, and (ii) the minimum net liquidity at the end of November 30, 2023 is at least $20.0 million, the Amended Revolving Line Maturity Date would be extended to January 13, 2025. The Company terminated the revolving line on January 4, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">As of November 30, 2023, the Company had not drawn against the credit facility and was in compliance with all covenants related to obligations to meet reporting requirements. The balance available to borrow under the line as of November 30, 2023 was $4,212,000.  There are no financial covenants in the agreement.</p> 4000000.0 the greater of (a) the prime rate plus an additional percentage of up to 1%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 4.75% 2022-01-13 10000000 the greater of (a) prime rate plus an additional percentage up to 1.0%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.25%, reduces the interest rate for purchase order advances under the line to the greater of (a) prime rate plus an additional percentage up to 1.5%, which additional percentage depends on the Company’s adjusted quick ratio, and (b) 3.75% 2023-01-13 20000000.0 2025-01-13 January 4, 2024 4212000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>6. COMMITMENTS AND CONTINGENCIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Purchase Obligations</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company has purchase obligations to certain suppliers. In some cases, the products the Company purchases are unique and have provisions against cancellation of the order.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Contingencies</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company may, from time to time, be involved in legal proceedings arising in the ordinary course of business. While there can be no assurances as to the ultimate outcome of any litigation involving the Company, management does not believe any pending legal proceedings will result in judgment or settlement that will have a material adverse effect on the Company’s consolidated financial position, results of operations or cash flows.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">In the normal course of business to facilitate sales of its products, the Company indemnifies other parties, including customers, with respect to certain matters, for example, including against losses arising from a breach of representations or covenants, or from intellectual property infringement or other claims. These agreements may limit the time within which an indemnification claim can be made and the amount of the claim. In addition, the Company has entered into indemnification agreements with its officers and directors, and the Company’s bylaws contain similar indemnification obligations to the Company’s agents.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">It is not possible to determine the maximum potential amount under these indemnification agreements due to the limited history of prior indemnification claims and the unique facts and circumstances involved in each particular agreement. To date, payments made by the Company under these agreements have not had a material impact on the Company’s operating results, financial position or cash flow.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>7. SHAREHOLDERS’ EQUITY</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">On August 25, 2021, the Board of Directors authorized management to take actions necessary for the execution of a $75 million shelf registration. A Registration Statement on Form S-3 was filed with the SEC on September 3, 2021. A Prospectus Supplement for an "At the Market" ("ATM") sale of $25 million of common stock was subsequently filed on September 17, 2021. On October 8, 2021, the Company executed the ATM offering by selling 1,696,729 shares of common stock at an average selling price of $14.73 per share. The gross proceeds to the Company were $25.0 million, before commission fees of $0.7 million and offering expenses of $0.3 million. Another Prospectus Supplement for an ATM sale of $25 million of common stock was subsequently filed on February 8, 2023. The Company partially executed the ATM offering by selling 208,917 shares of common stock at an average selling price of $34.78 per share. The gross proceeds to the Company were $7.3 million, before commissions of $0.2 million and offering expenses of $0.2 million. As of November 30, 2023, the remaining amount of the ATM offering was $17.7 million.</p> 75000000 1696729 14.73 700000 300000 25000000 208917 34.78 7300000 200000 200000 17700000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>8. ACCUMULATED OTHER COMPREHENSIVE LOSS </strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Changes in the components of accumulated other comprehensive loss, net of tax, were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cumulative</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Unrealized loss</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>translation adjustment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>on investments, net</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance as of May 31, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(138</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(155</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other comprehensive income (loss) before reclassifications</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">17</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">21</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance as of November 30, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(134</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(134</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr></tbody></table> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cumulative</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Unrealized loss</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>translation adjustment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>on investments, net</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance as of May 31, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(138</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(155</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other comprehensive income (loss) before reclassifications</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">17</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">21</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance as of November 30, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(134</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(134</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr></tbody></table> -138000 -17000 -155000 4000 17000 21000 -134000 0 -134000 <p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>9. REVENUE</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Revenue recognition</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company recognizes revenue when promised goods or services are transferred to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services by following a five-step process: (1) identify the contract with a customer, (2) identify the performance obligations in the contract, (3) determine the transaction price, (4) allocate the transaction price, and (5) recognize revenue when or as the Company satisfies a performance obligation, as further described below.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Performance obligations include sales of systems, contactors, spare parts, and services, as well as installation and training services included in customer contracts. A contract’s transaction price is allocated to each distinct performance obligation. In determining the transaction price, the Company evaluates whether the price is subject to refund or adjustment to determine the net consideration to which the Company expects to be entitled. The Company generally does not grant return privileges, except for defective products during the warranty period.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">For contracts that contain multiple performance obligations, the Company allocates the transaction price to the performance obligations on a relative standalone selling price basis. Standalone selling prices are based on multiple factors including, but not limited to historical discounting trends for products and services and pricing practices in different geographies. Revenue for systems and spares is recognized at a point in time, which is generally upon shipment or delivery and evidenced by transfer of title and risk of loss to the customer. Revenue from services is recognized over time as the customer receives the benefit over the contractual period of generally one year or less.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company has elected the practical expedient to not assess whether a contract has a significant financing component as the Company’s standard payment terms are less than one year. The Company sells its products primarily through a direct sales force. In certain international markets, the Company sells its products through independent distributors.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Disaggregation of revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The following presents information about the Company’s net revenues in different geographic areas, which are based upon ship-to locations, and by product category:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Asia</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18,922</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">12,216</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">38,153</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,024</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Europe</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,833</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">44</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,437</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">44</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">676</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,555</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,465</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">5,418</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">21,431</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,815</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">42,055</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">25,486</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Systems</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">10,685</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,400</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18,779</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16,494</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contactors</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,152</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,607</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,415</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,101</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,594</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">808</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,861</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,891</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">21,431</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,815</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">42,055</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">25,486</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">With the exception of the amount of service contracts and extended warranties, the Company’s product net revenues are recognized at a point in time when control transfers to the customer. The following presents net revenues based on timing of recognition:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Timing of revenue recognition:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="MARGIN: 0px 0px 0px 15px;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:15px">Products and services transferred at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,974</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14,427</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">40,985</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">24,681</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Services transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">457</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">388</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,070</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">805</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">21,431</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,815</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">42,055</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">25,486</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Contract balances   </em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Accounts receivable are recognized in the period the Company delivers goods or provides services and when the Company’s right to consideration is unconditional. Contract assets include unbilled receivables which represent revenues that are earned in advance of scheduled billings to customers. These amounts are primarily related to product sales where transfer of control has occurred but the Company has not yet invoiced. As of November 30, 2023, unbilled receivables were $2,051,000 and were included in prepaid expenses and other current assets on the accompanying Condensed Consolidated Balance Sheets. Contract assets were not significant as of May 31, 2023. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Contract liabilities include payments received in advance of performance under a contract and are satisfied as the associated revenue is recognized. Contract liabilities as of November 30, 2023 and May 31, 2023 were $151,000 and $2,853,000, respectively,  and were included in deferred revenue, short-term and deferred revenue, long-term on the accompanying Condensed Consolidated Balance Sheets. During the three and six months ended November 30, 2023, the Company recognized $2,101,000 and $2,771,000 in revenue, respectively, which were included in contract liabilities as of May 31, 2023.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Remaining performance obligations</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">On November 30, 2023, the Company had $83,000 of remaining performance obligations, which were comprised of service contracts and extended warranty contracts not yet delivered. The Company expects to recognize approximately 63.5% of its remaining performance obligations as revenue in the remainder of fiscal 2024, and an additional 36.5% in fiscal 2025 and thereafter. The foregoing excludes the value of other remaining performance obligations, as they have original durations of one year or less and excludes information about variable consideration allocated entirely to a wholly unsatisfied performance obligation.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Costs to obtain or fulfill a contract</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company generally expenses sales commissions when incurred as a component of selling, general and administrative expenses as the amortization period is typically less than one year. Additionally, the majority of the Company’s cost of fulfillment as a manufacturer of products is classified as inventory and fixed assets, which are accounted for under the respective guidance for those asset types. Other costs of contract fulfillment are immaterial due to the nature of the Company’s products and their respective manufacturing process.</p> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Asia</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18,922</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">12,216</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">38,153</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,024</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Europe</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,833</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">44</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,437</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">44</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">676</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,555</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,465</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">5,418</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">21,431</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,815</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">42,055</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">25,486</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Systems</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">10,685</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,400</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">18,779</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16,494</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contactors</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,152</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,607</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,415</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,101</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,594</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">808</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,861</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,891</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">21,431</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,815</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">42,055</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">25,486</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Timing of revenue recognition:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="MARGIN: 0px 0px 0px 15px;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:15px">Products and services transferred at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">20,974</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14,427</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">40,985</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">24,681</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Services transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">457</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">388</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,070</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">805</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">21,431</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,815</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">42,055</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">25,486</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 18922000 12216000 38153000 20024000 1833000 44000 2437000 44000 676000 2555000 1465000 5418000 21431000 14815000 42055000 25486000 10685000 7400000 18779000 16494000 9152000 6607000 20415000 7101000 1594000 808000 2861000 1891000 21431000 14815000 42055000 25486000 20974000 14427000 40985000 24681000 457000 388000 1070000 805000 21431000 14815000 42055000 25486000 2051000 151000 2853000 2101000 2771000 83000 0.635 0.365 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>10. STOCK-BASED COMPENSATION</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Stock-based compensation expense consists of expenses for stock options, restricted stock units (“RSUs”), performance RSUs (“PRSUs”), restricted shares, performance restricted shares and employee stock purchase plan (“ESPP”), purchase rights. Stock-based compensation expense for stock options and ESPP purchase rights is measured at each grant date, based on the fair value of the award using the Black-Scholes option valuation model, and is recognized as expense over the employee’s requisite service period. This model was developed for use in estimating the value of publicly traded options that have no vesting restrictions and are fully transferable. The Company’s employee stock options have characteristics significantly different from those of publicly traded options. For RSUs, PRSUs, restricted shares and performance restricted shares, stock-based compensation expense is based on the fair value of the Company’s common stock at the grant date and is recognized as expense over the employee’s requisite service period. All of the Company’s stock-based compensation is accounted for as equity instruments. See Note 13 in the Company’s Annual Report on Form 10-K for fiscal 2023 filed on August 28, 2023 for further information regarding the 2016 Equity Incentive Plan and the ESPP. On October 23, 2023, the shareholders of the Company approved the 2023 Equity Incentive Plan and on October 27, 2023, the Company filed the Form S-8 to issue awards during this quarter onwards from a pool of 1,500,000 shares. Full value awards, which are equity awards other than options, stock appreciation rights or other awards that are based solely on an increase in value of the shares following the grant date, when granted or forfeited will be counted as the same number of common stock shares added or deducted to the remaining available shares for issuance under the 2023 Equity Incentive Plan. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The following table summarizes the stock-based compensation expense for the three and six months ended November 30, 2023 and 2022:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cost of sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">101</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">85</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">164</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">177</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Research and development</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">139</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">201</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">292</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">355</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Selling, general and administrative</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">398</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">507</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">704</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">971</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">638</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">793</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,160</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,503</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">There was $170,000 and $120,000 in stock-based compensation expense capitalized as part of inventory as of November 30, 2023 and as of May 31, 2023, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company’s nonvested RSU, PRSU and restricted shares activities during the three and six months ended November 30, 2023, were as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Weighted</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Average Grant</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Date Fair</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Shares</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>(in thousands)</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Per Share</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Unvested, May 31, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">345</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6.40</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Granted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vested</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(77</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7.16</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Forfeited</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(52</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5.79</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Unvested, August 31, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">216</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6.27</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Granted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">203</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">31.51</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vested</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(28</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8.02</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Forfeited</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(1</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">29.79</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Unvested, November 30, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">390</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">19.28</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Under the ESPP, the Company issued 24,000 and 109,000 shares, respectively, during the six months ended November 30, 2023 and 2022. As of November 30, 2023 and 2022, there were 373,000 and 499,000 ESPP shares available for issuance, respectively.</p> 1500000 <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cost of sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">101</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">85</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">164</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">177</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Research and development</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">139</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">201</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">292</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">355</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Selling, general and administrative</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">398</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">507</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">704</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">971</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">638</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">793</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,160</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,503</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 101000 85000 164000 177000 139000 201000 292000 355000 398000 507000 704000 971000 638000 793000 1160000 1503000 170000 120000 <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Weighted</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Average Grant</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;"></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Date Fair</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Shares</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>(in thousands)</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Per Share</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Unvested, May 31, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">345</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6.40</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Granted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vested</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(77</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7.16</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Forfeited</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(52</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5.79</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Unvested, August 31, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">216</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6.27</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Granted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">203</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">31.51</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vested</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(28</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8.02</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Forfeited</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(1</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">29.79</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Unvested, November 30, 2023</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">390</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">19.28</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 345000 6.40 77000 7.16 52000 5.79 216000 6.27 203000 31.51 28000 8.02 1000 29.79 390000 19.28 24000 109000 373000 499000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>11. NET INCOME PER SHARE</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Basic net income per share is determined using the weighted average number of common shares outstanding during the period. Diluted net income per share is determined using the weighted average number of common shares and potential common shares (representing the hypothetical number of incremental shares issuable under the assumed exercise of outstanding stock options, and vesting of outstanding RSUs and ESPP shares) during the period using the treasury stock method. The calculation of dilutive shares outstanding excludes securities that would have an antidilutive effect on net income per share.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The following table presents the computation of basic and diluted net income per share:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands, except per share data)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Numerator:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,089</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,725</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">10,763</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,314</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Denominator:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Basic weighted average shares outstanding</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,801</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">27,579</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,725</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">27,410</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Dilutive effect of common equivalent shares outstanding</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">968</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,501</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">975</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,524</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Diluted weighted average shares outstanding</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">29,769</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">29,080</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">29,700</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">28,934</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income per share - Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.21</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.14</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.37</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.16</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income per share - Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.20</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.13</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.36</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.15</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Antidilutive employee share-based award shares, excluded</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Six Months Ended November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands, except per share data)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Numerator:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,089</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,725</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">10,763</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,314</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Denominator:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Basic weighted average shares outstanding</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,801</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">27,579</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,725</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">27,410</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Dilutive effect of common equivalent shares outstanding</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">968</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,501</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">975</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,524</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Diluted weighted average shares outstanding</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">29,769</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">29,080</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">29,700</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">28,934</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income per share - Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.21</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.14</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.37</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.16</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income per share - Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.20</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.13</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.36</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">0.15</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Antidilutive employee share-based award shares, excluded</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 6089000 3725000 10763000 4314000 28801 27579 28725 27410 968 1501 975 1524 29769 29080 29700 28934 0.21 0.14 0.37 0.16 0.20 0.13 0.36 0.15 9000 14000 4000 14000 <p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>12. SEGMENT AND CONCENTRATION INFORMATION</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker, or group, in deciding how to allocate resources and in assessing performance.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company’s chief operating decision maker, the chief executive officer, reviews discrete financial information presented on a consolidated basis for purposes of regularly making operating decisions and assessing financial performance. Accordingly, the Company considers itself to be in one operating segment.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Long-lived assets, net by geographic area are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,121</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,713</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">International</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">64</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total long-lived assets, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,185</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,759</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>November 30,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>May 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>(In thousands)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,121</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,713</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">International</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">64</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">46</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total long-lived assets, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,185</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,759</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table> 3121000 2713000 64000 46000 3185000 2759000 EXCEL 62 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( 'B&+%@'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 " !XABQ87ZX!F^X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M3L,P#(9?!>7>NDD'AZCK96BG(2$Q"<0M2KPMHDFCQ*C=VY.6K1."!^ 8^\_G MSY(;':3N(S['/F DB^EN=)U/4HGWO4^N/_QNPJXW]F#_ ML?%5L&W@UUVT7U!+ P04 " !XABQ8F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M 'B&+%A8#A:1P04 *\> 8 >&PO=V]R:W-H965T&UL MM9E=<^(V&(7_BH9V>E6"+9L$MH09<$@WLYML-M!VMIU>"%N 9VV+E65(_GU? MV6 G._*+ZUEN@K_.B1Y+EHZDT5[(K^F&XRA)KSL;I;;O>KW4W_"8I1=B MRQ.XLQ(R9@I.Y;J7;B5G02Z*HQZUK,M>S,*D,Q[EUQ[E>"0R%84)?Y0DS>*8 MR9>PO5&Z0N]\6C+UGS.U1_;1PEGO=(E"&.>I*%(B.2KZ\[$ M?N=:T.\;-4B?@@AA+$85+\LN?#BW@MH#4">A#0[P2V6R-P#@(G!RU*EF/= M,,7&(RGV1.JGP4T?Y.\F5P--F.AJG"L)=T/0J;$G=ER2+DDW3/)TU%/@J>_T M_(-^6NAIC?Z2W(M$;5(R2P(>O-7WH"QE@>BQ0%.*&CZ(W05QK%\)M:AC*(^' MRV^X#W+;)']3'*=\/T[NYZ#OYY_),E42FMR_IC=4.+AF!_T=ODNWS.?7'?C0 M4BYWO#/^Y2?[TOK-A/>#S-[ NB6LB[F/9XD*U0MYXNM0XR:*/+"8FY!QG\GL M_1-9S.8+,O\R7\SNYR90U*(E:+\$[3 M(&>ZC=C:Q(3K5RQ*3:_"0V4MH08EU ME)=)F2.%J0]M\0MG4G>F!+IS8[7A M;MVNU>\ZM@D2%;:$'):0PR8?W#QF442F60JW4^-H@]LHF1GK#U6U1+.M:@BU M&L%M((P03\1;EAA[DA,VM:T3U[7%>Y40["9XLYC+=9BLR>_@H#8H*&Y8#XKJ MVH+2"I0V&A4.'^03WPJI-/%<,969PQ'N^,48J3Q&1RU $ M:&]SPJI,:[5Q#3=HRUHE&KM1I+D-(XAQ'D"NA32W6=SG021=YOLP_9!@$A2& M1MYSY!J["C8VGD?*NCT,)XLBL)\3- MH-VZ1L9S!!V[2CHV'E6.?9&(8YCLSI7PO\( H^=HY%.F4L62 'HF(^\/"C.' MUU"X]7,WO2:P&]/!P!U2YVK4VYD0J]QCXU&EK,;/&9.*R^CET.4:J7"ONF" MR]K68I5Z;#RO5!D<9E-IF"]<((RX6?VP>8[X0ZOX0QO%']TCDHD) M$YA'=2D=#,U3_G,$(%H%(-HH -TEOI!0=RRO1IT).'R?&4PA]7<:&(?/$\[> MQ(A[CAA$JQA$&\6@!7LF=P$TWG 5^@4S4KNXY=#M4I>ZUL#8U>+BMKQ5'*)X MACGP3H( W-/R]R,\1DP3J>D)/]>RR >F!%EP*:'81N1SI"):I2+:*!4=43U] M\DF2A=@G1F#<[59R&*1,79J'*]MR5FF(-EKG.7(6WRR /DJQ"Q-CU4Q/6-9\ MLN=(1+1*1!0/,=]Q/@H("!'Y.]S6=TRXX=#M.T,CZ#EB$:UB$<5C4=Y2)Y*S M>C#IPDS=9> N1?\>BC!.Q(C];%Y9-MC##R[KS8RKUG>MTO)1%?@=2ZN(*Q3A:[ MH\6)$MM\@W$IE!)Q?KCA+.!2/P#W5T*HXXG^!^4>]?@_4$L#!!0 ( 'B& M+%C=CL96U 4 %$8 8 >&PO=V]R:W-H965T&ULK9G; M;MLX$(9?A? 6>P#LF*2LD]L302%WS/,OAE MR_,TDG";/X[%/F?1IG1*DS'%V!NG49P-YK/RV5T^G_%")G'&[G(DBC2-\N?W M+.%/EP,R>'GP-7[<2?5@/)_MHT>V8O+;_BZ'NW$=91.G+!,QSU#.MI>#!9DN M':P<2HM_8O8D6M=(I?+ ^7=U<[.Y'&"EB"5L+56("/X4CF(1)LR9-_XXW<70Z" =JP;50D\BM_^LBJA%P5;\T34?Z+ MGBI;/$#K0DB>5LZ@((VSX]_H9U6(E@.9]#C0RH%V'9P>!Z=R<,I$C\K*M*XB M&WJ^@K!U>K+IYNK MQ3W^[Y8<+Y. AHI@Z!O>EW?US](P<8O(>0^)U]K3.GI;AG+[LBSQG MF421$$R*J2F=8X").8":9%.QC];L<@"S2+#\P ;SWW\C'O[;E-P;!7N5JU/G MZMBBSY>1V"'X:&BM+MB/(CY$"21O_(C'4%X92G6"P]S%+IG,QH=V.KJ5@['; M6+W2.:EU3JPZ5SN>RY%D>0I#[<"$3/M$'N.XK=?CCD#=@OB!ZY@%NK5 URIP ML5[S B1!%ULS*.)#PH8H8](DT=4$3%S?Z:C4C8CGACUE]&J5GE7E#=0NDSR/ MF;%VGO9.QPF(WU&F6U$GQ(%9F5\K\ZW*[G*VC^(-8C^!18*)Z]F3N_0#/410(*N4-V(^FYHUDEPPQQL5?H%=$8RSAY1 MP@#!*%>L'?'MJ(";8VU[95>AVY+<,.@.7(.51VC/Q"8B7:K\+WK:*]3KK!&K%SK<;&/GI6S# FK -K0H(N+PQ6(<5> MSU=IL$9.V('7=7;,M@N&]@N0!$+MA)J3J]R$23:N(@I3U:&\B17Z%< MJ[Y&H3K%_+ %ATJI;D4\IV\-01K8$3OMK(,AX=EC?X%UJ'F8>%W=!BL0;I9- M&_11._KTT6#52G6.=1?A!I,^@M &=/0O;=&&=M1.N]4NRMF.)QN6BS_*A9E\-F\UWQ1W;Q7M M==8-[J@==[#*KT:ZD'S]?8C>X0M, 'XY@GUGP:9H44AHA/%_;#-%! \QQM 9 MH50"W0BA0%3N"PHI)%S 1)^JA9<1F_3T3M!J\CK%!IC4#LPE3U.>G96?[YZ3 M'PV& ?5>K-3/\,1UPOJ)1+?\P-('F)LO9RBE6?M89 BM1>Q9>3R6/!O+I>.9 M!MV5J='([2E9@W!J1_ABLXG5\1U,6K4'',6PDH[V,4QBHU #D$'$I+L@,MKY MOM^S)*(-NZF=W; D*M(BB22K=Z@\A>FR4^>8!X .%^:.H^-Y1!RM*KX*W3\J,&RZ#G6G#-6Z=]ZK#]L]1 M_AAG E9"6_##%SZDGQ_/KX\WDN_+(^ '+B5/R\L=BT"U,H#?MYS+EQMUJES_ M+\+\?U!+ P04 " !XABQ8ECHTAM0" #*"0 & 'AL+W=O9G,(^;@TO G\44PTOH:\F&)TU# MV^UIR$NYH%$AE@01B?-?_%P4HB(PVWL$5B&PM@7V'H%=".PLT9PL2VN"!7:& MC&X04]'230VRVF1JF0V)U=^X$$S>)5(G'/=N-IG.%M,)DJ/%WZD!S*3?>*-2_R-:T] M:\[HNH5LXPQ9AF4WR-W#\EO\@FRS2:W+Y,L*6&4%K,S._I<*-"69V[:;;=7C M=\X3[,%(D\\7![8&S?GTP>P:WYI2_D]FM0K8907L0^[.7#XYP!CX2+:;]W2& M$LS0&H_4R+_626#M&RS"'^KJ:SI&@&F:[Q&R?AIGW'\*I""@CO\%O MPLT].Q42TY"?+=X]4=7 &G.G9.Z\BYEPGC;S=G9(MED/1=0@NR5D]UV0\JW/ M!8Y]$J^:2+M'20]%U$A[)6GO(*E+HTB^^]_2IKVWM.F1H!ICOV3LG\#XIA[M M[]2IU]GMT6-1-=I!23LXG79_=PYV&*Q^W^IND39%=>Q!,ZEI_-VJC--9CS1I M87F,N#%L%UFO;+3JE'.+V8K$'(6PE#JCU9,&+#\XY!-!DVSO?:1"[N39,)"' M+6 J0-Y?4BI>)VH[+X]OSA]02P,$% @ >(8L6.7BY.7^!@ _R@ !@ M !X;"]W;W)K7+['ES!EJ> [)(:6+ MU[SXIUQP+M#;:IF5EX.%$.OSX;"<+O@J*<_R-<_D?^9YL4J$O"Q>AN6ZX,FL M#EHMAQ1C;[A*TFPPNJA_>RA&%_E&+-.,/Q2HW*Q62?'?-5_FKY<#,MC_\)B^ M+$3UPW!TL4Y>^(2+;^N'0EX-#RRS=,6S,LTS5/#YY>"*G,>,50$UXH^4OY9' MWU$EY3G/_ZDN;F:7 US=$5_RJ:@H$OFQY6.^7%9,\C[^;4@'AS:KP./O>_:O MM7@IYCDI^3A?_IG.Q.)R$ S0C,^3S5(\YJ^_\4:06_%-\V59_T6O#18/T'13 MBGS5!,L[6*79[C-Y:SKB*$#RP &T":!J@-,3P)H =FH+3A/@G-J"VP34TH<[ M[77'18E(1A=%_HJ*"BW9JB]U[]?1LK_2K"J4B2CD?U,9)T;C^[LHOIO$$9+? M)O>_WT173_)B\B0_;N.[IPFZ_XKN'^+'JZ<;"4 ?OV7)9I8*/ON$OJ!ODPA] M_/ )?4!IAIX6^:9,LEEY,13RSBK^X;2YB^O=7=">NV#H-L_$HD1Q-N,S(#XR MQWN&^*'LD4.WT'VW7%,CX5V^/4,,?T844P;_@7J5)MD MD4VRV!)9I_N=0_<[)O;14RZ2I9R4ZR1 .=B%>W5XM3!L1Y0XC%P,M\>=JZ.( M$Q"WBXITE$.QJZ!BH$77";P#JJ/3/>ATC64VSDN!\OE>*5ANKLURLTD6V22+ M+9%UTN =TN"=4&[3;C*@7.QHW.."PH[/E++345Z(':7J=! EA'A*U0$-,APZ M<-7Y![F^4>ZO15Z6:%WD\U1 *GU 9>@&BDH=Y8=$&8&1#J(X9*&B$FB0LI#" M*H.#RL XMN[7O$A$FKT@_B8]9LE+<'@%-H>73;+()EELB:R3B?"0B=!8;X^2 M,2FF"R2=DG2T6VG5U])X@[47ZJ40^E0I/0#DNFKIZ2#'H6KEZ2"&G1 N/(); M@XF-@B=R$R +[S-ZX9DLPF4M/)E)+YN6HBK*+3B[-*R=NW&).NX % U\=5$# M4%Y(?44^@'(=C'OT'QELJIH'44(<]5)%8 % M3F_6::N:&E7?9--\Q=&\R%=[[7D&:Z: 9D]+M(YB3J E6D?)N9JID@&NT&$] MDEN73(PN4$H67,X70NZ%*NV?4<;!4=W0=*I16V]*C)YK M7\_/?)X7O+(+V[0^*Y&7^TX0R5O/J';UA$L3H:K74\.%]N@%;I^4<,'6!JEG',&T: S ]GHFTUI"8O>$=WP]F4)ZO M[8(\'&AIU5',IUI9ZRB95G7 QP!,;O3ZQG)K#HG9';8ZD9RJ4;E("GC[1:P: M1*MLD56VV!9;-R.M221FEWB=E.D4S, NSC^J 'Q&M=4#0A%UUP6BF&:+0*Z> MJ82VMI":;6&4+C<"/.N[;B(5C8I$$$34Z1)$:9,'S.7V2&R='R7&836IQE&) M-B6?5>>CAZ&%ILERNEGN+!$XSJC14KYWG%EEBZRRQ;;8NBEJ;2HUV]3><49U MCTB# *L##8+YKA^J90BQ::M #+(YI&<+0EMG2LW.U#36 )\9^IZZBH$P'&!5 M)\B&L:H3@ 4AZUG':.M)J=F32GLRVTP%^NN6KYYY\3XUIEBZRRQ;;8NDEH#3L]Y3#7<(C;Q'>,9QBH)F , MP1R,?77\ZS 6DE#=H0$PRMRP;\%M_3KU?_@) C5:_G>7GDVVR"I;;(NMFXQV M4T&-%OGTYP@-3^?0QE=+:PR@/"?4"E!'D=!3S\9B"$;QT8%]5W-KVZG9MD]D M+Z93Z?F,*Y"1X]T5:),MLLH6VV+K/K5NMQ@,?_<*Q(R[DW<_N+;)%EEEBVVQ M=9/0;H+8*Z%KQXJ5^DZZ4>C:9V+VW<_CU\+;>5?V.FO+[-3D?$^#WB)S' MNW?Q6OK=JX&W2?&29B5:\KEL"I_YODSWG0N2K^NN")S-> M5 #Y_WF>B_U%U<#AG=A*Q-0LLI2*D9:+.5JH.LBC$F&Q0E;$0I?%HQG6,*4+W6QX@1'!2E+=ATE2C)"1<(HXF0QTL[-0=!7^ +PD)"-V!HCI>21L:]J,HE&FJ$*(BD)I8J MX6=-QB1-52 HXUL54ZM3*N+V^#GZ9:$=M#QB0<8L_9Q$,AYIIQJ*R +GJ;QE MFRM2Z>FI>"%+1?$7;2JLH:$P%Y)E%1DJR!):_N*GRHS>> C&,VO/TW\\SN8S._@9QK,[N;H^A(^36]N@RO 31X"-)G! M/$"']Q3G42))=(2.T?W<1X<'1^@ )13=Q2P7F$9BJ$NH4672PZJ>B[(>ZX5Z M;#1E5,8"!30B40??W\]W]_!U\*8VR'HVZ,+:&W#&UB?(-CX@R[#LCGK&KZ=; M77+^+7OPU]EWS+#KTV(7\>S_>5JZ#D69UNE.J^[*@5CAD(PTN P%X6NB>>_? MF:[QL6M'WC*8_Y;!@C<*MK-W3KUWSK[HW@P>G82&+"-=&U!RW8*KWI:UYQJG M9T-]O6UL&V3WK=XNR&^#3*/OVKNHH(UR;-.I03L*>[7"WF\5AC&F2Z(NH3#/ M\A2K9PA)CJE08_4R15_@5H673G;94";H;975;WC01I@- ]H(IR&^C3AV7M#N MUMK=/]">4^@9TN0'B= 2>@5TF#(ACA#(3^B:E/([+V>W59G1T-]&'+L- ]H0 ML^%BL#?*C@']VH#^7@/&+(-_FEAU,&NRYZ#W.P[Z64/!N V"@]YPPF^#X*"? M-O>ZC7(LM[G9^M8#GA&^+#HG@4*64UG>SO5JW9R=%SU)8_W"'(S-CG4?FKFR M]_H5ONP$IY@O$RI02A:0RCCIPZ;PLKLJ)Y*MBO;AD4EH1HIA# TIX0H WQ>, MR>>)2E"WN-Y/4$L#!!0 ( 'B&+%@"X^N]N D +9' 8 >&PO=V]R M:W-H965T&ULO9QO<]HZ%L:_BH>]L]O.-,62_(=TD\RT($\S MV<^19/V.#1=/1?F] M6@A1>S]6R[RZ'"SJ>OUN.*QF"[%*J[?%6N3R/_=%N4IK^;9\&%;K4J3S;:/5 M ]>9>$?M-@&_%')IZJ MH]=>]K' M^@-OMJGJ8K5O+(]@E>6[W^F/O1%'#0@[T8#N&]"N#=B^ =,:T/A$@V#?(- : ML%,-PGV#4&L0G#KI:-\@VGJ_,VOK]"2MTZN+LGCRRB9:JC4OMNG:MI8&9WDS MLJ9U*?^;R7;UU?CSS83?3/G$DZ^FGW^_GKR_DV^F=_+7)WYS-_4^)][TX_M; M_O'S[Q-^._V'Q__U]?KNW]ZKKWFZF6>UF+_VSKROTXGWZK?77K5(2U%Y6>[= M+8I-E>;SZHWWF_+^8EC+ V^Z'\[V!_EA=Y#TQ$'>%76Z1)J-S MK%C)E6#13-%'X2V+"K,E,:O>BEHN'5*2IV6>Y0^5]^JXHXFXSV99_5H5'LH! M:Q;\M)5LA<]7L,HV16M)S &$+B:!2I81R&G1$_ M5(,2)"B24NP0IO@3'/P)C/Y<5]6F,<@K[IMIV2P95;-D>)M\+F>J6*V7Q4\A MO+6TL7J> IAIQF[ZCO@ C/@XTKUUV2%W*98X$E/R&1[R&;K,YVY68/D,00H( M(52; R$8D[&6)4Q&']HQ15+5\WCLHF=9G-F@O,LZM9;9P6QJ/H.RTBX,(9 M";1U:>*R1^Y2+'$DIN0[/N0[?L%\GYXV,9(B2K0%?QPC"[Z61EQ(GSDP2I\Y MI@C%R='!R9'9R<:(LV];"YN-G-S%I%6F<04 MH5AQ?K#BW&C%C83?+)P]UB%(T9N>A[J=3FG*JEKA24W/8 A4Q$Q4RU.TY MA+P2(CL? OF)QH&>&@RA8HG^^E"'<7*HZSL!+"J*CGM5;6IYBIB!REDAP=Q/ M[_$/F8DQ'9F<=LF=JB6NU-2TMMA$S-SDK)Y ((A$(5C[(1@Q/5>8#ECV[5QD M#%'-:LF(6-#HA8H*YL/H/44@%YV!K9#+'KE3M<25FIKTE@&)&0)?JK) (,2= M,3"!SNUDT$&'(T%@ IE"U!LM+5%2,U'VJ2U0B&PC7R_2(T'@ODD''6[728PA MJA\M0E([0IXN,% (9RRFH6Z!E00G]A!N#TELAZ-Z<'3WS8R+OU!EH)#SB.X. M# 'N6$.XO:/$J*):TU(8-5/87ZLP4(QV=%L@A %;H RPQ=Y38I11?6FQB_;& M+BN=FB5[W[+%L M6&)QVRIVJ):[4U!RVV$5[8Y<]APAV(14&BF&77F% M- * M Q*'5!BP*$.%@;;81TA4U MTY6S"H.YG][C'^(3H_K=/*==ZPAW-Y18E11K6F!C)F![*\5&QB"43J/(3' %FL( M[]!38I11?6D)C'6\\34KJAIL8HK[>U'*Y1CU!GF>+];W*_L@XU+;080QWR!AV!J_3$::?Z Y#+ ;2"30 M[\/LP\Q#'=$B5&90O]@A<7)WK=]SP*("J4;QH1ZT.!*8<<3=IT:,_?3^V @D M!? XC=,>N5.UQ)6:FM46B@(S%#FKQ 203V(]$>-]D&ECTT6'(T'ZQL88HIK5 M\E)@YJ67JL.8#Z/W#,&>AP2?K'+9)7>JEKA24[-^]&DY,Q^^5!TF@ !W%@3Z M\X/[*.,4ZB+$D2@PASHC9= B96!&RCY5F "B6Q3JCWL@0<"0#CK(U' FL(MX7N2V)V;^IBO?U2 MDV]%71>K[O0F0_[\OBOKY3?,]*8>OZKGZ/U!+ P04 " !XABQ8 MR\6 6]8& #7' & 'AL+W=OE2&.J MX#9]'LAURFAH#L71@#B./X@I3WK3"_/L,9U>B$Q%/&&/*9)9'-/T]9I%8GO9 MP[W=@V_\>:7T@\'T8DV?V9RI[^O'%.X&I9:0QRR17"0H9O M=]H_&>/!F 65;":B'SQ4J\O>N(="MJ19I+Z)[6=6&.1I?8&(I/D7;0M9IX>" M3"H1%X[F]N[^>W-PBNY@]?[FZNGN!F_@1_ MOM[>/\W1PR1J)5$MTG(PL/S ["H-(OLS+HFG0KOQ>8C M+)8C*3OPP+#TP+!+^_0> M.A)/ A$SFYGY6=^XO!*7UXEKKD3PLZ\; M08@ '71'24U_82_ZVHHVU^CMHP4OU4R*;%.NK'NN5##K;(J8E!#*-6LV1?+ M?@8W5$JFK&PP:2!SW5$-O47&\^WHL5.QG=.)_U%7A!E!8 )"H<@6:IE%4!+& MTW;FXU&1SQ.F"1^UU7*@_4B$? M2]NA,TCE#/)6C9@ Z9['^(8N(FMG+K0<=%WB-%++(D9\/&Z)6$7RN)-!IW=0 MNXD2*43$"LYMUN-D,O'KX"QBKC-IRZ>*@'$W S^F;$UYN".V/(F$6K$4YLPT MU1VGO6 +W0>@"!EZ=>P6,3QIJ]J*HW$W29?17]/7UM W";?O.9-)':%%C&"G M!6%%S+B3R4P/SUCE7"M"WQ+_T; .T"*%G6$+Q^"*#/%;;+AD$.40*@BR-+/[ ML,EN?3)RZAQH$<.$X!:$%0WB;AY\J'')7H.S@K70V[@1;HN0.VD+=\6"N)L& M[XI9B[ZP[J1LDA@F=8A-F99:)Q7-D6Z:NW_O!&@#39ILYNY3;[% -:4\XK>4 M.JE8C[S!>K5-*9^'WC&VDJ/2W;&T'7JAHCO237>/61JLJ&[2,&-!#"%RZM4T M;/8KXVL]'EI]T.2U_G!8GU9L4GM]\A!R17ZDF_Q@L@H8"XNPQ51EJ0G6X5!K M3[@FX^&QXS1P-\5:"IE4I$C>(,5]1[\%LTEN#8@V_AOY'FG!63$@Z69 :T&? M9'IKY\D3"AOL.ZK[J%OI ML;0=>J&B8M)-Q8>EPJ7,P E,9R"P2@R[B=0O)5"6A#";L7@=B5?&T#JBB3VH M%CIV)G6:L4EAW):8%6F3;M*>KRBX"(:*=5%)H=FL@!G1EJO52D0AA!?**T&[ M% 4[X8A*>:! >F)/>^R-BZ6Z= /YC3KK5Q."^HJU-*UO*)UF8)J2W[4KNWKOP[DEA]F[T9VC!GGF2%%T#IB N0G2"3ZUF-<<#UR%.?;^R MB6&O[;V86TT2;OYNMNS_']ACV6=^?CB5>W9[#WB2AFZ;/Y M(8L6 LG.X^G*YYP;+L+B %]G%(74"PUTK]-B2&C#:9H3,3V.U?7\\D MO*1;U$KM!XCML7]^C!VGMY/J5>>(!M[*0NB^EQNSN0T"G>98,NW+#0HZ64E5 M,D.L6@=ZHY!ESJ@L@C@,.T')N/ &/2>;J4%/5J;@ F<*=%663+T/L9"[OA=Y M>\&FQQA$5A@2B,/QM,[^#2&I[2>_1'ESOELF0: M1[+XG63B"9W,-B_#09/XY'R>0%DM%H^F/R,IX\P6SZZW@T?ECT M D->K6V0-AZ&M8?X P\=>);"Y!H>1(;9N7U T1Y"CO$-2M0JV&Y1.7:;<'?+IS:9K1_ M\0DUDH8(IW**HD-)#RK_<,/$..V4 MHB#:VH'F:^&&@O+BA)X:H%G@I$S3D=&ZI3B.,TC,(Q>,YI,R6=#@UL#^S]Y; MPJEHI[&;?$04DX,H=$M"JE/:S-YELW#IV:CLL>[_^9NPD&[HLQ]U5_=!B M)YZ99Y[Q//;F:*7--YL#./902&6/>[ESY>%@8),<"F[[N@2%;S)M"NYP:I8# M6QK@J3\->\^"C M6.:.'@Q.CDJ^A%MP=^4'@[-!ZR45!2@KM&(&LN/>Z?#P;$+K_8+/ E:V,V:4 MR4+K;S2Y3(][,0$""8DC#QS_W,,Y2$F.$,;WVF>O#4F&W7'C_<+GCKDLN(5S M+;^(U.7'O8,>2R'CE70?]>I/J/.9DK]$2^O_9ZNP=CSKL:2R3A>U,2(HA I_ M^4/-0\?@(-YA,*H-1AYW".11_LX=/SDR>L4,K49O-/"I>FL$)Q05Y=89?"O0 MSIUL?<7[.+RYO3F_/+TBEW>W'[Z>'?][N;3[=' 82!:/DAJ MIV?!Z6B'TQF[ULKEEKU3*:2/[0<(L$4Y:E">C9YU>*/O^VP<1VP4C\;/^!NW M68^]O_'/S3HXG3SME-KGT)8\@>,>]H<%_#6?QVV<@3UK(D^>\_U?( MSSL=]=D+_+(++@S[S&4%3&?L&KBM#&!G.LM>_78P&H[>LBNX!\F&[?S]@@C@ M"PE,J++"E2[GCMJ8^I%]K[2#E)5&) ZTKQ]"MN=DC?,!0:)E)T+A(N&;<6 MT!B?2<$70@HGT$ T[8RM8+[A@GX-8-0"N.Q$Y09\ZZ:L*E$)'@>G>%840G*, MJZPS5EA)#X-N(?%D(*"TFK[]2!;/*X29 SS9G&4J[]:FDPB:Z0F 4OU[" M"WJ"^6O&F>\,?'_O=U-EA5K6X6L"]-;&$2J154H+A7*(S>(VX@Y#5]AA6!5D M![57,7A(Y+DJNUC[V_*UM]G81^BEE&#:C M3@OS81)Z11TDA+WO#:1S%<':1,(A/@ M>PO;<05>.UDF%!9%( /=(V''=GAIKC\&<88KFX&QJ)MN!:#:"I-E4^5.H*)[ M*J8A'\K?Y0; &UGQ0-6@>Q'0O6@;55"1A!NS]G34PHD);'+N'"Y11QI]3>![ M)1!->,>3))AC,X"X#U+>/BSYVO>:%TDP#J_O3"->0TM,A>@ZY$9T'!C]( K2 MW4[2*?Y#64<[?&1S%$NLJ*LW[=.:&&[_XB]XNKDICV@K&P]3*)1[%PA>K#<[ MSJW+E]+A35R?31B[K26A_SY$OWX]D[3'LV>EP4EO5 MDRNMEOMX?A9=(G=$Q::OC6FTB?>"ROAXLUDG.$V>I/F1UOQ?AL?1\*!1TC!^ M(<.C&6IG8UE/_IEAW!GQM$FRGMSZ!MBF>+>L[WE%GQ/9KX=S]J9^@!+_RZHU M.8CB^:0#@!Y,YT\#\-OSA2)K'FX -TP202 ^--F$0?+>XYWKY18O;Q MZ-FWF#">10O7I?L1^I5PN;_C)U5128\J9$/H#>3TX0$O_Q0Z8HKNT1FB6J-^ MA,6./S#(,I02A%_Z3Q24@;^\TYU9V\W5EP*C#&_P^AOX2T*3O*)B53*< [H$ MXR/8_E._*0>=#P$%F*7_W(%$$8KP3:!]VGY1.0T?$C;+P^>8:VZ65 @)&9K& M_?FTQTSXQ!$F3I?^L\)".Z<+/\R!XT\,6H#O,XT_ENH)!6B_,YW\#5!+ P04 M " !XABQ8\S:PRJP% W#0 &0 'AL+W=O7<.EL9^=W,I/=T7N7:'K;GWY7Z[[=*Y+(3;,Z74 M>#,UMA >4SMKN])*D85-1=Y..IU!NQ!*MXX.PMJU/3HPE<^5EM>67%44PJY. M9&Z6AZVXM5ZX4;.YYX7VT4$I9O)6^J_EM<6LO4')5"&U4T:3E=/#UG&\?])C M^2#PCY)+MS4FUF1BS'>>7&2'K0X3DKE,/2,(/!;R5.8Y X'&CP:SM3F2-VZ/ MU^CG07?H,A%.GIK\F\K\_+ U:E$FIZ+*_8U9?I*-/GW&2TWNPB\M:]EDT**T M/3HX_'U^=GM'MI[.S.[JX.O]R@!G1IM)\[.M.9S![N;X/6AENRYG:2O IX919[U.U$E'22[BMXW8VN MW8#7_1.ZUE"]YZ$X5?9=*5)YV$(N.&D7LG7T]J]XT/GP"M'>AFCO-?3_1_15 MJ.>)=O?HQ2/H0B^D]L8JZ1Z,4X-,=%YF9*;DYY*F)D=**SW;)WA*%A-I@[ D?-1;R 7#>,A M!G$_&O>[] VI34I3:4TJG:,XCL;)@/K1<-"CL ML ,E5E+8!P;Y+%%7YB;/2!70$"@XV]%[UC_J0WU^=N,.0-,Y'&P?L^_2+@5K MC!+\]GI]NI/.;PGT@D WBI,8EAF/1W1>6:U\966 FJI['CM*@N"PD^!_P&:. M^R.*.U&O/P9-Y_911].JJ'+!]L@D@BI5HBZPP!&%L5[]K!=VAM%XV*5W/!AV M.AB\80JC/GLC&@+Q?<"$Q6!8$%9%0*VV;&HLY6P=0K@4>^RFK$H]+86U0GL. MECLXY-04I= K#H^%RK"(;A4\]0LT-3 (CBF?(@@?9"$IT6<0\14O6IZD9J;5 M3_:\#C+-;D=NKLI29GOT;:YR&=ZM24@]0SMS'*[RWG/_6FPVTH]*Y,H'IC,K MBCK\FZB6+L*F-*\RA%;3K_(5%0:.0@[R&GM](?(*!L:43UT#0C7E.4N+TFAV MN:O*$MED ;K%[NU?HR0>?G!K_;$1.3>K':9 9SI%OX3"D]6&\U2HG /%PI! M6Z(7SLT4M+ TM:9X5O=U5 3_E9\P7#DS:.(V5@H5V*B@I&7@>6$(P.I M9=G_''[.PPC";FU!+5$F8X/"&2'A0TBZ%K=MS1I[ M4VN"=]:7)W9W.A>ZB;,M)?]V6WP#[M. SRJ[#A\_M[+QH;KG4.,&+KF!/RQG MH4ZQ& ;)/ICQMNU^_U#\%F OOWVA,R1;HQ.1"PW/-KDYD3.E-9-N2G!C8"[K M"7Y[28_' R[T/13*XS2U%7<7ML"6YLJYBNO6+P,T0/$ E9.29$@Q*!QG_^+J M55=AQ$7)40*Z2$9YCT[ >S>N%NNC=L/?((8G--Q4AI0"W:;M.MJ)ZVH8QR-^ M)/4L&?'CD;[PP%--D]#/XOC!^*-$J'..-97KR4*$6H6BO,L%] \V\=-P-X4T M>H!Q7'K>T& 4*OM@W'E*:SBF.+@J[H5N'(W@Y>?N2NVMRRSP9^'*SH6MTKZ^ MUVY6-U\%Q_5E^)=X_4EQ*2S"!@DAI]C:V1OV6V3K:WH]\:8,5^.)\5 F#.?X MLI&6!?!^:HQ?3_B S;?2T7]02P,$% @ >(8L6$3VI'[[! ;0P !D M !X;"]W;W)K&ULM5=-;]LX$/TKA%KT9-BRG*;9 M?!AHLEUL#^T63=O=*R6-+384J9)4%/?7]PTE.W+CY!!@ <,6J9DW[Y$S0_J\ ML^[&5T1!W-7:^(ND"J$YG6Y;8-6ACXYX=NZEFYS2=IV%\D\V4Y\5NLJ\,1L>=[(-5U3 M^-I\?>!(LL_99#+ZMB M73)8@!66"'6@S%K0:D6QU**EXXB(%HV4">14+1I\VY+)EH09I#65L;9*T38 M5<$+\D&AZ# EC6DAX "N++^C0JCAMA%V)4OG" 1Q85$.7 UV04P9V,H@? MK72(O*<0&B"^Y(@C@0R]MTH ?YFEDS1-H_B7B^/XO*40*D?]&GMU)^J^0(@+ M1""]J<[)[5)\PLO6]*KT9B*Z2A45=@ M+\IJL%A@KC<<=+MEG0I5977)V1#GZMN?C)2ESU77?:_JWL_)EY)9$9.9'IUS*B-6\ZTM9*YTBIL1$VA0NIU M%3G*-]R_R3G8IBG6+M2(=LK]S1SJ7*HA".K?!>G32E1YRI&_= MGE8R..D&15PE0R#9^3[U.Z4U^'(I#.6"Q3#1=:R(5=,=;Q]C6>BY)>=I(H9, MV.?!UFV DI]43L4WJ5O9'[H:I[Z\!T0'RK7"<57V42%HOPM$BOULC4W' MT@ M>7C:"&-#_]ZW2*1A%:,4/R9(^U4+T]N'W$0G M_1XUN<9MQ@>V.)0A$^Z4M32XM.!Z$@[19\3'^1?D B(+-8W[PH[>QTTQ-#1#>5 G#[:M#Z20D.JW)B&+PK8&-!BD-5NBL>=;KQC/ M[TK8A%BN0K:H*:=PN'!W7K>JY&@]\'8D^! MG,HY$P0?)EEZ=FB%XJOY66Q7 M:Q,CQJ[CN2O$5!YR/BZ]# &8[>B,N:_ >-I%JS'6[PA)>XSMT_YB-KH UN76\Z/)683?[V^!N=G>7?MM?(>_-^XOX!^G62'^A M:077=/KF=2)&PO=V]R:W-H965TV:-(@Z::?:8FVV%"B2E)V MO+]^WY"2?-1VL^@6*%)9&LZ\N=Z,=#[7YM$F0CCVE*K,7C02Y_(W[;:-$I%R MV]*YR/!DHDW*'7Z::=OF1O#8'TI5N]?IG+13+K/&Y;F_=VLNSW7AE,S$K6&V M2%-N%B.A]/RBT6U4-^[D-'%THWUYGO.IN!?N[_S6X%>[UA++5&16ZHP9,;EH M#+MO1@.2]P(/4LSMRC4C3\9:/]*/C_%%HT. A!*1(PT<_\W$E5"*% '&CU)G MHS9)!U>O*^WOO>_P9_R5*?XY)7Z25]7_9 M/,CV^@T6%=;IM#P,!*G,PO_\J8S#RH'3SHX#O?) S^,.ACS*M]SQRW.CY\R0 M-+31A7?5GP8XF5%2[IW!4XES[G+TY>[NR[>/-Q_8\.YN>//AW?6[FZ_WYVT' MW231CDH]HZ"GMT//";O6F4LL>Y?%(EX_WP:F&EBO C;J[55XHVU .:I2# M?=K_ \K]>HY;;+LJ]B5CGWA6H %9]\1'%S%VB6!7.LUYMF B<\*(F,G,:<;9 M9\W1.UG,[D54&.D6;#@U0J O'3NDG/9ZG3,O5S_R-[MG1ZAFE[![J62$ M%GS@2HD%&_'LD1V6Y^X?1I5PB]T6QA89\@4;:T,!+G(Z<,B/ MO( 2%FEA>L(.9;ACQ$RKFPSV=<*CY6 M@A6H9^,?!6.DA6B@?,"W*(\0/NG8/)%1PJ1EZ%'%$52NY#\(['C!$(=57R@ MW==GEG$@=Y:)ITCDCC( M@)]%5RQW("(C5NTV->?L<#(:>9(F>BYDP M3:\U@2T?<.)"RDDL$ PZ2WT42D"/G0XV08/(P0("OE$G4&8*/M,+SD $J%!X#(V8! MKB831-2K6>:%#A**&5>%:+'[8OS="Z$!2MUDK"3[4(:YD5DD^IU(:%HTDMQKAS?"'I!19SF6\$D^(A8C175$-4&XP;N(?0E!(SW M0&XQPM=E)#6=-H/=-I:X]B!O]G=P['TX+TT@#M$ MM<=5Q3^7>.M#&YS[, I443]O4J@0NA ,ER",Z!'QY 2-; _CKJ[6SU2MUU54 MWOK.T^Q3H98N;64!EZ"&Y63-6V12XFG,;"XB.9&X(BX+19X*9V3D:XQ3\UJM M)$4V)LZ1_CZ:$^G&7R"X1G7TNP& -^+=@_1>Z'-=*"@4*][JS;SUUO,6;/1^ MD3?D!GRSGKAZ<#TC>9OG=^1P4VQ[*@^'1T 6"#?D5[1J-S5_.1F ='5%GHFQBF@LK&@*L@_X2PV3#_)@KGD7"VXHA#YEZ M[(65&<;SPD0)31YM@(6B'H>FS^M+_'?];?UZ3?_WQ[M,YF:Z2^I>/[ZQU? MOFO\HN._)M+\1L-O'-_1[QM2^YC;/H^XUST'@^_B;F* #?ZVQ3BE[0BKB;28 MTVPA,*=)#2J ^P;%PHA:*MD?VYS(:*VB=2NB5=:W+6# P3)7%:E@*94I-IQ, M.!0=4AP3;!X6-+A'RO$J*-(Q/*]>!\D$1)2@Q>$ $[LTP[%AL^1Q%-L=#:>8@'@V:OVVMV.AVO%NL6K5R91@T!8B3Y*EP9 M6I]7+=/:]BK=7OG* 8:?^F\Y]'8%S@X?/.J[]>>B8?A*LA0/WYJNN9DBR*B@ M"8YVP"&-\,Y2_7 Z]]],QMIAG/C+1' X3P)X/M':53_(0/T1[?)?4$L#!!0 M ( 'B&+%@_[,]@W00 &8+ 9 >&PO=V]R:W-H965T$;^M:NJ<+ MTG9WGAUE_8.O:E,%?C!9+AJYH7L*?S=W#G>3/4JA:C)>62,?9YZ.SBV.. MCP'_*-KYP;7@2M;6?N>;J^(\FS(ATI0'1I#XV]**M&8@T/C186;[E+QP>-VC M_Q%K1RUKZ6EE]3=5A.H\.\U$0:5L=?AJ=W]15\\'QLNM]O%7[%+L?)J)O/7! MUMUB,*B52?_RL=-AL.#TK06S;L$L\DZ)(LLO,LCEPMF=;BZ^?/R9G5U>;^8!*3@P$G> MP5TDN-D;<"?BVII0>7%I"BJ>KY^ VI[?K.=W,3L(>&.W8S&?CL1L.IL?P)OO MZYU'O/G_56^".WX=CEOFS#');2E;OG]W=#+]=(#L\9[L\2'T_T[V M,-S)6!Q$%'>MRRM87-RNM=I(;ALO'BH2*ULWTCP)O!1-'V0'0<&*G%S $$![ M-XU6Y/Q87.'.UB1RA/N1"$!JG"W://AXT\/VD%Y(1Z(UZD=+0IH"^;9QR5;Y MF$9ND,$' )H;/AEET@9##"1V]:Q#J58MP@@CY*_54H3 MASDNVS"XL4)ZWSKF#+ H%N-@;BB,%0"T(6>9 ,0\M0J=KATOSCV0:X1*# 8F M1F,0A06FL0&)(/J6(@(F-C-_I92=TAJSU",WE_-O6VPBC,6H8>*X8GQ?7F0@DX)1*E/A2)/DV*-CV=>,5-'<6B8,!# ;@EZ,7/:7 M.GDR7\3J35S+(K4D+Y>U;3EK:KP8%[=+%D6WP>'%T '= 3W%V1\F6A ,RJN MHC/P&AK'G(5R*-^RXCV%EY9;/VFYB\Y+0PBE:NE^2_5B9KV&A,X"$]2##DFM M!=]ZM=9Q9!2$0O =CCW.'V)5MS4B A;%!DG2M,CK.,33H7*+EGH:<7.@4*5@ M/PP7B-LX97\O(6WQ7HAN6J(10GJ8*Y>WM0]IW PG6[1=='S>LCA[(O +*D,3 MC?#ZJ3<,-GS]]&PGAU4-JHA#@H6J9#$<%@JKWAX27>.C+[II,'IE5#R;">/7 M/JF3P=D'7;N))SPV K8A'8/V3_>'R,_I[/0K/)U KZ7;H&\Q-DLLG8X_?LB$ M2Z>Z=!-L$T]2:QLP(N)EA8,P.0[ ^]+"!]T-)]@?K9<_ 5!+ P04 " !X MABQ8.]L+ [,# $"0 &0 'AL+W=OT7V)>99YYYV_%X)]56;Q -/!>BU!-O8TQUZ?LZW6#!=%]66-)-+E7! M#&W5VM>50I8YI4+X41 ,_8+QTIN.W=F#FHYE;00O\4&!KHN"J9*&W M/UCP]<;8 W\ZKM@:EVB^5 ^*=GZ'DO$"2\UE"0KSB3<++^<#*^\$_N:XTT=K ML)ZLI-S:S:=LX@66$ I,C45@]/>$5RB$!2(:7UM,KS-I%8_7>_2/SG?R9<4T M7DGQ#\_,9N*-/,@P9[4P"[F[Q=:?__Y^F:QA)N_OGQZ_'?L&P*VUW[:@LP;D.@'($.XDZ79:+@I,\R^ MU?>)4,Z8BE. M/*I_C>H)O>G[=^$P^'""XJ"C.#B%_E:*IT&2/ASCO'\WBL+D0PL']R7,ZC75 M%$3G+K1A#\P&82Z9RD#F<,T5-8M4&EAM-E+Q_S"C8BNI.ZD/#1@)AFW1M9(L M-928HM;4RT"O@X/"9TQKUVX$Q^ L.:>B%<(>4(V*G/IXS;51S,KT80:+HSTL M#3.-)=K8IH/E'S'LF(:<"Z*RXV;CS"QOKJS($BN27Z&"N/''(CXHJ2MRH]:P MK*M*-("6("O!FQD'<,?4%HT'OWFSQSOO=]!,H*5\%AT(TS:516&I&YEN'0]= MKS1^K0E1O+2DON$1)GLB%.Q[BJ4]'!T'^TH6%2M?VDB1OCTD$F0N1\7+-:Q> M@%XM89=A;W@Q["71!46/4E(#I*@3NC9[9MG_:I;4I4H9WF%H 5 MLK;=F'\?&QOWLS Y9+__VB/H'TVF M7:S5]-'A!L,Z2ZTV[$SYK)=A!OO@^H M9=>=2FOW&&N@^?*;_ M U!+ P04 " !XABQ82G=^?<<" !9!@ &0 'AL+W=OK8 MS':@W:_?V0D9FUHT3?N"[WQW[]Z![]$[2/6D$T0#SQD7NN\EQNRZOJ^C!#.F MZW*'@B(;J3)FR%5;7^\4LM@59=P/@^#*SU@JO$'/W^(/>CFUQB6:UFROR_ HE3C,4.I4"%&[ZWK#1';5L MODMX3/&@3VRPDZRE?++.;=SW DL(.4;&(C Z]CA&SBT0T?A>8GI52UMX:A_1 MO[C9:98UTSB6_&L:FZ3O=3R(<<-R;A;R<(/E/&V+%TFNW2<)844S/-(\S^/7:"V7D>U"]35.Q9AWZ,-T:CVZ T^O&M_<( M7&I]"8(TAI(->[Z$ RH$IF$C.>F"AIK#E;EF(M8771@7>+9X)4AM>/J#L"T. MU&Y/4\$H)K1-M3L>?Z.5(S A3.NR[/=)F/VRE2I(!^A9EE=P!I)(I&$*N),ZW231HZ3AA805-CX MHR^]:,S6A'E\U47SEFOZL7)>>S?^R;IGJ+9.U#21RX4I-K^ZK71S6,C%K_1" M=*=,;5/BR'%#I4']NNV!*H2L<(S<.?%82T-2Y,R$M!^53:#X1DIS=&R#ZM]D M\!-02P,$% @ >(8L6)%!-V\W"@ I!L !D !X;"]W;W)K&ULO5EI<]LX$OTK*,WL5%+%R#JHPQ[;54XF6YL/F4G%DYG/ M$ E*2$A""X"R-;]^7S=XQI*3W:W=*I?, ]WHX_4%7C\8^\7ME/+BL;^_NKAPR4X5THW-7I5XDQE;2(];N[UP>ZMDRD1%?C&;3)87A=3EZ/::GWVP MM]>F\KDNU07IP<7N]EUMUK_RG_0>+NXN6 M2ZH+53IM2F%5=C.ZFUZ]CFD]+_A#JP?7NQ:DR<:8+W3S+KT934@@E:O$$P>) M?P?U1N4Y,8(8_ZQYCMHMB;!_W7#_.^L.73;2J3?B'JO59$+_$Y(Y_Q4-8.YV/1%(Y;XJ:&!(4N@S_Y6-MAQ[!>G*&8%83S%CN ML!%+^8OT\O;:F@=A:36XT06KRM003I?DE'MO\5:#SM]^?/O'VU\_O;V^\&!& MCRZ2FO!U()R=(5R*]Z;T.R?>EJE*A_07$**59-9(\GKV+,-?S6$LYI-(S":S M^3/\YJUF<^8W__[/B?4\X>58U+3BHSJHLE((BL1L2\WP_GVGQ!M3[&5Y;)[_I1PNP]*'G2K% MWII".Y6*K3&I$P;!">UT@G72*N&M+%VFK,4*;VKT*>N$1O3@KS!5Z87?24_A M2''E<*=$8A"CJ;*2!0'EPTXG.W[52*0>]V&Y$1LE5.FUS[$+&*O'9"?+K1)( M," Q3IV0;G/$ZQP)1)=;(46&0'[EO-J31GCOKL2+Z4L!&< X.S9"09_$(Y[\ M#C2--I%X,?MJZ5Y9SFYEHH39Y'K+BK#:?4Z@G+]$Q'ME$8B*W[')9$@P>PM9 ML2A^*21D3:0_NT:6J7BQ>-DY:N@GJ"[=P'X.(KE,DZ/.B!L125994%D(Z1*K M-[#PAM+N6'PXJV*25ZD"_QR\32;<$78M7,1:0VAC<8UH #SPXUV0O7$,;_J ME$K_=>D\% \HH%507)?DL=:/]7;L^,8AK7W=6-RU-S_]L)Y-5S^[I]83VK7V M99PJ";"EVGEP]V>L,Q;ORM9U)-(9QPPP>Y!YA4T<.87-RF!I9'#5YC,P31(@ M&BKH2VY+/T,M%"U^/L1*B1+['X?*>!#@6U6"1YX?16H@7VF\V$(9BDM?6=;F MH'.U)0\AP-3>YUS0MPS*N"\ M D5/[_.SL3.T9.,N=]KLI.IS<4AP@F:$+(@.D)6IS VLBN*>D_2!"XJS!H;N MS[P/.8XJ>$H<6PVR@/(:FU@>B4WEV::Y+G0-LAWP9?L=HGO,RX9!SDL:8_,61TH&2:4*XYM":!4 MP,#C)5:[+_0D-\XUSFK"MR2F@.%#P1L$EL;_5BD($QXNH',F?;U M\E[NK6#W $N2HU.-O'Q4TI)6R&!N&"8[;,;]'_F08Y<= %X49*FNPY1<+9T# M>1OILJL?Q$0*IZ%)!EJ09+H$1LFC"3:""*7_*E^WV2N U0(#\ABR A)"0"*) M2T%5MDH,A2?PPHP 5(LL F=L\ZI;%E3;:FNI=I2%@H)'*A)%.>Z1%D.5&!# MV9(#"6J#^HOR7T7GB8T:]AJ]'=I_*I:<85%3*@J6L?A%.[G=6A5BE)S25##2 MH2O6W$&5GB ?)@@N#AN,!R?M13FR9G0N2A*RGG0-TKN@;F'^"C[EA!,R$2$8 MT*Z5$Y2(ML8>KR"I56K0Q@HTH:K8 #4B-[KQV?>OGA'[8&I'/B[E]RUTL^L M=W7GM!0_BNDZNL0=+F;1;+K$Q7P=31=S7,PFT606B[>5Q9@EIM%Z/A=Q+&91 M/%_1Q:>2$Q!R&F7/Y6J)5XO% BOCY4(LHGBZ)BZXG4]I@SA:3Q>XB&?19$$7 M,ZQ9+__WJM[7N0HR3*+EFK9>1?%D$M1?K2[I8AG%ES%\WG06XA)FF(EEM)RL MR!0Q9%]%T\E4W#=I9!HM0+*>K*'X>CDE$UU.OTOE/ZGO(XR% EBCE![4C2QU M.V&;7I7CC/CH%1NAKHA:#2.F16L#J0%J"9#/YNC0X_&6&/>:C'LBL9Z)I,%N M;3T#9UK%@=A.!?\'C/_>V_?)5'(E/IRLBOU)XX2!."XN5W%P;SQ;D7OQA&$U MBX&O'D+ZO+HR$R]6B+(U\#)938"?Q7=AYDV3]#K@>$^KRU,^L=9UUW40#Q%"Y=<,&@0%Q"F"6SA1X%AOTC:BM58E'J0YY?=P) M3G7,=WU]56YT3I-6)[ZK$Z=5-:(Z,'&+1]JA&)5!,YD>0C^&8$EV*JV(&?&$ MT]U@2F2\NB:Z0AQT!8O;M]!*-5$32A9T[XV>M$\3&51X39)4[-G-L&#P2ZK; M1T6P.1C8$AWK'<\P P@34J,S=J"=?R0( "5(5>P*>M8?4V"DO=0I=PREJQUF MN$E@T8:XE--24JUKGUSU'@]TG#NWWVYA?AFT/J4DN;";/M&EQ(*)) M-*O11/R@USLCE#SM&MZGKU/ME6G/)W#1>C&GVPC[N'V88?)C=-IC-.4P9FKQ M,+_NC/6OJ/5BBJ<+,"ULP_O_PHF_=*.4YZS+*0_YM0CY53W-KP&Z[$0?&B2$]A.3).<],L331U74,_NY8>RW\ELJ["2$7;._0EGX M!LN!U&1VRV=4WUV>C[WW34JH,^_7&>D1B4%67F MNS8 K;8A0=#-D%M#+-()!8=R2$C?8>H0Q.0DC-(8:+>:Y$@KV\S:V9.9JC9Z MO>W3/OZ #,]U<5BDNC,:.L.P9%N87<+9AH?2LLLLY\YLWA@7G&4V/,Q H*S* M,TWG31VF3Q^,M/DZE!G@JM#.L8Y<;A$>H;+P>-<-<@P[+F]1PRTX+J63(XQ MX12B*P>NZ2FMUW\%U>M6 &G1'_4^/>78L$BEUB4\C/< H@7;>J7S<$ M"2S"N IF*.K14X*PK.@DH[(!>.TH!R&2'#E;-SD8SXO&IP_N+WI<3-#%;_CY$9H;N MX2-*^[3]!'47OKQTR\/WJ_?2(I@<')V!=#)>+4:A?VMNO-GS=YB-\>B8^'*G M) Q+"_ ^,\8W-[1!^V'N]E]02P,$% @ >(8L6"S3@7[+!@ ,A$ !D M !X;"]W;W)K&ULK5C;;MLX$/T5PEL4*>#8NMBQ MG28!DC3=+8HV1MW+,R/1%E%)5$G*;O;K]PPIJ7*:N%N@+Y9$SIRYSY ^VRG] MU61"6/:]R$MS/LBLK4['8Y-DHN!FI"I18F>M=,$M/O5F;"HM>.J8BGP#^8"E M8LWKW'Y0NW]$8\^4\!*5&_?+=IXVF@Y84ANKBH89&A2R]$_^O?%#CV$>/,$0 M-0R1T]L+5D24%968U="3Y[L?IX>_WV^.IR M=?.*7=^^6]Z\7UU^?'/[_FQL@4XTXZ1!NO)(T1-()^R=*FUFV$V9BG2??PRM M.M6B5K6KZ"#@>[4=L3@8LBB(X@-X<6=J[/#B/V"J1YH\CD2%DXZ/2>'T']+S\-(83!B3Z&QE57)UV/*Z)0EJD"5&^X* M17RG=X%%E)ZQAJEUNV88V@ SQ,E41=1FB-(T5LO$ L?OU*4$U]'SO^91%+S\ ML/IDW&OX\L6054*[3E(F@M%.1[;IDP45:[NA6CTJ&J= M9+"/53DO.T$WJ^6RIT]+HZE\S>C7;OG) TXTH3X$8]*P0G!3:V!QRP1/,K;1 MO+0LY58,F9<";)L!ETO-MCRO!3F<5OB.ZY351I8;]WV56_)-ITRJNMT ZK=15Y(IR])/IOM332PGG(9PD?P]]2 MI2/V,2,[")SM )6*+5IY!5SR1 U0"><8*]$B6TT[,ZKZ+I=)?L^LYBG9VKC, M9O!'QK>"E8IMB1N<;5 [IR*P;%WGGKTT:Z'Y72Y((\&N$1M>WG?Z/XA]*\C) M0% TVC_L@:#$,"/AF;5,$ E@IW(-9(&HK+4JH)HRAW0?,8P#E[M#MO2/Q[/Q M8+X.O9Z'$@U>_T6"//0!8 H0>P_ P43S(]_^?&9FRRT,,-V2Z3:&Q4K$T@&SG*>16E7OX8%DUNPF*1 MR,;5OEDB$)ZAX78M@D!]$ADT/=0B'>201&6"$ZAO/7L5T93?6N4X;;;1Z[?< M729*OT#YH"G^:R'I8R=AV!V-/9^;W'A$7J!)U05Y'$+V2JPM]C3U8'C4KL;A M<>+5@H[%I ;?"-X)I2#HHUXXBZ!EK% M@DJ518N(Q=,I>DB.(]%FR#:BQ.S(_5!)<8S&(-#<^39>S-DTF+%9,&&+&4D[ MB>?XG2UB$C?$H/C\92E31B(1#CR@\MA_;( MV"(<::7H-8G?2Q94&/F(MS5H3MD7=S,"\25&#"YZ[&]7CZ]H)+VFF;;RPC^[ M0CZ2>TFR%,T^^]08,=RSG\432HZ3T23PN)!SS#Y[X#S!(8L6&=*N:CW P N D !D !X;"]W M;W)K&ULM59;C]HZ$/XKHYSJJ)4HN7(]@+07JN[# M[D'0]CR;9"#6)G%J.\#^^S-V0LJV6=272@A?OV^^&8_'F1V%?%8IHH93GA5J M[J1:EU/757&*.5-]46)!*SLAN*B6RQ(+RS T\;^CFC!?.8F;G5G(Q M$Y7.>($K":K*)-=^GVDRXBUG)]KA!_;5<21JY+4O"?-4W436-NR%25+,:Y0U= H3R@L_C[+W_H M_7-%9-2*C*ZQ__997&7IUNC[?>BBAUNF> Q%1WB *TIOC9*R#A.H%"_VH%.$ MH\UTFF('E'1QH:CR+:'$#H@AIZMF\0JH!BC-BL0 DTJ>\62!BZ0/]SRK#,V? M,4YVH10:"\U9]M/:>XDV-+36T*8OM#=%S6/:_(.29$FD$J1IML%RI2JVS1 J M2G5IP8RF579 96W_M'.]^5HK7VY6J\;B MAU]C=Q$/39585?*E,9*C3DULO] 2N1)7&;/%C^PD)MQ4 ;M.!T]Q5B4TJ3 F M8YI35Z=,4TFML@12"C;)HI_F+0WN=E19@09O[^+WB!Y91 MB+LX)\,Q^+T!T4Y& ],+HO82_I:F"7DV,8TW]NS(\XRT21A!5X&%CXW#[\#K M![YM*"*F"4?U:/@6\*S+0KUZOTC$O,_&"C?"/YJ4F9XY,)HTK MO7.6)S !DA&9OZZJ[5Z\IG3D>_O-H"C$5:'KA[6=;3]+;NK7^,?V^IOFDE3RN49@.M[P25L&9@#+0?:XO_ M 5!+ P04 " !XABQ8M%/F18H# (" &0 'AL+W=O&_! MU64I[/X&E=E-HG[TNO @\\+S0CP=5R+'1_3?JGM+L[A%R62)VDFCP>)F$LWZ MUS=#M@\&OTOOZ%]"[I3+6CB<&_6'S'PQB:XBR' C:N4?S.Y7/.1SP7BI42Y\8=?8#L@X MK9TWY<&9&)12-W_QDN[DOS\]/'VZ_)V]02SU6>8WZWF-'Z8/2WN5K!8?;E[6(;Q./84 MBAWB] ![T\ F[\".8&FT+QS0\"WN#_SKN!';X-RT_HVE4BQ4E$;\2AW6(T_?BA/^I].D-ZV)(>GD/_ M[Z3/PKY-NI]TX5_%@[L*K?!2Y^ PI_?J'0B+_#0H3@;"06K*RNBP8S8@-- 0 M;66E0Q!K*A6P*V1:D'\E" J!/(5.I5 @=5-X^ 5+ MX*J<1:(?A">%[!K5 U M^614(O):":OVL-[3-D):2-R :>EEF,I03$KQC+8#QD)N35UU*$K8S-BJH#/Q M!H12)F4NI(BI;8H47&=L*9Q#Y]B4D ,[G6(7GBCBG!(5>O_QPU72O_SD_I'! MD26^8%IS@2*%-C+E38M;KD&029=:?%>5<&2:!> B1UIK9Y3,@B14KT@BLH6J MMI4AWGP 1Z&(!M/Z.\$FV6.FQ]#?Y3Q+4V-9-;5ODCD($%C(#*T#Z:D$;UC1 M-;)Z= ].XAUN3!=^,SK_65'^353O.J"I)=%)YFAR*RJZ('RM1+A;@I.B ]JY M:Z#*@.4:;:@.2[&'0;\#/RXT\3&UHS3<3Z%H-)]O6K(PCY[TN10VEW0X"C?DVNM>7D1@F[[33+RI0JU?&T^=(PP+ M:M5HV8#V-\;XUPD':)O_]"]02P,$% @ >(8L6#"!['4Y! 9@P !D M !X;"]W;W)K&ULK5=MC^(V$/XKHYSNU)ZN>8/- MLKN %-B7(G59M.RU4K^9Q!!K$YO:!G;[ZSMV0@ UI-=K/P#VV//,\TS&SM#? M"?FJ,DHUO!4Y5P,GTWI][7DJR6A!E"O6E./*4LB":)S*E:?6DI+4.A6Y%_I^ MY!6$<6?8M[:9'/;%1N>,TYD$M2D*(M]'-!>[@1,X>\,S6V7:&+QA?TU6=$[U MU_5,XLRK45)64*Z8X"#IYG6@FZ,'B)R)7]AEVY-_(=2#9*BZ)R1@8%X^4O>:L2<>30.^<05@ZA MY5T&LBQOB2;#OA0[D&8WHIF!E6J]D1SCYJG,M<15AGYZ^/3\$$\GO\II/[R3B>OD \'C]]G;Y,I@\P>_IE,I[&'F]I)&!@ MO*0*-BJ#A6>"1? HN,X4W/&4IJ?^'A*OV8=[]J.P%7 JMBYT_"\0^F&G!:]3 M9Z-C\3K_4S::4E!&Z#9',(?L6JU)0@<.GB)%Y98ZPT\?@LB_:>'?K?EWV]"' M3W)%./N3F()OXO:]WB=D+FHR%ZUP(Z*8 K&$F1'*]5E6K3#-&6O$AD\?>F$0 MW$ +^:@F'[62GTG&$[;.J8TR%EQAV:=G);2"-4MHB? M0BYK(9>M0L:2:9:0 M'.(D$1NN&5_!_@@#X2EL%#4$[I1F>,E1U22O-42SO'\=MTULKQ;;:Q7[3).< M*,66&-DDLE%,*T2SF+_APD]M=*]JNE?MST;P!(M7E@_=5(&D*=/PS-1K$_/O M1X.73%)ZVM9-=>K^0J/1F/[(2*->'OD)$45E+@?E*6GL)M"65;LL@I+*4H@/&4;5FZ M082DHJ#0"/0M,7$0OHIR'@YNH.@ZUY:V[>DZ*R$E@(._$/[X/_3B<.:.SGD M4G <)Q1[-]UX /\C9'D[AC<0YSH3FU6&HJG$)X(?A?4@4;0P)N#8%)(#S/H4 MABFUP4)?O!M_N(_GHR]VM*^C5."EQ(6&!"VTX)KZ$Q+[N#S' ML?$#Q5;<7AZHBR%ZH@&/*,/->&A3['&1Q^$-@)-[Q@F^'5#)'-]M);#;],"\ MH]8/BV-E&UP%EEO9!=;6NHF.R];QL+WLP!^)7#%NZFB)KKY[B>]E63:UY42+ MM6TD%T)C)=IAAG\$J#0;<'TIA-Y/3(#ZK\7P+U!+ P04 " !XABQ8\T*H ME:(" :!@ &0 'AL+W=O5&2&D'D4)Z6:0UH$(W:6\F.9!H2-_1 X@R4M5UF)BY%)NKRU+I#E45)AL"S5&UHQ75*+)-Y;8F*$SO744_DZX6]';$W62%6-_E!%G M$\-6@J"$5"H&BLLS1%"6B@AE_&TYC:ZD O;W!_8[?78\RXH*B%CYJ\AD/C%& M!LE@37>E?&3[[]">9ZCX4E8*_27[)G>(R>E.2%:U8%10%76STI?V'GJ D?T. MP&T!KM;=%-(J;ZBDP9BS/>$J&]G41A]5HU%<4:NF+"3':($X&

[\,D_ATN MXUE"PN2&+.+[)+Z+HS!9DC"*9D_),D[NR7SV(X[BVP7YO*2K$L27L26QO"*Q MTK;4M"GEOE/*)P^LEKD@MW4&V3'>0MF==O>@?>J>)4S8LTD&]E?BVN[@#-^@ MNXN!YAO\I[LX=05-!>]T!35AUV)+4Y@8.$("^#,8P:5HP6>8B M>#D35=U2'[>WB_0O'1-"XOGF%?E(+J],&Q>_M3QM=6E3,O!,'ST7B->AB[=@ MA(8S;+W.2&^.%#S05S)PWI0,^O7=*]-%P,C1_+V*KFN.T./XYK ?N%$!_UC! M+7$\\U+[3O75ZLTKIF_TJR1(RG:U;$:W\W8/7]C,^UMZ\VH^4+[!#I,2U@BU MSYOAX U<)&%\S)@^&*M#]'03_ %!+ P04 M" !XABQ8ZQM-.8,# #P"0 &0 'AL+W=OQJ5[H/X!G;\\PS+XX].%'VQB-$ 9_3).-#(Q+B<&]9/(PP);Q##YC) ME1UE*1%297N+'QB2K39*$\NU[>V*C 8() M/0T-QZ@FGN-])-2$-1H2*>Z>DO+./1!$.:LBUNO[:W)-.:KEO1G;BM@$MZ[$#7-L&U MW6X+7K<.OZOQNC\?_J6H"U#O,J@Z1_?\0$(<&O*@<&1'-$:__^8$]A\ME+V: MLM>&/IJ1F,&1)#G"Y@Q1C(RP,#I?HMD*=)DF3$A"LA"!<* [N)UG("*:BNG1W*&KO,S=-R>:;MN4RCLS-P#',6BQ@Y.#VS[W>K MH:;MF?V>WQ0*G)9B^W6Q_=9B3PF/3 CE/^"G/)9EQTQPD)%#G!V1BU3KFYKE M&<3Y@)>:H=71E6;XR"CG5?IYF?_W3;#.9*Z2^%_=*N9CFK_KZ5S/<-9U^U>"% M_(,9=@/9TI5EJ7P_P[(S;+\*LE16$64"WJ?X^FF[T0>MIY)]Z_3@KIR0)^]_ MJY;7-^V>UR"@)OS>Q:-M-6[A%-E>OS4XA#3/1'$AU[/U"@ &0 'AL+W=O[_^Q@YE:1>B.^F$2,;VS.-G7CSQ<*WT=[-$M/!>&-JK(;A6':K;B0G?'0S]WI\5#5MA02 M[S28NJJX?IEBJ=:C#NN\3MR+Q=*ZB>YXN.(+?$#[=76G:=3=HA2B0FF$DJ!Q M/NI,V-DT<_I>X4^!:[,C@_-DIM1W-[@J1IW0$<(2<^L0.+V>\!S+T@$1C1\; MS,YV2V>X*[^B7WK?R9<9-WBNRF^BL,M1I]^! N>\+NV]6G_&C3\]AY>KTO@G MK!O='NV8U\:J:F-,XTK(YLV?-W'8,>B'!PRBC4'D>3<;>9:?N.7CH59KT$Z; MT)S@7?761$Y(EY0'JVE5D)T=3R?7D]OS"WCX?''Q"%>WEU_N;R:/5U]NX?B1 MSTHT'X9=2_LX[6Z^P9PVF-$!S!1NE+1+ Q>RP.*M?9?X;4E&KR2G42O@K7HZ MA3@,( JCN 4OWCH=>[SXOSJ]S]<&*MD/Y<[,F5GQ'$<=.A0&]1-VQK__QM+P MCQ:BR99HTH8^OI)/**W2 LT^:JW&^ZD!Q1*K&6H?SQO^ C$+X/A*@EVJVG!9 MF \^S,WCGJ^IVBQJP4L#M$JG=W;"C2&,DEC!$>D%&D&6)G II*!B+6"A5$%K .KXHQ8K:B@V (EV7T!;P0X$]*O!>5U"*>;XKX)[3+%Y M0:[?Q/D:J;,L55F J"APA$(T#7QT80UZ%%7WCEE(H/F2:.EW'D$,)^"#W(_H MF20]>$1C=Q02KQ '+&(4\,&@#Y>UEL+6&CW47#P[V4#D%;,PHG_JLL=Z?6!A MD/0&1-.8,^JD>5W5)95%00V00I$+WK18PN&5TE;\W4P<9\$@B^&#$[(P).'( M4>CW7)*#C!!;UMOA_$<\OJ@2,6[4A37G*94SHL:2+,<"&D%'(!:NXGJ)*%*OSYB.B9 M1(F34W=B$BJ-29[KVAU3%X:?[H,PIG:9JK7#V@%B*=4*1%$&C"A,BK_H<]/4 MG5441WP21+=\ 7P6QCK;#>B+JX!FJQ/_2QF<*TG?]97/.M'=1,W ,6ORSUC? MO:)F%/7=ZYV_2-7SBZ>1;PR,O9%;BB;;%DW66C3G_M-*N:$"5D;8IKG1YQRU MIF"1\RAK#, LJ9Q/J %6^\JH=8__I0'_RO,(TKX_/ND@A$_O"$,V .:K@R6^ MDP9]*JQ]\>KNW!D(?^%O1@9R54O;7!^VL]O+UZ2Y<_Q4;VYN-UQ3I1HH<4ZF MX6E&;50WMZ%F8-7*WT!FRI(S7ES2!1*U4Z#UN5+V=> VV%Y)Q_\ 4$L#!!0 M ( 'B&+%B%,UEIP0( !8& 9 >&PO=V]R:W-H965TZ>>Q[BN_0.4CWK%-' 2\Z%[GNI,;M;W]=QBCG3EW*'@B(; MJ7)FR%5;7^\4LL05Y=P/@^#*SUDFO*CGSF8JZLG"\$S@3($N\IRIUR%R>>A[ M+>]X,,^VJ;$'?M3;L2TNT*QV,T6>7Z,D68Y"9U* PDW?&[1NAQV;[Q*>,CSH M-S98)6LIGZUSG_2]P!)"CK&Q"(P>>QPAYQ:(:'RO,+VZI2U\:Q_1OSCMI&7- M-(XD_YHE)NU[-QXDN&$%-W-YN,-*3]?BQ9)K]PN'*C?P("ZTD7E53 SR3)1/ M]E+]#_]2$%8%H>-=-G(L/S/#HIZ2!U VF]"LX:2Z:B*7"?M2%D91-*,Z$PU& MH]5D]3!8CC_#='DWGL-H.IG-QW?CQ\7]TQ@>IHL%-)9LS5$W>[ZAEK;0CROX M80D?_@7^"B92F%3#6"28_%[O$]6:;WCD.PS/ C[*_26T@PL(@[!]!J]=ZV\[ MO/9_Z#\ENT3MG$:UDW2K=RS&OD>CHE'MT8L^O&M=!9_.<.[4G#OGT*,%3692 M< 2Y@5'*Q!8U9 ),BA#+?"<%"J-MD,5QD1><&4Q 4EBYN,+4#M4>@4NM+T#0 MZ%.R82^GA)ZEV2 M,3VA/1/D(S0LJR:LD?8;TI:).=,ZVV2QXZ2A P05MO[H2[<0\S5A'F]BV;SC MFGZLG5/OVG\SJSFJK=M(FL@5PI1C6Y_62V]0SOJO]')C3IC:9L21XX9*@\OK MK@>JW$*E8^3.3?Y:&MHCSDQI<:.R"13?2&F.CFU0?PJBGU!+ P04 " !X MABQ87V[B\"@# "@!P &0 'AL+W=O:>DL$95$CZ3B]+_?4;(] M%W"-O0S8BW@D[[[[OB-UG.^U^68;1 =O7=O;1= XM[N-(ELVV$E[HW?8T\Y6 MFTXZFIHZLCN#LAJ#NC;BC&51)U4?+.?CVJ-9SO7@6M7CHP$[=)TTW^^QU?M% M$ ?'A2=5-\XO1,OY3M:X1O>R>S0TBTXHE>JPMTKW8'"[".[BVWOA_4>'KPKW M]LP&KV2C]3<_^50M N8)88NE\PB2AE=\P+;U0$3CKP-F<$KI \_M(_H?HW;2 MLI$6'W3[IZI'LG:& M=A7%N>73ZNOJR\L*WCW+38OV_3QRA.KWHO* <#\A\)\@9/!9]ZZQL.HKK'Z, MCXC-B1(_4KKG5P&_Z-<;2%@(G/'D"EYRDIB,>,EUB9>438'BA;I, M%)X;@_C#X0"5%KL-FK&\:_5V9??=IQY5A%\A+L(9 MSC:Z&TED@!+!'/<[(WF[1 M&$HH'4C8:=4[4)2-6OET(V:YF(0)GGMAM#(6E NJ[%EMSK&(NYD@1)K3_2JH M4BQG5+GT7U7KTO\:G77-#DT]O@T62CWT;FJ@I]73\W,W==U_W*>WZ[,TM>HM MM+BE4':3IP&8Z3V8)D[OQAZ\T8XZ^F@V](2B\0ZTO]7:'2<^P>E17OX-4$L# M!!0 ( 'B&+%CI9KCN6 , *$' 9 >&PO=V]R:W-H965T1.N2R8Q!FO?I>9*D;6P((,EVQ=J0>^_8F[? S!E%?2C+!M;?NQ!>E:*E[O MG(E!73;ME[WN_L.>P\#]Q,'?.?B&=QO(L/S&%!L/!=^"T-:$IB--Y,I& MBY(H0:2TA?0_@>S#+6]4(>&ZR3 []'>(7L?1?^'WWOQ,\>QW/WBGT\8S7 M5'N2F>N;" LD"]8+%$::I'P]<7IVTQ!?OI:LR>2YT5$/_MYL1OD!7X)D=.O@*WBN M1^,@U--^3X]1! _$AXFT ,*AVMM03UE1AU#@!3'!>.#'/@1A" F5>=GD%Y!C M@X)5QH%E5$"E5(+I3@!!/(#0C2!R>Q!'.EH_&- 8Q8$.=T$JFF_H!G!"S;!3 M,SRIYAUO-BBU> _)4]N-2O5V3)^3.)_H\]NT'P*?;"C?'.&'8/1?J"<@?&>E M@*1@9 W/K%HCG)4'>LQQ=PY/.XX7<,O>(/#:FH.@IW7HVSVWQ:4XE_#<9G-& MNIQ#9'M]H#ZYQ-)LACYMAG84[T%.UCDUM ]4GUPTJA]UJ#[]Z\"S0Z]#]P<$ M-+!=?Q_=HST_/D0_N' MZ]@(&-N$<4Q 9Z]MUBAR\SA(*I]UH]H.VNUV[\^D M;;L?YNWC=?J M?:$#=*_R^"]02P,$% @ >(8L6/V+? 6 P < !D !X;"]W;W)K M&ULC55M;]LX#/XKA#<,&^#5\DM>EP1HVAS6#^T5 M;>_V6;&96)@M>9*<=/_^*#EQ,R -[HM)2N2CAQ1%S_9*_S0EHH77NI)F'I36 M-M,H,GF)-3=7JD%).QNE:V[)U-O(-!IYX8/J*DH8&T8U%S)8S/S:HU[,5&LK M(?%1@VGKFNO?2ZS4?A[$P7'A26Q+ZQ:BQ:SA6WQ&^T_SJ,F*>I1"U"B-4!(T M;N;!=3Q=9L[?._PK<&].='"9K)7ZZ8R[8AXP1P@KS*U#X"1V>(-5Y8"(QJ\# M9M ?Z0)/]2/Z7SYWRF7-#=ZHZH\ADXO%Q5QG]A MW_FF+("\-5;5AV!B4 O92?YZJ,-)P/B]@.00D'C>W4&>Y2VW?#'3:@_:>1.: M4WRJ/IK(">DNY=EJVA449QX>[CY^WX%CZLG>/Y^_;2"SR]\7:'Y,HLL M'>$ MP$O[?%./E[Z'1WTN9*YJA :I.4NN<7HNSPXF.P_CGLK4-#S'>4!OP:#>8;#X M]"$>LF\72&8]R>P2^BE)Y%H*N35O;,^1O0AWGBR\E!KQC^L"*C;6:SK(%?Q9 MO%[8_7PGP9:J-5P6)@1\S;&Q;R2AH&;\XB_-?9(3[:&M47.K]!1.\OP(PY"- M)R33<)0,2,8L' U34K(PC3.X1:FH_[O )3!:6E'TM:B;2OW& _&O;N)1,GNNBT,J M_K*KUG7$!(A&YC[GFCXZF4ITY5L_>PV5N)6V&U#]:C_>K[NI]N;>_1ONN=X* M::#"#86RJ]$@ -W-V\ZPJO$S;JTL34ROEO2+0NT<:'^CE#T:[H#^I[?X#U!+ M P04 " !XABQ8&B4I"'T" !O!0 &0 'AL+W=OM49(L%[P87N>1E1>>_[>I5AP?2-+%&8 MG;54!2,S5:FO2X4L<:""^V$0=/R"Y<*+NVYMJN*NW!#/!4X5Z$U1,+4?()>[ MGM?TC@NS/,W(+OAQMV0ISI%>RJDR,[]F2?("A4)9S[OS(,$UVW":R=U//-33MGPKR;7[PJ[*;=UZL-IHDL4!;!04 MN:A&]G[HPPG@+O@ $!X H=-='>14/C!B<5?)'2B;;=ALX$IU:",N%_92YJ3, M;FYP%,\??XP?)POH3QY@^#P9FGC67XR>)S":/#W/QE5\M6!+COJZZY,YTR+] MU8%_4/&''_!W8"P%91H>18+)OWC?:*T%AT?!@_ BX41N;R *&A &872!+ZH; M$#F^Z'\:<*[NBK9UGM9ZZ5Z7;(4]SYA%H]JB%W_YU.P$WR^(;M6B6Y?8XZDR MKE2T!R82P+=-7AJ?$"SWD*),%2NSW-!@:O[[<](ODI^7#J;O6"Q1N=Z/V1ZB M9@.N1@(HDQMM=.AK=R75YT7DA G,B1%J^ Q1HQDVS1@V;IL1C 2A$LS:DG'H MM*#5@84D$W,ITJ_<^#0!IC62;H P+Y,CN&M7!.UO<*Z%_HD)"E2IL[J&E=P( MJOQ0K]:O2;\RT=_TZBD:,Y7F0@/'M8$&-[=M#U1E[VI"LG266DHR!G5A9EY$ M5#;![*^EI./$'E"_L?$?4$L#!!0 ( 'B&+%BYFS2(.P0 $\= 9 M>&PO=V]R:W-H965T_;%"N.IXH6'D;6 >[/#4088[\W0*P-ZS0#S1H!9!N1BJD6Q M\DK;'O.FXX2>49+-YK3L()YYD4N_4:N+OI&8[9/D1-OR$80;\OCS7OQKCP>ZQ* R@M754]_J]YT+TC6]*[@@Z_WANJ@>G\ON?"Z[^^'LM5IVJY78S7G&#=Z:G$A\).A? M9.7+GB1H)EIC4DKV03Q*#YY/)@K_I$U)?L*G])M('$F9#PAQ(F L$ MJ^EJ5+H:4ETM&OLD9HF7/TG60?KZ!:U(DHWQ1Y=(X8(WR'G9D_$TU3J&.1RK MIVOIBEG#VJQ^8Y(M0IE-E"-$&?5)KO0N/UC#7E7#7EMOS$65DU+:>@,29D/" M'$B8"P2KZ6I6NIK WC %"[IKF UOF/]?T UC"&9T](8M[E)HQ9BM;$)\')>PGO?Y^2$MOZ Q)F0\(<2)@+!*MI MC+7+3S8-V"%R8%N106EV2:L_TO1A\V$$FM05)AW@WO#ZK[J"NDY7/ZWQ9]PH M_ 8G1[96"I)F@](<4)H+1:M+K5^DUJ$M*06V%AJ29I>TAB7U0=.2D$E=85)L M]FZX\-)6P/*^PAT7VD)Q0)L,H#0;E.: TEPH6EWJ2Z??BC@,=H3"@K0Q0F@U*TD[;^?;1*65!1ITE[ M'_><>\XUOOA;QA]%#B#1-IQVDU*37P<+QGOS7>E9<%%A"QX@?)9#ZT M/ELH@R5>%W+&ME]AY\<(3%DAS!-MZ]B+2PNE:R%9N0,K!26A]1L_[^IP % \ M[0!W!W!? [PW -X.X!FCM3)C:X0E#GS.MHCK:,6F!Z8V!JW<$*I/<2ZYVB4* M)X/)["Y,XI_A?3Q)4)B,T#R^2^+;. J3>Q1&T>0AN8^3.S2=?(NC^&:.3D8@ M,2D$2C#G6)_!*?J$'N8C=/+^U+>ETJ29[727_[K.[[Z1?X#&C,IB)NN%C_(*\?AOZ2(W7E-]0?.E[;Z_R>R([/GC=GS M3K,14T=!I?YN=1,BXK'-;LUQ>5CC7O_5.73F^5<7]L']+8&O3%L3*&5K*NNK MW*PVG3,T#HE1L , !(4 9 M>&PO=V]R:W-H965T%XB3>X_ON0>;$W?W MC#^+-8!$O^(H$3UG+>7FVG7%8@TQ%0VV@40]63$>4ZF&_,D5&PYTF2;%D4L\ M+W!C&B9.OYO>N^/]+MO**$S@CB.QC6/*7[Y Q/8]!SNO-^[#I[74-]Q^=T.? M8 9ROKGC:N3F*,LPAD2$+$$<5CUG@*^')$U(([Z'L!='UTA3>63L60_&RY[C MZ8H@@H74$%1][6 (4:215!W_9*!./J=./+Y^11^EY!691RI@R**_PZ5<]YR. M@Y:PHMM(WK/]7Y 1:FF\!8M$^HGVA]BVFG&Q%9+%6;(:QV%R^*:_LD8<)>#F MF022)9"W"?Z9!#]+\%.BA\I26C=4TGZ7LSWB.EJAZ8NT-VFV8A,F6L:9Y.II MJ/)D?S08WZ/O@]OY5_1MA$;CZ6 Z' ]NT7@Z>[B?3[Y.'V;HPPU(&D;B(_J$ MYK,;].'=1_0.A0EZ6+.MH,E2=%VI:M&([B*;]\MA7G)FWBG;-9#O_8F(1_R* M]*$Y?4)?D(^KLEW5@+P+).\"2>&:9^ &0H 4Z,<$XD?@/ZOH& 'T8KL6&[J MGJ-6DP"^ Z?__@\<>)^KR%D"*W'ULXV8&0:B5*)&"QY:$,H5+ TR0 MPNC=8-=O!H$7=-W=,96*J&:GWF'VYV67ZU?D%,)C%1N80<1POF"0O^B"Y:8 M$;,N+TM@)?KMG'[;CI+MD^97+;&*J/-+K)/7V+E (E)3(B-F78DL@97H7^7T MK^Q(='72?.^-/*:(4FW8*_Z4O0O$\6N*8P:MJXXMM'(+CGP)MB-0AF-2R!A2 MKJ]P#-AL&28L@1>W1]IP)LFH;;*&5*1?& 5MR#AG.[_:UBC#2]@@Y M(TUA'K#9/9Q*H];/V[^DRKJM>@E;:.4N%&X"6[(3^-0"5*IU&F92J[ *V.P5 M#&H1LUI6_8(MM'(7"L> +5D&?.H&3K8[4TBYOL(M8+-=,*CDFU6R:AELH96[ M4)@&;,DU9#B!2:6+?0,I? ,Q^X;Y##V\OC7-\@(OW/W,V+5?5ZCK7X5_' =1A(MDG/&PO=V]R:W-H965TWLQ6HO:.(VJ( SV$FGJWWX-2038DP69Y& M0N[F3PZ?YS2:EDEIXA#7[3EI%&>=T;#\[$L^&K*%2.*,?LD17Z1IE+]^I@E[ M.>W@SH\/;N.GF2@^<$;#>?1$QU3-IYPR?A)Y? M))017V/ZPK>V43&5!\:>BYW+Z6G'+49$$SH1A40D_RWI.4V20DF.X]M:M+.I M621N;_]0OR@G+R?S$'%ZSI*_XJF8G78&'32EC]$B$;?LY0^ZGE YP E+>/D7 MO:QB^UX'3190QMGJ?_1];<16 N[N2"#K!%)/V%7!6R=X;2MTUPG= MMA7\=4(Y=679U?H\F9\=WM_'=[Z?BTJ, ZNZ%0G?!Y-Z&E' MMB).\R7MC'[]!??X=5,]S7H\.*Y;'^I1'O:W*BHV=#"YBFZ-$^XJTW% MK4U6C\#]@>_5)FL0XH%D&(AD)BR!OW-&O3-:R"[7I/U?>U8 M[+K^H'; ZD$>'I#:X6JL;VL5D)ABU6!CU0#ZI#MH.#_H)UT]JNFD:QRVQH&H!J%H(I:8NSQ8VX;V-=E^[6$LH!VVOZ_=JAW9# M&.D-^O7&:QZ0M7U :JI]%?!@,_%QI=9FUISNL=90+4+]^I=4F*#"/R-J_ M0W .KD 'FTFGWAWNT1C=Y33BB_P5C>EDD<)_Z11=R?U&KT'1#U0M %4+H=34%:GP#[^-_[#.=MI) M=&](8"YN;=4AZ ]7^(?!^0_K:*>YN#-[?TA@'HBU;8=@/[)ULPN(_8B.=9IW>T,"\VBLO3L$]Y&*^XB9^W9UAK?P MG[F4=9\ Y3]0M1!*35VTBO\(%/^9A:R7I(G_ZK\.4/B#4E.-KN"/0,&?65!*#75 MS8H'R6%YD+2['=@0UAVXOM9S0:D02DU]MJFB0L],A<:>VYH.S45L&S&H6@"J M%D*IJULO7A0O%XHRC MA#Y*>?=37U;+5Z]JK'8$FY?O(CPP(5A:;LYH-*5Y$2"_?V1,_-@I7F_8O# S M^A]02P,$% @ >(8L6($PEY32 @ U0@ !D !X;"]W;W)K&ULK59A;]HP$/TKIVR:6FEK0@+9U$$DVA0-J; *2O?9) >Q MZMC,-M#^^]E)R*"#5)W*!V([]][=>[9\Z6Z%?%09HH:GG''5NJY(, M;,0,B?:3.7252N))"U .7-]SPO=G%#N1-UB[4Y&7;'6C'*\DZ#6 M>4[D\Q4RL>TY+6>W,*'+3-L%-^JNR!*GJ&>K.VEF;LV2TARYHH*#Q$7/Z;&[Q&QBR1*>-WQ>G4*2UP M?[QC'Q3:C98Y47@MV"^:ZJSG?',@Q059,ST1VQ]8Z>E8OD0P5?S#MHP-0P>2 MM=(BK\"F@ISR\DF>*A_V (;G.,"O /Y+0/L$(*@ P4M < +0K@#MPIE22N%# M3#2)NE)L0=IHPV8'A9D%VLBGW&[[5$OSEAJ^K>S&_@Y@,%PW!]? M#_NW,!Q/[R>ST Z4W##4TP/\:XIO];@[S1<^8V$_?7R H+69_ ]/SA2SW4S?"PV M!NZ=A,?-\!%Y/I'\0$Q0;TA0T 7_OR''+"])V\=)[=UQJ58DP9YC+@>%%J@>9J0+U%Y'"+&V30 L+3:NS# M@E )&\+6"#D2M99HKC6MCKE<9@N+;/9"W41>U]WL6]=8SUNM>R>R ^LZM76= M1NLFJ+2DB<84$J*R8VXT$KSUS'7^L;;5\(8L6$X#5XF3 @ WP8 !D !X M;"]W;W)K&ULK57O3]LP$/U7K Q-( WRJTDI2R.5 M J+2**B%\=E-KHV%8V>VV\!_/SL)46G32I/V)?$Y]]Z]EXLO4T<$V;%4;7W M).*(KQ4E#)X$DNL\Q^+C&B@OAY9K?6[,R"I39L..HP*O8 [JI7@2.K);EI3D MP"3A# E8#JV1>S4.37Z5\)M *;?6R#A9O)%79T+JT4 I+O*9JQLM[:/P$AB_A M5%975-:YH:Z8K*7B>0/6<4Y8?IX\3M'I#2A,J#Q#Y^AE?H-.3\[0"2(,/6=\+3%+960KK<#PV$E3[;JN MYAVH-N6;"^0[/Y#G>'X'?'P<_H _D.]VH6UMN_7NM=Z]BL[_5^]=QFJJ7C>5 M.6M7LL )#"U]F"2(#5CQ]V]NZ/SLLOF?R+ZX]EO7_C'V>(9+_0$I$ 13B70? M]0E>G&,I(5]0 IU=K1G#BM',A4WL.7VW']F;;5?[66XP"/PVZXO<7BNW=U3N MJYX"YJLK!$] =JJK"8+MNN[ "W?4[6<%_;#7+2YHQ05'Q=T11O392]&*\^[S M$'1HZ_=VI.TG>>[ [986MM+"H](F; -,<7&@H^%>KWS_/W N=Y39 M6^/'C/X'+%:$241AJ7'.15\[$_4XK0/%BVHB+;C2\ZU:9OH/!,(DZ.=+SM5G M8(9<^T^+_P)02P,$% @ >(8L6/-_O8$! P ]0@ !D !X;"]W;W)K M&ULK99O;]HP$,:_BI554R>US3]"$@:1*&W52H6B M0K?7;CB(U21.;0?:??K9"8TH,4R;]H;8SMWCW^/DN/0WE+WP!$"@MRS-^$ MYHC!9ZR6 MZNBE5+7U>(%C&!BRG#BP-1C1UR]VU_JNL_F?Q#ZY=AO7[C'UZ![D>Y_0=(%( M5C"Z!EF50OLL:YUNI:/^#]:1[7GRX->[5C1!KFTU09\0.PUBYRCB3U%B+6.MX.[O[EK-'J(OIZ@&]!M ["CC&<2*7V'L%"*\E*=0IZ@B] MUNZ>'^PC:H(Z'4_/V&T8NT<9Y\#%<;1N:U?7=NP]M':0$X:!'LUOT/RC:%,F M^Q 3>Z=WAE:,*&>-6A8@S^4"^<]-(SC,BM3+& A MVX2LRIC@NA%)!SBC3)!?U8*./FAQG?NAOU](NBC?.E!)84,?_M-)YZ!](\)6 M,;MVX.V!MH,"%I4?>J9"MGU MJF$BOTN J0!Y?TFI^)BHUM=\Z42_ 5!+ P04 " !XABQ8%%FH?V # "R M"P &0 'AL+W=O M$.202,V U=\65I#GFDA-X[^6T^I2ZL#]]A/[IUJ[TG*/!:Q8_IVD,IM;4PNE ML,95+J_9[C.T>L::+V&YJ'_1KL$&OH622DA6M,%J!@6AS3]^:'W8"U \Y@"O M#?#Z :-G OPVP']MAE$;,'IMAG$;4$NW&^VU<1&6.)QQMD-4J1C>?X_@6G5]^^GI]L;@]_WJ)WD4@,#%AZ@X27;'N*?.;YC/ZO7AGDG.GV6/?SO[@1E^ MMQO\FL__U=U@6NB&:F2FTO?;F2AQ G-+76 "^!:L\.^_W,#Y:'+Y+(.:5[\5 MV]#SU0[9[GM^C!EYHT-,9. ))H>8V,#C.AWF0/BX$SX>%+Y($EYA=?FHEQ#M M,.>82@("$2$J2%%:<>W"L 5-AO'>M-R@;\$Q9MPSX!CA>7T##)GT:389$'0& M!,,&I/^JRU\]R%(@R9#:6UNB+MW\$<$#$5*K;VUY5(]M8Y;)A.!H:D[/@A<1 MT8N(^!@1N&;]DT[_9%#_BE%5NI1U,:$V>WNTC!(G1\D_N!._I]($*3:#I,ZL][=1.?^6@5//,S32+;WBI " M^*:N_@1*6$5E\P)UHUV!N:CKJM[XTCU;N8;Q2!6D3?WXD[ZI9B\P5Q>C0#FL M52KG=*)6AS<58M.1K*Q+H'LF54%5-S-55 /7 /5]S9A\ZN@$79D>_@]02P,$ M% @ >(8L6,9:DN5D @ /@8 !D !X;"]W;W)K&ULK57;;N(P$/T5*UNM6JDE-VYE0R1N59$6BH#N/ALR$*M)G+4=:/^^ MMA,B"@&ITKXD'GO.F7/L>.+M*7OC(8! [W&4\*X1"I%V3).O0X@QK]$4$KFR MH2S&0H9L:_*4 0XT*(Y,Q[*:9HQ)8OB>GILQWZ.9B$@",X9X%L>8??0AHONN M81N'B3G9AD)-F+Z7XBTL0+RF,R8CLV0)2 P))S1!##9=HV=W!@V5KQ/^$-CS MHS%23E:4OJE@''0-2PF""-9",6#YVL$ HD@121G_"DZC+*F Q^,#^Y/V+KVL M,(W*$;1!*T#&G&<1)PSQ12@V(RUT6]?E[/N5!O2GT?3N=]U7V4LIZI74ZG;UN$I7D/7D->) ]N!X?_\83>M M7U4V_Q/9%]=NZ=J]QNX/]&<%3'[N*>5$5!YC3M'4%*H5[/QFVS-WQQ[.4YSF MHU4F?=%6+[75KVH;P@88@T!VB!TD&51)RQD:1W5;CR?2SE-LUZE6UBB5-;ZE M[![QD#+Q((#%52H;9[MCUULG,L]SG+9SJM,\NMVJLTXPVY*$HP@V$F;56I*% MY=TJ#P1-]85?42'/60]#V>"!J02YOJ%4' +50\I?AO\)4$L#!!0 ( 'B& M+%A/12%(A0( *P' 9 >&PO=V]R:W-H965T[P"IE?F7)1$Z:E8 M8%D)()DEE07V7'> 2T*9$X76-A51R)>JH RF LEE61+Q:PP%7X^C?"B90%$9(;^-GH^FT+@UQ=[Q5_V)CU[$\$@D37GRG MF-?>P=%+SEJQ[RW0_(OY?+T+7R=;T= M0- >0'!(/9H*OJ*V_.KJKY]:RDM BFR@\ZG56@.K97K!*O+<$*]VT_P2TK_8 MA\0O(?Y@'Y)T0+P64@>*=\I/"6)AZ[Y$*5\R55_ UMJVEDM;49_9Q_WAI-]A MCW4KJCO''_FZC]T0L:!,H@+FVI7;^Z2KHZA[0SU1O++%[Y$K74KM,-?M%(0! MZ/4YYVH[,0[:!AW]!E!+ P04 " !XABQ8F0&O) \$ "0#@ &0 'AL M+W=O8R3MH^TQ)L<2.)*DG9S=\O2#ERTMC>S[*DXQ9ZHM2BSHRT+(G&E:RJ6O2HDLL4)YYD=!T/=SQ@MO M/+3OKN1X*"J=\0*O)*@JSYF\FV(FUB,O].Y?S/@RU>:%/QZ6;(G7J+^45Y)6 M?H.2\!P+Q44!$A3\.^$; [OG)##YWOT]]9X,F;.%)Z([!M/=#KR!AXDN&!5IF=B M_1$W!O4,7BPR9?_#NM[;ZW@05TJ+?"-,#')>U+_LQ\81#P0&P1Z!:",06=ZU M(LORE&DV'DJQ!FEV$YIYL*9::2+'"W,JUUK25TYR>CR]G,TNOWVZ^ "3V6QR M\>'L_.SBYAH.3E$SGBFX8%(RX[C#H:])GY'RXPWVM,:.]F#WX5P4.E5P5B28 M/);WB6=#-KHG.XV<@!=BU89.T((HB#KPY?H4#OXZ=.!V&B=T+&YW#^ZEY$M> ML P^"T:!4B1PC7$EN;Z#R5(B4A3J7>8[44T^':N2Q3CR*&$4RA5ZXS>OPG[P MSL&YVW#N.CE/6<:*&(&MZ)S8/$/0 N9"&IB*_"U!IPA&"L0"8HD)WVE#K:5O MM9@47HV[44@Y'0S]U0YZO89>STGO\T;QB57<,B'+\RK?,.3%7WE,N@?W; MS:7?<.D[N7QEDEL/\4(CG80&"FG<1<"-8QQ*X4"RTIAVP ZMCTM)9D<*DG^H,& "WRL>WQK-7+1LV![,#Z';/NJ]=@384>.U(Z>UE *" M("<4_(E) +@1=7Y,?CD_G K^,#\&#?W!\P?@X$D AH$K M\V9-X^4P2Z<79$ MX"]'WR;TVL%+!E^G'?4(GWQ>Q:@LP".3@?H(*"L9IW23@I"F3K%D92J9^KEL M$=OGL+?WLO:ZDRT,MO=PX#S:&:Y$MJ*XK(VG?J-.L&1/H/P'W-^L:$/8:8&] M*UT,'W0*H1/R/9=TBMMZH,7OWI=N!7]8$,)H:T#TO"YVPSUR<>1BN.U#0G6_V!( MR%$N[2BD(!95H>MYH7G;C%N3>LC8;J]GM7,FJ5]6D.&"1 .J@1[(>ORI%UJ4 M=N28"TT#C'U,:61$:3;0]X40^GYA%#1#Z/A?4$L#!!0 ( 'B&+%@\0C*K MMP, &8/ 9 >&PO=V]R:W-H965T_;GPV4 J&H.?$F M 3+/XYF?'9M9G"A[XA& 0,])G/*E%@F17>DZ#R)(,!_1#%+Y2TA9@H6\97N= M9PSP+AE9FHO#S9D M'PGU0'<7&=[#%L1#=L_DG5ZY[$@"*2L7]Z]Y\;*81\QA M3>._R$Y$2VVFH1V$^!"+#3W=0%G01/D%-.;Y)SJ5L8:&@@,7-"G%,H.$I,4W M?BY!U 3F^ V!50JL]PKL4F"W!9,W!.-2,'[O")-2D)>N%[7GX#PLL+M@](28 MBI9NZB*GGZLE+Y*JA;(53/Y*I$ZXVYO5QK^Y^^[YFRWR_WCX]O-O]-$#@4G, MT0_,&%83^0E]00];#WW\\ E]0#KB$6; $4G10TH$_RP?RNM;$L=R\OE"%S(S MY:\'919>D87U1A93=$M3$7'DISO8-?6ZK*@JRWHIZ]KJ-?P*CR-DS#XCR[#L MCGS6_?*[0%1RLZNAPAVWAS=+]?OCKL1\B:=(W>@&%7O"9-QMHC:L*Y[A )::W)$XL"-H[J^_F%/CMRZ^0YIY0YKY YDU9F)9T_G4 ML>8MC.=QCCR_G\SBCGD@S;WX^ M?Z;37OC^0$,VF)O&ZPNOT7]L1!"'LL?9$R[4VZWJ5G+\7:C[O2YE/:B;-ZB; M7[K5]WGG=9\O6.NU/B,!ML\;/"X/8$FO:#FJIU43N=?R2(7L@?++2#;"P%2 _#VD5+SP!C4=#D4NF=G*@&)@$G"&1(P;UIM]Z;C MEHQ!,N.)P%KNM9%9RHSS9].Y#YJ68XB @J^,!-:O%72!4J.D.7YN1*W,IS'< M;V_5OR2+UXN980E=3K^20(5-JVZA .8XIFK$UW>P65#%Z/FP;>,0-O8^ EW*FCA/(6*]QJ"+Y&PLS6:J:1+#6Q MUG"$F;\R5D)_)=I.M=K=[K0_?6A/>K=H,+GKC5!WT!^.>G>]Q_']4P\]#,9C M='X+"A,J+] 9(@Q-0AY+S +9L)5&,$*VOW'72=UY1]Q549\S%4K48P$$?]K; M&CWC][;\':]0\)&OKE#)^80\QRNAZ?@6G9]=%.B6LKB4$MWR$=T.IICY@+!" M*@0T@P5AC+ %XO-DX!6PR%M^JEI-5,V.6+4NW4JE8:]R6,H92[F09: ="N3S M2.^[T&R(%2#*I=14>EN"WAP^Q5*2.?&Q2?7<_Y*ZJ.R!>6X^5B7#JKPG1,"" M-\2G=6W[UH=H M!N)['E*AN*F*-W*)?6A:.OP2Q JLULRZTTX/^=WT]*[4QT+_/XDH MS+6I&PO=V]R:W-H965T ECA(^UC9";(>ZSI<;$F-^ M0[QN]<4RN6 M5,33\Z/ZE]2[]++ G$QI]",,Q&:L]340D!7>1>*1'KZ2W(^M])8TXNDO.&18 M9&E@N>."QCE9WD$<)MD1O^1U."%(G68"S FP2D!G"%9.L%Z[ LH)Z+4KV#DA MM:YGWM/">5A@=\3H 3"%EFKJ)*U^RI;U"A.5DYE@\FHH><)]])_\^[D/KCTB MHJE+W/M2:8-SVA;X(XF8L.! MGP0D:.![[7RGA:]+GX59>#0[@:V"]W1_ RSC(X &M!KN9_IZ.FRR\W^K^Q>O M7BJ&53QY*]5#Y_3D)L1Q1!H?;$9U4JK::O8N-)%ECO3]:;GJ*!/U3;N,\NHH M! V[@O(;5K11WRE0)8^H\(A:/?H[)G?4)H.M/+4Y#_D6+\E8D[LO)VQ/-/?] M.],Q/C?%IDLQKTLQOR.Q4O'MHOCVY0'+J/9I=/J65@VQ&JCMLI2K M!A2$IE.)5AUEREF-^16.D)#(HG,+@\98/:N\KI5=(SK6.@77WI>760B9SJF[$.LI'9KP1, M/VD!8\+6:>_-P9+N$I'U!,5LT=[?IEUM97YB#J=FP[PG/P>R[OV??/8M<8?9 M.DPXB,A*+F7<].2?@67]>380=)LVH LJ9#N;GF[D)PUA"B"OKR@5QX%:H/A( M&PO=V]R:W-H965T M S3WG&&]8FN3H MG@"ZR3)(7J![-)$4\4(H12$3#)!?MFB&TE00\=?X M4W%*=4H!/+S?LW\MM',M"TC1#*<_DXC%$\F10(26<).R![S[ABH]IN +<4J+ M7[ K8PU3 N&&,IQ58/X&69*75_A2K<,!0#T%T"J U@08)P!Z!=#?FL&H ,9; M,Y@5H) NE]J+A?,A@]Z8X!T@(IJSB9MB]0LT7Z\D%SZ9,\*?)AS'O(?@*;A[ M#,"ECQA,4@K4*_ 9/,Y]<'EQ!2Y DH,?,=Y0F$=T+#.>4>#DL&*?ENS:"78= MW.*82B#KS?C[=Z\#)76LO5]G*G6B_A'=Y> UWY!#1%TSO>9_9VN-8E MY_^R!V=G/UH,O:Z]7O 9I_CX-D1ABCH+6T*M BHVFZVGJ8:NCN7MX7*UHU3# M4D37,$03B>_$%)$MDKR/'U1+^=)EH"')_"')@H'(CLI@UF4PS[=:"34/3:18 M3L,>LW:4;2A*PVD=5(YMNPVG=419AFMT.\VJ)5K]3N-+EH2HWVJ]%.^UVI!D M_I!DP4!D1W6PZSK8YUO-;E?>/"A\N:[M($=Q&D9KQVB.U=@=@XYLCJMVV\RI MY3F]\F;\@\B[*TSZC=9+\EZC#4GF#TD6#$1V5 FWKH1[OM'"F:'T; M\U-U-%,[YGU^9BA;_'_TY8'C%I)5DE.0HB5/I5S;_%]!RB:^'#"\+KK4!6:\ MYRUN8W[N040$\.=+C-E^(!+4)RGO+U!+ P04 " !XABQ8&]3PD0\# L M"P &0 'AL+W=O^(I@$#/14[X0$N%6/9TG<R7:Q,6]NE*Y!F!"4-\5128_;J"G&X&FJEM%^ZR12K4@A[VEW@! M4Q /RPF3,[UA2;("",\H00SF VUH]B)?Q9<4&+&BQW4&2D>N+GN@X[ ,G3#;!J M@-4&."\ [!I@OS:#4P.KC5)>?_LD=OSKY7#+LY>[OD8<+GP!@D:"C0$$UH1@2ZEF:7ER#Z?@/%#-B/KKH< M3:=N]1Y?XA@&FKRVND9G[O<=DJR\2G)HA.1[9V9VYR9^W9?5E!W MUR7&I>^T?'D893J.Y;=\>1CE&)=!VY<=&1TO,+M]Z34:O:,:.ZU(U\#^[L"C MQ/_JP%.2C4])%IV(;.]T_.9T_+<[T#^\S=R6LT:',780M-QW&&,:OM$RWV%0 M8+@MZ^D[G_\"V*+LNSB*Z8J(ZFO0K#:MW;#L:%KK5V9O9':LCV4K6'5N?^BK M/O(<5&.,IA+E,9%[[\F["J-ZLF@B[+YF-&A6QERF$JVUE@*D"^GU,JMA.5 MH&F0P]]02P,$% @ >(8L6%R[6JY: P + \ !D !X;"]W;W)K&ULK5=1;YLP$/XK%INF3MH*@4"B+HG4AJ#MH575J-W# MM >'7!*K8*>VD[32?OQL0UG2NHRHO(!M[OM\=Q\18G+(U4/5DP7B.I9KRI2O6'/#<@/+,]3TO5ZX(SWY,1\ZGG8(,DBE9L#JMH4Q9)DF M4FX\E)Q.M:4&[H^?V1,3NXIEA@6,6?:3S.5JZ/0=-(<%WF3RANV^0QE/J/E2 ME@ES1;O"-@P.P OP3X30%!"0A> KIO +HE MH-L4$): \"7@K:"C$A"9W!?),IF.L<2C 6<[Q+6U8M,#(Y=!JP03JE^LJ>3J M*5$X.;J9W$VN;B?H) :)22;0%>8<:[4_HZ_H=AJCDX^?!ZY46VF FY:T%P6M M_P9M@"X9E2N!)G0.%^0[_F!S9_W MP>/F\- "GS2'=RWPI!Y^B9]0T+'Y?I#*H'IE D/7?8-NK)3AJB*@C. 9R8@D M(&QO2,$2&19=W[:C3MCQ/&_@;O<3W\PLKO5)E]\SL<8I#!U57P7P+3BC3Q\Z MD??-ENXVR9+7 ?C],-B/X"#-W2K-W69IQD* M&:X( CW=_9L*6YH%]HFA E]0;4O:JF-MUK M=SE6]S;)XH*LOU<.O-,@"@_+P<1F%04OK)*6'"N4G3A/I/;:@L M&H%JM6H%STT'Y/XS+_K(2\R7A J4P4)!O=.>*NV\Z,V*B61KTTO,F%2=B1FN M5#L+7!NHYPO&Y/-$;U UR*._4$L#!!0 ( 'B&+%@L[I'O60, +8- 9 M >&PO=V]R:W-H965T(,R_F2%20H9OR5KF6X(@F%.2A-94Q133F&< M22(CJ$$A0P MH0#YWP[-49(((=Z-WZ6F5)44Q./K@_K7W#OW\@0IFN/D5QRR:"(-)1"B%=PF M[ 'OOZ/2CR'T IS0_!?L"ZRI2"#84H;3DLQ[D,99\0]?RG$X(G"==H)6$K0Z M8? &02\)^GLK#$K"X+T5C)*06Y<+[_G N9!!9TSP'A"!YFKB(A_]G,W'*\Y$ M3GQ&^-.8\YCC+^_G/ZYF4]]SP?S^=N'=^=/ES?T=.'<1@W%"+\ 5>/1=<'YV M #H5=1T'.]P1MZ M2\Q@ GCB@NZ%(, I7X\H%*]TVVP7>F:N)Q:DG6/JP[&\.Q[!)L:R]5., MV\2HJJF<@KP6D*&\*IU8'E26!YV6YY@R@%? APEJS7,G7:SA([J! 9I(?)&F MB.R0Y'S^Q/O^I2U,?8JY?8IY/8F=S(%1S8'1<^P*/>,X"8I:BUT3,S1JJ6N1 M,0>UT+5@+*L]TN/Y049XA7^>)$ , $P+ 9 >&PO=V]R:W-H965T=VJ+2=E^[9"#1)C9K&]A^^[6=D(8DS:+3 MO2&QF1G__A.//:,#XS]$#"#1KRRE8FS%4FZO'$>L8LB(L-D6J/IGS7A&I!KR MC2.V'$ADG++4P:[;=S*24&LR,G,+/AFQG4P3"@N.Q"[+"'^=0L*9C+9D TN03]L%5R.GC!(E&5"1,(HXK,?6U+N:>U@[&(OG! ZB\HZT ME!?&?NC!MVALN9H(4EA)'8*HQQ[FD*8ZDN+X602URC6U8_7]&/VS$:_$O! ! M1B(J#BM/N@ L'7'?HO>/@%PZ^$9J3&5G71)+)B+,#XMI:1=,O)C?&6ZE) MJ/Z,2\G5OXGRDY/EX_W\W\O9='ESC>;WMXN;N^7T\=O]'?IX#9(DJ4#>)W2) M[AC=@Y 0H8?E$YKJW,M7-?\71[UX@[&*_A6?>[3[=;92[ MU^9^@N.7Z?9-O-X[\9Z.:;PEKV7<"_0"FX32A&[01Y4_>T%I*\E[G>1+\WDOT!=.J!;P9]!>$]3U:Z"=:^HC M[$ILR0K&ECJC!/ ]6)._/WA]]Y^.;Q&4BH*S%#WG7^3/@H*&H$L\J EJL0G# M]LSW2\[^69SJV%I#[@Z; M.W?HULB;-M4*."$?E.2#3O+OYKC7Y'O@ZOK*MSE21RJ@SR3AZ)FD.T +X,A\ MCDK)MJG(%PLKA'T;AS49;4:]=AG#4L:P4T91G&U(N:.'JYGU[*"^*SKC_\>" M]-RWR\CMY,]+L?7:<)O\ ]O%-?PVL]!^;W=XE5O2ZP0K:Z^5S6LNBH=V.*S# MM=@%5;-3./P&A__GS7MCRK%5"V[L2F]H-XZY%K.3'9XK<2I]209\8]HU@59L M1V5^A9>S94LX-8U0;7ZF6T73[[R%R?O,6\)5'0J4PEJ%=.U0'0L\;]WR@61; MT_V\,*EZ*?,:JW87N#90_Z\9D\>!7J!LH">_ 5!+ P04 " !XABQ8S'>[ M]P0# #Z"0 &0 'AL+W=OT6]T_+:RUP;?8]CPO3%2F%#GL MR5,-L N ?0QPSP"< N < YPS +< N%J9/!6M@X\%]KJ,;A!3UI)-#;28&BW3 MCU.U[3/!Y-M8XH0W>WH8?KL9]&:2=T2'9[A 'J&O 8XL#48WH=WC9;UN4JDMR3SWXCL0$&W5-"M8_?Z&\Q" MCGB$)3>*.5\=G[)E^86F^7"O-&9 ?"-$MAFK7" MS 0-7F[4U1BB@":R7'"L;US8JC&@ &>QP"3^52U8SM[:%ZQ=H5=M$)?J5>'3 M/O!YH$2K5*)5J\0HR0A]!4!<28*R%0LB*0O*"$YW!P>OY9V'YP20K*CZ&.$T M@"I=6B<'R6D[I[JJD,YEY53( M=7?!Y4>P2D5>9\K5LH'IZ[I]M#YH=(9Y'_*')N^*QI@M MXY0C @M):=VV988L[S3RB:"9KKUS*F0EU\-(-F? E(%\OZ!4[";*0=GN>;\! M4$L#!!0 ( 'B&+%BTM(=9VP, /8- 9 >&PO=V]R:W-H965T=26/Y QM88"9@=]*'I)FD:9\5? %- M;8E* M)_7\DV#AA!:3_W4PR:@1'REL)$[S\A(>>;\NWGYE T=;'H$.4R5H2#Z;PT3R'/#I/OQHR9U MFIPF%)15_^2E-F(G0//8 _PZP&\'A$<"@CH@.#=#6 >$YV;H MU &E=+?27AJ7$$5& \$W2!BT9C,/I?MEM/:+,C-1'I707ZF.4Z.[] OZ=#?Y M?)NB^_0!/=YHW?(17)!!$A$&7IB5,E+W:B? MORSX2A*6R8&K=(\,KSNMLX^K[/Z1[ &ZY4PM)$I9!IDE/CD='YV(=[43C1W^ MUHZQ?Y+PCJ^O4( OD8_]P-*?R?GAODW._\N>_G7V/3."9FX$)5]PC$_7*QW]D')(FSG0D.NA?+^JV_#C$>)VV:8F%*&Z;82/RCTR+ MN/$B/G]:E,;H6;'YN^D1'PY6+X[:Z\2&PEW<\L/*A5NHU(+J]H(CEG0;2[HG M+1D32:>(O5;GBYQ+O5DW1=JFO:*,=WJ"K_SVRK"!=M9UI=P&"N*6<"M39-?= M:W3W?K\L]*#_H?*>37E+N WCM:I>8@,%44NXE:EC%^[AUU,:/BG]FBF:-56A M6.;\)]2S_H,Y)^N5L"$BJ]?!)8*7:;ZR'ZG&=:J]I8S;,W=B07GA 2RQP Y1 MZ6_)*EO7B"DKGTKIJIC2]/:7%*NRZ-YJWWL]2>>I3TQEYKRW/Q* M7]V(;HF84R91#C.="E_%NJ^BNF14+XHORU/T,U?Z3%X^+O3%#(0!Z.\SSM7V MQ21HKGJC7U!+ P04 " !XABQ81:O*Q8(" Z!P &0 'AL+W=O,\IDVTF5 MRF]<5TY3R+"\XCDP_67.18:5GHJ%*W,!>&9!&74#SXO<#!/F)+%=&XHDYDM% M"8.A0'*995A\W 'EZ[;C.Y\+([)(E5EPDSC'"QB#>LF'0L_O7"CI J2'2,MY* M3J?:T@ WQY_L#]:[]C+!$CJ<_B8SE;:=:P?-8(Z75(WX^B>4?IJ&;\JIM$^T M+F);H8.F2ZEX5H*U@HRPXHW?RSQL /S& 4!0 H)=P*$=PA(06J.%,FNKBQ5. M8L'72)AHS68&-C<6K=T09JHX5D)_)1JGDO']8_]^\(QN!UW4>1IT]'AT^]Q[ M&J#>X.%IU"_&YUU0F%!Y@;ZAEW$7G9]=H#-$&'I.^5)B-I.QJ[0:P^E.RYWO MBIV# SL/^.H*A=XE"KP@K(%WCL/[^ .%?AW:U2FH\A!4>0@L7>, W5#H@R'4 M!])F$+PM2:Y_576)&*@Z:P599,G,05DEH7_=C-W5IH']H*#5_%X%;>D,*YWA M49TO8_2G#]D$Q-\Z74?!IB/WH(R]!K,!)OG[Q(^]'70%.1+;ELU'Y M;)RR'@59@;]3C_V@H.6']?5H5CJ;1W7VF +!L&E)F-8I.PK_WXJF?U769_ -02P,$% @ >(8L6*A) M>"DU P R!, T !X;"]S='EL97,N>&ULW5A=3]LP%/TKD1D32!-IFQ&: MT53:*B%-VB8D>-@;38F>.R=K]^OG&:?N"+& ];NU0T]CT^YQ[;-\0P MJLU*L+LY8R98ED+6*9D;4WT(PWHV9R6M+U3%I$5RI4MJ;%<785UI1K,:2*4( M![U>'):42S(>R45Y4YHZF*F%-"F)NU#@;I^SE/3C]R1P">S-96&&+8[.1[E2FXV-"(N8)5IR8)'*E(RH8)/-0=6 M3DLN5BX\@,!,":4#8RO)INI#I/[EX+[K09&U.B672C>Y70;W/6V'[P'K'ACD M0G0&!\0%QJ.*&L.TO+&=9G 3? (%;?M^55F'A::K_N"2; C-S2:9*ITQW:7I MDW5H/!(L!SN:%W.X&U6% !JC2MO(."V4I(V'-:-M6-D9$^(.GL#O^8[V,M_: MLQ[LF.R:UE#;=#*N _K;:DY[6S9ZE6Y0\4=E/BWL=&33AR)CMYKE?-GTEWEG M %/OX^JTJL3JH^"%+)F;_(L3CD=TS0OF2O-?-AN4RLP&F";!(].&S[8C/S6M M[MG2K,MIF>.>!T?H^>^N<\$DTU1LF[:U?\BK_&K'T=6_LMS\5MDW[/78OE8/ MW>3E,9B,C\'D4=3D\!A,)H=O,CI,CV%[R-@ZR>R<8[IH .?%E'R#DZ?8) VF M"RX,EVUOSK.,R2?'&2MOZ-3^F;*C;\=G+*<+8>X[,"6;]E>6\469=*-N82': M49OV%YA>/^X.JS87EQE;LFS2=G4Q;9J!;=BL[06$?>2FN?P(QG&8'P$,RX,Y MP#B.A>7YG^8S1.?C,,S;T(L,48&"[@-4.Y/?G@9KR(8L6)>*NQS $P( L !?3T\$MP>:4#M.*2VBZD8 M_1!2:5K5N %(MB6/:( M7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1 MH2)8%II%R=.B':5_'PM]V;'6++M:9\> 1)VO[Z M"H@;L7'/].:4*X/PX(<#>A])^.:QE)_ORO(S^9)G134UCG5]NAZ-JMV1YVGU MNCSQ0ATYE#)/:[4K/XVJD^3IOCIR7N?9R!J/KT9Y*@KC_*\8&K+W=[]W4Y%UG-Y2RM^4*6]R=1?&I.HZYBI%U&6X?S9U?$:_DK92P/ M!['CLW)WG_.B[NHH>=8 %M51G"J#%&G.IX97/G#97(_Z 7_?75NMH+1*R6NA M#DA_W^(AHH1L1EE,9T1MQ>'*G[F)VKEU5R[S*-$@+0#2&A#R/TN#M %(>Q#( M.%$? 64:I - .@-"]BHY 2 G0T+:&N05 'DU)*2C0;X!(-_@0H;1PF7^OV[B MAXRX3.'Y"^;/?<]E"7$]#?(M /D6%W+N^A'9NJL-)>&MYFV"S:D,O3)8T4A4,UHI6A:*_I3HF MI!(3V241W5*VZ>% TC"1K1$GH??7JUNW\T:P5L5ZD2*0+TQD8; VW-HD6:M; MVCY_.AND"1/9$S%=--WUW%L]M1UU9FOC6,>$1&$BFP)T;F^(94&^L)!] 6/J M@RP+DHB%+!%P<-"O)CA!0;;)3X<'Y \U_\QT3,@G%K)/P-#N5Q-RBX7LEJ?0 M[FK'JS]U+D@F%K),?I;>3Z Z)B09"UDRET+\8BTATUC(I@'3O/\H0M*QD*4# MQZ0^S;,@Z5B#2F>BKY! TK&1I0.GN2X=&Y*./:AT])MN0]*QD:4#8_9N.K@N MABP=P(TS7JUT(LI"-;*'G M51,:=X^CR"K"4BG3YMV!C@E9R$:VT.6EE!_ .B9D(1O90A>6*_2BZDO@D(4< M9 O!HV"]"SF0A1QD"_T8!3]54!^Z.9!W'&3O_!^,F#TTR#4.LFM>H%D]-/#- MR^^:U+Q(F1XBY!9GL/E-RZQC0FYQ!EI$:S%[IG8@MSC8,QP0LQRAQ(+0ZV6L#IHE[,":262:N6T?D5_YX?1,'W3/U$I=IW:;9;2])\=.\G MG$FSE'BXSS)/M87%JDSWYW\,G/_M\/X[4$L#!!0 ( 'B&+%@X@V\FQ $ M T> : >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/-V3MNPD 4A>&M M("\@PWV8A BHTM!&V8!%AH=BL.69*+#[(%*0@U*D07,J:VSY^J\^6^/9:VR; MO.L.:;OKT^BX;P]I7FUS[I]#2*MMW#?IH>OCX7QEW0W[)I^7PR;TS>JCV<2@ MX_$D#+]G5(O9[YFCMU,?_S.Q6Z]WJ_C2K3[W\9#_&!R^NN$C;6/,U>BM&38Q MSZMP;*^G4[@H*@I_)!4PB:E@^2,^/U\9?ESTE\7]07G /\_5U\ U!+ P04 M" !XABQ8@(3XG< ! '@ $P %M#;VYT96YT7U1Y<&5S72YX;6S-VUW M7VSI;#)^VUGRO6U5UGZ2+$.P#XSY;$F5]JFQ5,>1N7&5#O'1+9C5V4HOB(G! M8,0R4P>J0S\T-9+I^(GF>EV&WO,VOO:%J2>)H](GO(8L6 =!36*! L0 ! ( ! &1O8U!R M;W!S+V%P<"YX;6Q02P$"% ,4 " !XABQ87ZX!F^X K @ $0 M @ &O 9&]C4')O<',O8V]R92YX;6Q02P$"% ,4 " !XABQ8 MF5R<(Q & "<)P $P @ ', 0 >&PO=&AE;64O=&AE;64Q M+GAM;%!+ 0(4 Q0 ( 'B&+%A8#A:1P04 *\> 8 " M@0T( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6)8Z-(;4 @ R@D !@ M ("!#A0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0# M% @ >(8L6 +CZ[VX"0 MD< !@ ("!R2$ 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6-EM9]*Q M!@ &UL4$L! A0#% @ >(8L M6$3VI'[[! ;0P !D ("!D4, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6#O;"P.S P ! D M !D ("!"54 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6"S3@7[+!@ ,A$ !D M ("!7V8 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ >(8L6#"!['4Y! 9@P !D ("!4'4 'AL+W=O M0 >&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6.[_ M(@%4! G@H !D ("!4X 'AL+W=OA >&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6.EFN.Y8 P H0< !D M ("!-8L 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ >(8L6+F;-(@[! 3QT !D ("! MQ90 'AL+W=O&PO=V]R:W-H965THE1L , !(4 9 M " @?J; !X;"]W;W)K&UL4$L! A0#% M @ >(8L6&A=*\H'!@ /#, !D ("!X9\ 'AL+W=O)DP( -\& 9 " @2BI !X M;"]W;W)K&UL4$L! A0#% @ >(8L6/-_O8$! M P ]0@ !D ("!\JL 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6$]%(4B% @ K < !D M ("!7+4 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ >(8L6$=^T90? P $ H !D ("!3, M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M>(8L6!O4\)$/ P + L !D ("!:&UL4$L! A0#% @ >(8L6$E(D31X P M3 L !D ("!T-0 'AL+W=O[]P0# #Z"0 &0 @(%_ MV >&PO=V]R:W-H965T&UL4$L! A0#% @ >(8L6$6KRL6" @ .@< !D M ("!S-\ 'AL+W=O&PO7E !?&PO7W)E;',O=V]R M:V)O;VLN>&UL+G)E;'-02P$"% ,4 " !XABQ8@(3XG< ! '@ $P M @ $9[0 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 .@ Z + ,T/ *[P ! 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 65 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.4 html 187 208 1 false 46 0 false 4 false false R1.htm 000001 - Document - Cover Sheet http://aehr.com/role/Cover Cover Cover 1 false false R2.htm 000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS Sheet http://aehr.com/role/CondensedConsolidatedBalanceSheets CONDENSED CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited) Sheet http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited) Statements 4 false false R5.htm 000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited) Sheet http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited) Statements 5 false false R6.htm 000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) Sheet http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) Statements 6 false false R7.htm 000007 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) Sheet http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) Statements 7 false false R8.htm 000008 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES Sheet http://aehr.com/role/OrganizationAndSignificantAccountingPolicies ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES Notes 8 false false R9.htm 000009 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS Sheet http://aehr.com/role/FairValueOfFinancialInstruments FAIR VALUE OF FINANCIAL INSTRUMENTS Notes 9 false false R10.htm 000010 - Disclosure - BALANCE SHEET INFORMATION Sheet http://aehr.com/role/BalanceSheetInformation BALANCE SHEET INFORMATION Notes 10 false false R11.htm 000011 - Disclosure - INCOME TAX Sheet http://aehr.com/role/IncomeTax INCOME TAX Notes 11 false false R12.htm 000012 - Disclosure - BORROWING ARRANGEMENTS Sheet http://aehr.com/role/BorrowingArrangements BORROWING ARRANGEMENTS Notes 12 false false R13.htm 000013 - Disclosure - COMMITMENTS AND CONTINGENCIES Sheet http://aehr.com/role/CommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 13 false false R14.htm 000014 - Disclosure - SHAREHOLDERS EQUITY Sheet http://aehr.com/role/ShareholdersEquity SHAREHOLDERS EQUITY Notes 14 false false R15.htm 000015 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS Sheet http://aehr.com/role/AccumulatedOtherComprehensiveLoss ACCUMULATED OTHER COMPREHENSIVE LOSS Notes 15 false false R16.htm 000016 - Disclosure - REVENUE Sheet http://aehr.com/role/REVENUE REVENUE Notes 16 false false R17.htm 000017 - Disclosure - STOCK-BASED COMPENSATION Sheet http://aehr.com/role/StockBasedCompensation STOCK-BASED COMPENSATION Notes 17 false false R18.htm 000018 - Disclosure - NET INCOME PER SHARE Sheet http://aehr.com/role/NetIncomePerShare NET INCOME PER SHARE Notes 18 false false R19.htm 000019 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION Sheet http://aehr.com/role/SegmentAndConcentrationInformation SEGMENT AND CONCENTRATION INFORMATION Notes 19 false false R20.htm 000020 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Policies) Sheet http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Policies) Policies 20 false false R21.htm 000021 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Tables) Sheet http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesTables ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Tables) Tables http://aehr.com/role/OrganizationAndSignificantAccountingPolicies 21 false false R22.htm 000022 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Tables) Sheet http://aehr.com/role/FairValueOfFinancialInstrumentsTables FAIR VALUE OF FINANCIAL INSTRUMENTS (Tables) Tables http://aehr.com/role/FairValueOfFinancialInstruments 22 false false R23.htm 000023 - Disclosure - BALANCE SHEET INFORMATION (Tables) Sheet http://aehr.com/role/BalanceSheetInformationTables BALANCE SHEET INFORMATION (Tables) Tables http://aehr.com/role/BalanceSheetInformation 23 false false R24.htm 000024 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS (Tables) Sheet http://aehr.com/role/AccumulatedOtherComprehensiveLossTables ACCUMULATED OTHER COMPREHENSIVE LOSS (Tables) Tables http://aehr.com/role/AccumulatedOtherComprehensiveLoss 24 false false R25.htm 000025 - Disclosure - REVENUE (Tables) Sheet http://aehr.com/role/RevenueTables REVENUE (Tables) Tables http://aehr.com/role/REVENUE 25 false false R26.htm 000026 - Disclosure - STOCK-BASED COMPENSATION (Tables) Sheet http://aehr.com/role/StockBasedCompensationTables STOCK-BASED COMPENSATION (Tables) Tables http://aehr.com/role/StockBasedCompensation 26 false false R27.htm 000027 - Disclosure - NET INCOME PER SHARE (Tables) Sheet http://aehr.com/role/NetIncomePerShareTables NET INCOME PER SHARE (Tables) Tables http://aehr.com/role/NetIncomePerShare 27 false false R28.htm 000028 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION (Tables) Sheet http://aehr.com/role/SegmentAndConcentrationInformationTables SEGMENT AND CONCENTRATION INFORMATION (Tables) Tables http://aehr.com/role/SegmentAndConcentrationInformation 28 false false R29.htm 000029 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details) Sheet http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details) Details http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesTables 29 false false R30.htm 000030 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) Sheet http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) Details http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesTables 30 false false R31.htm 000031 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details) Sheet http://aehr.com/role/FairValueOfFinancialInstrumentsDetails FAIR VALUE OF FINANCIAL INSTRUMENTS (Details) Details http://aehr.com/role/FairValueOfFinancialInstrumentsTables 31 false false R32.htm 000032 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details 1) Sheet http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1 FAIR VALUE OF FINANCIAL INSTRUMENTS (Details 1) Details http://aehr.com/role/FairValueOfFinancialInstrumentsTables 32 false false R33.htm 000033 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details Narrative) Sheet http://aehr.com/role/FairValueOfFinancialInstrumentsDetailsNarrative FAIR VALUE OF FINANCIAL INSTRUMENTS (Details Narrative) Details http://aehr.com/role/FairValueOfFinancialInstrumentsTables 33 false false R34.htm 000034 - Disclosure - BALANCE SHEET INFORMATION (Details) Sheet http://aehr.com/role/BalanceSheetInformationDetails BALANCE SHEET INFORMATION (Details) Details http://aehr.com/role/BalanceSheetInformationTables 34 false false R35.htm 000035 - Disclosure - BALANCE SHEET INFORMATION (Details 1) Sheet http://aehr.com/role/BalanceSheetInformationDetails1 BALANCE SHEET INFORMATION (Details 1) Details http://aehr.com/role/BalanceSheetInformationTables 35 false false R36.htm 000036 - Disclosure - BALANCE SHEET INFORMATION (Details 2) Sheet http://aehr.com/role/BalanceSheetInformationDetails2 BALANCE SHEET INFORMATION (Details 2) Details http://aehr.com/role/BalanceSheetInformationTables 36 false false R37.htm 000037 - Disclosure - BALANCE SHEET INFORMATION (Details 3) Sheet http://aehr.com/role/BalanceSheetInformationDetails3 BALANCE SHEET INFORMATION (Details 3) Details http://aehr.com/role/BalanceSheetInformationTables 37 false false R38.htm 000038 - Disclosure - INCOME TAXES (Details Narrative) Sheet http://aehr.com/role/IncomeTaxesDetailsNarrative INCOME TAXES (Details Narrative) Details http://aehr.com/role/IncomeTax 38 false false R39.htm 000039 - Disclosure - BORROWING ARRANGEMENTS (Details Narrative) Sheet http://aehr.com/role/BorrowingArrangementsDetailsNarrative BORROWING ARRANGEMENTS (Details Narrative) Details http://aehr.com/role/BorrowingArrangements 39 false false R40.htm 000040 - Disclosure - SHAREHOLDERS EQUITY (Details Narrative) Sheet http://aehr.com/role/ShareholdersEquityDetailsNarrative SHAREHOLDERS EQUITY (Details Narrative) Details http://aehr.com/role/ShareholdersEquity 40 false false R41.htm 000041 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS (Details) Sheet http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails ACCUMULATED OTHER COMPREHENSIVE LOSS (Details) Details http://aehr.com/role/AccumulatedOtherComprehensiveLossTables 41 false false R42.htm 000042 - Disclosure - REVENUE (Details) Sheet http://aehr.com/role/RevenueDetails REVENUE (Details) Details http://aehr.com/role/RevenueTables 42 false false R43.htm 000043 - Disclosure - REVENUE (Details 1) Sheet http://aehr.com/role/RevenueDetails1 REVENUE (Details 1) Details http://aehr.com/role/RevenueTables 43 false false R44.htm 000044 - Disclosure - REVENUE (Details 2) Sheet http://aehr.com/role/RevenueDetails2 REVENUE (Details 2) Details http://aehr.com/role/RevenueTables 44 false false R45.htm 000045 - Disclosure - REVENUE (Details Narrative) Sheet http://aehr.com/role/RevenueDetailsNarrative REVENUE (Details Narrative) Details http://aehr.com/role/RevenueTables 45 false false R46.htm 000046 - Disclosure - STOCK-BASED COMPENSATION (Details) Sheet http://aehr.com/role/StockBasedCompensationDetails STOCK-BASED COMPENSATION (Details) Details http://aehr.com/role/StockBasedCompensationTables 46 false false R47.htm 000047 - Disclosure - STOCK-BASED COMPENSATION (Details 1) Sheet http://aehr.com/role/StockBasedCompensationDetails1 STOCK-BASED COMPENSATION (Details 1) Details http://aehr.com/role/StockBasedCompensationTables 47 false false R48.htm 000048 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative) Sheet http://aehr.com/role/StockBasedCompensationDetailsNarrative STOCK-BASED COMPENSATION (Details Narrative) Details http://aehr.com/role/StockBasedCompensationTables 48 false false R49.htm 000049 - Disclosure - NET INCOME PER SHARE (Details) Sheet http://aehr.com/role/NetIncomePerShareDetails NET INCOME PER SHARE (Details) Details http://aehr.com/role/NetIncomePerShareTables 49 false false R50.htm 000050 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION (Details) Sheet http://aehr.com/role/SegmentAndConcentrationInformationDetails SEGMENT AND CONCENTRATION INFORMATION (Details) Details http://aehr.com/role/SegmentAndConcentrationInformationTables 50 false false All Reports Book All Reports aehr-20231130.xsd aehr-20231130_cal.xml aehr-20231130_def.xml aehr-20231130_lab.xml aehr-20231130_pre.xml aehr_10q.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 68 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "aehr_10q.htm": { "nsprefix": "aehr", "nsuri": "http://aehr.com/20231130", "dts": { "schema": { "local": [ "aehr-20231130.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/dtr/type/nonNumeric-2009-12-16.xsd", "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd", "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.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/currency/2023/currency-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/exch/2023/exch-2023.xsd", "https://xbrl.sec.gov/naics/2023/naics-2023.xsd", "https://xbrl.sec.gov/sic/2023/sic-2023.xsd", "https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd" ] }, "calculationLink": { "local": [ "aehr-20231130_cal.xml" ] }, "definitionLink": { "local": [ "aehr-20231130_def.xml" ] }, "labelLink": { "local": [ "aehr-20231130_lab.xml" ] }, "presentationLink": { "local": [ "aehr-20231130_pre.xml" ] }, "inline": { "local": [ "aehr_10q.htm" ] } }, "keyStandard": 199, "keyCustom": 9, "axisStandard": 16, "axisCustom": 0, "memberStandard": 19, "memberCustom": 27, "hidden": { "total": 26, "http://fasb.org/us-gaap/2023": 20, "http://xbrl.sec.gov/dei/2023": 5, "http://aehr.com/20231130": 1 }, "contextCount": 187, "entityCount": 1, "segmentCount": 46, "elementCount": 321, "unitCount": 4, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 696, "http://xbrl.sec.gov/dei/2023": 29 }, "report": { "R1": { "role": "http://aehr.com/role/Cover", "longName": "000001 - Document - Cover", "shortName": "Cover", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "dei:EntityRegistrantName", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "strong", "p", "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "dei:EntityRegistrantName", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "strong", "p", "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R2": { "role": "http://aehr.com/role/CondensedConsolidatedBalanceSheets", "longName": "000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:AccountsReceivableNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R3": { "role": "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "longName": "000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:PreferredStockNoParValue", "unitRef": "USDPShares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:PreferredStockNoParValue", "unitRef": "USDPShares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R4": { "role": "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "longName": "000004 - 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": "From2023-09-01to2023-11-30", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:CostOfRevenue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R5": { "role": "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited", "longName": "000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited)", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R6": { "role": "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "longName": "000006 - 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": "AsOf2022-05-31_us-gaap_CommonStockMember", "name": "us-gaap:SharesIssued", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2022-05-31_us-gaap_CommonStockMember", "name": "us-gaap:SharesIssued", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R7": { "role": "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited", "longName": "000007 - 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": "From2023-06-01to2023-11-30", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ShareBasedCompensation", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R8": { "role": "http://aehr.com/role/OrganizationAndSignificantAccountingPolicies", "longName": "000008 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES", "shortName": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R9": { "role": "http://aehr.com/role/FairValueOfFinancialInstruments", "longName": "000009 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS", "shortName": "FAIR VALUE OF FINANCIAL INSTRUMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R10": { "role": "http://aehr.com/role/BalanceSheetInformation", "longName": "000010 - Disclosure - BALANCE SHEET INFORMATION", "shortName": "BALANCE SHEET INFORMATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R11": { "role": "http://aehr.com/role/IncomeTax", "longName": "000011 - Disclosure - INCOME TAX", "shortName": "INCOME TAX", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R12": { "role": "http://aehr.com/role/BorrowingArrangements", "longName": "000012 - Disclosure - BORROWING ARRANGEMENTS", "shortName": "BORROWING ARRANGEMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R13": { "role": "http://aehr.com/role/CommitmentsAndContingencies", "longName": "000013 - Disclosure - COMMITMENTS AND CONTINGENCIES", "shortName": "COMMITMENTS AND CONTINGENCIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R14": { "role": "http://aehr.com/role/ShareholdersEquity", "longName": "000014 - Disclosure - SHAREHOLDERS EQUITY", "shortName": "SHAREHOLDERS EQUITY", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R15": { "role": "http://aehr.com/role/AccumulatedOtherComprehensiveLoss", "longName": "000015 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS", "shortName": "ACCUMULATED OTHER COMPREHENSIVE LOSS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ComprehensiveIncomeNoteTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ComprehensiveIncomeNoteTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R16": { "role": "http://aehr.com/role/REVENUE", "longName": "000016 - Disclosure - REVENUE", "shortName": "REVENUE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R17": { "role": "http://aehr.com/role/StockBasedCompensation", "longName": "000017 - Disclosure - STOCK-BASED COMPENSATION", "shortName": "STOCK-BASED COMPENSATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R18": { "role": "http://aehr.com/role/NetIncomePerShare", "longName": "000018 - Disclosure - NET INCOME PER SHARE", "shortName": "NET INCOME PER SHARE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R19": { "role": "http://aehr.com/role/SegmentAndConcentrationInformation", "longName": "000019 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION", "shortName": "SEGMENT AND CONCENTRATION INFORMATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R20": { "role": "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies", "longName": "000020 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Policies)", "shortName": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "20", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R21": { "role": "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesTables", "longName": "000021 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Tables)", "shortName": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "21", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "aehr:ScheduleOfFinancialInstrumentsTextblock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ConcentrationRiskCreditRisk", "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "aehr:ScheduleOfFinancialInstrumentsTextblock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ConcentrationRiskCreditRisk", "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R22": { "role": "http://aehr.com/role/FairValueOfFinancialInstrumentsTables", "longName": "000022 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Tables)", "shortName": "FAIR VALUE OF FINANCIAL INSTRUMENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R23": { "role": "http://aehr.com/role/BalanceSheetInformationTables", "longName": "000023 - Disclosure - BALANCE SHEET INFORMATION (Tables)", "shortName": "BALANCE SHEET INFORMATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R24": { "role": "http://aehr.com/role/AccumulatedOtherComprehensiveLossTables", "longName": "000024 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS (Tables)", "shortName": "ACCUMULATED OTHER COMPREHENSIVE LOSS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R25": { "role": "http://aehr.com/role/RevenueTables", "longName": "000025 - Disclosure - REVENUE (Tables)", "shortName": "REVENUE (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R26": { "role": "http://aehr.com/role/StockBasedCompensationTables", "longName": "000026 - Disclosure - STOCK-BASED COMPENSATION (Tables)", "shortName": "STOCK-BASED COMPENSATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R27": { "role": "http://aehr.com/role/NetIncomePerShareTables", "longName": "000027 - Disclosure - NET INCOME PER SHARE (Tables)", "shortName": "NET INCOME PER SHARE (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R28": { "role": "http://aehr.com/role/SegmentAndConcentrationInformationTables", "longName": "000028 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION (Tables)", "shortName": "SEGMENT AND CONCENTRATION INFORMATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R29": { "role": "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails", "longName": "000029 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details)", "shortName": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "29", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30_aehr_RevenuesMember_aehr_CustomerAMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "aehr:ScheduleOfFinancialInstrumentsTextblock", "us-gaap:ConcentrationRiskCreditRisk", "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30_aehr_RevenuesMember_aehr_CustomerAMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "aehr:ScheduleOfFinancialInstrumentsTextblock", "us-gaap:ConcentrationRiskCreditRisk", "us-gaap:BusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R30": { "role": "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative", "longName": "000030 - Disclosure - ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)", "shortName": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "30", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:SecuritiesBorrowedAllowanceForCreditLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:SecuritiesBorrowedAllowanceForCreditLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R31": { "role": "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "longName": "000031 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details)", "shortName": "FAIR VALUE OF FINANCIAL INSTRUMENTS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "AsOf2023-11-30_us-gaap_AssetsMember", "name": "us-gaap:InvestmentsFairValueDisclosure", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30_us-gaap_AssetsMember", "name": "us-gaap:InvestmentsFairValueDisclosure", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R32": { "role": "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1", "longName": "000032 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details 1)", "shortName": "FAIR VALUE OF FINANCIAL INSTRUMENTS (Details 1)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30_aehr_CostMember", "name": "us-gaap:Cash", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R33": { "role": "http://aehr.com/role/FairValueOfFinancialInstrumentsDetailsNarrative", "longName": "000033 - Disclosure - FAIR VALUE OF FINANCIAL INSTRUMENTS (Details Narrative)", "shortName": "FAIR VALUE OF FINANCIAL INSTRUMENTS (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "AsOf2023-05-31", "name": "us-gaap:RestrictedCashNoncurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-05-31", "name": "us-gaap:RestrictedCashNoncurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R34": { "role": "http://aehr.com/role/BalanceSheetInformationDetails", "longName": "000034 - Disclosure - BALANCE SHEET INFORMATION (Details)", "shortName": "BALANCE SHEET INFORMATION (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R35": { "role": "http://aehr.com/role/BalanceSheetInformationDetails1", "longName": "000035 - Disclosure - BALANCE SHEET INFORMATION (Details 1)", "shortName": "BALANCE SHEET INFORMATION (Details 1)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:LeaseholdImprovementsGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:LeaseholdImprovementsGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R36": { "role": "http://aehr.com/role/BalanceSheetInformationDetails2", "longName": "000036 - Disclosure - BALANCE SHEET INFORMATION (Details 2)", "shortName": "BALANCE SHEET INFORMATION (Details 2)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "AsOf2023-08-31", "name": "us-gaap:ProductWarrantyAccrual", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-08-31", "name": "us-gaap:ProductWarrantyAccrual", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R37": { "role": "http://aehr.com/role/BalanceSheetInformationDetails3", "longName": "000037 - Disclosure - BALANCE SHEET INFORMATION (Details 3)", "shortName": "BALANCE SHEET INFORMATION (Details 3)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:CustomerDepositsCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DeferredRevenueByArrangementDisclosureTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:CustomerDepositsCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DeferredRevenueByArrangementDisclosureTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R38": { "role": "http://aehr.com/role/IncomeTaxesDetailsNarrative", "longName": "000038 - Disclosure - INCOME TAXES (Details Narrative)", "shortName": "INCOME TAXES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:IncomeTaxExpenseBenefit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": null }, "R39": { "role": "http://aehr.com/role/BorrowingArrangementsDetailsNarrative", "longName": "000039 - Disclosure - BORROWING ARRANGEMENTS (Details Narrative)", "shortName": "BORROWING ARRANGEMENTS (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "AsOf2023-11-30_aehr_OriginalLoanAndSecurityAgreementMember", "name": "us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30_aehr_OriginalLoanAndSecurityAgreementMember", "name": "us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R40": { "role": "http://aehr.com/role/ShareholdersEquityDetailsNarrative", "longName": "000040 - Disclosure - SHAREHOLDERS EQUITY (Details Narrative)", "shortName": "SHAREHOLDERS EQUITY (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "AsOf2023-02-08", "name": "us-gaap:SaleOfStockPricePerShare", "unitRef": "USDPShares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-02-08", "name": "us-gaap:SaleOfStockPricePerShare", "unitRef": "USDPShares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R41": { "role": "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails", "longName": "000041 - Disclosure - ACCUMULATED OTHER COMPREHENSIVE LOSS (Details)", "shortName": "ACCUMULATED OTHER COMPREHENSIVE LOSS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "AsOf2023-05-31", "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R42": { "role": "http://aehr.com/role/RevenueDetails", "longName": "000042 - Disclosure - REVENUE (Details)", "shortName": "REVENUE (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30_srt_EuropeMember", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R43": { "role": "http://aehr.com/role/RevenueDetails1", "longName": "000043 - Disclosure - REVENUE (Details 1)", "shortName": "REVENUE (Details 1)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30_aehr_SystemsMember", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R44": { "role": "http://aehr.com/role/RevenueDetails2", "longName": "000044 - Disclosure - REVENUE (Details 2)", "shortName": "REVENUE (Details 2)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30_aehr_ProductsAndServicesTransferredAtAPointInTimeMember", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R45": { "role": "http://aehr.com/role/RevenueDetailsNarrative", "longName": "000045 - Disclosure - REVENUE (Details Narrative)", "shortName": "REVENUE (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:ContractWithCustomerLiability", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-05-31", "name": "us-gaap:ContractWithCustomerLiability", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R46": { "role": "http://aehr.com/role/StockBasedCompensationDetails", "longName": "000046 - Disclosure - STOCK-BASED COMPENSATION (Details)", "shortName": "STOCK-BASED COMPENSATION (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R47": { "role": "http://aehr.com/role/StockBasedCompensationDetails1", "longName": "000047 - Disclosure - STOCK-BASED COMPENSATION (Details 1)", "shortName": "STOCK-BASED COMPENSATION (Details 1)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "AsOf2023-08-31_aehr_NonvestedRSUActivtyMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-05-31_aehr_NonvestedRSUActivtyMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R48": { "role": "http://aehr.com/role/StockBasedCompensationDetailsNarrative", "longName": "000048 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative)", "shortName": "STOCK-BASED COMPENSATION (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-06-01to2023-11-30", "name": "us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true, "unique": true } }, "R49": { "role": "http://aehr.com/role/NetIncomePerShareDetails", "longName": "000049 - Disclosure - NET INCOME PER SHARE (Details)", "shortName": "NET INCOME PER SHARE (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-09-01to2023-11-30", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } }, "R50": { "role": "http://aehr.com/role/SegmentAndConcentrationInformationDetails", "longName": "000050 - Disclosure - SEGMENT AND CONCENTRATION INFORMATION (Details)", "shortName": "SEGMENT AND CONCENTRATION INFORMATION (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "AsOf2023-11-30", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-11-30_country_US", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "aehr_10q.htm", "unique": true } } }, "tag": { "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingLeaseLiability", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Operating lease liabilities", "documentation": "Amount of increase (decrease) in obligation for operating lease." } } }, "auth_ref": [ "r580", "r599" ] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r108", "r138", "r139", "r140", "r142", "r148", "r150", "r222", "r223", "r340", "r341", "r342", "r350", "r351", "r363", "r365", "r366", "r368", "r371", "r450", "r452", "r460", "r659" ] }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationPercentage", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Remaining performance obligation revenue recognition", "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue." } } }, "auth_ref": [ "r578" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r12", "r108", "r125", "r126", "r127", "r138", "r139", "r140", "r142", "r148", "r150", "r164", "r222", "r223", "r283", "r340", "r341", "r342", "r350", "r351", "r363", "r364", "r365", "r366", "r367", "r368", "r371", "r382", "r383", "r384", "r385", "r386", "r387", "r391", "r450", "r451", "r452", "r460", "r513" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accumulated other comprehensive loss", "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r2", "r11", "r26", "r364", "r367", "r391", "r450", "r451", "r596", "r597", "r598", "r603", "r604", "r605" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Selling, general and administrative", "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc." } } }, "auth_ref": [ "r71" ] }, "us-gaap_InvestmentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsFairValueDisclosure", "crdr": "debit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Investment securities", "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": [ "r375" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Provision for income taxes", "verboseLabel": "Provision for income taxes", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r97", "r106", "r149", "r150", "r172", "r346", "r353", "r443" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_SalesCommissionsAndFees": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesCommissionsAndFees", "crdr": "debit", "presentation": [ "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Commission fees", "documentation": "Primarily represents commissions incurred in the period based upon the sale by commissioned employees or third parties of the entity's goods or services, and fees for sales assistance or product enhancements performed by third parties (such as a distributor or value added reseller)." } } }, "auth_ref": [ "r71" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Accounts receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r7" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Stock-based compensation", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r42", "r43", "r308" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of Credit, maximum borrowing", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r19" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r263", "r300", "r301", "r302", "r303", "r304", "r305", "r396", "r397", "r398", "r549", "r550", "r554", "r555", "r556" ] }, "us-gaap_PaymentsToAcquireInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireInvestments", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 18.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of investments", "label": "[Payments to Acquire Investments]", "documentation": "The cash outflow associated with the purchase of all investments (debt, security, other) during the period." } } }, "auth_ref": [ "r73" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "label": "Vested", "documentation": "Weighted average grant-date fair value of options vested." } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Recent Accounting Pronouncements", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "label": "Forfeited", "documentation": "Weighted average grant-date fair value of non-vested options forfeited." } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Security 12b Title", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r570" ] }, "us-gaap_FurnitureAndFixturesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesGross", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1" ], "lang": { "en-us": { "role": { "label": "Furniture and fixtures", "documentation": "Amount before accumulated depreciation of equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases." } } }, "auth_ref": [ "r82" ] }, "us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SaleOfStockNumberOfSharesIssuedInTransaction", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 21.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "negatedLabel": "Issuance cost of common stock offering", "label": "[Sale of Stock, Number of Shares Issued in Transaction]", "verboseLabel": "Sale of common stock shares", "documentation": "The number of shares issued or sold by the subsidiary or equity method investee per stock transaction." } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "crdr": "credit", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Balance available to borrow under the line of credit", "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding)." } } }, "auth_ref": [ "r19" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_SaleOfStockPricePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SaleOfStockPricePerShare", "presentation": [ "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Sale of common stock price per share", "documentation": "Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction." } } }, "auth_ref": [] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r572" ] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited)" } } }, "auth_ref": [] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited)" } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "negatedLabel": "Shares, Forfeited (in thousands)", "label": "[Stock Issued During Period, Shares, Restricted Stock Award, Forfeited]", "documentation": "Number of shares related to Restricted Stock Award forfeited during the period." } } }, "auth_ref": [ "r12", "r54", "r55", "r86" ] }, "aehr_ThirdAmendmentToLoanAndSecurityAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "ThirdAmendmentToLoanAndSecurityAgreementMember", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Third Amendment to Loan and Security Agreement" } } }, "auth_ref": [] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 16.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of property and equipment", "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": [ "r74" ] }, "srt_ScenarioForecastMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioForecastMember", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Scenario Forecast [Member]" } } }, "auth_ref": [ "r306", "r606" ] }, "us-gaap_ProceedsFromSaleAndMaturityOfOtherInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleAndMaturityOfOtherInvestments", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 17.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Proceeds from maturities of investments", "documentation": "The cash inflow associated with the sale and maturity (principal being due) of other investments, prepayment and call (request of early payment) of other investments not otherwise defined in the taxonomy." } } }, "auth_ref": [ "r27" ] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited)" } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued expenses", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r21" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other non-current assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r116" ] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementScenarioAxis", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Statement Scenario Axis" } } }, "auth_ref": [ "r151", "r306", "r576", "r577", "r606" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "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": [ "r55" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Income before provision for 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", "r66", "r92", "r169", "r175", "r180", "r183", "r426", "r438", "r547" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 20.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common stock, $0.01 par value: Authorized: 75,000 shares Issued and outstanding: 28,826 shares and 28,539 shares at November 30, 2023 and May 31, 2023, respectively", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r55", "r432", "r558" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r571" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Prepaid expenses and other current 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": [ "r7" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Prepaid expenses and other current assets", "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": [ "r595" ] }, "aehr_InternationalMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "InternationalMember", "presentation": [ "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "lang": { "en-us": { "role": { "label": "International" } } }, "auth_ref": [] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "auth_ref": [ "r151", "r306", "r576", "r606" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "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": [ "r55", "r473" ] }, "aehr_OriginalLoanAndSecurityAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "OriginalLoanAndSecurityAgreementMember", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Original Loan and Security Agreement" } } }, "auth_ref": [] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common stock, shares outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r12", "r55", "r473", "r493", "r659", "r660" ] }, "aehr_FirstAmendmentToLoanAndSecurityAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "FirstAmendmentToLoanAndSecurityAgreementMember", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "First Amendment to Loan and Security Agreement" } } }, "auth_ref": [] }, "aehr_CustomerEMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CustomerEMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer E" } } }, "auth_ref": [] }, "aehr_SecondAmendmentToLoanAndSecurityAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "SecondAmendmentToLoanAndSecurityAgreementMember", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Second Amendment To Loan And Security Agreement" } } }, "auth_ref": [] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation State Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_AssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Assets [Member]", "documentation": "Probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [] }, "aehr_UStreasurysecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "UStreasurysecuritiesMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "U.S. treasury securities" } } }, "auth_ref": [] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "STOCK-BASED COMPENSATION" } } }, "auth_ref": [] }, "aehr_CommitmentsAndContingenciesNoteNewAbstract": { "xbrltype": "stringItemType", "nsuri": "http://aehr.com/20231130", "localname": "CommitmentsAndContingenciesNoteNewAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and contingencies (Note 6)" } } }, "auth_ref": [] }, "us-gaap_ServiceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ServiceMember", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Services [Member]", "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service." } } }, "auth_ref": [ "r551" ] }, "aehr_CustomerAMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CustomerAMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer A" } } }, "auth_ref": [] }, "aehr_USTreasurySecurityMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "USTreasurySecurityMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "US Treasury Securities" } } }, "auth_ref": [] }, "aehr_RevenueMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "RevenueMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revenue [Member]" } } }, "auth_ref": [] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.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": [] }, "aehr_CostMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CostMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Cost [Member]" } } }, "auth_ref": [] }, "aehr_GrossUnrealizedLossMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "GrossUnrealizedLossMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Gross Unrealized Loss" } } }, "auth_ref": [] }, "aehr_CustomerCMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CustomerCMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer C" } } }, "auth_ref": [] }, "aehr_MoneyMarketFundMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "MoneyMarketFundMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Money Market Funds", "verboseLabel": "Money Market Funds" } } }, "auth_ref": [] }, "aehr_EstimatedFairValueMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "EstimatedFairValueMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Estimated Fair Value [Member]" } } }, "auth_ref": [] }, "us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongLivedAssetsByGeographicAreasTableTextBlock", "presentation": [ "http://aehr.com/role/SegmentAndConcentrationInformationTables" ], "lang": { "en-us": { "role": { "label": "Property and equipment by geographic region", "documentation": "Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets." } } }, "auth_ref": [ "r16" ] }, "aehr_CustomerBMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CustomerBMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer B" } } }, "auth_ref": [] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpensesAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Operating expenses:" } } }, "auth_ref": [] }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoodsNetOfReserves", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finished goods", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale." } } }, "auth_ref": [ "r81", "r541" ] }, "aehr_RevenuesMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "RevenuesMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Revenue" } } }, "auth_ref": [] }, "aehr_SystemsMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "SystemsMember", "presentation": [ "http://aehr.com/role/RevenueDetails1" ], "lang": { "en-us": { "role": { "label": "Systems [Member]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited)" } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "label": "Work in process", "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing." } } }, "auth_ref": [ "r81", "r542" ] }, "aehr_UnitedStateTreasurySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "UnitedStateTreasurySecuritiesMember", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "U S Treasury Securities [Member]" } } }, "auth_ref": [] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r571" ] }, "aehr_IssuanceCostOfCommonStockOffering": { "xbrltype": "monetaryItemType", "nsuri": "http://aehr.com/20231130", "localname": "IssuanceCostOfCommonStockOffering", "crdr": "credit", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Issuance cost of common stock offering" } } }, "auth_ref": [] }, "aehr_CumulativeTranslationAdjustmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CumulativeTranslationAdjustmentsMember", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails" ], "lang": { "en-us": { "role": { "label": "Cumulative Translation Adjustments [Member]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Shareholders' equity:" } } }, "auth_ref": [] }, "aehr_ScheduleOfFinancialInstrumentsTextblock": { "xbrltype": "textBlockItemType", "nsuri": "http://aehr.com/20231130", "localname": "ScheduleOfFinancialInstrumentsTextblock", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of financial instruments" } } }, "auth_ref": [] }, "us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccretionAmortizationOfDiscountsAndPremiumsInvestments", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Accretion of investment discount", "documentation": "The sum of the periodic adjustments of the differences between securities' face values and purchase prices that are charged against earnings. This is called accretion if the security was purchased at a discount and amortization if it was purchased at premium. As a noncash item, this element is an adjustment to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r77" ] }, "aehr_UnrealizedLossOnInvestmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "UnrealizedLossOnInvestmentsMember", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails" ], "lang": { "en-us": { "role": { "label": "Unrealized Loss on Investments Net [Member]" } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r267", "r281", "r369", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r441", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r608", "r609", "r610", "r611" ] }, "aehr_ConcentrationRiskPercentage": { "xbrltype": "percentItemType", "nsuri": "http://aehr.com/20231130", "localname": "ConcentrationRiskPercentage", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Concentration risk" } } }, "auth_ref": [] }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterialsNetOfReserves", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "label": "Raw materials and sub-assemblies", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process." } } }, "auth_ref": [ "r81", "r543" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails", "http://aehr.com/role/BorrowingArrangementsDetailsNarrative", "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1", "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails", "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative", "http://aehr.com/role/RevenueDetails", "http://aehr.com/role/RevenueDetails1", "http://aehr.com/role/RevenueDetails2", "http://aehr.com/role/RevenueDetailsNarrative", "http://aehr.com/role/SegmentAndConcentrationInformationDetails", "http://aehr.com/role/StockBasedCompensationDetails", "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "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": [ "r138", "r139", "r140", "r164", "r423", "r457", "r462", "r466", "r467", "r468", "r469", "r470", "r471", "r473", "r476", "r477", "r478", "r479", "r480", "r483", "r484", "r485", "r486", "r488", "r489", "r490", "r491", "r492", "r494", "r496", "r497", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r513", "r563" ] }, "aehr_ServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "ServicesMember", "presentation": [ "http://aehr.com/role/RevenueDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Services [Member]", "label": "[Services [Member]]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accounts payable", "label": "[Increase (Decrease) in Accounts Payable]", "documentation": "The increase (decrease) during the reporting period in the aggregate amount 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." } } }, "auth_ref": [ "r7" ] }, "aehr_FairValueAssetsLevelOneToLevelTwoTransfersAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://aehr.com/20231130", "localname": "FairValueAssetsLevelOneToLevelTwoTransfersAmount", "crdr": "credit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Transfer between Level 1 and Level 2 fair value measurements" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://aehr.com/role/ShareholdersEquity" ], "lang": { "en-us": { "role": { "verboseLabel": "SHAREHOLDERS EQUITY", "label": "Stockholders' Equity Note Disclosure [Text Block]", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r85", "r135", "r269", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r282", "r283", "r370", "r516", "r517", "r522" ] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [ "r571" ] }, "aehr_RevolvingLineTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://aehr.com/20231130", "localname": "RevolvingLineTerminationDate", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revolving line termination date" } } }, "auth_ref": [] }, "aehr_ContactorsMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "ContactorsMember", "presentation": [ "http://aehr.com/role/RevenueDetails1" ], "lang": { "en-us": { "role": { "label": "Contactors [Member]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedLiabilities", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued expenses", "label": "[Increase (Decrease) in Accrued Liabilities]", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid." } } }, "auth_ref": [ "r7" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 19.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Preferred stock, $0.01 par value: Authorized: 10,000 shares Issued and outstanding: none", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r54", "r431", "r558" ] }, "aehr_AmountOfMinimumNetLiquidityOfCreditFacility": { "xbrltype": "monetaryItemType", "nsuri": "http://aehr.com/20231130", "localname": "AmountOfMinimumNetLiquidityOfCreditFacility", "crdr": "debit", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Minimum liquidity net" } } }, "auth_ref": [] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r571" ] }, "aehr_OutstandingAmounTofATMOffering": { "xbrltype": "monetaryItemType", "nsuri": "http://aehr.com/20231130", "localname": "OutstandingAmounTofATMOffering", "crdr": "debit", "presentation": [ "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Remaining amount of the ATM offering" } } }, "auth_ref": [] }, "aehr_ProductsAndServicesTransferredAtAPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "ProductsAndServicesTransferredAtAPointInTimeMember", "presentation": [ "http://aehr.com/role/RevenueDetails2" ], "lang": { "en-us": { "role": { "label": "Products And Services Transferred At A Point In Time [Member]" } } }, "auth_ref": [] }, "aehr_ServicesTransferredOverTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "ServicesTransferredOverTimeMember", "presentation": [ "http://aehr.com/role/RevenueDetails2" ], "lang": { "en-us": { "role": { "label": "Services Transferred over Time [Member]" } } }, "auth_ref": [] }, "us-gaap_MachineryAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MachineryAndEquipmentGross", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1" ], "lang": { "en-us": { "role": { "label": "Machinery and equipment", "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment." } } }, "auth_ref": [ "r82" ] }, "aehr_NonvestedRSUActivtyMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "NonvestedRSUActivtyMember", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "label": "Nonvested RSU Activty" } } }, "auth_ref": [] }, "aehr_ShelfRegistrationAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://aehr.com/20231130", "localname": "ShelfRegistrationAmount", "crdr": "debit", "presentation": [ "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Shelf registration amount" } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive employee share-based award shares, excluded", "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": [ "r160" ] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r571" ] }, "us-gaap_BalanceSheetRelatedDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetRelatedDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "BALANCE SHEET INFORMATION" } } }, "auth_ref": [] }, "aehr_ShareBasedCompensationArrangementByShareBasedPaymentAwardEmployeeStockPurchasePlanNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://aehr.com/20231130", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEmployeeStockPurchasePlanNumberOfSharesAvailableForGrant", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Employee stock purchase plan shares available for issuance" } } }, "auth_ref": [] }, "aehr_CustomerDMember": { "xbrltype": "domainItemType", "nsuri": "http://aehr.com/20231130", "localname": "CustomerDMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer D" } } }, "auth_ref": [] }, "us-gaap_SecuritiesBorrowedAllowanceForCreditLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SecuritiesBorrowedAllowanceForCreditLoss", "crdr": "credit", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Allowance for credit losses", "documentation": "Amount of allowance for credit loss on security borrowed." } } }, "auth_ref": [ "r224", "r227", "r229" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "negatedLabel": "Shares, Vested (in thousands)", "label": "[Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period]", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period." } } }, "auth_ref": [ "r325" ] }, "us-gaap_IncomeTaxAuthorityNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameDomain", "presentation": [ "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxAuthorityNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameAxis", "presentation": [ "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority Name Axis", "documentation": "Information by name of taxing authority." } } }, "auth_ref": [ "r10" ] }, "us-gaap_ConcentrationRiskCreditRisk": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskCreditRisk", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Concentration of Credit Risk", "documentation": "Disclosure of accounting policy for credit risk." } } }, "auth_ref": [ "r51", "r102" ] }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchAndDevelopmentExpenseMember", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Research and Development", "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "periodStartLabel": "Unvested May 31, 2023, beginning (in thousands)", "label": "[Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant]", "periodEndLabel": "Unvested August 31, 2023, ending (in thousands)", "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable." } } }, "auth_ref": [ "r38" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Critical Accounting Policies and use of Estimates", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r33", "r34", "r35", "r100", "r101", "r103", "r104" ] }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualWarrantiesIssued", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails2" ], "lang": { "en-us": { "role": { "label": "Accruals for warranties issued during the period", "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued." } } }, "auth_ref": [ "r244" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails", "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r31", "r32", "r47", "r48", "r189", "r525" ] }, "us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualPreexistingIncreaseDecrease", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails2" ], "lang": { "en-us": { "role": { "label": "Adjustments to previously existing warranty accruals", "documentation": "Amount of increase (decrease) in the standard and extended product warranty accrual from changes in estimates attributable to preexisting product warranties." } } }, "auth_ref": [ "r245" ] }, "us-gaap_Reclassifications": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Reclassifications", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Reclassifications", "documentation": "The entire disclosure for classifying current financial statements, which may be different from classifications in the prior year's financial statements. Disclose any material changes in classification including an explanation of the reason for the change and the areas impacted." } } }, "auth_ref": [ "r53" ] }, "us-gaap_ProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails2" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance at the beginning of the period", "label": "[Standard and Extended Product Warranty Accrual]", "periodEndLabel": "Balance at the End of the period", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers." } } }, "auth_ref": [ "r49", "r240", "r242", "r246" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "label": "Granted", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r327" ] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r575" ] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address Address Line 1", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Financial Instrument Axis", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r225", "r226", "r230", "r231", "r232", "r233", "r234", "r235", "r267", "r281", "r369", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r441", "r548", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r608", "r609", "r610", "r611" ] }, "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock", "presentation": [ "http://aehr.com/role/StockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Nonvested RSU activity", "documentation": "Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value." } } }, "auth_ref": [ "r14", "r15", "r39" ] }, "us-gaap_DeferredRevenueCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueCurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred revenue, short-term", "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r592" ] }, "us-gaap_ProductWarrantyAccrualPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualPayments", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails2" ], "lang": { "en-us": { "role": { "negatedLabel": "Consumption of reserves", "label": "[Standard and Extended Product Warranty Accrual, Decrease for Payments]", "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty." } } }, "auth_ref": [ "r243" ] }, "us-gaap_DeferredRevenueNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueNoncurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 17.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred revenue, long-term", "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as noncurrent." } } }, "auth_ref": [ "r593" ] }, "us-gaap_FairValueByAssetClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByAssetClassAxis", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value By Asset Class Axis", "documentation": "Information by class of asset." } } }, "auth_ref": [ "r45", "r46" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails", "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/RevenueDetails1" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r185", "r423", "r444", "r445", "r446", "r447", "r448", "r449", "r537", "r551", "r559", "r581", "r614", "r615", "r619", "r655" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value By Fair Value Hierarchy Level Axis", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r263", "r300", "r301", "r302", "r303", "r304", "r305", "r376", "r396", "r397", "r398", "r549", "r550", "r554", "r555", "r556" ] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Changes in the components of accumulated other comprehensive loss, net of tax", "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r26", "r648", "r649" ] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address City Or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails", "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/RevenueDetails1" ], "auth_ref": [ "r185", "r423", "r444", "r445", "r446", "r447", "r448", "r449", "r537", "r551", "r559", "r581", "r614", "r615", "r619", "r655" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r318", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address State Or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://aehr.com/role/IncomeTax" ], "lang": { "en-us": { "role": { "label": "INCOME TAXES", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r137", "r345", "r347", "r348", "r349", "r352", "r354", "r357", "r358", "r459" ] }, "us-gaap_ContractWithCustomerAssetNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNet", "crdr": "debit", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Contract assets", "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time." } } }, "auth_ref": [ "r284", "r286", "r297" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common stock, par value", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r55" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://aehr.com/role/RevenueDetails", "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority, Name [Axis]" } } }, "auth_ref": [ "r187", "r188", "r463", "r464", "r465", "r518", "r519", "r520", "r521", "r523", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r538", "r552", "r562", "r619", "r655" ] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossTax", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited" ], "lang": { "en-us": { "role": { "label": "Net change in cumulative translation adjustment", "documentation": "Amount after tax, before reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r4", "r65", "r378", "r379", "r381" ] }, "us-gaap_UnrealizedGainLossOnInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrealizedGainLossOnInvestments", "crdr": "credit", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Net unrealized loss on investments", "documentation": "Amount of unrealized gain (loss) on investment." } } }, "auth_ref": [ "r8" ] }, "us-gaap_DeferredRevenueByArrangementDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueByArrangementDisclosureTextBlock", "presentation": [ "http://aehr.com/role/BalanceSheetInformationTables" ], "lang": { "en-us": { "role": { "label": "Customer deposits and deferred revenue, short-term", "documentation": "Tabular disclosure of the type of arrangements and the corresponding amounts that comprise the current and noncurrent balance of deferred revenue as of the balance sheet date." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Issuance of common stock under employee plans, amount", "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r40", "r54", "r55", "r86" ] }, "us-gaap_OtherComprehensiveIncomeLossTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossTax", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Comprehensive income", "label": "[Other Comprehensive Income (Loss), Tax]", "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss)." } } }, "auth_ref": [ "r5", "r125", "r128", "r346", "r355", "r356", "r382", "r385", "r387", "r424", "r440" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "label": "REVENUE" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://aehr.com/role/REVENUE" ], "lang": { "en-us": { "role": { "verboseLabel": "REVENUE", "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": [ "r107", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r299" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 23.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated deficit", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r57", "r86", "r434", "r453", "r455", "r458", "r474", "r558" ] }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 15.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Income taxes payable", "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://aehr.com/role/StockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Compensation costs related to the Company's stock-based compensation", "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement." } } }, "auth_ref": [ "r41" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Inventories", "label": "[Increase (Decrease) in Inventories]", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r7" ] }, "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossTax", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited" ], "lang": { "en-us": { "role": { "label": "Net change in unrealized gain (loss) on investments", "documentation": "Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r121", "r122", "r220" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://aehr.com/role/RevenueDetails", "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "auth_ref": [ "r187", "r188", "r463", "r464", "r465", "r518", "r519", "r520", "r521", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r538", "r552", "r562", "r619", "r655" ] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Total cost of revenue", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r70", "r136", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r377", "r616" ] }, "us-gaap_CostOfRevenueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenueAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Cost of revenue:" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "crdr": "credit", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Foreign currency translation adjustment", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r3" ] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk, Percentage", "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division." } } }, "auth_ref": [ "r31", "r32", "r47", "r48", "r189" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://aehr.com/role/StockBasedCompensation" ], "lang": { "en-us": { "role": { "verboseLabel": "STOCK-BASED COMPENSATION", "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r307", "r309", "r337", "r338", "r339", "r557" ] }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredRevenue", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "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": [ "r536" ] }, "us-gaap_IncreaseDecreaseInOperatingAssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingAssetsAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Changes in operating assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "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": [ "r263", "r300", "r305", "r376", "r397", "r549", "r550", "r554", "r555", "r556" ] }, "us-gaap_DeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenue", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails3" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred revenue, short-term", "label": "[Deferred Revenue]", "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r593" ] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Awards shares issued", "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards." } } }, "auth_ref": [ "r12", "r86" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "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": [ "r263", "r300", "r305", "r376", "r396", "r554", "r555", "r556" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "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": [ "r88", "r117", "r136", "r169", "r176", "r181", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r359", "r361", "r377", "r429", "r487", "r558", "r569", "r616", "r617", "r650" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r12", "r24", "r108", "r125", "r126", "r127", "r138", "r139", "r140", "r142", "r148", "r150", "r164", "r222", "r223", "r283", "r340", "r341", "r342", "r350", "r351", "r363", "r364", "r365", "r366", "r367", "r368", "r371", "r382", "r383", "r384", "r385", "r386", "r387", "r391", "r450", "r451", "r452", "r460", "r513" ] }, "us-gaap_FairValueInputsLevel3Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel3Member", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Level 3 [Member]", "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing." } } }, "auth_ref": [ "r263", "r300", "r301", "r302", "r303", "r304", "r305", "r376", "r398", "r549", "r550", "r554", "r555", "r556" ] }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Shares repurchased for tax withholdings on vesting of restricted stock units, shares", "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Issuance of common stock under employee plans, shares", "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r12", "r54", "r55", "r86" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Additional Paid-In Capital", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r340", "r341", "r342", "r460", "r603", "r604", "r605", "r646", "r659" ] }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Employee stock purchase plan shares issued", "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan." } } }, "auth_ref": [ "r12", "r54", "r55", "r86" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://aehr.com/role/CommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "verboseLabel": "COMMITMENTS AND CONTINGENCIES", "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r83", "r238", "r239", "r526", "r613" ] }, "us-gaap_CustomerDepositsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerDepositsCurrent", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails3" ], "lang": { "en-us": { "role": { "label": "Customer deposits", "documentation": "The current portion of money or property received from customers which is either to be returned upon satisfactory contract completion or applied to customer receivables in accordance with the terms of the contract or the understandings." } } }, "auth_ref": [ "r96" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit", "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": [ "r69", "r136", "r169", "r175", "r180", "r183", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r377", "r547", "r616" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Common Stock", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r560", "r561", "r562", "r564", "r565", "r566", "r567", "r603", "r604", "r646", "r656", "r659" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 25.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets", "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total shareholders' equity", "label": "[Stockholders' Equity Attributable to Parent]", "periodStartLabel": "Balance, amount", "periodEndLabel": "Balance, amount", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r55", "r58", "r59", "r80", "r475", "r493", "r514", "r515", "r558", "r569", "r602", "r612", "r647", "r659" ] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INCOME TAX" } } }, "auth_ref": [] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract", "lang": { "en-us": { "role": { "label": "ACCUMULATED OTHER COMPREHENSIVE LOSS" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r388", "r392" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Total stock-based compensation", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r336", "r343" ] }, "us-gaap_DeferredRevenueAndCreditsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueAndCreditsCurrent", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails3" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred revenue", "label": "[Deferred Revenue and Credits, Current]", "documentation": "Total carrying amount of consideration received or receivable as of the balance sheet date on potential earnings that were not recognized as revenue or other forms of income in conformity with GAAP, and which are expected to be recognized as such within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r96" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "BORROWING ARRANGEMENTS" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://aehr.com/role/BalanceSheetInformationTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Property and equipment, net", "label": "Property, Plant and Equipment [Table Text Block]", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r9" ] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r31", "r32", "r47", "r48", "r189", "r525" ] }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 19.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Proceeds from issuance of common stock under employee plans", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r6" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "FAIR VALUE OF FINANCIAL INSTRUMENTS" } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk By Benchmark Axis", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r31", "r32", "r47", "r48", "r189", "r456", "r525" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Stock-based compensation expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r7" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating lease right-of-use assets, net", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r389" ] }, "us-gaap_LineOfCreditFacilityExpirationDate1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityExpirationDate1", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revolving line maturity date", "documentation": "Date the credit facility terminates, in YYYY-MM-DD format." } } }, "auth_ref": [ "r19" ] }, "us-gaap_SharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesIssued", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance, shares", "label": "[Shares, Issued]", "periodEndLabel": "Balance, shares", "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury." } } }, "auth_ref": [ "r12" ] }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeneralAndAdministrativeExpenseMember", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative", "documentation": "Primary financial statement caption encompassing general and administrative expense." } } }, "auth_ref": [ "r68" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r18", "r558" ] }, "us-gaap_FinancialLiabilitiesFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialLiabilitiesFairValueDisclosure", "crdr": "credit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Financial liabilities at fair value", "documentation": "Fair value of financial obligations, including, but not limited to, debt instruments, derivative liabilities, federal funds purchased and sold under agreements to repurchase, securities loaned or sold under agreements to repurchase, financial instruments sold not yet purchased, guarantees, line of credit, loans and notes payable, servicing liability, and trading liabilities." } } }, "auth_ref": [] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: Accumulated depreciation and amortization", "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": [ "r37", "r115", "r436" ] }, "us-gaap_AccountsReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNet", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts receivable, net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business." } } }, "auth_ref": [ "r482", "r524", "r563", "r654" ] }, "us-gaap_NoninterestExpenseOfferingCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoninterestExpenseOfferingCost", "crdr": "debit", "presentation": [ "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Offering expenses", "documentation": "Includes offering costs of open-end investment companies, and closed-end funds with a continuous offering period." } } }, "auth_ref": [ "r95" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/RevenueDetails", "http://aehr.com/role/RevenueDetails1", "http://aehr.com/role/RevenueDetails2" ], "lang": { "en-us": { "role": { "label": "Total revenue", "verboseLabel": "Net sales", "terseLabel": "Net sales", "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": [ "r170", "r171", "r174", "r178", "r179", "r185", "r187", "r189", "r295", "r296", "r423" ] }, "us-gaap_ProceedsFromOtherEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromOtherEquity", "crdr": "debit", "presentation": [ "http://aehr.com/role/ShareholdersEquityDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Gross proceeds", "documentation": "Amount of cash inflow from the issuance of equity classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r388", "r392" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 24.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in financing activities", "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": [ "r132" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "label": "SHAREHOLDERS EQUITY" } } }, "auth_ref": [] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfSalesMember", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Cost of Sales", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Cash flows from operating activities:" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 15.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "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": [ "r22", "r111", "r136", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r360", "r361", "r362", "r377", "r558", "r616", "r650", "r651" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://aehr.com/role/BorrowingArrangements" ], "lang": { "en-us": { "role": { "verboseLabel": "BORROWING ARRANGEMENTS", "label": "Debt Disclosure [Text Block]", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r84", "r134", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r264", "r265", "r266", "r268" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Cash flows from financing activities:" } } }, "auth_ref": [] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://aehr.com/role/RevenueTables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of revenue", "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": [ "r619" ] }, "us-gaap_PropertyPlantAndEquipmentOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentOther", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1" ], "lang": { "en-us": { "role": { "label": "Test equipment", "documentation": "Amount before accumulated depreciation, depletion and amortization of other physical assets used in the normal conduct of business to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r9" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1" ], "lang": { "en-us": { "role": { "label": "Property and equipment, gross", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r82", "r114", "r437" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 23.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (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": [ "r132" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Current liabilities:" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1", "http://aehr.com/role/CondensedConsolidatedBalanceSheets", "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "lang": { "en-us": { "role": { "label": "Property and equipment, net", "verboseLabel": "Property and equipment, net", "terseLabel": "Property and equipment, net", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r9", "r427", "r437", "r558" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 22.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by 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": [ "r75", "r76", "r77" ] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableMember", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r525" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Shares used in per share calculations:" } } }, "auth_ref": [] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [] }, "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesIssuedBasic", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic", "label": "[Weighted Average Number of Shares Issued, Basic]", "documentation": "This element represents the weighted average total number of shares issued throughout the period including the first (beginning balance outstanding) and last (ending balance outstanding) day of the period before considering any reductions (for instance, shares held in treasury) to arrive at the weighted average number of shares outstanding. Weighted average relates to the portion of time within a reporting period that common shares have been issued and outstanding to the total time in that period. Such concept is used in determining the weighted average number of shares outstanding for purposes of calculating earnings per share (basic)." } } }, "auth_ref": [ "r29", "r30" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Provision for doubtful accounts", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r130", "r228" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "SEGMENT AND CONCENTRATION INFORMATION" } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Remaining performance obligations", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r105" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted", "label": "[Weighted Average Number of Shares Outstanding, Diluted]", "terseLabel": "Denominator: Diluted weighted average shares outstanding", "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": [ "r154", "r159" ] }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "presentation": [ "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Dilutive effect of common equivalent shares outstanding", "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": [ "r607" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceAxis", "presentation": [ "http://aehr.com/role/RevenueDetails2" ], "lang": { "en-us": { "role": { "label": "Timing Of Transfer Of Good Or Service Axis", "documentation": "Information by timing of transfer of good or service to customer." } } }, "auth_ref": [ "r553", "r619" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceDomain", "presentation": [ "http://aehr.com/role/RevenueDetails2" ], "lang": { "en-us": { "role": { "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time." } } }, "auth_ref": [ "r553", "r619" ] }, "us-gaap_OtherLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilities", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 18.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other long-term liabilities", "documentation": "Amount of liabilities classified as other." } } }, "auth_ref": [ "r50", "r428", "r468", "r469", "r569", "r657" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Denominator: Weighted average shares outstanding", "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": [ "r153", "r159" ] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstruments" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r374" ] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://aehr.com/role/SegmentAndConcentrationInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "SEGMENT AND CONCENTRATION INFORMATION", "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": [ "r165", "r166", "r167", "r168", "r169", "r173", "r177", "r181", "r182", "r183", "r184", "r185", "r186", "r189" ] }, "us-gaap_InterestIncomeExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestIncomeExpenseNet", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Interest income, net", "documentation": "The net amount of operating interest income (expense)." } } }, "auth_ref": [ "r94" ] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [] }, "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsTax", "crdr": "debit", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails" ], "lang": { "en-us": { "role": { "label": "Other comprehensive loss before reclassifications", "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss) before reclassification adjustment from accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r5", "r125", "r440" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Recognition of contract liabilities", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r298" ] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossTax", "weight": -1.0, "order": 2.0 }, "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 2.0 }, "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://aehr.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited", "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "label": "[Net Income (Loss) Attributable to Parent]", "verboseLabel": "Net income", "terseLabel": "Net income", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r67", "r77", "r93", "r109", "r123", "r124", "r127", "r136", "r141", "r143", "r144", "r145", "r146", "r149", "r150", "r156", "r169", "r175", "r180", "r183", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r373", "r377", "r439", "r495", "r511", "r512", "r547", "r568", "r616" ] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r573" ] }, "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalBalanceSheetDisclosuresTextBlock", "presentation": [ "http://aehr.com/role/BalanceSheetInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "BALANCE SHEET INFORMATION", "label": "Supplemental Balance Sheet Disclosures [Text Block]", "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity." } } }, "auth_ref": [ "r589" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r574" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Net income per share:" } } }, "auth_ref": [] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Research and development", "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": [ "r52", "r344", "r652" ] }, "us-gaap_CapitalizedCostsAssetRetirementCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedCostsAssetRetirementCosts", "crdr": "debit", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Stock-based compensation expense capitalized", "documentation": "The amount of asset retirement costs previously incurred and capitalized separately from the capitalized amount of the associated long-lived assets." } } }, "auth_ref": [ "r87" ] }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "label": "Fair value by hierarchy", "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": [ "r375", "r376" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "label": "Shares, Granted (in thousands)", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r317" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "presentation": [ "http://aehr.com/role/BalanceSheetInformationTables" ], "lang": { "en-us": { "role": { "label": "Liability for product warranties", "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability." } } }, "auth_ref": [ "r241" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails", "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventories", "verboseLabel": "Inventories", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r119", "r540", "r558" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 20.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Shares repurchased for tax withholdings on vesting of restricted stock units, amount", "label": "[Payment, Tax Withholding, Share-Based Payment Arrangement]", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r131" ] }, "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Presentation", "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r78" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 21.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional paid-in-capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r56", "r558", "r658" ] }, "us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "label": "Cash, cash equivalents and investments by security type", "documentation": "Tabular disclosure of the components of cash, cash equivalents, and investments." } } }, "auth_ref": [] }, "us-gaap_BusinessDescriptionAndAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessDescriptionAndAccountingPoliciesTextBlock", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES", "label": "Business Description and Accounting Policies [Text Block]", "documentation": "The entire disclosure for the business description and accounting policies concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Accounting policies describe all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r78", "r79" ] }, "us-gaap_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Cash", "crdr": "debit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Cash", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r98", "r430", "r461", "r481", "r558", "r569", "r590" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Other income (expense), net", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r72" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://aehr.com/role/BalanceSheetInformationTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Inventories", "label": "Schedule of Inventory, Current [Table Text Block]", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r17", "r61", "r62", "r63" ] }, "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Organization", "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [ "r53", "r78", "r79" ] }, "us-gaap_RestrictedCashNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedCashNoncurrent", "crdr": "debit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Restricted cash", "documentation": "Amount of cash restricted as to withdrawal or usage, classified as noncurrent. 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." } } }, "auth_ref": [ "r99", "r591", "r601" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [ "r571" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Principles of Consolidation", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r44", "r544" ] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r620", "r621", "r622", "r623", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Cash and cash equivalents", "verboseLabel": "Total cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r28", "r112", "r539" ] }, "us-gaap_LongTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermInvestments", "crdr": "debit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "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": [ "r113" ] }, "us-gaap_CashCashEquivalentsAndShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsAndShortTermInvestments", "crdr": "debit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "negatedLabel": "Total cash, cash equivalents and investments", "label": "[Cash, Cash Equivalents, and Short-Term Investments]", "documentation": "Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), as applicable." } } }, "auth_ref": [ "r595" ] }, "us-gaap_ProductMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductMember", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Product [Member]", "documentation": "Article or substance produced by nature, labor or machinery." } } }, "auth_ref": [ "r551" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 25.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Effect of exchange rate changes on cash, cash equivalents and restricted cash", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r380" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://aehr.com/role/NetIncomePerShareTables" ], "lang": { "en-us": { "role": { "label": "Net income earnings per share", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r607" ] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Basic", "verboseLabel": "Basic net income (loss) per share", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r129", "r143", "r144", "r145", "r146", "r147", "r153", "r155", "r157", "r158", "r159", "r163", "r372", "r373", "r425", "r442", "r545" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net increase (decrease) in cash, cash equivalents and restricted cash", "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", "r75" ] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [ "r571" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash, cash equivalents and restricted cash, beginning of period (1)", "label": "[Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents]", "periodEndLabel": "Cash, cash equivalents and restricted cash, end of period (1)", "verboseLabel": "Total cash, cash equivalents and investments", "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": [ "r28", "r75", "r133" ] }, "us-gaap_DepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationAndAmortization", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Depreciation and amortization", "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production." } } }, "auth_ref": [ "r8", "r36" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r620", "r621", "r622", "r623", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645" ] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "documentation": "Class of asset." } } }, "auth_ref": [ "r13" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "COMMITMENTS AND CONTINGENCIES" } } }, "auth_ref": [] }, "us-gaap_CashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashEquivalentsAtCarryingValue", "crdr": "debit", "presentation": [ "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Cash equivalents", "documentation": "Amount of 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": [ "r590", "r653" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "label": "Award Type Axis", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r318", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 24.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "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": [ "r20", "r136", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r360", "r361", "r362", "r377", "r472", "r546", "r569", "r616", "r650", "r651" ] }, "us-gaap_DebtInstrumentInterestRateTerms": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateTerms", "presentation": [ "http://aehr.com/role/BorrowingArrangementsDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Variable interest rate", "documentation": "Description of the interest rate as being fixed or variable, and, if variable, identification of the index or rate on which the interest rate is based and the number of points or percentage added to that index or rate to set the rate, and other pertinent information, such as frequency of rate resets." } } }, "auth_ref": [ "r23" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating lease liabilities, short-term", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r390" ] }, "us-gaap_ComprehensiveIncomeNoteTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNoteTextBlock", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLoss" ], "lang": { "en-us": { "role": { "verboseLabel": "ACCUMULATED OTHER COMPREHENSIVE LOSS", "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": [ "r64", "r128", "r424", "r440" ] }, "us-gaap_ShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermInvestments", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1" ], "lang": { "en-us": { "role": { "label": "Short-term investments", "verboseLabel": "Short-term Investments", "negatedLabel": "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": [ "r90", "r91", "r594" ] }, "us-gaap_OtherComprehensiveIncomeLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLocationAxis", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income Location Axis", "documentation": "Information by location in other comprehensive income." } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsGross", "crdr": "debit", "presentation": [ "http://aehr.com/role/BalanceSheetInformationDetails1" ], "lang": { "en-us": { "role": { "label": "Leasehold improvements", "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r82" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Income from operations", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r169", "r175", "r180", "r183", "r547" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred stock, shares issued", "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt." } } }, "auth_ref": [ "r54", "r270" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 16.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating lease liabilities, long-term", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r390" ] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location Axis", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r236", "r237", "r498" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement." } } }, "auth_ref": [ "r237", "r498" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred stock, shares authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r54", "r473" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred stock, shares outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r54", "r473", "r493", "r659", "r660" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Subsequent Event", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r388", "r392" ] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "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": [ "r110", "r120", "r136", "r221", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r359", "r361", "r377", "r558", "r616", "r617", "r650" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and shareholders' 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": [ "r60", "r89", "r435", "r558", "r602", "r612", "r647" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "ASSETS" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "LIABILITIES AND SHAREHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_RevenuesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenuesAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" ], "lang": { "en-us": { "role": { "label": "Revenue:" } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails", "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Concentration Risk By Type Axis", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r31", "r32", "r47", "r48", "r189", "r525", "r579" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Current assets:" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLocationDomain", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails" ], "lang": { "en-us": { "role": { "documentation": "Location in other comprehensive income." } } }, "auth_ref": [] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails", "http://aehr.com/role/BorrowingArrangementsDetailsNarrative", "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/CondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails", "http://aehr.com/role/FairValueOfFinancialInstrumentsDetails1", "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetails", "http://aehr.com/role/OrganizationAndSignificantAccountingPoliciesDetailsNarrative", "http://aehr.com/role/RevenueDetails", "http://aehr.com/role/RevenueDetails1", "http://aehr.com/role/RevenueDetails2", "http://aehr.com/role/RevenueDetailsNarrative", "http://aehr.com/role/SegmentAndConcentrationInformationDetails", "http://aehr.com/role/StockBasedCompensationDetails", "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "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": [ "r138", "r139", "r140", "r164", "r423", "r457", "r462", "r466", "r467", "r468", "r469", "r470", "r471", "r473", "r476", "r477", "r478", "r479", "r480", "r483", "r484", "r485", "r486", "r488", "r489", "r490", "r491", "r492", "r494", "r496", "r497", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r513", "r563" ] }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense", "crdr": "debit", "calculation": { "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Amortization of operating lease right-of-use assets", "documentation": "Amount of periodic reduction over lease term of carrying amount of right-of-use asset from operating lease." } } }, "auth_ref": [ "r600" ] }, "srt_EuropeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "EuropeMember", "presentation": [ "http://aehr.com/role/RevenueDetails" ], "lang": { "en-us": { "role": { "label": "Europe" } } }, "auth_ref": [ "r661", "r662", "r663", "r664" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://aehr.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 22.0 } }, "presentation": [ "http://aehr.com/role/AccumulatedOtherComprehensiveLossDetails", "http://aehr.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "verboseLabel": "Accumulated other comprehensive loss", "label": "[Accumulated Other Comprehensive Income (Loss), Net of Tax]", "periodStartLabel": "Balance at the beginning of the year", "periodEndLabel": "Balance at the ending of the year", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r25", "r26", "r65", "r118", "r433", "r454", "r455" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://aehr.com/role/RevenueDetails", "http://aehr.com/role/SegmentAndConcentrationInformationDetails" ], "lang": { "en-us": { "role": { "label": "US [Member]" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiability", "crdr": "credit", "presentation": [ "http://aehr.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Contract liabilities", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r284", "r285", "r297" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://aehr.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited", "http://aehr.com/role/NetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Diluted", "verboseLabel": "Diluted net income (loss) per share", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r129", "r143", "r144", "r145", "r146", "r147", "r155", "r157", "r158", "r159", "r163", "r372", "r373", "r425", "r442", "r545" ] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://aehr.com/role/Cover" ], "lang": { "en-us": { "role": { "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": [] }, "us-gaap_PreferredStockNoParValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockNoParValue", "presentation": [ "http://aehr.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred stock, par value", "documentation": "Face amount per share of no-par value preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r54", "r618" ] }, "srt_AsiaMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "AsiaMember", "presentation": [ "http://aehr.com/role/RevenueDetails" ], "lang": { "en-us": { "role": { "label": "Asia" } } }, "auth_ref": [ "r661", "r662", "r663", "r664" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://aehr.com/role/NetIncomePerShare" ], "lang": { "en-us": { "role": { "verboseLabel": "NET INCOME PER SHARE", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r152", "r160", "r161", "r162" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://aehr.com/role/StockBasedCompensationDetails1" ], "lang": { "en-us": { "role": { "periodStartLabel": "Weighted Average Grant Date Fair Value Per Share, beginning", "label": "[Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value]", "periodEndLabel": "Weighted Average Grant Date Fair Value Per Share, Ending", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r321", "r322" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a-c)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12" }, "r6": { "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" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c),(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r12": { "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" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "b", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-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.19(a))", "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.19(b),22(b))", "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.19-26)", "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.20)", "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.21)", "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": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r28": { "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" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-13" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r37": { "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" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r42": { "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" }, "r43": { "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" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r49": { "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.15(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r50": { "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.15)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "825", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1" }, "r52": { "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" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//220/tableOfContent" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r66": { "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" }, "r67": { "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" }, "r68": { "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" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r74": { "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" }, "r75": { "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" }, "r76": { "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" }, "r77": { "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" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r80": { "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" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//505/tableOfContent" }, "r86": { "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" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-13" }, "r88": { "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" }, "r89": { "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" }, "r90": { "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" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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" }, "r94": { "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.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r95": { "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.14)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r97": { "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" }, "r98": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "210", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-20" }, "r99": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "SubTopic": "210", "Topic": "954", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480632/954-210-45-5" }, "r100": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r101": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r102": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r103": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r104": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r105": { "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" }, "r106": { "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" }, "r107": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r108": { "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" }, "r109": { "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" }, "r110": { "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" }, "r111": { "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" }, "r112": { "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" }, "r113": { "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" }, "r114": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r115": { "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" }, "r116": { "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" }, "r117": { "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" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r119": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r120": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r121": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r122": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "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" }, "r128": { "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" }, "r129": { "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" }, "r130": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r131": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r132": { "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" }, "r133": { "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" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r135": { "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(e)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r136": { "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" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r138": { "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" }, "r139": { "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" }, "r140": { "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" }, "r141": { "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" }, "r142": { "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" }, "r143": { "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" }, "r144": { "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" }, "r145": { "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" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r150": { "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" }, "r151": { "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" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r160": { "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" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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" }, "r169": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r238": { "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" }, "r239": { "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" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r263": { "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" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r267": { "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" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r270": { "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" }, "r271": { "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" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r273": { "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" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r276": { "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" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-16" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r281": { "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" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r287": { "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" }, "r288": { "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" }, "r289": { "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" }, "r290": { "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" }, "r291": { "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" }, "r292": { "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" }, "r293": { "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" }, "r294": { "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" }, "r295": { "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" }, "r296": { "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" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r308": { "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" }, "r309": { "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" }, "r310": { "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" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r344": { "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" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r346": { "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" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r350": { "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" }, "r351": { "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" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r353": { "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" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-11" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-6" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481839/830-10-45-9" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482014/830-20-35-3" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-12" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "r410": { "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" }, "r411": { "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" }, "r412": { "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" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r420": { "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" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r429": { "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" }, "r430": { "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)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r432": { "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" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r457": { "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" }, "r458": { "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" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r460": { "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" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-21" }, "r462": { "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "r480": { "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" }, "r481": { "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(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r482": { "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(5)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r483": { "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" }, "r484": { "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" }, "r485": { "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" }, "r486": { "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" }, "r487": { "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" }, "r488": { "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" }, "r489": { "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" }, "r490": { "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" }, "r491": { "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" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r499": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "r503": { "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" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "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" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6" }, "r523": { "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" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481058/954-310-45-1" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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" }, "r530": { "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" }, "r531": { "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" }, "r532": { "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" }, "r533": { "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" }, "r534": { "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" }, "r535": { "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" }, "r536": { "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" }, "r537": { "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" }, "r538": { "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" }, "r539": { "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" }, "r540": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r542": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r543": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r544": { "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" }, "r545": { "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" }, "r546": { "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" }, "r547": { "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" }, "r548": { "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" }, "r549": { "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" }, "r550": { "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" }, "r551": { "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" }, "r552": { "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" }, "r553": { "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" }, "r554": { "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" }, "r555": { "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" }, "r556": { "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" }, "r557": { "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" }, "r558": { "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" }, "r559": { "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" }, "r560": { "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" }, "r561": { "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" }, "r562": { "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" }, "r563": { "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" }, "r564": { "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" }, "r565": { "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" }, "r566": { "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" }, "r567": { "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" }, "r568": { "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" }, "r569": { "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" }, "r570": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r571": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r572": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r573": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r574": { "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" }, "r575": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r576": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-10" }, "r577": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-3" }, "r578": { "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" }, "r579": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r580": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r581": { "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" }, "r582": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r583": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r584": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r585": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r586": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r587": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r588": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r589": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//210/tableOfContent" }, "r590": { "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(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r591": { "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(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r592": { "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(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r593": { "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(26)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r594": { "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" }, "r595": { "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" }, "r596": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r597": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r598": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r599": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r600": { "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" }, "r601": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r602": { "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" }, "r603": { "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" }, "r604": { "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" }, "r605": { "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" }, "r606": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "r610": { "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" }, "r611": { "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" }, "r612": { "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" }, "r613": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r614": { "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" }, "r615": { "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" }, "r616": { "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" }, "r617": { "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" }, "r618": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r619": { "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" }, "r620": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r621": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r622": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r623": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r624": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r625": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r626": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r627": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r628": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r629": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r630": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r631": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r632": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r633": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r634": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r635": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r636": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r637": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r638": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r639": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r640": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r641": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r642": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r643": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r644": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r645": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r646": { "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" }, "r647": { "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" }, "r648": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r649": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r650": { "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" }, "r651": { "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" }, "r652": { "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" }, "r653": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r654": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r655": { "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" }, "r656": { "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" }, "r657": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r658": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r659": { "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" }, "r660": { "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" }, "r661": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r662": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r663": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r664": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" } } } ZIP 69 0001654954-24-000525-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001654954-24-000525-xbrl.zip M4$L#!!0 ( 'F&+%CPW9#?- T +.% 1 865H1_?/Q;L_GE9MRW;CW' M7V$JK [#2."9]4S$TI)%#X@+S)K-D/IST,Z5=7%V>7;^<_S]!G'@\JCB@<)V M7'(+]5G>W')DS8KUO-UJMUL7YQ=O8Z*)-Q?/B&$+,6=)!':$SY!KS3 G"VJ! MX%:@T)5E_^!8MTO$5FC-\ I1J91E;\197%?'6V\962R%]<;YT9+-6+WFH#NU M;GQ.*.;UQI*#6V/,,=O@65@==Y;0B 46IOSJQ;UN M+(587[5:S\_/9R]/S#WSV (T.;]L?>D3^K414C(\+R1]WX+2B-#Q&0.PMC&U MHN38.5MXFU94*FUU&;$ H@N$UDTD1,PU1_Q)U1\6MJ"0D2=? ,XA&R=.?B-0 MD*H?OSC+?$I9DB(E=(.YR"<.RH"\?=D\;SW0K*8 M"Q&'Y[>DBO9-)+9KS'/MHTI2Y%RL68%MH"1)FA+Z^3(2N=WZ\M"?J*[2B/L* M=(<\\O:'#Q]:JC0BS5"F.Y8L?H+1%=<,I>0 /:%RI#LI^MD>2"'QNU90F"(E MN:3O U(2=US/IX(5]=N@,(V)8 <@A](8#2:*T(N+4C7/!-MC2-4/Q2U9+'G. M95>\:">;DIVMH"E5E&X*DWR-H2!%2/V51AJ@P(PX,8-'#7@\VMSC SESA<]S M&<7N(DF,\'*'E'PY<[R5HFBW+V%NB5W+G<=6MWB.?!=$\.DW'[ED3N20Q2Z6 MDTF*(%$L$%M@,4 KS-?(P0<: Q=L61\1I9Y0R%2O/TO%@LFQ8!%Q0\!A7$U4TPW-"B6KP7/YI6\W=#-FT%-?' MUC[I?BT^S(A#^HMZAKF* [-20DX4(7=(= M80H5PP/W7#*3?OL&N=()3988"QX96TNG1>("S#\!,^((BN'@MCN8=&_ETV38 M[]W:4WBYL?OVH-.U)I^ZW>FDALHO>;3\2V+/Z':M#"_[X*_)-/-J _[-]V MQY,?K.X_'WO3?]7P5QO_B"_O7.^YM(_/8=2"_5.EL6Y//EEW_>%OM8O/A7C( M%HB2/Y2(-IU-R()"P.0@*FQ'1=2$+D: H$-PN*(NQ:$%]6<9Y1#NN![W&8:7 MX?C>'O3^K:9ERQX GKW[0>^NU[$'4\ON=(:/@VEO<&^- /!.KUNOLV,H[Q!A MGY'KX^'\CE!8*!/D]B@73(60(7HZ(BU@'_8!N[-[8^NSW7_LRO%VUQO ^KEG M]V%>G4S'CVH@UAA%&"4CF!Z=>VREI VP*2K48=(^W\8]PU1@,X;H B=<4'Z1UNP7 MF4X^'(^'O\FYP!Z/[<%]M_8U>ZNWU8H(95V8IV$E)F=F3'[F.0#&W"R*:V?&1Y6)[Z M*RDB5"V6F*4R#WV/AZ-"3Z;%Y=T^+K!N?7QX[*OX9#C]U!WOY2#ZPTD]1&*@ MQMW/W<%C-X C>M$:_?V^T4/.VJZQZQ&>\U7MF9!]&CIT8NU94*:U^D\9%S0= M=O[1O+&#N/QA!#V\7GFF8!C(U;U<;8XP4UX_0"#[66O\3/ \4*M]M1H=@9-1 MTT%M^+C_XX5<[ 1K'0>>@I\9,G&8 9T6FDR8/.G>R[51M#3JP'/PVT,=GKTV M+U4]/V64I>G*K8!SR:1'.A/7E$0Z:JO$U34DF M(34CU:*8R1(8I"=KX$SSE$G #I-H@H]H_&*%V8H'2A1RF3;C% Z:)&R1"E M2Q.4+O4H95(P!BA=UBAE-R<717&'"+3H9!(NNPW,=0!685MS/D1FI%JP,FF4 M_&W/-6SE-MWF8V9 IP/L;28%DK,IMT;K5;]NIM;FQM1:Y#*9#K/?-^L%>\$/ MG"F8]KYIP<@D+N*?.&M['[9W.\_@^@#H;2:UL&_Q.MPIM/E%GLWUX"FR^=[<752HQ:!X,T4]29?=5Y%R^8=)M+B4V%E13PFEX&D;X&,P81C_ MWX]Z!BD-T7Y@8D:KA2R[UT(+6>W\##8NI?Q>8:D6GDRPG[]UJ79WY?6^H0VBMYL.AU@Y/5VI5'QJIO2W5^L82U M&1W%^3NH>_:R-]SU$5'6"1;\V(KRD_-=L7S,0@6WU7HKW\\ZGS&N6'6*(7U3^K-)\^UMVL_21/_%95@MUQ MU4:-1^3RH423!H=8FP">Y!P$C!+X#[*[M=^_2I1J8E24H>@L?2,(8GKU5!4$ M==9ZZ/Q:<^2()GY9NX@BX;'M';R;F<)E+%5+=U?)ZY#).?[?5)XDU_<3HH1! M(H[7]8OD909&'6/'$#Q6=0F[:R",FHW(Y4.))@O/US_8:.9@^Q9V!=_5456 MY%T"5050=;S:*2;O)BB21,>IWGD5Z'>W7)AA']&KIRK&]WD%\).7%03VCZJI M*$)Y^'-%*-L#5__?HNB&8#ZM7%)9$[^JRE"M8Q1-O-E7!QLP/ M$@P-*P@^ @K@@D9Z J\D%=C%AXJ(4+<$W3//7T>$!$B*E>UQ[LL5>$6&N(32 !6+;5^LH[[F9^6[1 MX0#X13RYH$BDJ3EYKKZ'% ON3+D24,>-K./5JJ4R4&/"OXXPDQ_0 N\ZYR&2 M\BJ _.N@AE=+'V]PMSG'@O?Q!KM#BJ>>>IH^>U.&*(?NQ>V5#& BE2KPG6C7 M'..-YVY@]$#(CZ>8K:#'J0PB+ HC;34TI1'\KOXC,/!P_D H6?FK 19]\LTG M8,TM> EE5EBE$U<=51CH4X[E,' S_)2/6Y!I$/\CV(:^4)?3R0UZ4INI-[>G M#_LN4TMUDKI-EMB=C_&"\-!GI,=>;/=D8S05F7VGQ&; M=5=KU]MBK.:XD<^<)5",0!D(Z)\P"^\>X/8&$:7VG!2!97GS)FW0H2^3LJ.SX6WPLS.B)DI.0DY;PKE MO#D).4-PBT _"1D?P)-L'Q#[BL6=3V<960O*3P+_3B'^G9.0\W$B&$;<9UL( MM'U&Y \/&9$/$1U9^FDHV"00;)LC>Q')%3I@([S1PJ&<\D? M>"9W46>$/4!S5-F[P+&2"=DXQ,B(7DQRW-Y,271-SEZ?S1V4)M1']H%J7S[9 M8!7,!;_VVK/_@ -4<7B.:S1C.#)*R2X_I#UUYW"^0@:T1]5ELN50F)5[[_MQ M9<1L0YR< ;!?<&1_3@5RA,=R>G6FZ*B2CI@W\QV5YHPL&.5:('"WA3WR"!4] M.B6KK.>LPGP2O2!9^/)H^V F\Q9[AR@.8GU\&WA M>OCVI.3L%LK9/0DYAXPL"$5NWT/J&*=P;6LO&%9D&?%-&8X\6AV/SFSX,I-? MIYZQ>J4YCZKG'6%<5%&S+.-1M9PN":L$9EG&HVK9HP*S()V/W(PJN:5_IKP? M6\'/K;_\%U!+ P04 " !YABQ8UWU]/MX/ YNP %0 &%E:'(M,C R M,S$Q,S!?8V%L+GAM;.U=;6_C-A+^?L#]!UWN0[? .8GC;-M==%LHMI(5SK%\ MMK/MW9="D6F;J"REE)S$_?4WE&1'-D6*LDQ3>[BBV+R1U#/S#&?(X8C^\>?7 MI6\\(Q+A,/ATUCZ_/#-0X(53',P_G:VBEAMY&)\94>P&4]'3GI>MF^:+-QN$L M?G$),ESB+7",O'A%7-^8H@C/ P. &ZE 'PWS&\_H+5RR=)\(6KH!% HH/HXVN$/YTMXOCIX\7%R\O+^4OG/"1S MD ?D^O6^/_86@*N% ZIP#YUM>M%1BOJU/WSX<)'\==.4:?GZ2/S-,SH7&SC0 M/,(?H^1Q_=!+E"O1S>"VH#^U-LU:]%>M]E6KTSY_C:9GH W#2/5!0A^-T,R@ M7Q]&]O:9+EJ063#\)='/#$8(H"L$/X)@I]/*66?./ZE(;Q J$X*HS M@#;X&8'O")?H>(+)#*YNN/%8[7QQ-08FSU#+K1XM8/7XYH MD/PAZTKCD+D;X#\3:S>#Z1B"(9[!! YBT_/"51!#2!P") ^C4M]VR%AU\=^Z MF'QQ_15R9K<80K6'7=^&P$B2Q48I9,GN=5'F_:0=S$)86U EE:$KZ5875>H M)NYK&0ZF86U]A(2$+V .)B%N,$=27 D[U9_5RR6.DR'!=&$>4F.%1:Z$V4MT MK8N.=6MEH/@]ZF*!N;Q:KGSJHAR(]F0GIO3#J%1?T@/413JROEB#!ZL,SUZS MVES%H?=[LEFA@H%44E-=W*LNI@'U'W0.#Q%)+*,,#K=#;>V@.9TIZ43QX+MT MH57!* X=3%*4E[42N MMUJ,I78AV5TMRJMZ**].@[)3#V7G6"BW"9CJ3EBBJY)L3E6CY.\^.BD#;TDFYJ]DZ21B/5 M62G"4I.2ZZT4H[Q/JS3*T7>EDJ27]5._+Y6USJH#\9%[KN]1UPU]^O#S3GOT M&J-@^G8B2(60*9B(<4P;7J;_M8W66XE.[EM:&&/!3BU>&SL95B7HI$LC\TN-""EI\W4:N$+7=H\NWYRMA5WP06L8866 M;,OX$DAVWY4L9T,F\8R0P,+JT]DV^+G$V[$Z8H2@3]-=I^2T5"JLPQ#WVEEJ((.FD-<"J]L MI:++J,(G1.+UT'>3%3:-ST\T!@@GMKB7C!E]K]B,N/93+JZ,X10+]8,>H1IN M_ED1<##O(]@2)\7[SNP!9B^%S;>QDFXR?'S0PX>4P WBY\V%#F!_719).,UE M^&A?:B)$)&%SB.AC]Q'[.,:H/)X7M=6Y+A^Z:[I8+=^5<]I+F4];F?GP5<]9 MGQ?+VQQ; IQDA:953$K018H==3F&*NR(I6X.0;M!8H-X75I/3NL+W_ J..0I:*LI%YR:=P*HY!RQL+&4X:A+H/"5 MSF9\>9(VQX3HFXMA(,,%VU+J^%9=XD2:")Z,S6'!G$XQ%=CUARZ>VD'7?<+Q MVPT*!3M>7@I2 M%_)4'J:AYE \HC58 9I:+@E@81SE!(*U&/:P8*$ITU>*2'6)#6DBY?70'.YR MZS/Z?E&%!5%Y3RG>3I+P$(K&WX/7/Q>\.DDVH8IX@H8"*7^\V!>R#S_K*& L MOB(I5\W8.:2:T7BW,^ZWIZO.E+TT*2?AM9R$XPE\N;<&()US:SA#:V1.;&A@ MO-N._JV.*LX[ M%L2,*9*"[L--(3U)+LP2U,.WH?"7&]^!<<+[JK*(: 3*Q7 MSU_1R^[HX2+\/Q6N70X:3&]U9P%+3+@[6$/-B7_=,()E52:*:/.VTTQO;6@2LC=G2H^1#\/-[U XOD VIPN<8"C.'WYII0SV?YZJUIER:NFC>:P^+;Q MW008'*Q D+X\M:86*]_LG4O#O3\D#==U[H\#"K M.2$K7X$M/@0$N3[^$TT_AS[-5F_$Y''Q3=6%/<7N]ZIC9-8C4T)S?00Q &/>QFBRMS&9(XN^29 MSYFPD]XE06WB)!32'/;HJZ8H09J#ZAX>L\? M:W->3XT-Z%J\=XMO(W M-P7PB1;WTGLB5YM4&94TAT!8UQ%J?#V4?K4#]B(V8=)>HK?> [?:A%9148/\ M,@M[<\N;< -6TDW[,=NQN2Q02J-)S"Z"V[SE6W@A7!5VY<;3?PAW;-ZKZ+'1 M!K%W,<\ASGK;5?-E1 I=]9YV&AZ ]^[RJ<@ITUOS+49J:.7HJ,G,[EW-4(56 MIJOFZXX4<,K13I,)Y=R&4H58[A":[TM20'")MII,=.9ON3W6BL0%8ZAVS?94;2B5QLDQ<>;.Y;D M_!&GJ^;+O:H3*/!!0NTTS^^,4'+5RR2$Q1Y]$7Z1%K3=AJ1J><;A(VJ^4JP^ M_35UV2!?1B.H,TML=K!:/B*2E?]%U*RI5G(5MH)*G4JC:+Z]K#;]A^BL.8Z MRK[W26V#*V2>A[?XBUS(M:V6WD=DE&M:KMZ"?Z3N":6'-9L@3;%-. MC4/S16MZU,Y6"%9-(!Q^J92ZK&:3=2E:]1ZN2W4)Q";K4N22&^-/4\&<65Y8 M)ZBE5K[35/(PS5?$-<("%;+8A!OK'#)W@ZQ*C=[#A^=A,+$'=\;0Z=M=VQHK>9_CUL4DN>O7F66NPO7M .A8[:8.S_V#1MS1N[8$YZ-IFW[ 'X\GH(7E]0PGV_'6!.Q^XS&!N7^YCWKD5$)#> M.J/[A DE2+=G T78VOO8LI>%)^:O:M06$A*^T)! ")VG/*+;5XS2G-'(^87: MI#D:F8,[2QVW-!& T_15^J'@='JA@#.YVIU]J*#!>WN2OCI$YU;722:3-5 V MD]A7OHJ 7N\#S;_%E;W$I02>\/+AG;==)]AL!M8IMJU(CF=&ZG4]M#09S>"U+BQ9G( M,[;NZ!3?S/ N?)_>?:K;897\\)G%4$G]-2[4$PF MQE47,QUL6)2:FAAZ MH8DQ8;\D+H[F0BENR6^_[QF@K;<=DFI*\WV M2P+43'#>;IA."*S(IU\SX74?F2H/OHNMR&-?,[&2P:;(/^]B$TXL_E;X5/Z@ M<%W83KJ3U&2F:)EV5&.+'DE.9O8E19.0Q E%N@'2L>;7+\"+1)'$A1(I M$ Z[NKHM"0"_<[[#@]L!SE_^]K+TM&< D1OXGX[.3MX<:<"W \?UYY^.(G1L M(=MUCS046KYC>8$//AVM #KZVU__^[_^\J?CXW]>CF^UJ\".EL /M0$$5@@< M[8<;+C3RTYV%0@"/C]/27Y+G?-3.3RY.WKQ??W]I(5PK\.,Z^,>S]2]7N#TM MF&DV:3FN^N;L].SL]/S-^=MUH4DP"W]8$&@6M!=N".PP@I:G.0"YYXV)C60-@8(P&?@I,UYKO_](_G/(Y9/PXKV MT<<7Y'XZ6H3AT\?3TQ\_?IS\N#@)X!S+@^7ZY]WMQ%Y@7,>N3Q1N@Z.L%FFE MJM[9AP\?3N-?LZ*EDB^/T,N><7&:P5FWC']UPG6%?.%WI\F/N"AR/Z(8V6U@ MQSP(/$&CEB"?CK-BQ^2KX[/SXXNSDQ?D'&'%:5JB.AAX8 QF&OG_PWBX?J8% M%O#$#I:GY(?308#-%V.,JRP@F'TZ(@5PN^<79V<7;TBK_[-5*%P]83-&[O+) MPWHXW>&)O@-\;++X#Q1XKD.,_M+R"&.3!0 AXL,1;:%]K/?XS?'#!0A=V_+V M!U[97"M23$+\7^)WD#DSGP",#1,]^%;D8"?@["2*8)NMRS,(EMA#+7 9]QE@ M-Q,L07."B33>NH03[(;!(O Z;0>1'^+>\QY#LEW ]6V[M+4O_FO+A5\L M+P+F[-K%O;KM6MX0]Z$P'I=P(0M6WQ=EWD\._5F AR%$23QTG&K[HDH$H%=Q;'P&$P0]L#CJ$EC\'0EPQ*^W_5B^7;A@WB4T7OX?$6/%X6,#L!:KN MBZ[LUGB@Z#7VQ8+?Y6@9><1%F;BWAUM]RFV N/H2;F!?I&/CBS%Z,'AX"L7V MYBH,[._QO(8(AJ42>M79M?;%-"+^@[S#]P#&EL�ZVPMW; G+PIR8MBX[^2 M@58-IRC>PB'[QC;ZR*;[RCK/GEJ/7K/2;+?8'CP#/P)BV"H+M^/QQ0")U&W<^XM!XU1KOR<0U&#-=@[I1:] :+E> MHVZTT*0$:486)"I^Y@XBFFB[Y7Y"D*!ZK1P&\UDSH,\.BUK8>'9LKJ5>6M!. MQ&JWBY%K%X+5VT5YOA_*\\.@O-@/Y453*-<+,/6=L$#55E9SZN*LU4CSZREU MX8JWT/JH7- WU6VGH7&Y(+KJTLUBX'I&2O%F47 ]'Z5XLRB$#9U3K9VYDZ#1 M"%5N%2'7I,1JMXI1W*?5:J7Q6:D@Z;QZ[<]+1:VS;D-TY!:T,_!51?,X*+$7 M64@'";IX%\-;X":@'3V"8\==DEZ +)RF#\IK9]V*ZX>GN.AI6N:TLH&V4:\? M=>P$2\NM";E,?[2]5WB)F[QQRW4X"4$OK,) B#-B<1(A6Y("KY)_CG3 MCC@1>W/XW7"85(M7.:85Z6M";<)Q63JGG M6(_KN VB4W-T98PFQA7Y:V+>#J_T*?YPJ=_JHX&A33X;QG32#NV[16OE9+G8 M11;MEZUV?SV8;*+A6SD!WXH).)GB_]T9(RR<>:V9]\98GPYQ >V7=>N_[ON6 MS"ST&/N("!W/+>LI>56 %Z+LF\T[DW[Q;0T=ZQ(,\9^HXN5)"U>5/96).5Z2 M%\";EMO&NC$C'6ZCQJXU:S3ULH+=6%)G!H,E5V_I\P(FX Z 'XZPEW%&UPC M[C<^VH$?8C,WO+@@[GN2\>'F=R_ 1OWI*(112>0]Z$$PS%&#/VUHP1^^WS0A!, GUT;Z"]NE2'AHM4EVZ2FE;A132]!;N5,_OY.@Y76CRY\8+ MV2X3Z;L9513B@"%%RLAOLGIS!,A9<#P$O,+OHA<\$7%2E*Q^FUE-(68XDJ3L M_"YK4N'AYN8WP,?FXV&(NK/$JD1ALK/,I4FTOD)\B8J4$O>^(XZNAH-3BHX* M]*GF/TC6?!+SD#\>Q]!]OK"*VL_CSZ:'3:X0UB!@Z(< I3&G*1F,0*,+IY> M0R$JZ$)D?$B:K\>QBZ/ #[9MA=MW\.HIQ U/E(PA23/NS09^J6M-1@6-#' M[R+*@E[Y*PWT&@J10!]DPN941A?)8F!QZ;# M=V [-J<0D3M*F-$L:4F"B7J(4$0B39G>4+R%UT+FEE!MQ)SMSU_J14K&5YM& M>D/JLTF7K12O(S%.O?:5C[FHZ'>[1$4/S+O[L?$9EQM^,;3A"'\VMN*C982! MB]P%F1/\MUT$GWS6L=SF[94QGOQ9,_[Q,)S^JP\,[P/#50@,WX6>Y#TB/B7P MXPL/JZ/%B\)75U,C=%Q,%LE]>@$4-9XYFT%4%Y<;3RZFZ.H94;4\;027'YB4 M+@29-TV,"A'GY%+7P(]/Q/-BH"N*RA_H,FVO%+M6$D!R]+GN.+&^+._>W-#R>$QPJJG%"D<8R='JS-MDDFD&ERWQ)A1C3ERPC$5).VIC<@&%#YQL M19%'&:V\6OS0I,C(D+2CEE\I8HRIMTK)5[SX3&@+N-Q#'W%?5WD[>M4DIEQ6 M);57P)=[(B-&E-C!503)': ND&ZII;M+57?@TYAIVYCJM%75SZY9STHD./+ M/!NBE]F6^NPRQ9-[M"0Q/#(BO0[@U'HAQ[^(=\'8\1>UZ=VI-94(WDE N:=: M[JU5O((^!O$0=AKL3?/N+2I$]>Y"RCTRHSO_CE"2OF8:4":=,?+'(O(QP.,) MY(8@/4B=.*\QL(-YPE+LQUC3];:?K)#YM*\,N6=_?M)X05D'=BCK#G%@< "! M._<'$83 MU=3:&%#LM-+^N-/7G)E_]HBL6CFC'GPO:WG*<1_6RJ0>_[HP8? M\MS_ .<&*XO(8OI#_QFDKHIN$=R*"E'+E66_,TKEJV/)-]_(O(#_[Q1MHT\^:]>WYM=)VS$V M.V7TS(GWGEPQZB(2P!!!@#^8XQM]-/R_^ 9%31]AR88WH^'U<*"/IIH^&)@/ MH^EP=*/=8]$'0Z.5NS%%V2,VGJ)&/E%R!S>EG8UR( M<[PU)ZWHMIB0-(?QMR+&==D6*&:G),VA^KU$\]0<_/WX4D\ZLKM[K+#67 T] M56D.8:DC&L4^,'8[]YC8V"Y;4:)XMM(E]5VMHN;E6LT!+G6V55U9NRJNFW$UA[[4$0OU;*V*LT_VU9QDI3Z[ON]/ M6^]/C?2G1E[#J9$M[S!VT??+U26>TRZ6%OS./CC"KZG4V1&^.)*/CY0!9O!X MAQ;X-3MQJ$34%+G$%:63?,2D/>(Z=/"D)?+4.(92$GV*'U?;>VXJJ>XX-Y+D MJ.L$-019[;\7=BXL'P3U MZ DI52PD?_]:M./-[V87I<@:ED#8OE=?F95&;DLX0I"LO: QLX#Z3$8+ :4)*C0Z2P7$67)$R=G8[ M!,"Q]8&0K0\ZK%XQ6Q\4M;E;O#U'FU="VKQ27IM716WN%L[.T:8AI$U#>6T: M16U*BMHNP;_'$SS\A34'9S4&T%NUY)-2(ZL/2Y#B&=;#1![NL%TQLF"23J)B MW^*B@9WY]#':^CG]#D:_@_%*=S#ZY;?MY3=9>3GZY;<:RV^=V5?JE]^XRV\7 M,I;?1%;?E!U4%_#OE\"&-D&ACQ1IDQ56#?DZ%CN@PQ1"\ATOP(X@5AI R0$ MX.B>%_P@<8/7 1Q X+@A^RRJ> LJT%5;J.(M,8>9WG""5.D!6!>EX%NA*-4^ MYJJ?L;RB&4O%.\.>K5 K*#53H4HA>0 4A.=277,Y!<7-7A]Q@&HC@] MSHBYV:=T8A[$L>,"_@4)+CS=;8[H!%!KBQZ94!\][[FLUTHS.H9;8T>L4$EARP M)H/E+KGO@S%]@(BW_6_B\RQ_9"TY^PW;I91RO=O0!9#9!SZ3U%([H#$DQ7/C9?G\V()CQ\:?V(G MO"77RFFFT;@ZLMO]>LO:\XD=ZABZ8EWY_N9,9!6[N>W0N\ 'JSL+?@?A=>0[ MS.UE2EGY>VIM+,3E-T\I@F>=C:1]T[4UQC:&XDG7&2_ZGEE)/I,[S:II;VF5 MB!EGDE)J5&$[WX6S\]?/V7F1,TE'7*JP7>S"V<7KY^RBR%FC!U\>)B&,\:[0 M.CB"V6.Q*L@GH7IBG>]X6/@S#3=Z&.9A,DT?F(:?K#CZI167K]VV!P5TV3-F M9.6)2 >GG&-X6Z7DT]7V!*=X9&]+_(PQ28=W4K]6P"9"B<\BK)Y]5X: > MGBARCO"(Q;BM#UCE@]QVNXHQ.Z!SUH>Y]6%NKR',[>?<&9-UUN8GW1F3%33X M<^^,M73^I8^L[2-K^\A:J1&2?61M'UG;T&W_GC=Y@=@,#A#8)[,C1/B8IC/+RB>$;. -^IM[=]GLHZC50 MZ"Y)/H?.M["2)JR*B3 ME&V+8\(HX<#"\(5U@,G>32OGGQVQ6^9XH@B]QS];>#/IP NA;*^ M5A96B(I*_,6#\(=_0=BO@5(:3@!G$T%Y*B79:_9P/0+5%2-%0*)L#B:/M0+" M,7Y)H6OC3BZ58/N+7$DVFWLTJQC+>TB:G8SK#/MDU+0(8"C<.]5I0VU>J6)E M9ZPD[:K6HDMY8I@4K(-"NA1SP+PIM)1$L5;L0>YRT$SP!L6C9(1D7!=42JC( M2 FYOB3HX,@K@T!*B17YT$GHQ\'!GU>!+R5<% !_+@'\117X4O)% ? 7K8!? M9U@7N^6WE'=QDW.=BI*U/&3J.[[M.% M"_=^>^HVH@([=67*V)&TI$_&[N8LN73ZVB+'K<+5&!#AR,&L;+8XL)[P;^&* ML>U8LQWY5(KO2-843?)F<07:.^O%74;+/>FDMZ(XF73!Y.X[7X''<+- /,0# M4PA0.":Q) "R5C2X%14BC"N+W(WL*GLR7I[<)!_#%8;)R-(F5%DAKH3DV6L+ MFYY#)?">\:M+$!"[P-.*[)&4L0>[B@I*YTNQUWXQ1=7ZDF2X,V=W6"/8:8X M!OA'Y&+&5T7J*9JOU8(J1-02JK@%?)C]Q\G"@F 1>/C9B&Q4ARN!A?^WI>2$ MD\_ZV/ALWEX9XXEF_.-A./W7H78O=-N.EI%'XE_-< '@(%@^89'($M$S(('& M],W&MZ7<)/I@\'#W<*M/C2O-G'XVQMK O+O'HAFCR?"+H=V:DSXY2;^)H< F M!H)ACAK\:4,+_O#M'@9.9([G4'5*4WU52*TL;-Q(/UW87^C 0Y4.-M=[L^3\(I;\C2B;>:NJUAM M-1Q9+9$D'^?E@>1M)XK6[\2N;AT3K4EFP5?*2G!R&#J[X%4/16G>];X[[,'I M9*:$<<5GW+Q$'N??41H%RSY4+5A9XNR@H3]!%1U]@^'!<9IMG+$86+K#<6Q\ M,48/1K_>UZ_W*;_>MT9^ X(YM)X6^)6D997$Y1G%U9@PLV60L/PT21+H80[W<_U]YCR73(@:0,[&HG5 (3JJH[GMZ6[M8J3:C. M^PE5/Z'J[(2J!CU3=QE?VIW=Y6W.;H+ XJ=B!JM89WUB.Q*1I\#4-F%2>!AZ)27:*=BI)LAA<#10_T^<,GY:RP&.\'& M+@W)'R;6,N/\H'\7<5O)^U/Q=/,90"Y? O44ID= N@8W$/M)6C])JYZD,<]8 MEVX3+DW6^MM4^TE;]R=MHH&)$QOX%G0#@:#$[:)J3,3H^&4$(Z8 'GST!&QW MY@*'&0='+RY](XQI/WGETV60$8C8$ %=F 0U08*T(,0ZG4?TB, ?$7Z^\4S> M1SJ16X>.L*C"J=6!;B6!B?F()'>_<*J.F"AVN6GKRO M^ZU# =>9<[X.(+ M1H;EG",OEI43= ZQ8#54#JJ-K ,T M\)V3R-M29$/2,DS5,(1".N1 MLZFE.#<;021G1V793;H(-@9V,/?)0?\=WZ2*=A2GCR6:W"MMUX#2*Z[O 8PS M<_DV,!\]=QZ?[^8N0?.J*T2?H$1R<[,*@<1?XK%0:,T9"Z*U&WIM3.9E*]Z@ M>Z";6L/ _GYI(>"0.Q?PE(632?%M*:/?9&H._GY\J4^,J_A:4V,T*292[/<1 M^GV$CNXCU* GN8=D([30=8',2DJMV#$ED1SD1<'&6Q[B5.O$ZIV U8D1U9$@ MKC:HZM!J7L-TJ;"#,0A0:,XFELG92*RA_2"5ED:9I5$J2-&Q=JL' # M? M3_<=W5EB':(PB>(P7LBHCAZ7E=87K*XF6X+"28_.0@#K8H%A7N')@Q<\ M$0$%^1.JK"9[0J))OD]"]^)V@1-GOBC-IU*P=/I$Z\MG4/RJ1D&1Y(3,,>>] ME?=&E++!^_442_=3W=4Q]]1\6=/BA*85B2DUO"]@E3VBK?:8.H>7/8U'0 MY6I3YMY:D>]B$39R^(YHJNUVGM:)Z7.EY1;?T5;$ESS/5M^".C2KEV5%\LYH MC8+X@G3@C";2'4;X#8]86WX7\"2"&$B2O#G U0%/ *"+XS5G\ M*]*?\;B6=*+7 ;S!=1D!$>T]L0/V)#SZ:TT)<:^'?5^!.U_@_^O/ %IS$#M>DA[[VG+A%\N+6 M;G4"G MDB%V0F'%]-J*F'3ER$"&]>X*Y&-)# %#- M!@^AD]3VWJMI>VO/GWY>CUTDFN,^F'XB"]U'3:G1?NC0#C3S#I?W]7>BZ M9$(V*,H(A$E@!^ZC8I88\>,?BN!'QE0;CC!L0[LWQMKDLS[.)\=K 6Z:KT3W ML>9]$G\/8]4/_3A GQW__NY-2?G&S9TQFFKZB"A_-,!_CQ/M#T?7YOBN#X;O M(P)>7T1 \KY/K1<]"AI6 &6()V(A"]"$XNNIM7JQ$8^ MW^"$2.K([GSS-'5HM[Q1JKJ:2+!/?5J1^E3%K)NR_5OCJ4\;O3JI3WVZ5^K3 M=P?P6'TJR<3W-'K%\1"3!?UX,FAYS,BGRI+R5UY$1ACYV*5*,3+52@H3N"<9 M;6&X(I%79+I.MF[BPQ_,JUC8M>0S(SQ39 LB>FXB_9[\ARR>_?7_ 5!+ P04 M " !YABQ81C(7 =U' NE , %0 &%E:'(M,C R,S$Q,S!?;&%B+GAM M;.U]^W/C-I;N[[?J_@_8W%N5I,I.]+!>J9W=DFUUQ[5NRV.YDYU-W4J!)&AS M(I$:DG);\]=?/$B*+X @)0'H[%;M3MSV.81=_\^[_][__U MK_]R>?F?UT_WX#:P=QODQ^ F1#!&#OCBQ:^ _.D3C&(47EXFTK^PY_P$!C\, M?^A-L]]?PPAK!3[5P7_L9W^YQ?9 X *;6*:JO?Z/_?Z/@][@*A-:!6[\!88( MP-!^]6)DQ[L0KH&#(N_%!Q@X8 WZ"A]_(:@^_L[P%Y#+B[?%@\@^M=Y/DHBL J6.\(E.@"W/GV#V"^7H,GHA&! M)Q2A\ TYB;FUY__Q$_D?"[W*[__'2_LE\QKDO/)R_<1M^D6L1*G5Y_-IO]2/^:BE8DWZUPG3YC^&,* M!XM'WD\1?=Q]8-.7*Z$&N!+D7Y>IV"7YU65_<#GL__ >.=_@MP$ >Q]AL$9/ MR 44]$_Q?HL9%7F;[9I HK][#9%;#V4=AC\2_1]]]$*(1AXS(X_IC\EC_D_R MZWMHH?4W@$A^?KKCMFI6L)4H_2@)M9WQ1Q1Z@;/PTZ>6\HP;-98PD212'_\O/JFW^C,N"W5.K__>N/!RMG[^*%'WOQ M_@F]>.3I?OP -ZBF'?5B:CI/=&H4W^-DO0<@??DI2*KU'+<"B MTRB(&$ %/BJ.BZ"B()75XAC8W(CQ\0/^7=V0(I!5ZR"X8,M.HB)H #N:L'&= M13)]37P&5=%(%3*+EB-*3E('32I ZTF2B1E'D3*R)H+0]0WU]$@BI&"S"?Q5 M'-A_K%XA?BG+74SSEG#@PP^KA$I*8U4)^*6(5:!A )6D0?*B5ZH)J"I@NB"G MK,4!_74'PQB%ZST+J04?4$52K0/B "T[H)*8 :P1(^,ZH$P\F>SHV3X+H1]Y M))6ND1Y54<7;:ARHE2VVDIQ!#.% XV^]9?(Z.'*(S!]V&PN%7(>9%U$]VRE" MJTYUV-\-X 'DF"2 YB@ACZ_\^T@Q'RC.;9D 0;=!#L_#O'0Z/"3Z[%\[@9'PY57R:T& MT$56<82-X9,8'X=)6 D4M?2YJKGCX+<2)?^Y]WS4YS:V5E8E=01@B[2I$32& M,GQL'+HDDME_B0KHZ^/*#?YQ&3X'7_RF-N8E-?"D"K26)0;_/C'9ZX!J9P(-?2I21K&F?JX340AT4SF#FIFC[V M/ 91#-?_Y6V%L7*]L ;FU,*MY4U!TC36U(%KX Q3 5A'??A+'-T\1)##D>*? M%64ZUD#*LAMS?S.@YVO@5+(8:4]C&?5]2\ZFKA]? Y^_;%(54=/'/&AI/Y?_ M;D!?K@65=G7ACP;T%[&@,X7P.)^Z*FLKA.(=WZ,R$E8[PW= MPA@FR8J"Q=IZ<;4KX2+(Y27P.ED#N"(!C[OHG>F0I$&8)IB>D#PNC"S:CEUT M^0+AEC$(K>,H_#[T;0\'.0';ZN,<:V^G>GZ*=6D* MH5L;/=*WOU\Y5[W15",#NR.NS$J6#[>+A]7B%N"?5LO[N]OY,_[']?Q^_G"S M *N?%XOGE69JSJ,(Q5$#"8B'59%3OR SI8T1UVO09A_(S"S9W_AJ*8C.7EC&RQJ,*P2@"U$$;5R+'. MZ0V'/)_F_LRAD-AB.^@;0@X^LS(I4TD.Z?XD!@)B%B$9' 3$"[$+8SF>F MJHE3XX2)35N=H6OU%'5-G*M=VCQ;*N*K;"@06](O7?TD6Z:%VB;5:X)%=B2_=3JCTR8[;2 6F9;I@K61!?02P$N _=RA_\!$T=G M /4.H=,#[FOAJ,>154@U$=@"Q>H$F7<86JYEPI H ;%"*1JA^H%_:4R4R@]! M6%/ZL_[4L+BT"*P^(#4H$!6V17WHV=#A?1.\=AD/)\[4'5[>>]#RUE[LH0C' M,;1,P6NP=E 8D9@FWC=L\,FKJ^-(VR;E622K2_L5]B!"(P.XU@UU)6'V;GY] M=W_W?+=8@?G#+5C]/']:_+R\OUT\K;X%B[]^OGO^FSELE=N %BEH8:3$5C1? MFO9?;S@:7 W,8IT0)V]3>GW0U[TSG>X./,(]V1EH6'?A"*O?RZF'6[>94Y1D MDX;)('>1BP&[.2*,W.V<+5/2SY]PAYSJ%\%O,D]>*8O$H$M$JA=F"VE6W[&- MR)&1@UE#)Z*6K<7KG@\79OQI8_9B3C4IZ5J,X<'GK\:4-6C?C>%T.%$UBY-? MCA%C;5J/R0V!%R#*C MT<2$S6L9C)7J4(D.")F2')>4!KQR@2YM)AI,;4O5%F_C>DT32/%F8NX#-V[J M)-U@O5.E%LP9F# ^B+!5%H'N\P. (3N.G &N>66^64][#-*P8M^DQ'+,'-2? MF7#ZI"7<5L'(.O!?#(Q%&DDHD-<6D8A)QQ5FZ4/]X=@R8^S0!CE(%/@D[D"^C1_X$,3H 7WA;.2TUCX_'3HVB%"EI2J+WRPT MFNG,>#X*=/4"\M_25,MXKWN?\3%,PF':*-%YUUI)I:$!+IS;*8FR4BV60D0[/!]&(Z&*=2Y,_X-Z/A+/M-#!Z"-T0JX8%A[P(0 MDE"Q3W /AGWVBPL\48^VB);'69_R*K5.V^J.0TNIP/4C])P[_P9N/3Q7X>W] M\J05;JF+ 1;"# Z-2"R3 EG93,^4 #G@=NGYES;3TY,C;-N[S6X- M8\2.Z)&[9W%@@/P(4YS<@+!!]T$4/:!XZ3[#=T[R0QL3[+NWAK.QJZ@/WU!H M!1$2+0<,26G2[06^1Z MML>;J\HHJF.Q?#/RQ&W68BFHCG/EF#"';8M7Y&\=IJ!E+*W.Q>56%ECK+*M_ MI2KAM'%YO ED_2IY5+.H8-QBE72+]2Y.M:#.T(1\=Q&VRKB2%_X6,'$PC^/0 MLW8QR5@&<0 >84.^AYK-C-HS(PT['+4Z[+03&EX-5 6^;7;!)" W;HW1^;*! M3D"V-UN^'9..;74FI!$EJ^21BC;G*/V8@N[XL[BR^A!@7R:_GIT7U[6H787, M7]D^R"9+'^,Q-"&NE$/9N,:=+3L:Q2EV6_9A'53J'525=/&+!Y_/LK(&V]^" MO6'N^AU3N";&VLBX=$DZTS>0>6R=O<7;2!7T,JX(NXEM3)KMB=B^:?$J"EIZN5;3@";"Y538A/L*CIV)H:SC@I6E7FZ#SIP= M8!PE+$-Z=8%#HX5'%-+F-F]K\C6U[!,W-82S=8#8E MQLLU2S+ $VIHX9U,:"<0I]TVFEJVLF1A29Z)@8KY95I$5VF6,)SC2FOD%S^0 MXX@FF95:F?]"#M@DS!7FD4D0S M)UICV\[9]5(-Z<=<:975XH6 BX7C:T79FE5_8HU,F U(@92\S&OUC/_S:?'P MO ++#V#YN'B:/]]A ?#=9Q_N' ^'=?HSWI.&/I.]*>X&6%%(PXUR!7BU=\=1 M"1:X3!S+,N&*+Q&V2M9Z*@M^H]*ZE_DS//>>C^[PC]S;<6H$-1"D K.6))D4 MBT:F<#@V(8&X"9^ +$0#4)6S,"8*XQQ;\+\.3,'_(/6PG9T=XTDJ"M\\&\W? MO3)/^&+G9TD31,(1G@SS^#W+OM*Y*""'KJ;8.-&@NX:)$OB-J.GV*@FP3RA_ MY7QE/:X@H[1L?15.3XC0GKID3"3R$E2C(*AYD6D\*;*- M_\_A9_AWLJ2<7UT:6D/!-F8H#Z9#Y$ 35GJ.;D!]:E]2E4;[VF(4+]VDB0W. MCB.KS@RHO2P!,3JPF%$CX"$9CC"0@MD6JF-*HT4834N M7==!)@R+ FB:B*[]O M*@BV5%+SYU?SPOFM4OGIM62""D7,D83)+X"9UGW7/9H_H0CA-_@Z]YU;/(RL WH[ M8-(J;F0LU%$Y59$ 7YR4"!38737(LF8F7)36 FIUQLQ4Z2JL M/B(??P1KW*ZYL_%\CWPWI/:'F'.RRBI7Z-HTI[AT)Z/))I/.:-0S8J.H ^;J M8A^U<0%>F!7*3UBPHR6&K3ASJ8&)K5J-QWVDZK178SS;@+%^%A%4QB33@AS9 MUFH-:N0YTS>AGH4 6B4"/D0MJ; QO"D9T1) MQ$: 9=(D54S(VT@]3.#K]BQW?HSPFXD9N(3,_%O-^>(JL]S$D(MI;O6R;%2> M3)R1"?6!Y5!6^<2T@$?5C+E#^B'P@^*W(8YCFY04EWIOA%\I_,[58.X2AX_DPW-,D+7)] MG&"F@,GGY.]6[D;(]CJ]H3>*7LZK[&F%E9:SDC MI$6MD[7E-R_"CP/XGRGW8O(T[6/FV MN.8OM_:EB]JE\BOMP(B^"5O!'%B5L8"PH#@>M"ZQIX0D:=W/].!^PT8Q7UP= M=9H@YUG$DV4U,_H(?\,&D$H.)=_1 !Q:L).BNK>)RRVYAI%G2[8ZD=5'I )8 M$8NH(,L$&L[&1MSM*@&QS!\J8AA?;KWU+N;60N!*Z^-,";"(-8DHJU\_'HUG MJDJ1MN%-+RRN&,7_#$ZL7]+ C!T.6;N6X/>5YP[C6T98Z MWAW5V#PK.QEB>S@0$\*$W.@3-*'V2JX(["+DX#'U,)X"&ZYM4MZ52[@#EZPNRVH<]0?*RB-+W O2#;R)HUS;+NSX(HSQ1Z=DY<"$;>WVB"L3 MPM0$2&P 9H3DY:_RMV== &I)3^EU3CN3\5ZJ1$]+$VP*[3K.6-6Z<7?/(]>& MKRI8:NK9XUZ, 0[IW-0=F% HKS/P#EXJ9^<")$_0O8B551M9NFS-C5X$7+EX MJ?&JW)96-!21:=? V@HS\#_7LA5Q3)KT=QR;6NL:N%<8F@5(#1V(X5WD=N'(,3NTK_9A2'R[?US"/T( MLP]/%3$]Z;_8Q/$C]'S2W'GH1=AMWNY"_+^/*/0"I^&2/R5/5IQ*IN9%5O+1 MSOM8YG'0>.":<*6+\@;7?;KV*_X-(JLIR0UQY-+"^/ 0 )V_[Z+8@ -'O-?U MV0\17).*P3\':Q+PI.]EZ:^0C5\*O3/G9!_U\8_3_R6?ZI7)?+['/HMMX\/^ MR#$A94E-*\4?ZBY[%GC!3P'?K>G.-?Y6/?\-L6]53P*)Z"[5EK1)5%A]NBN[ M/U.UP-1\+*L-XIJRP;G+88V.FTJ=UNXMF.#ECF2="2D'LCBKA[R:KR(VX [B MW(2Q>J.=_#J 2%?+[+^Y,9PY/U^1K09=P2DR;*8O"[G3_'[U\QQ/[Y?WMXNG MU;=@\=?/=\]_,['J-6LX^=P"GXR^-?5K)74T\%4$OI:G=0KLO-=HV$N;4NI?U#%W8,)"50?(%:HN;^XXYR',*? =0\]' M3IH?*^0E3UAEA3,1W&)ILSI)EBD^FPQ=$X8U&8S58F9,!Z1*X+N\1[Q%KF=[ ML9Y]VZ9;\RJWT&$?/YNHJC6[I>O%>&(3QJ)AB@^RFG*)_VFC]/(RW5/IYCL6 M=5VLV)H7)B0;U8*J+!,RJ8LDJ5%/-F-U :E^\:$LQ?+Y^E.$5(VWLI]@ U3N MAP@WP4[[-BM%S_B0WZAB3$D/+2&:UX.#";I'+'H/;2VI7/_JW- *,=N987[9 M&@T<$PJ5']V 2BD4;(L0FJ0CVKEK,L'.QY\$0)OM.M@C!+98*S)E^*E_"?2V M[%.07FA(.^8$5%A0B-#'D/L7C\!])>#/UL\.R 1Q779#2'!0>TP+.B;P0;3'.5Z)+2YG$ M\!U\.1B/2'(*24TA)7/H%1=1''HVF?&E'XH72PP%9R3)(]S3O)DG1&>BS\$1 M1.EJBVWG3X<]]^SKGC-&%A^]$(2B:/8TC3DO;XSPJ,E-EZ9\-"94 M@#JZ 979>6*1INJ G*D+=LKGDIH"B128AR')$-P84*YFGN4,1\\!9_>+-L$J MOXPGA"?,D1>CY"I)%ID](3MX\:D5&J1Q]]G._5B5^Z%J7F%Q2_6\SV0'2:ZN M'*U7(>MI;?7J;3Q^75+3= BC>4O+[$+[,2PF<>, M#BX%=@Z[Y\[/T.R;:0/ MSLC0#Z+7D'*JWQ_V**_(;WY/5PC9I:"Y%,.EZZ*P6LE!5NG\K&H'GY!*3H-% M1S,;]Y1&3G7!REW]32]P+2P!!XF-KR.C8=CK0V7GT-EVZL(7+C_Q(7;.9S!U M+WLZ& V@JLI>?\:S_SL]N MX9KCX/J-G1 6T[.+(:7%PCLVL[34T-)*&FK1_0-95?=M; MH\(BWW-P&I=ZGD=IVB1H19@^ MDUQ-E]T&$]!_V604V"8/!M;>R&'@%FUQ&SR8+!7.-T$8>_\4C05"#74?D03P M_+<@$$^N:!Y>34VH,"4-M%(--:?([O7.J>H>'&P[1+1%.4RDC&9DDTEGA!OZ M&**-M]M$S>NV78TI/;AV1'-+I]@Z6&)UNZ=7O:$13OH$;:@YDLELDL6[PTHP MH3O_/KL)[T,0W@8[ M*W9W:_Q=TF^:EV\E5%&8!"D/5+QQ89.HHM#5::L M_[+,D'P'MXC]-Q_"TX^A8<[80E_IA9KM&E6Z8E-.F:U5V1!:)N2S=X1=66*C MI14C4ELQ-ZVB!FCPN_:@Y:V-F&)56YQ^D'C&BKPWHD++\I8JY6 M]5CRN>OTC;B7I#WBFA"5RI,U@D1!U]WUI9:0*-O'/,??AEQGY1186#X;]GNJ M=J8DZKRT0%R] SX3-,Y-U/13FX;K=0Q'DZQO0HPO";/NPG(J#[Y+-;\G0U5. M6<_!_6I[\-1["SWG%KDH#)&3S%7PG)RF&[(A6:X#92PEE7:="3+H.K13-*4: M35,+Z>8,"TJ2XE$TES(V8Q)W'"%.\B+U^BD-_.^;L,Y\+'Y9EY=^"(DY^AVP M2L?,HBE^, W7'N&^?12;*#&78(W[CM'!D1 U-XS=,FGC_!6GX]J^!3.F44>S MKV_F')\+5=:-9#1,+!CD-L(=AW8NVA3NAK,P9T7T N]K0-!)[0GC6R#U! M+:&GDY.<1H@)65)B'L;N]7HF9(NVA%O-TV#"(&32QM&NN*^9?B%[Z;?!U3=B M8Z6^49(;*T7E9/UW,.PY1M)2"G:9GLO2OG-N(\4XIB9>G"7[/<-WU&42P+-@ MP$#.;YC4>%Y53_;4K.'$V#T6&>#517R6=TD4FN>I9^Q)^8,$=1TIK\VF[+/^ M9*2LG$/3%6M=P=?>FR>3.?O5'! Z^H69>2#H! SNFQ#.=<%K.F>;W#:S5(P3W#"36A(.Z$EFBE!;($5=IAGVD=:#\N? M"G_3"3%"+<9?WWQ_A$W()[[#CD4O24BM8E^ MTMKL]M?A>#HY^SYU^\*/;>%7=B^3"H\1R43=)C;HU@U*#>A./FW=S9U?E8[J MC$K8:T2B51?,O*J+]$A68@:D=BX M71!Z9L9TSWZ8G0V0D[T 7?_"J[)-NLG M&)-+I_=+E^Z/-A^$:6E#:7IU^\:5\JWE#;#+_ISI9&1"E:XCH-=D9%-3;(C= M,"L><\JZKPVO?+9-/2J09Z&&XX[.H M>"S9!B9DX,BAE!KK_.C-7#$[ 92,NGNR"N>T26&;,_"6P#YX/??L$2V!"0]H)+=%, M"6(+K+!]\+%K62:D\A^+OVD)S$T-&53=(S\926M>%LIE2DQB.'IZ9I/"1O!F MD+5*27V!J3LUH2!42[CBF:+7YFXK/34W\<1XZ=*&/>S(#;3X'[FBH7=^KH!U M7>^VT6?%A<<#9VK0[+)[ TY=RE9-L;D._7W$&U-:F$XUE0=&7$#9"77U+EML MAG"6&KH S!3]!;MKBEDC"9LY>T;-<&O"A^.")^;HX>2JIRK[MNL,MQ$\=X:; M3&IK0Z:O9DIP],LR5 %\QMY[29,8/FM L\XMOQTEV\V[1$QA,. M198^:03Y?[+_]8:=+JUCD%[,1_XP]YWB+W*2G#=\EB>I^R3.^*+RW\X9'L.V M'Z!K3TQ(+3E[ \M?)7L@B1)0\D@0XF<".RD)@X-?,LI##KNYK)H[:Z]WY*+!?#>P-U7'2K4(6.&IWF@P4W7JOS&FT?D".->; M)>>4G/PYI5,06D-= 8U&' M R9"G$/IET4-A@K4'(V\ !DVD((#!!U@\/1,O4\>DQT?G$Q']E5?5;H1N_=G M%<,P/MN05FQ5W5Z'W#!T 2STXOE^YR M$2@H+=C? +M4E)\CG2Q'NP]W-_.'9S"_N5E^?GB^>_@('I?W=S=WBY46+W6]BSP?1=$MBNS0VZ;7 M952:_(S>X^LU)TN@M1%6PWUBC?JJ;E:0*-)S9"O.U_U*7$YG(AS[%E4Z*(UL M-R%0ZXZ\H 9U;^M\@%[X"USO$+DV91U$N[!Q M:!6KJ..N#/0\347R[ AVWW&,N#=2'FF9AA_F=T_@E_G]YP6Y ?7#W9N M?@_N'E;/3Y_IU:A:1M6Z%@E]BE A.<4 AZZJWI(8+5L@/FFO:7,330-?@XY> M1W$L^0SU$LT#%=$"5 WD]$P:DI*;PU>O",5/:$U2'N4')UEEA2%6J^84XBHI MS>1V5]COFS W[(*Y$DO-[[$#7(#5SXO%,W:"'Y9/G^BL04].\6Z[7=-KRN$Z MWSI99])&GY4PZCO3F:KD<8F!K7L#3M"Q:M*(.W3Q$2]):1JQ:O::,#)V EVY M%SMG!"16 #5CZL"9E;<[X&N^O8ROH;1081/P4F%"GCB;';EH,K8,X*$TT,KA MBX>;Y:<%>)[_IWF4:O*$8A6MI!)Z.I$\:1\7FE?7KU%5BSM MIWC"*J\%%\$MW@A>)\EV=5%O9L0E+3(8*\';\NEI^2M9H)\_/Z-*Z0_M+& ,O#ZPVL*R.2 M7[M#KV2U+#]]NGNF3H]N*M\LZ2[RXD%;!H%4XX0NIIT%]G[&_3%4E[!#,T&*!@R=-0E"87QOF%8+0LI M/%]9"Z]P-+(@0?O&FB+W2M7EB2)>B;!55B!_GC\M?E[>WRZ>5F#QU\]WSW_3 MLP-"JBB\!FL'A1'#_Q#$2/+[EU9F-4O[?1>I*ETFL_?1#?U1/:EFRZ-MGW9] M,4HW.]01U80QJCWB"B]S%KX%S 8@1@P=FN:VO=OLZ*XR+7F,A]=MB%Z1'WEO MB"V+W@=1](#BI?L,WYMSQ+M94YI ?DR#2]GE74RQG-Y9?V;$960G:43E*M&; MF\^?/M_/GQ>W8/G\\^()SS ^/6*'O7A8W?VR /?+E;:99+EUY.-LBK>%.NR" MAOX8S0P:9MN!/FW_J9HF2O5DR_>B>"IX'C*:,)1* ZV9X!T407)AW'?$!WW/ M!E*#1L_D&E%2"Y+,0XEC_-6+7V]V48Q1APVCI;2V.DJV;%">F9*J+)]IVN]= MJ3J7(V)I)]!EQCXM?ED\?%YH&= :&B#T);*Z[%-%5U<]9,X UPU\ZZXSP8TT MC6GRZL8XDA/RTGPOTCSF)0984>#4!/B";8#4B$G#WF$J2RL?;_%8#$*8 MY2#%U#CMFS321:K]-DP(%D[5CLJG0'0NJ1)(M, \#$EA,/JS7/QPSFU&&))B M4Z34&L4J[&VN,"O0Z* !5)6/+N'C)-%6RDG2,SLT@?AQ\03HGI;NK>JF3I)M MN=(-[-,QRP0/T8RP4F@WT2 % UE%?I.F"ROT0CS0$]H&(;VD2CP1X(LKW/=L M@%S8YN3()B7VX=0U(2R70UD95!8?2998FB1V@W]^8N5FM!\B+;5'=D^Z68TM M]ME]VS)H/ZF"3-G0Y(CZ8D8X MQ/:BI?N(WR@YRDI^VZUBE=B0[I)5,LULKEDELL)R]2":V4;463@2?Z4X6_@" M?>^?5$4WCZN-P$U;>2^^YWHV].,.-=B.,JFR5LCQ32]6$.ENCQT[&[GJ2A(* M^7ZREE0.T!'+I-AIWK;V=!$_PJUP*!;:GGUSJHA(166:2#/T8HH(7YZE_5R- MK:D)AV;ED5:OT?1\V]NN$>59P8YFHGV.T-)=1+&W@3'WZK&RD#HRUF/+,N&4FPA;)8\H]&+LQ]:U]2+)R9%=1&\TS,QI3P*PUS"*J/,E/.9Q MIT9.Y;8^!V1Q_[XDQ#;U>GW;B(S7!GC5O?F2N/Z1S$8D0X!N&GC1'S-8$_#2,,839V/#>#"V#!G%Y(!6,QUSBG0QVB(7D-*TWY_V*-4);_Y?66_(F=';CA.;OB$ZSL_BL-=MFEJU="SG>KY M*=FE*82&;?22SAO:4YWUF+LCKJPA)D:(WW13,\ [V-&]EGUH9%I5=AY%B!Y^ MOO>@Y:WI);2?$"2KGL[2Q]_/+B0WP-/I\S.TULVKWJ=]AL+U\7.\G,)*^BD? MD*QVH(FR_&?APOOYFE9;V?B-5C:V]N#50R%N\>O>F"^KYFH?LH3U&H3Q,PHW M=_X;BEBI@):?4W?#.KZA8U]#_8?3U2ISVV/G:J)J^U3N:SE->UI< >4=+)+/ M)R*?(3D-3!JJ9\L\>Q>DL3[^,O'.CWH!]=Z] MDTE67@\-72,N0#YI8T2SI9M7\M5%P/,!M@ZPN6W@TR4:_$=X>#8(R,/IWP_% M:/!'&M&(G C'\%WWH.%%\.4E1"]T WGI)KY%ZMN1U%5Z8E2^,:5SH&JBHZ"P>#]I K->8+)@@?$Z]OC*=?;+;K8(_0"H5O'KDN*CW2FC_T.E]3 M&,E;L(,7W_LGF!%_&&R$24.Z)!#)*"__S8"$:D5>DG+8-"!)M4SYA/FO"H[]M[: MS[';&=/Q\75I;OV7U<82.R*.AI9E0C7M4[2ATIF60Z=)@SA#2QA2+TMT1@F9MPAS1B K5\=S M8R4K47HF?XOG$1&QJYGQ]X'_?T3!2PBWK[BQ(8)R<^ZV1M3Q MNUOS\K1N9X'=-SEUQ@,3_/8QV.6VHD@.PTMF%$/:$?"@H95[9> -M$O%6:;";#RU3%A?D08J1S:B>P*><5+8D\6?Z!/:6"@L MM:A60E%">CVP+.^\^&>V^S:=N".=1[P:@7$*KYZE8[,BTOR>K8@HZEH.M*QO M2W]G'\V@-^YK[UPA,NX^V?RL'7S=W,'7FCKXNJ&#KW.OT>H[(UMG98)F9-P. MOM9_C0XY]1210U#>&XFU:SG1+*[T(APAY-)--[6R;-T']FPCYD!R*"MWG21: MX*!V5F]QT^PM;C1YBYL&;W&3>Y_01H.ISEYO1L;U%C=G[>#;Y@Z^U=3!MPT= M?)L?5:>3H6M,!]-'<8;%8PB.2E M:C_"4%/+0[ #PI561\$&P'G&<419+H"-QEB'=^BB,)3KS70"N=;_P%P4X@HKFB$*8V>RP5BJML3J=:5]2EL!7 MI@15 4P'$"7=(TY&[3M_NXLC.A+VA5N.0@T-?H8/O-;35,59^-#O3: )M32E M@58.IM,@IG^B]:BS$&O0FE@#,X@U:$>L0:Z_9H/QX,J$36UIH/7$&IA,K&%K M8@W-(-:P';&&^=WIP=A&(T.)50NTGEC#\ZZ@?U[%(:U@N8^R=3-^6"225A0; M-0/. B2^*'WQ5]9P,M8YC6\%LLR.SS^L?@"I*CCHGHDES\F3DM75O8@C/%EE M#!&#S?&C7I#==^&Z;E^G_V@!L<*-%4C5P.I$S#@^=8\>F!&GZQ5$%*;HU4 K MI.7E_LZV#7I#Z)A0=I6/K+*A025-B5)R56"S\?%0GH?3V"8E=821@Y^GD%B# M?F?6,C7'TRG^C/ M.:"JV_11+.$W3%T,FT['3D_5#%-0P%06YKG7Q#B?T\?MPJQ@\MS5C$"PHR M:JKFC?)-.$PAFW6296DX'FIW,ZW15B:6H'9F: 7,.+)TYHEVPUMW^D;_WPX *+Z6[3#B-KI546ZN% M [1?.WPQC@G03?AFI/P_,G['(6"PT' M)MR>7D54YQNT7+M!'CSWG6Y>NU$QN96O[RJK+2-Q^48'Y.7N>@YBN&87.9&R M1^4;G;3U9*E-3]AIA)Z-PZ6DS<5?Y"1Y/=S9(-OWL8?3@:K#7I(]?Z(6\1G1 M?,&7*?3@W&@FR06.=G))H&N[9Q]S9ZSC?5+7&#DM.UX*_GEZ6=E W:Z_.[\S MU8.^,AJ;$CNTA%QF[6_LWD$Z_\B9N:",I98NB2F0LZ7G#C#9;N2VWG'LL:4J MFUCF+L%&H)7K![);./+=\77V!AR.X?F+0,F/ LU C^V-(]8>2_?STKRII8^> M _K3\Y?@.81^Y*(PFF]("9JZI;'V-A2M2G9M7+9$V=8 "]_);J#VW*CCH%#/%F6T>*.)Q,3SGW*H:S604BU:-BK.SLX/8::N\% M-A:KLI7I06]DFU![I1-H_F'D]<$*@''.^QF0'T8OVWV"7S[AX"3$8*,'%)-+ M0R(4XGA"D+O4I*@V3TRN&>5<,;$6&^AY2*/A2%6!,HGU(S[ NI1E(JE_I+G',T[T M&JR=NPUV/6]LZDF3_'C[X@(%A5D&C; +R09FPOT0-> M3E'WO&\7^EZ,)P9SW_G@O9.?A,02R"N,*LXL#0'AAQ&Y8DS,J( MD*K1\-A-%#63ZA.T7ST?A7O<5-"DIK 8E!;]0'TJHD:34H$G? MA)&Q#=;*(CR*8O-9)G)B34H&L(SKS,0:S%'8 S0S8:1L@U7N9KT+\!(*#\B< ML:_FAROO;]$V1+9'J][BG]>(WO?J._--$,;>/^GON8VOZ]53V4[JG$RGT[,? M>Y'?>3Y/XZI!>Q3]!'+/ D[N891&,/<4W4?I3TRF,[URQ;?L?!W?EPF)42=O M4"5M*O\EY1]Q ;*'T(\J_Y@+D#X(_T0>Q;*LLJ?I2:SB-IZS,":29^^KCP80 MFK-0)@]8=I3UD2"P.V]7.3L[_A6&(6[*'G,PW,$UIY-J)-FZSG0R[:GJ'OSZ MO( +W,,YIJK!HE21.]N^)*I H_J F<7 M$D=HN!=\#!%Z]Z(80[WS;7+H&MTB]M]6KTYH1S>+)1K93&B!$1; 6#-[:L+& M\)'P*S1W_KY+\JI!' <9;]YP2Y:[T%J+R4_#M&23\*@P.P1[KF)\6*-)/,< M6I.SIRC++U2T@5QS$U*TVVSIM C'9V&2)6"F7RIU6ZO78(#'.8YU)E24E81Y M9!1'INK,"]%A-#6O;19^?.1MC2QGK&K]A446"[^#SRB";9C8X2<8-:7++I)% MVR#RXNA&>%*!*ZWP6*08<.$,9+TH&Z5[$QN9<$Q!"B3WPE$_5)DPX[>^[8<�X<9VH,N=E6KC.(&J:_[B97NMY3M0Z0/. M1CR=]>-: ZT$#!G1TLM<2>"0*%^ 1%U/0%!JE$0'L6-:J(=_:ZPC*&)L^NXO M0)0=LC7+!\BU5N,7+LL7$X[7\' U?JYZOLP[W\:1Q#-\7[QOD1^A:^0CU^,D MD=>*LJ_ 'DYM@TH?26&MV2%[\R(RJR=3*(^: #%\/U-)[&7HO7@^7-\'D.SA MIE<&S%]"1+.0^74X9345'7IOUY#LJ+N<&NNRX60Z4+7-5_=U=P9Q0%J25.MMOLZQ93V>N M^]' JP?ML*T0SP M2K8\L:6(G\>?7O1\M'39\L ':).R$OLGM($>23NZ#L(P^()_N(%;_+=XSPFS MVQI1>,JQ4_,*)Q];66">:S0<](VHP'P$=NX.QAOT\&/6B/#:HC; SG=02'889O--Z.5U4].:6,W39S?=C!":FK"PTAUYY?A MPE5FZP)LF)6$U-B,]N4Y*[[SHSCRHP888+_% M9UG1U.L?.0UI9B>473(AG0V21(),R67ES;@&5,>9@-G(D/NN>C#:L5 MNG0_X=@5#](/*+[W_K'S,.WW9?[7-;:5NB)2=6A2QK$6NDF%=S1P=!YB. YU MI?X!,X#YEZB+CR\I&3M7<(U=\2H.[#\>0\]&CRAHU M1S;)>G%[M@D'$>105I:\L1:=M0:;#79B$5$'6Z)/TO- 1"SH*4E^:,[#CJP\ MX7\0,,F!BCN?ED>&-O&]#9W6J)^Z(; MS&PO(HD+Y,:,#XA;89(KK7;D$0 N^[ :T=2CFW'CF13(Z@&25!ZX2+L;>@C\ M="DBR999NBXBA^[(7>*<=CWBB!Q5P0^B8?YSX,Z?/Z7/KLVC:=!0E;8D!?R0KB049PG[T]F5JSTI MI W0Z@P_V20B!73PE"T]K((-X!^9A?.D)[VBM?N$7KPH9DM8_,M?N**JTHW$ M4 ]I1?5RK+31V.Z-=](98$ M>D^>1MKV[O'B(CE5=4-:FZ;D!S89/?;]#P;.T(3PJ3WBRB!'+("""#WOPT(%E-13ZM74,R%R>GQDY((CBS=&[>=09< M/7V7V@ Y(R!_OO\W9N?(TBH]T@U=($6]P;H,%4U2Z&9)FOH]K1MO[7'L'0V/@JBJZ1&X3H"=EK&$6>Z[%Q M-\HQ0'K<%QLS(0:3::Y<5":RQ!8AQU=393?*=XO3Y-M0'[G9A10WB M*4;)XG\GC]=';@^I6B.7JGYQ5"L:_!VBJQ7G=G91&.<<'?[7P9@J%?.P MW G[-D+V#R_!&WZ7.S\.]ZQ[DW\<>C?YQ>\80!%Y_@_G[]4J#-*CA]_2-]>[ M&H_Z.KTW#T]E6KO2.VU-2BR0??Z; ".&=ORK%[^F=906[_9Z1_=+H@CA_W,X M@5P',TDZFV,-#*J.<'0[ROU+UB4BLA-^GKVA?83C \'B5DE U3Y0':S#[D_^ MKVSR[SK]*YU[RDVX*CL]3%3/IYN<;P_?/!MQWW'AS\P%P7YO9L"GUHBO>OJ> MR9YW[;C^A?(Q*ZSAT+:G^]HW$WB@JJ4\RWU[GLXEOAR[\B 4[3M59%3M,'' M'?:22@)L$\:93"R=$8X$M)KRP(GT?^N@IS^TQ\KJ>,DBK($:V2P<:U%$>(G'D\?PP\D'3WE)13O&^4AW(RIY27H@-6J.),[9-V4_BPZNP)E4!J+I'#+APNJ=>-!E*>A.MY^1;@:QP M*5,"5 L0-7U;DBFA/P0ALF%47YI.)*C(\0AA9IZG5HKEF8R0"W6>=)?%5^%+ MZG%2I;,.4MW=3RUQ&F2UN9XJ?82";"'%6U6ELQC*_5!K9F[L$$JSYR-1Q!$T+.H\"W97-Z MVQ8Y/9(Z9R-EUSJ*""D-E'/B MX+!8?,(3YB<(5Z-XZ=)Z1,*5FAHYE4$G!V0QKBP)L7DIG/0&)I0:;(!7G=1$ MM(S*RH!DD8_(1R%@TCY)#3KKA5 M=+1/&LAY*;+*ZNC8KCF%D\M2FFS^V9O-QB9,-[I@KJ38!3%VD+14[*5%+-!C MZJD)W>S\ D.G(1>@)*.0:W7@"I3*"[#E8-2?]'HF,(5I_G-AZ?XST_.TT@K"@KK1%NEHW&E63E+(<]I'6KK W&2E9XJ@:P M'D@4]500K_5^\S#$<.GD]7I_$'F$>_(KRNIBN>UY>NO7AR#\B'5K]Z;.]2QV M@PF"EJ6V$D9C[1\U#:X6ATJX]0GNP;!_ 8C/N,@5"_K.\T'\&NPB'$Y%W^O. M'CDS 15UB=(\R,*E]0>R#\3Y!X*K#W(RR4/!O3)%X ] MFRX7T:>#[/'T3GH*0'M:6-<7N]S2_2;:B.B.+/EC7TO+Z9^Z"T5/^@H^Y^87 M=9(OF?\8=L"1Q*,F%(D]>P.K)8[)MW?!/C?\D!XCF$(8:>319PB1AM'XZ]7>3%]6F(W:TEE>6=T?D/&[48 M<$[4'-X0DHD;-HHEGMZD3\&$"X].T(2J?Z5W_C&C@%E-_-\%2#^+ M@VG Q!/'FIG7Y"K_+$M"L]'$=E7-)J4*&JMI+G<1=[Y[V45Q;ATW*8+\IYYL M9OLCOR+OY17_=_Z&0OB"Z(LC%U!_@%[X"USOZJ^B-0!7<@P/]B>J]JC.O2=Q MMI=3IGZJ#A)]MKX"B 5 3 !J@WAFYI5S6QNZ@Q,#WJW!W?[GF!K_27S35[UB M>XZ7H7&ZG:&] '+.[\^UMZ/\/GVB^2^P]X5&CDZZP(9T?CJ M5>)T?\F$;]YJ?B46YY7\):&UT>5O MF1GYRC_E+%Y)_ITM?NGZNH\!]/5\\,>_]E/Z@.YHV&CG('MFS+Z> >^A["DR M._^SMF?B_'D*KZPK5?P][T+UV5[-\2M["[K8K7NX;+O7)$Q6[&C,X+U&?LIA M)TNL;.;,&3HZ:UR?L@VUQX(B$+'<78\:UUT6 &Z]F%TI34ZB1[02UQ.*O9"Z M#OH[SAN24U58/*!%4PKU!"3T6/K=U:@W,B%T:8^X6M"X_NPB0.S\([ /CSA/ MC?7.@]9FNP[V"-$6/.*W^HHE'G'CVIT+T05"50UX7:_W4%->-0*6/^<.':2S M(H,);:]<@YI892>6P3:Q"[98*AV,8.$@"1F:2.4DDP,P[KOJ%(&)K!D2@C4W M6#H&XYMB65(C"&T32C&=I!%=/@3)E+Z MUEOOTH(<^>;/G;_OHI@,CFW>HXPUS327;W CX9M-,6?HPIEK+/7;-J+R$1!] M[PT!Y+K(CEF5WX)JD9K3Y%M3[/=XK:.'Y>";83'!L3QU5-V4V M7K=X5 N$+C Q ;XPFU\UV%].Y]](MOX7Y)MAQ M XL3V5985^N4+Z-0C^L4AI-J:F/HFE#YXPQ-JBSTYQX!4#;?I FC;-$5T@IA M47*Z""4/-Z(4]3-\G^_BUP"_E_T#W(CJR(D45!>B%L&NUJ&NDV;7.$RMT^S3A@!9PY5QB)))GQ^9@;]Q'BGJB M<18C#[?FSF.J20O;HE3M@D1;E8[*_^(>_X1_F?X*_P\93?[M_P-02P,$% M @ >88L6,),XM[D.@ /2,# !4 !A96AR+3(P,C,Q,3,P7W!R92YX;6SM M?5MSXSIV[ONI.O]!9Y^'3*I.[^;],I5)2K;E;E7

2]Y[D!062H,ULF?20 ME-N>7W\ 2K0HD01!BA) )ZG);EL&('QKX;+6PKK\R[^]/:]'KRA.@BC\RR_R MK](O(Q2ZD1>$CW_Y99-\@8D;!+^,DA2&'EQ'(?K++^\H^>7?_O5__Z]_^3]? MOOSM:G$WNHGWN/@\2D=_?/W_^ M^E/]-8H?,1Z,ZV\_[I;N$Y[7ER D!'?1+WDO,DI5/]FV[:_97_.FI99O3KS. MOT/]FD\'-T^"/R?9U]U%;D9X^T0ID\H#5RX/GWBE<.=!<4RQ?\EATDR]^;5W&.G7^MS"(?X/K#9K[MP&^JMT KJ?X8HPS8:-QRHS= M3YUE\9R\ES?/FS4Y MHN;XMH\/[I2[*&FD%_, I\YT,?EM,GN8-,WGJ-G)O$HC]X],62' ,"JFK4[O M=>J<9N3\('OX'L79RFB:3FV'DZF#'LE.V6X4%_^T%;1:'(KL(USR;CS''=GW M7=GFNU?06?>+YG#$,]_[;--O-F6YIQG;#U/N\<&]<%8_?S MSE(Y;9;*96:IGC9+M:]9?AA@VA_"#%W/8LUI.\]6@_1O3VD[7?81SBZ5,YY- M;M7#P7$.T)K M/(?'**:>)D<-V=0.?KI=)2XNBW@K_FSY?8L_JSD[*,W9:,U#QVO$R)'B1.!D MIG>A,1NU>:I_-?AX7([1\W,49N;3S"*9S#=I%@R'[P_J%4GMQ\8!'DHC.VHN M"_^O&QBG*%Z_;R]Q^L(O-68C.P]%L@$?'V-2#,,D(-1A(7:Y-1NU>:B430@Y M22FSS;.SM^'7B2AY*S;R\E,JRX@XD)4\)\68M1E=LK"K:^*=%N,3SJ,:^ALZ MLA&?GX[)A)L#/U;P;>IA@)FS()E;\YJO[<+& W[J9@-6#M0?>QZF4K+[YRX( MD4RC?&5S-JKS4#P;,?*C^#7^<1ZOHI\A [V+C=D>:O@IH;7X^-$Z.^WF\7T< MO0;;% I-!"_U8*,ZOR='.E)^I+^/L)*P_L_@I>EVK6[/1G8>>FDSRLN^JY') MQ C6D_FP!1MA>:B;54@N2DJ2^V1]_Q2%5.F[W(J-I#Q4R3I$%R7K$KF;&/-6 M5IP5\46J)FNY%1M9>>B,=8@N2E:LL!(3S/+]V8G6U30]:L)&4!Y:8B46+HMT M\N8^$;_T>N>OZI9LM.6A!-*0<='"4T1F&KRB&YC"W3L<7?VN[L%&ZDGJP\3)&+1)OCQ"^+)=6FB=)ODG^S6V^P!\3+(0 M4H;EM,RV1W$YW75GZ0UT"'45GKYINL ;)PGF4#.0PW9 <1 DFX&^:TIKL]^] MTX7&A[N+#F[O ,J/,[M]SLJ@H^; D15+*RTM/GRJH3*%(W5H]FZD/!A#\FH1 M_WS\#PGB>H5K1++XI-+G:?B*DO0@0U3%B5[1&KBZ[LF-)DQAN47%M'>"Y7(*;H/^DP5R M$5Y&SAK-$.T4K&H.''SX:\-E#QW4WH&6!W_(B@GQL.]4MA1; 0L:CEO:ZX/A M1B66O:,M#R;BZ:]JEZW8P+&L#<>_$ MRUWH8Q3V@.U+BFL/ECO58/8^O1B(C_ ?O;LM'6HGFLTRC5*XSEKRVHO1"XK3 M]_LUS,(XB?CS0FY4Z@%)ZP4<&RO,PY4%F;#MW8IY,&V7NSE\O$,P05G.];G_ M@(\*@K:>:]1NP#9,1RV)38-A&QNX@K V6#OSA M,(H*JN#BS.]":[K)@*UXBM1H^!:6!4R#9Z/ZS<*(XAB ;0E7>,$ N.Z3P8>+.3 MLG:)QQH95]T>:*KD.,ZP&=8 K>"]+H8"W"2LG"PM@M GJ,Y@BAY/9VG%>@*;OO< M;& %= WFKT)+8'J^I Q]9]6!*KCU<[[IF*XX8"'-T C)<5F9/J6#GD; MICMRHG*',F M!$-P\F;8'A+95!N\Z2H: ]]S7%D0IT<&DFP'19G:D$5PC*X6!T]+W-YANM[&'C3\!J^!"FLBN7) MK7+5'8!JJM 6Q.+8E4E-V KQ')PLQ/5E%;:)RDEQA1E*YWZA@FJEW;C-0,#4 M-:@*\F[3F;<=,><\;VU<>46Q$V&EG9]Y94%ROH?(F\ XQ-=^4B !5D\#-Z ( M-\U]@0154QOXJF@!,W*[D^0-G.3/(? 'TX#PC4A#D?4;<)Y0&[EXH*T9$JETB(D=_.ACWGS]I MA*1F>?A\$$$=G468X*UTTGT/O$%<0Q/$'-Z*[@PJ:@5,OO&3A]/;)IL<;]*G M* [^L=_33=P[[@<,&4%3$&?1OGE8"Y9OP&75)*=)LFG+Q6T?@%3?\H71;\_! MP2.@?,,KJR9(3W5+05;H"&Q9]JQ/O1.KT/(-QRP8O_!Q/X\SW%YV[.>5U9C, M@76=@6-#$PKBX'$Z4]L@YAO'6V5D+5*^,:"E&3;= MD#4=@"0[R!/$!^X,C#M"R3?*"J'V?Z!. MYO[.[0O_]2&$&R](]\,6=7^-3?=?KO _/R8SK/?/;T?S^\EBO)KB!J,_?8S. MQ0*P-;I_ &A6^FLZ ?*!N1FEMW-9D5""A@,%ED[H"LF++_$\MEO362ML<56 MXOD([.3-#KP_T13_2,O)4FH+# 7YHJ3\J*$PG1ME*!^.H;VR)(G3 COP;WM6 MX%](.+NW<5,LNJ+X-7#1^"VH8@1N6M42R+(#7='$>1H;FH"H9!5<;O_?3+S8'A^+;'VR^FBPQO9O@#U23Y?=#P2\T [:O MFN7X-&Z\H%"WQEI1!8:S(_0.0!,C#IH!U9-HCG'*7TX]!U*CM E3'\B5!; 4=^-H,C._+Q +3 M$=. Y .^P;C649;\;3=9FJ1!Z0:P\HXT02()FAE0(URP .3[0+%$ZS4I*(]" M#'&-9SKVGH,P(/!()8)&)K+U!YJE&9(@4G]';K9$>OQFP?GX;'%L FAI6 D: M-+/J0>WS4 [T0MP'0##P=-\8R*8/RT4HALG5"EB<\U1FU5M0DFYGMH/5D#*[ MN@=P#-- @KS/=V14(S;.22NSL*)9%$:'"ZKQMJ/W [YEFX8[[#N[&E AT^:P=EP>)IJ[X3;;C^IZ M %5V)%\0'X>.S&W$QCD_Y_'\KF 2N.RLRIH#T[-E7Q"342/!F=ATB(MS"L[C MR=T$ZTU*$=2%")FMK"S7'\E8K1*J\ R$)!L M9+F<:E!W4ZF1HT-!3H2NQ&91M'TQXT(O^VV=L?$;#$)"BG$<)/CLN]G$^+]84@LBKSD_V@6^'$!#LDU!WD-[ M78F7)!Y?;\DZI ]AC.":1/E^C];DYLTAS<,E+)U1GPOSU&\$DJE9NB!Z MU4568V\4X^L52DMEV&DE[3H"U9)4CW<&XTLNB&/@>R_3@><3*TK(F4YPD$"- M*B ;703DY?3Q?*?1I._/DQ7_R&0@-PMTS=#=^ JEHM*SZT7!M@R M#%E#EBK(PU\[(E?N[1IT P]*]DU;,01YQJ^A,)T;92CG"4KNPI+M\B+W0122 M,[(F4OD84E4WX"F^Z8AV9[9A%!45YWC9H[G5QC+GQOFJYL T%1>*=MY1J5[] M4D0%QYE1A>0K33&UI:9 1J;N"*(5TZEN;5D%U>X \ MV10ERKH#RQM0\:XJQ912[R##G"MIMBL(/R@"?+4<606DZQ/$2V9NPU.(4XZ[ M[,2J"XYJ6H8@3DFMN5D/9V]V'RQ/MZNT:-G=KM[<0PYE%D9\=61<:F!ZN\& MHUFR(4A$1Z=5T1$O7U-YS@RS41HJP9S[FX'LR5"4>*^V*_)BQ.&; M0J.3=YOIR+(GFA<'(U^KD>P37K1\A<=*BXCN:UDD*Z,CU'ZE=W<,.NW[@*LK MOL<[WVC'!75FDNQ3?O!87WOWI;W?TC1\1;N3L7ZA-'0$%O1MX>HX,'*<%=MI M63V(RTW&$%E6I8PIY!- U"-2MV^;BJOP$#3W\;E5'=9 .C;V \BT3&]HYH)V MT#AG[NA@I_55V= $R3UUDITV!U)(OM'%J#<)>V MJ&:I0'Z,US!YNEU'/^GU4 MU6E)78'S32?>29]57 F)4F'^!,HSZ+LYTJXO:[SUW4ZF]++54$,J+,>V?PZ& M-T#F^SAV8%4C)K'0#=;H8(VNHMZ.[W-\&S!TP_ %D9&LA8D M;K0)LU(V]S%Z#C;/"9-%J]MXP$.N+8IL*5'T++T!IH%L58GQH)HSQY&+E-P<\^;?SQ7 M(L2$^(L"6M$*:C=@2#H21;\\&T^K !<>YX86)%,&B*7:%QAX-SL<.T$%B[N9 MN\"6>&U6",MXP(6ZKPH2!G"VI=.*$IU?&T5<4_E!> _?N]X=NZY 1I*D"Q)2 M>?:+XQATY_=*01=%O,'S#Z 3K#-IJN6Z..H-3-GT=4%*[9QS:=3A+F3P'_[J MR$_)QGJ>C5V!*WF>*TC0[MG611WH0B4!,1A[:"+)US'%'85Y"'Q,>KKQV070 M)O"<2PK4GEB% C3=Q(#J00 R9*4%"IPK)N0!=*MH[/Y]$\0( M8\ 42-_OUS!,L79,?#:S$KZ4EPCF,8 );=T5Y%WB!*95OSJT)T/[H@G"A!]B M<"Y"7E;W;@G7Q)#R Z8D,>W[W,],*DROXZV& ;IJ^[8@.F;ORZ<3)3CG[2JM M>3:F4WH!A"0H2CCRV8^(*N"%C%Y#.Q38Z=6'1 $<:.F:(-;(OI=*!S)TSA8F MJ$!Z&X0P=/L12"EC ==3)?F3"B4GD(-S+[R$WG_N3-?8+A(UK@93P/"7SR_\0,](HW4G8D8](%+E[DY ]8XS_\H-"R M?GV=X$YZY2N6DS'W)!#;=%-E@[B[WGA9Z?4]N;8DK%^2 MEYT'D&3-$R5U9=^KE1,I\VC/UM5\>1^]9SID3SL>)%GW[$\J$O9#F7R]#30- MMY"K3G8]5Q44NEP"FGG\",-=+!M&N@P>P\ /7/+,N/5= M)3F0HW7@%C238N89:_1E1&(IUU&RB1'^9;[X-IY-_W.\FLYGH_'L9K2>2;*4-CB.2O[0.0H:AE-X3+0+G: M)$&(DN0&)6X[OSDRXGH:84IN#I];B'K>/]_CM>+H8_3:^>YB0/%*WT]EX M=CT=WXVFL^5J\9 EF.*QK3^@[2?+L+%IO8#J>*Y7LN;R@\.PC:G=@.D;EBV( M88B)\I6;E@WC,#?H%5R3=Y;E$R*1K'X4/Q\\510VIBP=;\RK\1W>BI/1\OMD MLL+;\7:^^)'=Q#RV8Q'([L6@U<9DZP\,W9*U4A[7"ST*;%Y>UEE^,[@N3K?= MCFTS"C =:-B"N$FWY%#U0T 7\,/WU5[63[>R]/9]?S'9+0:_XW'YOV8 MZWY.3'D$ZCH!&7IVV<.&&QB&;4GK!4Q)D61Q0E0:R5ZY]Y@0'F=3O.!-&,5Q M])/H]'%,K(MU JJLE.[!^6(Q_YVHF>/%8CS[-N$FD]X@)VVSA:K; U?1/<0I M).1P2@P;IZ8#D$CJ1T%<(QKH7+E=FG -\U8B[CS!UG$4*[[74:;UHK#&X".K MQWL-WU(_IJMM5F%B[[F>9P:>R8R7=8<"J,U.;#4,L#U)XB6%,LV48=^V&P<@ M$VK(%6,[=V-6M4&X&Q6&N?DSGYO*=/+%/:\=[_GE]_%B\GU^=S-9+$>3OSY, M5__!8Z=O9]R\E0_; =_SLRSS8N3OGT4I:K5-F8< BJ-IHL3'U?"@6B=LC7"8 MNX]:QKN8/KRX&?7CS3B^OG[X\7"79?B?K[Y/%N1*OL?[[HF_U8:UGN@TS(/E(V/Q/=K&3U6=*24_ MJUGVP)L]$=UCD3_3R+GHX# .@_ QR2?/H(W7] ^DDR)DP!P/"F&W5W;!?BN M8]N"2.:-U*[;. -HR= 5)6][( M@6H;60N4P]RK;5R3*2[*2LE+JJV+\NA/^?!>UC_'DLTF^,]G'ZWL!286H;$L<%F>9 /(MIOF08(U] MDJ0!EIUIF0L.VP'%0;HLB ]K5^[40.);8G*!W#5,DFSG$S)26%)J"G3/,W5! MZD9WY4H]*KZE( ^TS460_'&-9? @)3]13[BZ3D S%;?\ICDL9K'@XUM_<89^ M%L#%48A_=+=^J-L#F?FV:CL2\%5-506)N>W*X,Z@CZLHBJETKDCB]DJ5L^3, MWU[EW [^&11.';K0++UB,$$AO,GF)\NJE,V1? *6[A/R-NN:$$:RG)R:W4BZ M,_;&(I9D&N(?L3EY#W=@%Z#\//T;@E+K-UK)\Y\A-)7KWCI#C*KG*(K)J?Y@ M88GE4]QENP^+I8U^($CF[,U#+*!MXABOXTQOS1C!8M+M\VL 4BW-%T309>)L MM0'X+#3A:R/:8ZI(RT&NXZ&H.N;5>R$T MO&6,4A0RM7.+ST[3QY?EE'[P@M4?P:$+FTJ@;0>)U- M8[=VW>@Q#/Z!$67ICS.8K>[MGK\2*)ID"I.:J)\UT7"QGXN"HCP@U #:9@?O M8"=H,QZ GFI9@@B(EUE.G+-UQZ-T$ZPVI.]=Z\[8:$!C(4RQ!W,(;.=5TS'="SE%\; S0J]^I MI1A9IC ]KENWQW@]U7=UE5.\WET4/MX%K\C;>B!8E,>,UD5G]LZ5&.7<.V@''A)(D2&HY!LI6WY+5D/+-5:YL*H#-4%R1;1A%S.P#^:)PKI\EC?1,PPHM9J;>@)718HH9=&8V<'(S!JHPC'S M?86_KO46S#L!69,D5Y!G_1-W7PE3_E0O"J_(!%OON7TG@%19-021]EGHS\:X M"H"G,:XF9F;W7I3\0*3:>DUHS&$CX'N:! 6YFYB/J$.R4U#E9.XF>->0^>-1 MCTKGHU; 1XHDBG<1RPHMT[@.44[D;JD%&HA\Q43D72N@V8ZF"&+6.XW(QXAR M(G-RRMOI7\D"N2AX)9=7+5\.-;92#V AY-F"O,-U/'%8(>9,ZY8JH&%G7#/M MC.M\L]J&Y B29_*TG7&,*"=R-P^V!B+?,!%YUPH@T]2%%5]:$?D844[D;O$D M#42>,!%YUPIXN@^]3T'D8T0YD3D5@2J!N4G[$N"G/44 MXQ.;&%\%;%!6^AGQ_T^#UZKLLVH/*?1V7S/Z^)[/8+A7#=OO>('S,MP;LF:5 MT_\)9[C/*'6JP=#QH2V*>P +_5L;#'. IS&.;C!DL1?N1%5=,X5)NLA"MEI+X1&> MG+S]&@KK)<@Z7:>^!S!UVR@+(L+(TOE]4*'N,(#B[%),TJ9DJ52V]8B11[RB M?Y((S-LHWJ:L*]9JJW+98AL!J)8B04%D,V8N=@7)S_FW(=M4O=N26LKKQI1N MBJ>GTAGR34';4.1N^=QX*3V*)4-9$*F-B;8L:D\.:N!JCV4@R2N9#H60J',* MLZH].13N:D_%L497>6HZ -OVD2*("-V&.4UX./NQK&(8)CZ*LW1;60!6$#[6 MY#[$TTAJ+JH&W:C/;P&:#SU1$@XW<;=R29R%&IS7T<==/W ,68FD_O M=UB963=L>Z;^P#>@ZY8@#N 4: >/L\/4QQ1W*1NS]5:>=].N;S4,L W'%N7! MO26[Z"QOA9XSYTG2KAE\;C!+%EL!3Y-52Q#?TS9;LA)$GN2=,_F;=M9A.WS; MZ+XHYL5*LE(9< 2",PL*6S^+A+HF51R8[Z[#+D!5+464"LL=KZL:1#LN6;RY MM(U6JTLM_!!&3H(E+()X&KYL4I(Z M2ZR C?A$=\V76\S<"3T>.+8C'93/? MZR!=FK9V;E,>2WK0*YO]/R4KCR'GK.S55?MA MF<;9[-^3CZY[=V^6[PUD MKVX.7%2^M92^\'H&7[HI3THKP?5K*)$9JP1;QV7A![C_J"7T6W,EZY M2[G\63PK-,EUS)(#G=">%;*K($T06QL3;>EO^8>@!NY9H1BZKY4R@@EA!\TI M3.=&&0IWSXHN3S4>1.7X9_'94 F"LX]XQZ<:#6J&*/Y?E61E>:K)07!F06^^ M198N(U40=_$V^Z()S__X%K55.&U3]F1!3L@F[E8NB;-0X[1U5!MVD*3TB.J/ M!D!7) L*4O.JYBPLFR@JYI\3LM?XC=/?L:!G:)H@1KNS+=ZR<$#F?+E^9 MKH;'W^(H21["&,$UR7M/PA>H?*YM#V1%@>;0ME(SG)QCW=XX:J@^2=+@F:2F M+UCY*42O:PY&+#E'.559.RX G5[#.'['5,E67[T$2.\'' M:DB R'<6@4"G.,4+C M&Y=(4HFN9U9%8^#9DBI*KIRV'*+A.0XLO/QVHF\: 'T38QLFX0\ \*T% M2Z9"ZD2<<'XU=@>R8YF&("DPN_"*'>&^LNO0RD(3@$<@%_A4B .7U#?:$N'P M@T)+^@+I/"S0)5NU10MK;+%P3D>^6U#ZIUA01%Q\BN*4^<9E'P- R_ <01*3 M]K!4FF#FH0;,Z\+>KHN0U+[7T'M=J!5020?%LI _T/J$"VG'5'-YN[X&K M6)U'CB#FG5ZXF@/*W8#ZV*NB>:)0,QZJ)WFD\$UR> ;/%,]3M7*5DE-,3D>^ M;IG?[3Q$JRC[:?4SVEMJGDF2P!K[4]MA@.HZCBN(\L5$\K)QJ3-FO@:+0XEQ M%H7$IQ%5Q!%,T%.T]J;/+W'TN@T+SKR8*"_CM7V IEJ2.2Q9**=^]:-Y,U2^ M,M#M)@Z#% ,:A]YM\$9^:F)?;1>@0!6A8B?,<%T?:K%1%5]: M+V#YME).J3/P#5UWU:T![9D.JH@/HTMJ5ZW8VDP]\IPN[V*3X$@(L$?<K/*UTD5ZM$R]!#"QTY@LC,?&"HMO6)>?V! M;R\9#\GQZ_F,R6HW_-A$F*.0#TWZFS?T%A@JY0B/R !(, M;*@$,*=Q\%C$,+U703#+*':MBC(^#%& MV7JAIHYCZPR0[FF^(,\,-;0]Y$,';#ES>LU0NB150;PQ_CHOV[M1)RZU' 5X MCH4,00HK,K.K*\B<;]V>_^HBXX,X24]E6[M!@*PC) MRVS!SK2/&G&F])BU= M/07QR7NMW2! U:#F"V+Y969:1XPYTS@9'(A,.?>W]LM;2$HMI>\+1*"2HDRY MIGH-7_#?TO=Z":/=.,"#NH,$N?LH\G6E'-(1*N>DFA63_@'?@N?-\XE%--4Y8:.P/:1:0KR;MZ6CZS8 M^#JZ5*VVR=M+$&]?OO%LY79[\J@S\'P;EO,Z#(.%;?"=%)Q2(P MT&NT?L7[ MG4R$K!JL_N3?7"/NT+H I"F*)DBL"3,OF%&=%%)2PX%MLJ>Y_P/?L/@ GB$\ MW;]O KP>WH\71@U#6HP ?!,A4=3R5OSI G(?MW'I5Y#E$R8 B=E%<4(""M)W MAB<033I^ EE^'R\FW^=W-Y/%QRV _@D4SL69#[= MP@[7^*Q=II'[QWTQ1F?*';VFA[ TW3D""(UU%"XVMK>!(BO'%^8WFQ# M%$G\"YG>SGU[&F8I\C!*3& FKC6. C0-'SB"O&9UY"0[R.&Z[&1Y@I"7W&*: M92&[6UI1W62K.F!U1I-T02[ -OQNPL-7QB>K,;F.GI^#),$D),FD;Q$M/U)- M!Z!#W[,%L4.WW8XT/'P#RV=1&.RTPYVSR=S'VY^H^5%"N;SI_8"D>;8A2 ;( M-LQBA'4.:7^^29,4AAYQD"$2[2KRQZL?^=?7/;E1.Y'P5ML>DC#2 M.Q"-_+ M"]L36OL+]!B026;DH:4JKFE-,JAKJB"):IBIW@1F'^=\:8VI$+2?76_X+,5# M/^'-B34<4L.N/L^I)A_K3>/KZX1F-%]]GRQ&U_,?]UB5FLR6T]\F MH[OYMX%NSGM5Q0& XML2KYFU'!S1-]VQ1,A"<2O9J M8:(:[] ]U!P=6J*9!@\I3.=&&WD^_W!S(IL?_%;&)P'7LH.#A M[#E8?Q2[6Z)2'3I9>@,7JIXE2(*T-J=9*W"Y44%0-C8YAK+U![ZEV**DV&[% MGDX,/@)]&HOKRM5O92+\W9D5Z;.0/
  • _4P/*X3/PT(=J8;2T0W]@*2ZOE5:3V+NIZ/=4&85.]R<2YP\9%IJ M(KUIDL"69$,51!VCR.J5AV57K,/.,46#>H7\*$8+Y*YAD@1^L-TF"77%=!N/ M'&^V*%&<;1?.B9#Y.M-Q.RHLU=7*DL8P.-X5:]=8>MZ9:G8Y 2AF5^78[+J8 M_#:9/4SX6E9W\R;OI-=1F%G;?@_2ISP_2;,EE7$ X%F*Y/%Z;^UF.345P_<% M.7';DIG%4IKC&[BE%"+9%-2VD%.8U5*:0^%B*?V8SS<4/<;PY0E?Q>MZ7) CZ/%X2C3#:6USH"F*K/&VV3!1N_]W8#NVI_&^ MMKM1NP)%3NL>E)\$N;\^1J]?7>+$$+]OR;W[94_MW0?@85E!Z=T?'Y9 4Q77 M&2"5RPAR"G,23ALDN\F;N]YD?C])@O#_/*J*V6$PX&N&*DIE8HI,5"E#G8)W MF!FC#A7-JG)]FMJD:7(JSGT74<6Q=;3ELPLNF:.;^"Z MIB$YABX(FVHHS*IKYE"&Z)5C:[HL2E(()C8T 1FR5XXM6=#D;7]I(G =.RAX MSI),:OF>D-U'ST94; .0;NGSCM-04?>U((Y+2O3\%5- MQ71LB_=9UBP2]:9JYGB[JIHIB@51-*O*WVE:HZ+)I]C=Q11-R=4LQ1F4HNGK MNN(*8NUI2V8613/'-W!%T_)DSQ93P\DIS*IHYE"X)RA>!<_X?)[[F1>I3W( M?(LBKTD'W?5FZ R0AVR'MR;4@6EML)WCM:T_'C;YN#-U![ZG^IH@(<)M>-.% MN4>03V-OC0Y0(4/GL\&2T#@=WTGX:N'U$1M>J.:R#ZF\=#F+P@-_ #Y%']7NN: ]^V),1;^&^D<)DAC8 X:^'+C9.@OV\PH,DK M65_XJ^C6DYH.P+%40] L)_1SJP%/GL!.'/XT649JNP#+465+D"2#371G9=81 MM'.PB_&,NXUBY,*DOF9*X3PX; MT25-EWC9BIN.J]H2K093S@U=BW<,%4\N: MZO65ET_R(!(E3T;S#F#9.$? ^ MOF#=%%+/X HFR"/I-5"8;),TU>>@,$HE4U;SZW__3FZRI+^3V7*\FLYG M?)-2[*-"TS?UU'I3A+:?(\L M53$$<;CLB?HL5OT<]L"M^KKG>.6<*4)8QW(*LUKUW9:X>$6[ M$B]-#&/JCE5;&ZIB[S46)K8#R]V+*T&8,$]XMC=8HUE'+P0N(UL9.@/%)Q2>';S;F>JVS]@8F@)(EKGO3.=AME;:.>7W$%1MMU59]X>EMFNF)7-/KM0O]5G4]ASVP-5V190^&NMH]_PMAK]C,Z: 9,7S.X.TAT8$0U"MX^7Y47ZSB.8?B8 4NN MWO=M=N= AF0/)_3NUS"

    =F=Z0S?!MP=-4Q>.=[H/*X>E^>DQ9G"?B:15G= M!^0ME@]C%ZM*Z3LU(*BV/8"ZK9J"&+#/RH=#SK,1A;,)H9$>=>0X+,$]?L4R M*SD4;Z/X&^Y+D03/]8W UCQ/YEU9K/D:[G8\G$J489?OZ$R>^4M6B"*C13(E M+[\8S;'I8A>B3J-,^#DEBFIDFR M0=[-)MXZP)#S.[L=%AAM'+C$P$::923"%X6/@I3F]==]3'S[R @*(JRW7G6G MP]X[D UN'7T>L5 U/%L7Q XGC%B8$V7O]]9'J::!K-'&:^%#:_L=!8]/^-_Q M*XKA(\IH=X-9> N#^#>XWM"LP0+,#OB^[9B"/,"+<^MW(.!NGQC_HSY%7#9% MMXD I"%;$\UXS$7M8J?5;JGS2KW_\0I%1^W4H/ZMEW/[_!, IFK(WI#%D@O2 M:+65=.1'MQW6S^_U#3^"X2KO/"?BNX>0P27!/[[R,RN M[6GN4&T6(A&P4'MA6'6 J>Y=U"QI5GLW+[YITP1U]W(,J*G<"@VWM/LU/2=U M&@^XBJ9"0:(P>^)F/V;60_)P3H4 7X(4KDD(>$:$+.Y_@=(@SD[;[#-*P 1# M;^ ;CJL)DKGGG.N@%3%.>C:L2X3;^>Y\?EE'[PAE2_1^$[M/N$7F(=+:%IZE MFKWT/(!M(*/L?_*)EAA?LO+-"4$]7VNQ=;W/Z@<$MJ3;BB!%*[A=: ST.ND:J5VZ@:3W]9MB_+ MQ".M^?#JF&_2)(4AR2R.;Y_ K6=RJV& +&FR*#X_W19!-[Q\G]74# =TV3%$< MH7O=]XV(6SM<"7(]'%.IX1JH; YDQ8>*(,E*N[&=CJNKK]+)55%[9^]N';,S M>-UJW)'Y0A]RK6+#2M<:N50EHZ''^FN+X M@LC*-12F\V?VR9\WN _"PK.##[H\/2V!XDN/SUJ:9*'A(]#*" MG,*]5@:>ABF*PXP.<$U-_5'1$IBJHLB"5#-D.M#++@,T6#G%.3TRW,?1"XK3 M=_)T3'1(XK^9Y3ZDUF"A]0*^ PW$>S5-S83L$M4Z-W]A?R'N [\Z_\' M4$L#!!0 ( 'F&+%@QA /A*M@ N^#P , 865HN,RQ M/M8JU?I'S= U@_S^Y?'N9/&X$_W\\M&/CH4->VQ:4^S +.B;&N5*K5QKAEY2 MMHFR\B+X_?3)?-[ZGHMRO1J\1W$M"U8W7[R(S29X4_ I?+%6][^R,N2/.IMY MM=5J?7RA) G>^V)K40_6*I7JQ]_O[P;*A$QQ63-L!QL*67P+)OY]_0#TT^!1 M[LD0V2OUC_3C$;:7;X9/M0W/"+[AVV3)ULL3+&-LC]G3PR M1=*%?K#R,":3Y3+I+Z>*.65/5*OUR@GH(8+5J\^.YNCDBG[^9[7R]RE(XN>/ MWM\^_W_E\HVI -<-!UU;!#M$1:,YHNKA'ML.L3 M:]-PX!OE(2ST!"G>;[^<..3%^>C)^<>KSQ^]P4>F.D>V,]>)]T 9Z]J3/YI#%^^K%9F#G*T*;&107X@RYQB V:O:L_^-]^IFCW3\9PBF7S:YS6? MWB%-_>4=7=!-][=W5Y^UETLZ,6)Y/VJJ2@SV([RZY\$?&7@*LP6QN^P80*CY M-2S/PGK74,G+_Y*YO^07YY'*QRV,0TE>KC2!WX[)?JY6RY0!%=!HE;/*V7GE M\\>5(=:/V 9>J)0?MSI^VGDDY*GQ7TY ]5^.3! @;(RQ#BKNBOVS\_#73*D[ MMYJM8/T/@JV.H=X +'9?<[E<:< >LO.( ?Z\(1_@4U.]A;_9NP_Y[]J!H]$% M[CD6_'RV9K1;"RMT)_6'\R7V\@$4)0&JJ@/'5+[WS =L_89U]Q5)VW9_[(W9 M8#NP:VC>!]\&-P^#";8(3%(EBC8%?OYRTNW= KQ.*PLZ!X/O-1GOO6W7F9B6 M]@]1=YP2/QT@3+7B_2^&"75MVWW;9!*?A2]VR<^B[SK4^* &YK$)LGTJB5#E MVIQ.38/- T2G;PT>NLT M8D),[>*BUMQ[+F"PTVV;?O:HV=\!*_0/^(E4([5]K5RMO=+V?_HO^[.M,"/3 M?B0*T9[Q2"?W9#HBUI_,J+H&(\2$G>#&^V-H-0\NQ>9KJ"6_DDHK6$G-7PF; MZ"-Y)H9+[*C)?Q%G\LW,3KX>HGQ]U\E?BS/YU^9.=B;_=NGM)+.2 5%<2W,T M8G\Q+TII=D.0/$]1C',,"#9([$=,*MAD[_&]J0'4/ . M)3MN(?P$JHT##--;S0 F:5B_T_!(TQD+%^2[@>.#;MKN/J;'&ZGRMOEL)U+$ M?#ZNGI"924@ N/;59^I"N[29HP[>AYCW[9(Z/GYY9VO3F4[>^7^;4"?2.PJ^ M SVJVVZ%ON-.>DN_<710_W&8YK_.&'G]^ W3:6_ MCS5B(38LB?207G?_=_7D_OK+5\&?5M\^8T?7X#>P>RR'GIROEE,,OK?\;#%- M=?DH6\%R".^3X/=@D(\KY(BBSBH4/5W7A8\M@RE5K/OZ+F%2^2LF3_34[?VJ MPF O,UU3-,>; U(U^-1SJ0=P[QH*:.4A?O&M:F?> W%HOVCV"7-E74:LY?/' MR-_3W)W[Y;9 Q(9 43P_C(;4#5M4SF%E$?1Q\ M:\-V_^S,Q58^[1_84FG (:1OUBXB,QQAQK/DR%NTTD4L6FG]T49R9S_N'&[X MKK#R<,-WFR]&LO)05K9$.,-(]AW3>ML@7(&[[9'8!%O*I ULIUXE2I2GKJ[<$/L4+(\%2G?5;$G(.5K]_*OQ" 6UH$B;76J&9K-0G+/)#],WVF% M1=O/)=L+N:=+MA=R7Y=L+^3>?FW:3G\\P'J0V9-I%G.KR>F>O5:*)3NS*)UK M]V+)SBSNL6LM:LG.[%C*?M2AX;/0MIP_!PHQ,'S_UK2(@FU_>0ON#MR13?YV MJ;?@&?XC)H=7\AF"!7E\91]%+G$M8W<&U"O:+ ,A:QY(- [2B#F"?R8QDCN, MG,6%D6UY]0-B/6L*L8.<:XNH_6=B#8$^8J(CX ;,4#.>^N-@XOWQ5]-4^Y:_ MH%"<<^L2"@FNZG_QV?@)K.P@-I=\DUT%1PM;[2,'581+B1/> MY;XUDR*3G$OO!"X>WZ2F%)=K4?L;S7-KVQH6EV,;*C;1CY>3S^/FMHYE'=N,4XNIU4\_MJ=NCHK MH,/2=W5OT2IMQBHP][8%T'9:E.CLVA9QD3)7H$U0"FN.^!Q5"UU*Z& M-R'&2:$4G5U5VHZBUA"@DUQHD?ZDXC030ETSZ<\7 BSXM:JM[=Y!A*X@MBVU M6JY6 NIX/PM''7^*NU#'7T&<&Y$@>%G5 F$(Q* %1&'[BA98X62\9[OA1+/4 M-FA@E6KAH7EG8H/=UV1M;.?M)XLPSX68.]2B?;V.C5?-"?=;6-;/>9*-^3L! M;./YK6;93AYYOM_""L5SH(%IY%+0]UQ9H;C>M[0GS,HXTM* M2;?,2.0N9D(^\'&T(WFV ;*S\R_K^"B&_CB> M@R_K^"B(_DC%RLX'(M)SV^5F"Y$0R 8$DM$"0;_3Q0[;-6:N8]^19Z+7,PN+ MQ6J^S!<__@IOQ)8RF;.UK38LW;#Z?($HF;/*)A#5"@VBF@11'""J%AI$50FB MO8S:; $D]SP)!+MMVR2X5KB+W2$LQY8BS99TK6/;7I7B\%)C$-L4K!G1H.,= M4"1T"@"=9 \V.T.G)J&3NOF;$ZTCH9,]Z BB=:H2.JF?EW*B=21TL@>=]+1. MWF&1'2&6G$A7)E8YL=6=^&WP*NU^GAFVB>Y17$?:C$')AXGCK\7.[JV6]8O( M&$MDV+)08Y+5I M*/ -BU5S?=3L[U_FP_DL; .N+"-.GAR]1L\&!B[.Y0KKV& _$H5HSWBDK^3+ M7[NV8TZ)U!>G=_7+/?M.GD[SEX14R(M"FDW$FGQ(>TFOTBK ME:LUJ=.$05K2.LUG=S9UVA>)M/B0]B7/.HWOHQTVM.TH<%UG'5QA&SRVT.?N M>+I.7',=K=GWMH.;Q%,&\71:-J2/C*6G[*6O[ MG<23V'C*VGXG\20\GC*UW[4EGMZ$I[;<[R2>,H2GX_J?6M+_E+/S76WW_2YN M_700GJ3])+;]=$0\'62/R_U.^/WN6/;XVR-[F0>72)$]:5GE#%PYUUQ'M:S> MFOTB\ZPRE&=UQ.R7MR,M\VI,)*0EK],RC+3,'QU%0EKRY\AC9O1QY\@ :8_$ MP9I!U ZV#,UX$OQ&*VN21K_3^=N%>5V;TYEIP*^O;JU'+RJG1[JUK 6IN M3LOG]YT)L2BU+#*A-'TF74,!U.>"VSNOLW 4%6-ZCVL/V!-[1K7>*8Y6,\' MTS>MK6B,!B)-36/@F,KW7#"76T^N&+J\^BE(5^O5NY07,=]OO0A?DI;F1@RW M71/ED+0:$K0:TN2CW/PSQ2^YAXO"%WE %KW4GCSG'F?'2IB/=&V MY7@C_M(+$#\,D^60W);3VI83YJ/M8402T+VW(N M'RQ3=16G;_DS755V*]//U6%EAPPJR3OAM=+:6U22=[OI3)&ZCTG>97^_\TF3 M5=ZM3+]H^YWD77;W.\F[[.YWDG>"[G>K5Q@%./$F>D]3E&-]LD6-:@)RDDWJ ML$6ZAN:M\-O@9K&L*<&V:Y$KS3;/:M7S2_@L^'KP4? [_3[WKL$$6\3F7N=+ M'OMPK_?!^ ^OWJEJST"Q\),]=THL[)C6@:O@OD__>$,,B/]Y'-[^KS+&**E9GSB?TZQE-- MGU\ZL-G8R" _$&R5V/@TQ=:39EQ69B\G5__S4[59^?3YXRSTJMM^;U@>=/_; MN43L78C]X;9]W[W[XQ*]?ANZ;S]^[?8N$;SO$Z*B4\:Z]F1U\[Z+I_?]\=#+K] MWN>/_A?3F=Y_L#W1C"?'-$KHYO3Z%-4JC;-62I-(DP^?[1DV(G!S,7-.KF[[ MC_?H,XB#81I,XC4%&9BJ:I5HES>FXE+S@G;].$&^JGPDXTTF],E5M5+^-Q.Q MY3NO$! 6IG&5/GU7)'MD6B#T99B* KR_K'QZ)432ECV M@[=-B/8T<2ZK#2I:(=GVWG+V\Z=G8CF:@G5_>HXYHWQYJQ!O9=>_73#FB*7/ M'\G,M)R=.8?&IC7%SB\G&E 4]N?+D6GJ(ZSK)BR=:8_6^5GSTVO>,C(SG;4D M04(K]\'S[V_MQV'G\>X/]-AYZ#\.T<.WQ\&W=F^(AGVJ:8:@3E"UCOJ/J-IX MKWY _5LT_+435D*! EH TH>,_UO[>DB_5&W5SUX_L5BMK]77H2%6;>V3-_YW M'F$1Z6#DUK20,R'H[T 8D&?Y(3B_$-6?U39)>F!?Z7@GGH/DZ%*E47#XWD3% M\SD!Z\@XN>J9S][!L%XI(?I%7J0V86ZM51"3&OW+M<'TGJ>\3YE6LIM#Y*H* MN#L,+6S8+"TFB>WA3(#M8?C8[@VZ;!.0^X/<'S;O#\Y"'((-8@Q?\F;UY^K_ MD&.BU;]XCX7_NZK#\JZS:?*69E//)KK50)&"S--M;:T.ZC 7#GW4>W+W0T6E M4BG7:A>M]5NEF">*T+MT,G9\*);ISY?8=>5?^*G" M_H>J83_#<8^>6T#R2)XTFPJGTX-/=@=*N_/K(QIV!D,T^&,P[-P/(@##GT3W MU'5Q$^Q]YP4K#J,!,L=HN7:$;328$85Z0E6D&4AS;'0]82;MAY153)RR$*BK MG<7AHI&L./A666.K69:8K&P6!YII;H&YQGJQLM3::]KUU9I?F^IA)Q-FPMGT M33/+?*;CT:/)-4P/'C(TO/.9Y+5I6ZW\',=&O7Z8S#-SB%^Z?GQ#80S==S=L MG95K9[6SRL79?B?'[8*2,L'>,R@CL,78Y0KT_UQ+LU5-8?88:,(5V+/'K"=L M:/^PWS\D:_H>CRC=T\?3P2GJ3&>Z.0>JK((%]Q M^]BW%G-B'3HDD_*^]0 ;C68H>UASU^W-]GX*PI]MJ#V8L,7K_]5F>]D)L,$T MZJVL[RT^">@^\F ![K09UE'GA2BNHST3U!^#1B5V;G<18#JB7$_[G' <5\3* M69,]J!+%-QPN70,.)CJH6R#+6KFA>K%M$;R?I#2JE==R\F&]5KPS 0 /$]/8 MVP'2A!];L 7L=)Q-#E3+H^G__'11JYY_LF$[TLF,+LEW_Y2HU::[])2&*#U# M(,QB0'T)YP%H#DMS-/B>Q()9:-7:^]$'JG>HA['S MHDRP\4106W$N!0UM^)][QVY^B_,_'IF.8TXC/H\G,N+OM,/^0]0VB_R/[SJW MP_6'OGH]]4/?4'-TYK8A6)D@1<>VO<&.R-SJ+,PD>3"?CDS]_>IV&<_:4EY1 MS_>R,7:10#A!:G],-/C+4K0//95D@PQK]RA?SD8AVX-'OMP4V;STCSBT&@>VQ])TX>;>3E(%U#IK4:,';)T1\1^ =R[L MGCKUT7DQ==_Z"1E-8/_0O]*@.5+AC["KT"=F%E$(VV.J-<1296ST'EX#/$6V M"QK9GI@TWA'$9YT)=EY/^0=>G1R=F?=E?^H?2@@;*GI?\Y8V F3 YZ._8.+T M>?8H?(G.PG\/S96PV238)+'MH%8%J7ANGV[)'O(.X->N9<$KO"0+J@(<[+CV M[BK@#YI'O8K9(-#,TO!0ST2+E(NTC$I1($IY".R;:HX##(<#B$)//U27Z7-$ M0*_-X1 "F,$*.^K?8 =[$>I7"%Z^(VS&/[KPY%FEX8C>4V*< M?ZK5:Z?^ \Y$LV'&>$9#,/O3 ZT;8 0]H4U\PT>UPQ/ZL#H+->B3LZG@IZMVT#"R7/Q>N+]ZPIQOG2P7N_%OX(M/&1S^>+:FD'LW0W+-]_RR$5>Z]JP MC.?CC$/F.^MVO-2!$LSD*YO(M3>/]/*^C_]!@;!B7+<&DRNE9LYG:-;"A M:%BG^SI-%Z,/T^O0*K94&]&\+TU=%\*HO\>1(8S3@AOZ]@0,MH#3Z#VPCUG: M7GKF9AL6SFEPD-IV5AO0 5(2TL6YK9D+=@Z!:03]@/^LN&ANV=$70,WY:);% M1[T+]7W78?(!@K)*^E<5#U:N>!GN5#4=E2@:;,@GB%XY9]_Q[^@C_Q/[EY-N M[_;DJG91NCAKE6KU\X ;P?RN/.^X'6 G(MBZXF(WE[.EB<+FV%OU#5'\ZV55 M[WK9L&P#YHCQQD G"P["WV>CB;4DVQX1IF'G M]V&YV[OI](8>0T[V-S? 3*8\L@K^7\=@AUB7"^@\\M]_M8^+EHT2!ES/B M,P4[&&3>'U'5[)F.YY>@TUG:""M! 3('*J;]Y:Y#[WY=PQR #8-4$C".?7DQ MQ02[US'OBZ-E<3^ I.Q_323Q<\4"O1A-++K/_#2KGEP]M!^'J(MNN[UV[[K; MOD.PU_0?[]M#5EH#IY4WN9XXGT98^0YVLFNH9<743>OR)T4A9#Q.B6H+:FE MK:Y#IJAZ"MLI&-@&M97A)X8Z9K3?+@SG115S&[W_9F!7U>#S#QY!#SE+QH15 MYDJ$%]VS8UF*ZYWFY#&ZMH&UN>VQJRA M)4,HQ[RC$'WFD=BN[K!'^C/B9?O9PG"GVLJ68-1]]M1/T;_I>5 #\-/P&:4T M_$$/?J>,TDU:9\E&[1%8H7X0'3UJ]G=AJ%_+F'"<^=0_8VH)E+5N,\H_6*9" M5)?5U9*D?=,^60OVR2[J#W_M/,I-X!USY/B]9\))R)1K?K-)M[% M$ ;J'-#_2(BN&TNCX8:,,3/'OLVHCXH8FFF%Z)Y]&A\)XV?&TC2XUPP"V!X3 M@'3(#LL^;8^$WX9/VL:I?P6Y:WB^73A)9)^H1P)LTR=J\Q1U7B;:2',$ F@C M4P"U-6-IR@ZZ7WOMX;?'SH"[BRD*=9LBQ'VSZMY_Y0H=Z0#"<#X_Y_Z/*+0A'O+#7-LH]*VH8YG4!L.24CZE3"OQRTCI9H_WCBYLL_U\S-L=0(LIQ M[1U0$7-EUWVJAP>=&QH)'/3ONC=M6N_\2_L.Y+B#!K]V.L/\K'8E^/&6->6J M1.6/"5"$"3NY1(;YP\*QU*B,&# P+52J&4Z6!*TM0.*ICQ87+?5MODCFI@JA M<-7C2$=K^E25;-R?C?=X3A.+1.#@<2/Q89*%%&770,[$=&ULJ':)WB\GL-A75-Y#YH7UST^U]#:_S4W&4CN2UT.HIECK7 MT;JI/1A$VZ1<"<^?4Y0''Y[C\?8],5F!3'_IDNAI+UT8F?2O8"-@ W'L2Q%H M4V!82*(+)8L'1;*2$%)L3UBV@$)_H'48P(CWO(W')U_$R-$66_1\_K4.?WL? M1(/8S^O;-M1M.];4/^OUBQ/_ZDW0Y)82MFVH])_.DJIMYQI;%KW2]AL]*ZV[ M@<,W65IW X=V\0Q=ORG7876P$IA(_>2J42DUJF?<'1P!V2H!]1I0K3@!Y;4C M?CN@ZI52I2$>H&(.@9@>T$$X9#G93I!G/Q':F NO8H]D%\8O16>6U&#%. M#($1W24?=E?#_Q#+5$$"=Q68LG"R4M"1DT=:]0U(BTL_5\]+%XVZ<)@3WPQN M>]4#:"DRA<#>.M))";[F"(+>/,M-[;76S4N-R$0FV=9.7LM*P'YY\FKY7J]=%'E MBX@(0/;!Q$<\T=?5%JU2I5X0#6Q:L?W,&@\R9U4_S1V8T MT"&=YZG(3(,+;P;L>-"QX8#1TPDXDH*SIE2]D.I:D)&3AQX7[SP >K'Y;DKG MC99PT!/:KF;*VZ\H:#PAG6";(,;ULCDNTP+MGI4M-7DZXL2%01>\N:.L>:0O MZ(^_P4F6LB7IQ,%2ZT*ZW049.7GL<>'00[ 7F]>D5*V)%XH7WQ#W:CO1GFLB MNTFDMY))'!=4#3DG>Z:AI.-GKV\/=XG@GY2X%0:W7(!V']S&%ZF5?O58_>H9 MV"CJ,&75=$;W?-O):9NM3U^8$> M%Q_="+VX5'7KHE0]VV[-BX \H;7U2I&#NV[[2_>N.^QV!JC=NT]N/G5_[ M=X"B@=]J G7^_:T[_$.T0@C"'J+SMMPBCEPD%HNOK(+J#[J&1YK.JJ.+4@)" M0C3WA)8L%DX+'?=>WPS/Z:T>$:B6G2($32Z](*#G@T?.=!+!SDK5"_$B D*- M+"J N"2!O0 4VRFT5*LTA0.0^#8<,,MRR?)FAZ#@%V9SCT%@HFY#4Q[<+K9]N%382D& E<88#+I03L!=SX M[FY@"CIR\H#C M+DRG[JRI-DOUK-=,$N+BW8JW1C>-)P'-_3S*T#D7X5QS8D[M4D:S5*F*%ZLJ MZ,C)XX\+D!Z*OQBOWS6E_ST.MXU4X^F)$1(=F/!%# ::A]SW3(:CY01 ("RL\ M>5MN$4?BX34@HY<)!8+;21YV6 / M5A"4LAU3^5Y"_UIK!;M8_,$5IARWC;N_VY*IR6N%/ M7FB&+?1,Q[Y$;=>9F!:01;U$ZQ<3U0PFM!AO\.6KWKXD?CD56G>K5*GP/060 MS1X6 L126Q2!T)+%PFT(:5NG=3;EKFW3^]RL09_KV [\ *=F2A1#U-(8PF#U M[9ZFBXAN'>%M:<_M]1]BF2JV)[LZF\K"^9D*.G+R0(OHS;$KT")?5;BL$^^;C*]@HO>M@8,=HC(6/Q"+&:;BF^QG%>[\$5I72O;Z M>4/:Z]*8*_3(16)QANWU]6J4BYMS:M1[9T(JM'91NJCQUQ=\%'IE=MX!&G;]#MUB @WKF,YF.B 4L*B$Z)EO5/9ZC>M7[0PG!HS," MWWPF^EP$J(NL4V(P=[GL[Q!PXO-9;@CC7XAW!ZZ@(R[O>3& S"C:UQ[K$@ZL8]N M[@*F6Q5TY.1QQ_D4]L-=;+?D:^>E\W/Q+O4*?0 *"M"Z4U>G#BUDL@L[BCF= M661"#!N,:Z2;MDS&CDN.WJ\7)+YOU9(Q[%;#=9@M70.X1.Z -SWB],=#_)*, M8H?)PT^K%>?VN'^Y3\WL#P+P.=<(X]M3Q8*P-ZKP"(0U]K"^#T!8!BSID$Y6 MR5A3-,':@Q?J^MD&D>+<:8_$P9I!U ZV#,UXLD./JON9(AOO)Z6 M4?4MT>FADRM>=3 Z8]?QC5JIOD._B+C1*;0Y'BXO:(>2W-_YZ>UR"Q#O!G*+ MRS=B3DJ?-4C,B%41$ MW(I^8O!8KQDJ,;QI15RH9R%4>^W=*:&%-!?MH5M<"#5T";IMJ*EO'+)GN01E MBPNU'@C*HG8S_^B,3'5._Z6]]D*#W/9[P_*@^]\.;%ET%,3^<-N^[][]<8E> MCX/NVX]?N[U+JM$_H1 '_W)M1QO//P7#(S9^>\:/@4_I$82AN=@G)%I 4^92-'DN J3&28]W""^%%8J M/X.F 'TVPRK-)6.97Y]]88DTI4["NG R&TVLY7PV&V$G&[3T2 <#+61#HV'G M]V&YV[OI](8>(:+H4-]IR"4CWLWP$RF/+(*_E_$8WG&)L/X#S^UW5[M8D?[; MR/3J,T83BRK)GT#Q@C0R)H"<75.="U#X_!'#B^B#.ZB@M^NYS2 (44XG8R=! M4)@ZC&K\FB+NVZ3R5DT+E!\-.@?]>]:0_AE\$0_KD'T1F@_BWJ/W0>V\,N/)"? MA;__%E*U^RXJ4;LW;:_$1/7,T06C:I')ZD>;IJ2+I(ND2V*>K?PJM/C1M,^W]:@CF(D'W0)R)C3IPI%!7;D]$[&%%E+U^1 MBBJCO*Y)7A>&UU*NB\-K8>7Z,-LC@1Q>OT.-*#5)7\48MQQ&\QB^E4271)=$ MET0_7F;8<1**'RQ3=17!+I DDC$37U[,696[U^KOY[>P2AJ,I=_XC^9,KET; MWDVLSHNBNS2FV;9M O^GFZ#>]5)E6N5)US&4NUY_^&'_ZK+IGWIPX,KQ: MI8OZN7"78H4:650 *#87]#K%C&946L^:(EJ#0'FK MB(ELQ(W3Y*UF'Q'Q&2T@L?(^G43^/LBOXG[$.ZY M>Z1IG!+BQGVM=-',1B=GB7QAD,]=YTSC>!*_K7/1R@;RA?:TAWJ86QX*Q!)9 M820S1@'DV^DE>-B(8Y.IEL[JLN>Y(",G#\\T'?CQN.HOJN(YJ@HZZ-T=I'Q\M-':LIF._2"NR56NJ2PHI6W MY19Q9,GBW(\L69S[D8O$8J&=;UE(6Z5S MF7(HRLC)HY%K?+4=C6EFP#9+9RV)1D%&3AZ-$9T+=]"-J:7#5ENE9D3O6 %8 M4\21DX=C1,?W'91C:LFQU5JI4A4O)":TU\RS=F46K,"9(1%-MM]B(,>=\W'> M?&/CE2+H9HGH,**YO.ZW&=EQ(_ILAP.?1+1$]!+1=2Y?^VV&>OQY>6>M;/1& MD9@6!M-<+O;;K/WX,5VY>&-#0A$/ $?,-556@^=2*(43RL8AIE,R^:?52NGL M/!OR)^$K"GP/L9.2R4]MEEH5>2M3HG+A.]>RC<> M@SX.VZ%>JF3D3KS0SGMFNW^U3-M&,\L<:S)=)?%,\CIW#X?1_X&1/UWSN]78 M?KV^4,S/,^RX^S7;8)>,V7Q>:@D882WHR,FCCC-X=U!V29B[H.SJ+0D[,49. M'G:$F5HKU5LUX6 GOCNY/R,6=FA_6O(RHUUI;7D1JTCY_04=6;(X M]R-+%N=^Y"*Q6&COEI>:^DAL@BUE@K"A@J7V3'1S1MO8BT ^D7'Z=C/\+*(8 MG\>+MJ'>+#G1\6R\-)U?I=:Y>'9Y04=.'H<1I?'VQ6%"18Y*C8;TA@DR8(",GCT/NCNI!^C !AUF]5#D3#X="^\N"^U>ZKAE/ M)?1$#&)AG1F[6)UJAF8[U)7V++,QQ50O$U;)V#(-TNMFKQ[ M*&&]%ZRY)(VW:>L$S@6-TEDE&]0M8(GA/!#>X&UN[(3@9LY\Z.N6U%XG@O1#,A3%WUL$)6/C5:JG> MD!"6$-X+PEP$=&]9\UU#,*4%C>"RPZ4U#,%M> M&%F+4Z2X8.Y"I#R6W)EVRK9Y4U[G$F3DY-''A7!W15\R=G6]='8ANR$),G+R MZ./"EGOHO@1LXE:IL4,EIT)A(,_HXZ*+>^B^1))66F?BH4]H1S2[Y-4%_EC$ M=I#&N%:"K\BD[.2EAPMB!GSPA,<_#_9(FL4(FK(1K2@C)P] +MRX%P 32@=I MBJ?!"SIR\@#D8FK[:L DW+JE6E7>2!%DY,0AV.2"8OOJP"3LV(OM%;6$MF*/ M4ZK F1#+-V'1>S^7XH. QJR,A##)XX-YE($]TS!7#Y%'N)0H4RLDEB.P_'X] MF/FPWOY@CM6@AGG#3RMQB;>!.II*T=S]( $JF++E8V0'*=LD;CQ*72NAO ^4 M^8#;0:HVB2IC.X M<1'&96B'"M,US%TS7)"Z_B+GY0MCF_?_R4"B-_JQ[]O/W[M]BY1V" _H]]&P\[OPW*W M=]/I#2^91_XUHQ,X!?1(D'\NM)C68;ZJZ8YT66D1\LVS])1F(Q1UCD@IT[Z<6$7.([W(20 M8,PQ&+F8Y4Z*,1G'=G7_-*UC8/%09W<^I4*8@^1"*O*VW"*.+%F<^Y$EBW,_ M6+,[]R$5BL=#Y=-[MF2_8 MUA01:!4Q5 MTYHLQ)1)(''ID;L#Z2UAK?5 VL%U*P [)9!> >F"2U'<2R,=')-:#Z3Z]GY6 M K!3 NDUD+@TP;TTTL'QI T:*>.W)(YS)_I&TUV'J!+\>X&?2R]\#7Z?K&E: M=MMO*PC 4 FEUU#BDN;V@5)"MIV\_)M)*'$Y;WMJI22L._$V9:%&%A5*7,K: MGEHI"?M.O 840GOM6 C0HR9R;:(BS5B& 1&,JKBZ=PU:Q@2+Y&HNZ,B2Q;D? M6;(X]R,7B<49\!Z)'!,4!I0QF.->7DJG91NJC(L*(@(R>/12ZF_28L'NS!BL;B>:EQ+FM^"3)R\ECD MPN)OU8N'N<#6Z<5=;GX6"A$YQF*+BZR_52\>YD-;IQ?/=N@_(;2%>YRL-['C MHWF2'RZA8(W\^!SQ<-YW'=O!AJH93VF8NJW2>5.:%X*,G#PDN3!_')",V>)M ME2H7XFGV@HZ&Y4'WOYU+Q-Z%V!]NV_?=NS\NT>NWH5 - MMT\HA 6%T/K70(D!(0@KBCF=86,.+/3&[)D.O, MW6H&-A0-ZVC@P!^F\#8;O7<-[*I ;O5#LG,.T851.AAG9%HJL1BS8267%49H M1G)N$!\?E/&%Y$'TQ%.#:#($0YG8R=!$%A MZC"J\<:P^7C'!R2+24?+8=RS2>KMJ=7Q\!3X,A&OPQ&';N!Y\_ M^I_LS'11EW;=IQ(RZ-P@^&G0O^O>M(?PRV (_]R#Z Q0_Q8^NG]X[/P*SW5_ MZZ!N#W[OY(<$[[^%E.Z^BTK40$K;+IJHGEVT8%0M,JI\M&E*NDBZ2+HDYF?. MKT*+-AD/J;8=[!Y+WC;3WJ^&8#@2= _$F=BH X<+%?7,9T+/E:A>*47L8464 MO5RQ?*"]B,WP'<]LT;2..1,3-?&AFI'F78Y1VDM;912A^E&,D>6 M])<:*:.\KDE>%X;74JZ+PVMAY5KH#!FA.ZP(?L6R4>62"\3NEB( )R6&7F/H M@(X[Q^QR(@ G)89>8^B 3CE'[4XB "LEB%Z#Z( 6-\?L*B)THO-1:H7WG0FQ M$,WHL,B$&+;V3(+:X>]U8.&'$KS$H>%Z![_(@@%%NH=:T)$EBW,_LF1Q[D ?XAEJMB>[+K9E/=N,5Z5[>[SC__U M6U:-*T22J@#$>GC@]ZGM]=@WBL,!6Y>$MC"JG4LY2ENU)Y$UL-W#(Q5\ :5@ M@X+GLJ;25O!)'D325_!"AQU8+8; M+K-LG9Q1D4HW+- L55K[2TI=;ASY02>7LG8(.I/+IMU>0$NB,\?HW#DLNT5W M)I2G>['=W2GAF6-X[AQKW:(\$\D KC6S@4Y9_DV6?]NGE$ LY=\:>Y9$D>7? MTBG_1NW1W0[$F2O_)M;2=BK_-OBU_=CYM7\'\C9XASK__M8=_I$?$KRI_-O* MHF2MID2+9C5E,3%)%TF7..BR,ZS+72FS3&1>6G4--# ,97O(@!+ #YG43$\8$TM:X;D8&8YN!)#EGS,+!]# M?BW)Q!V]=XIFT[W$MVYX;=W7"-4-,>_SKLEUI+':QZ2Z)+HDNB2Z/D961)=$EW6KEZ89U^P MC@V%V"74=I][:MDO4U;NE;;L_ M]JX^7Y3KU3_]+_SIQ?=9>/^>F=*[W33UQEE_V;1V(7L6I=^S*!Y0<5?L&3K\ M8)=W9DT26ALO,=:M:W%QD1 M@-5%!=G:"F87=:Y ^*$H6R9IK"O@\%;$\17*JF=[E++/:,%)\2'$%>8^$$*/ MQ,&:0=0.M@S->++CQ\L9U50U"9DC;VUG7&'H_1 3PZ9U42E5S\1K,WMHY'EBS._K"G<)\&)+ M[+]?L$U4ZGPCALVZG.U:"CWI^-:Y[-4GR,C)XY;K#K,&M[]AW27IP#;^9E^% MPDR>TQ;N$ M'"5D,SIR\I"-SOM*!+(YM0DRT(UZX1113-OA/"/F>$PHHP7!?/:EK2S 6HHX MGL)U=) S-A([[?(;; M>8&RV[*'P/4 ;"4-0'E<+]3(B2.V44D8L?)HGN.1D]_2&]5D\)FAS3H#"0=> MT!A99.9:RH3Z1BAYD8-?T _-F=",<"K["#C[3&P'?J8'C(*:A0+EB;&FB3SCDX.]OCIKG4H^+H42[RFAXDI5NB M4",GCV4N))L:EJ7#(L<1\%TJ("X( -_LB M(Q,"LLV_]1J/JSW35O]R;8>F2R/'(R0.F;8MG1%"P2'/0.1R#MX&Q#T\!Q*4&1TY>5!R60=O!*4\ MWQ=JY.0!RJ42O V@<95AR>0('P3*WN,M RL"M:<&L M#*2XED4,98X<"QNVSAPE""]\+((@VG_AE@;" @A9#"V.UY[)([L*%TFO%1$% MZW4PE[FPSN2D*MD7]VM?VH=4V+TWM@UUN!3]I7<5-'I_/,0OXKL(I%Q(N0C) M!9?U((A<'-5C(65$RLA21LZY5 E19"3Y#F[+F\]2:*30[",T7*Z%($)SG P+ M*1Q2.$+"P>5I'%L '6=WUG3 &=TI89>^K;% M],U][B4XK%MWMX "T)N^UB2B8 M5=]>27XC?#-:_26?4(SN8K _%.-.<.%Q=U9]N^:4T!-GR^926?9#7@R;\<5Y MJ=IXHS)+T]OPT1F9ZIS^BX$9<0WB_1>QL=B+@[>.3 M8P=8&$GU9";-7)V-O M'#8B>CV*3YY*Y6=@(4!KAE5:M>27DPKU@7BKB/2=,!=)HJ9,VHZ$B>K)EF+J M,"HHM5IDJ]NC35/21=(E+W39NBLI!+83:V6BM_W>L#SH_K=SB=A,$?O#;?N^ M>_?'):?8T'W[\6NW=XE>>5L_HKD)T.>M;_XW&I*C(;);P%H\OZ M6(?LT45:%=E0,%[ %C'WG-0SF64C M#6B6-4-R,+,<7 GO23YFEH\A=Y#D8F:YR'+F_'#5.\G'S/)Q:#IBG'^WV,/! MWZ/I&'/N<$"<]UT#.1/3M;&AVA]$H!(/NNBH]2'9]@$VPC@^AE:Q-Q(Z,ON] M,"HF5]QN3TV7UGJ0W"X"M_UD4LGN8K#;2\!$[W73WK)U2J;GANDW9*PIFE3I M!6&WEZOC^Q4<=0B1IU,W'3$>/HUP&W!%+R> 5# M$ET271)=$CT_(TNB2Z++.A$+XVQ9)^(>SU&]*F*)B.,#=N]PQO;2+5S!O!W* M/50:Y7HUA7(/C;IXU7V%&CG."WJ$8#51079VKOH%Q=\^:,#47:4L@B-/71;1N^ABP^APXL4 MK4(H^7(&C5JI7ME#4TG()+.U'5XYB"$FCGJ'C5*S4A%NSSJTET;.=T]A#J!Y M6VX11Y8LSOW(DL6Y'UFR./ZB;:7/BT4C2J,E"-O'0G) -@PLZ10?IZMVSQ6<]SRQX"UP.PGC0 Y8&]4",GC]BSA!$K#^%J?R2-W$QL M^AE($6 '@?*(^2^4$!\$@6[VA48F!62;?^MU'E>)IJW^Y=H.4WM#<\V1A6F] MT6NM]TC^=C4;2#,@UK.F$"_[ZI$HYI/!WL(2L>197RB$Y1G;7(D\%R%'_$ +]T-A1HY>W@,)RHR.G#PHN=R#-X)2GO +-7+B *UR"05O VCXA=Y6!<* M5WE&-)<]( BBY:D__R,GCVXN54 4="??T6P!]SVN'18!='F&.Y')4M=')(13-. MKKY@G58LM4NH9SXS)8/JE1*BS!):)NNP -5T1SH15BBY*<921>N;>']P)E[/ C1IXVQ[JJL$:^;!NKZ$ZWETG^,# MT)J\)X4O=EW=H=KU1OAFM&YK/J$8W;]X?RC&?2F%Q]U9]>V:4T)/G"T[NNWP MSLB+83.^."]5&V]49FEZ&SXZ(U.=TW\Q,".N01 ;9?&NVWYO6!YT_]NY1.QE MB/WAMGW?O?OC$KU^';IO/W[M]BZIU^$3"O%?(< X"T@Q( 1AA1:UQ,8<-(,W M:,]TX#V.B:Y-0X7]BJCT)^;GHKL9NM4,;"@:UM' @3\P'Q1Z[QK8!?N,J!]> M33H& C":!N\;F1:@D+$5IGQ986]D[^8HX".A4OD9T I2-,,J+:WZRTF%NGL\ MAD6ZB4["$CB9C2;6DNV;'4PG&W3#2,?*]Y#3$ T[OP_+W=Y-IS?TN!3%I.9. M0RX)_FZ>AY9!'\O8S'\(Y+A/4?>&Z_N]K%0^:_C4RO/F,TL:B@_@3"?W(U M9$PPQQ0,CI?U@^%%],&DQ6 '$(0HIY.QDQ@H$C7ETW:D351O;U%,'4:%3;W& M)Q(F>WA)_;0D22Q)G-T5BTSBK6;G8D>+PZ )AU.BC9O/MF.9QM-5Z" .UH3_ M1\E&*2F2Q(F$6*69E.$52Q(7FL3"[N&+T(_DZ26%I@Q5%[ M7DX-8A$4J?TRRT::3:-'Y"8=<9PJP M$<;N,32)O9'0D9>2"J-6TB<-O/\9?L+@:[O;QX]%XW[2U; MIV1Z;IA^0\::HDF57A!V>^GCHG+[L!-% C?$%V>MB44(NH_IWV\2$R1;N5)HDNB2Z)+HDNBYV?DHA)=Z++(KPKXM-TGUW90O1K8 M8LJK<:PA49%VKD."]#QPDJ MKK3FCE>>8X+6YA(ZY^)5KA=J9$%!5><*5AX(JL1+WU3/2\WF]CI- K"ZJ"!; M6R>D5><*1AZ*LJ.4K&E4=H==1FN$B \AKL/B@1!*OM1,LUG::SN4D$EF:^/K M8>Z%F!@VK4:UU*B*MV<=6GPVY[NG, ?0O"VWB"-+%N=^9,GBW(\L69S[D26+ MX4 M#[PQG).C2_-[L:H;U]*,IP=B::;JQ9;8?[]@FZC4^48,FS7-C>SP @?I5M#A MI99.JXEZO27<<;N@(R)O@U@H+.49Q='= Y)%\7$Z=Q8*.'F& M;'3V5R*0C<4FV-Z'4VC72-H]-SW7B'>\11:9N98RH?RCK$ .?D$_-&="8]=4 M=2! !FVN"C]3)PI\Q;$TA9:/#APIFB,])\DGI9SQV7.,@=3.OC6M(7[YSY)K M\ C!R278/>,Y:WSP29CL/S2,!4EHU&1TY!0W*I?6E M!MJDW2+U/2P@J4;%4:-:EB6WHX8_D;U>S@30#8CUK"O$ N/0V%&CEYS'/A:>$P+ST2.1XY<8 WN%"O* #/ MJ762@6R-'G&0QC9+0:0@^_(G_1O9YM]Z_);FG6G;TADA%!SR#$0N MX^!M0-S#H%PFP=L &G<5MF4,MG1>D_5M M!1DY>5AR:0('P3*WN,M RL"M:<&L#*2XED4,98X<"QNVSAPE""]\+((@.ONR M)$_8V>;?>EW(91"L,_VH:O3%[MJ7NB$5.N^-;4,=+D5PZ>4$S=H?#_&+/*H+ MA:L\(YK+&Q $T?+,G_^1DTMU.)>;\&TAR5_!-J":NV]TEZ(LO@M$ EP" M/ 1P+N\SWSF6D.5*^(V&W^%8SKL #5 M=$@O*UD-7EUK$.T7$V:$T) MG8W<.B=;,HW6M40UP/;P1 MM@!NCVIC>UKU1OSFP_&1%RQ&-YO;'XMQ7R")..?52HVS[??B)?:$PMX&Z$6W MB]L9>C'LQXUFJ=G,AO'(? X?G9&ISNF_&+@1UR#A_R(V(GM]\.Z1:0%#V I! ML"\K82[K9.R-QL9%K\?RB52I_ R,!(3-L$IK@_YR4J'^$&\MD7X4YBY)U*9) MVZDP43T14TP=1@7=5HML?'NT:4JZ2+KDA2Y;-R>%P*9BK4STMM\;E@?=_W8N M$9LI8G^X;=]W[_ZXY!0;NF\_?NWV+M$KS^LG%#F*[5BF\705LM=!S_I_/"Y5 M16:CA+=@=%D?]Y#[M02HI$MF]Z6%VU/N2IEE(O, 2OY)Y90UNDBK(AL*Q@O= M(N:DDWHFLVRDD,\^\6>SCX>S0=8\XC#HCSOFL@9V*Z-C94^X,(5.)!%QV\/B0Q/L!&&,?' MT"KV1D)'9K471L7DBMOMJ>G2DHJ2VT7@MI]5*ME=#'9[B9CH/2U!LGGKE$S/ M#=-OR%A3-*G2"\)N+UM15&X?=J)(X%KBPKK57M ]?']BHXZA$C7JEN*F(\;1 MKP9N":3D\2Z&)+HDNB2Z)'I^1I9$ET07LV3FD6M&W.,YJE=%+!=Q?,#N'<[8 M6DOHG+^]O+WR0Z51KE=3J/Q0K56$JSXKU,AQWKN+$U2'WS&.!5I;"C:(5])8 MJ)%%!=7AEX57095\G87S4O-B>V$H 5A=5)"M+SIV?OB]X%7>AU=? AQK;<.A% *50V:I8MF74+FV%L;U]IJ/\3$48R@4FI=;*]O(?3!-=3K M(>>[IS 'T+PMMX@C2Q;G?F3)XMR/+%F<^Y$EBW,_R<[,6J;EQ+ M,YX>B*69JA=;8O_]@FVB4N<;,6S637%=EX#F@>VZ#HUOG3=E'$*0D9,'+M?N M=@UP?\.Z2XZ+VXUNHNWE*@L%G!Q#]H)O"9$\9!,/S97VBI 4 4AYAG!TWXB$ M(7Q8W$_V%,_HR,FC.+J_1+(H/DX#N$(!)\^0C<[_2@2R\5@%U>TMIH1VCQRG MS;UWQ$46F;F6,J$ YZ^3Y2)@!/30%P^3F;42B,),HY-+U4D-A\NZ.6K5 ":'90^5Z4'(9@>F! M4CHP"C5R\ECFHG:I85FZ,7(\<@JF 1>V2QJY,6WZ>UP^REL'>M\S02W[\HBY M))00'P2!;O:%IBS 6HHX PG* MC(Z\ LU5ARV0(' MP3*WN,M VL"M:<&L#*2XED4,98X<"QNVSEPE""^\+((@.ONR)$_8V>;?.EU8 MK52X-()UMA_5C;[<7?MB-Z12Y[VR;:C#I0PN'9V@6OOC(7Z19W6A@)5K2'/9 M X) 6I[Z\S]RXLFN@&\N64 4?!^CE/K9'@:TO#@CD);FPO^"H%@&_7,\^WU[2];6,U>76L0[0<79.30>R,-"K.O+H#6CNQ<=@-9C.#VJ MC>TE4#?"-Q]NCWQ \3RZ*]'^4(S[SD?$$:]6:NQ0F5Q"3RCHK4=>=#.AG9$7 MPV;<:)::S6P8CLS;\-$9F>J<_HN!&7$-@M@HBW?=]GO#\J#[W\XE8B]#[ ^W M[?ONW1^7Z/7KT'W[\6NW=TF]#I]0B/\* <990(H!(0@KM&8D-N:@&;Q!>Z8# M[W%,=&T:*NQ71*4_,>\5WXD4\7##"KL1H(?EL M.Y9I/%VU.[\^ IP&0S3X8S#LW \^?_0_V9GG@JYLC6X*:20*26Q/T*UN_K!S ML^[WWT)Z=M\U)7H.3=L+/%'W";BT=K"+ F(O6=],F[T#[07= VDF-NH P-65 M\$ $PU.G_XY;7#2M8PZB+&2B:R!G8KHV-E0[2BQRCM):VB@%2[^^D% M6DLSRWS6Z$EW-%]G+@DI0,?.>LNG>5#0D8O$8J$MP,T=U1!YH3^+:A@*@]<8 M[ "NLL4>O083LBI+0 ;A#(*"CIP\ +D*% (TNVQ4Q#O5"&V1>NK\ALS #-7\ MRI:&BO#4A$'_D5TRTQ$EKF) F"%M0VV'V)&B0J]=B"=-!1TY>0QRUW?VQ6 R M.KU6VYZP*[1&/XZ!WE84BS .F^-0W2"D:K8"LY-%B^,2J+79R8US[L[1@BEA M6>J/;WR>V"!E#Q:9:N[4WG8C-5:%'Y$F7]_#D,]H7G(^0H*-)WA4,\*9',R.9VYW7<,C39=9'84+^1=T MY"*Q. /&9K"/T)PTHCW3>Z,B4$YDB,:PQ7-Q]*ZA6/3\=D.\?[M&P)C'!5_2 M3.NHE2K2JR#*R,GCD0M&'XS'A$S/4K-Z(1P<,V!]4O>^X9@66)>"@#G[8K0^ M$G/!!=1Y.0IQY!A1OE:IU=K#*R?C? *ABPLN[X^NA,-Y]9UJ!>:VBG'@OR4S MK*E!7K1WS#=IN3N_K;0CXWBIR0P7&^=EQN?7#1D3X([JQTG:AE>BD,51CJ*J M:Z7:V1Z)4%)5"P0[+GX<(^P2UN'5A.V##%C-"Z?(#,^E1R05B6EQ@>WU1] ' MCRO'T,D-,'"VE_24.EE$A'%1W<,0EK#ZK563338AQMU 4)&2'L&# ED>/*\?Q2YSO<^56ZF!AXGRM'>)\NP LJ:O8K@@!+: L#;2X4^T9H)[,O-4JU9C:@?>AI*)]")HPL MY?-66T%'+A*+LV/KOFXNY-6]$[RYD 1Q[@DM62RIL_.9 W.;.*+2]UY([Z2.=$FG+LNM-FX**X&XZJ^M0C4="UF M(Z[63)9Y$TGG(C4K7"Y2P!HJ 0- +,C(O<>?>7_,+D6E6B%Y&7>[*%4JLLF) M(",G#TPNG^?MP-RJS;-?#C!KIKBPREZ&")@4<"KC,HKU!G%"J]7FIV7AC.E'>S@?;4RC>N[3WH69\B/0R"^ID+I0HKI?$ MJ#[<41'G;L#9HR13@%PV=NBG*+>9 F)[_393W353:%=P)WV_\KQTWMA^T^>H MNX],DI"1*3FR9'$NDR3&FH$-129)2! 7=>0BL3@+GMF5J)QFVR[H)T+=M(HY MG8*M:SNF\AWL3)58B$QGNCDG!,UT; CFO!4/RF\_.U>C&M(L B)=GUG]\35C MU8!R*LTCR$4*!!5TY"*Q6'Q[M -G?H6Y LB+,L'&$T$6=@CR?F8N7FJF MECQCE=Z1?@8%39LQT3O3(9>GYE<^1N]5O_8QO<6UEZDII&M4/)"_/)9$BDD)M.7RUP2 =M)^U5JI M*5)34VG;2L-'CBQ9G O;]GIG [:$1@1>9?C)LS.V=:#/MCM;,VOXA%BPF55! MR<+/5X):P(6*MJXW++B4W!C]7VV[/_9,X$:Y7HVC:42E5'MKM+4(.E="/ QQ M+@LX?HC7XH-XM=1H9@/B0N<1'[S;$?ACCO>Y.M!&-=V13@Y+0/G7?A+-#1>/ M2',YQDGL6K'U@ZF4F@>(=%WN6OD!+%>6,(D]*,;*M:U&-@#+]J"/SLA4Y_1? MVH$PUD$6K[KM]X;E0?>_'=AKZ;L0^\-M^[Y[]\OTV=-]^_-KM7=*MZ!,* M(>4OUW:T\?P3VS>0YW%C-QA7=B$:8C!I@5@$B"6.?9K(7!2 $K$^);K>Q1@# M0A!6%',ZP\:S>=WM C M1!0=+G8:*[V)X$7TPDWI@0># 1&UW?GT$E@R&:/#'8-BY'ZR: MD[&,O\KQTUI#,S9/JM>'&:%A'UWWZ;<&G1OZTZ!_U[UI#^&7VVZOW;ONMN_0 M8 A_N(<7#Y ($W__+:0G8I].I#X/@<7;-WON%,X0RK*O;IVS6K^XMF80V[XA MMF)I,[K+PK;?!C7I&O2V^@-(JJ(1>P@#?M'W*I !;\0S&,JQ7+\GKV:X1&V# M74!_^;."F^]W;[G6[-T3M MZ^O^M]X03 GT -"Z[G:2 /^!3#OC+L]$,^T+MC6PPQY@)PTS.@V;3#4@J.HJCFG!'U58E34_ M]7B)AO!$:(;5\T\VFEDP/VT&ML3,,NGW8'"+L)?=]G\O__Y08O_VX%\Z//WY M^@'6-08+C+(.)L@^ ,8_N>SF.%(U\G$*[X)=:88MK.M$Y^=O>]0KL9'^0U_W M@+^CL:OKJR\W+>^1&XW0!Q1L61JQ7GV-L9"L/HE=Q]1-K-(_TX'9#,9@^%-Z M>E;CQQ5@'UF8N*L]$6(#PC2 %VMC.'(93OS*,!82A/U,&T2,+8^:+>$%>F:+ MK^ 6,K=0>13 "S-W+^M8\XX3OJ# P'^[V(*-49_3$BFFY= L^5LX'<)JR_\. M'F=XPAZ9V5R=I00Q4&GPYQ\34]?G9?.'0:NFN"-;4S5LT08X](D)?B9H1(@! M\D5 '+PIT'=:*KO&3ZNQH&^G@U/T1 ##("YS^C&9T;7@!8L#0=7AO>]];?.U MW7Y8J)HQ$WA8DK:H1@@D\!;'KJ12&8#I6ZY. O\>DU@@^V)M Z($W7OH$T&V M UWS5+-M>G /J[M!YSIR_,6HIZC-5@H_ZG-// _CGVK"2=E9\$4AEH.!CIKA MG>CIQ.B$QZ;IP',$=)"MZ*;-=*=!'Z%D704!<-8P7!A&"8^^))V]&/T43J/L M"^9,,^A00"U /9CS]..W+(N5Y(%O!X3S7*M4*S.9()'XH6M%(R8^=.J:3:U^ M#T?T771'J5=+B$HY"DUJRU0\1(QU>I4$J(6P2N65?58*QO$#G1Y!X6D B\6P M%7[6( J8 -B:L]5A-,::%2S(XY0/-F5!J#48 M_<%C/9R:7&6RH"'L?J FX8VG=..S#V61/3%='?8MD!R"&71@MG^YAN?&6E!] M^XO8AJ892_CYBN2=C=H>$!\Y3?2_"X3,";:H QZ^'F;P*1)N)VMPUUN6M &2 ML;UJGJ6=ZF&I>;U3]G(Q.^Q7KPVN W:M&+8A*M'VTG3P%(X2O")X-=LCEA5' M[)#V(;HVA2G2J;HSTPB)+#PH(@JY.RW?;-(?=^ -L%_L8O> M@DG!$$N &>;*G(++BVM&WC9]U64;$_VJ,[&H@Y6=45[0%+@^L?T9]-D#-,=@D6!,:.V0@4$_N%'\GB 1,\T32 MMMWIS),S9X)A'=X]3F:D,8I2 W"Z$'K/W\V^JFMXI.G,3O.LCZ6YXU6$8M2@ M0T=_"6%O&*IZ GT2NEGR*0H>7$#$\ M%MOD(-7XC'5WP2G:1,: (^,\6*!N_@#N,I+08ED6"*1#]W$=SO;4:TJ_[6'C M!QPL85KT.& 3ZQF.B"""CLO,',_P4)@=H&JTPI975=>9@' L%R+>H;+!I?T_ M$N8\9TQ@T!-4#W+S1&7$=-JU;_E;W -+53+%=,\T&0+@V 1L]U,6]@$8?-\7 M\.!5U-JE,N6_+&S2>GHC:DXJ56P:*"^%*4C#NSAC3@D(KNG D)Z$!K^M2#:U M:&F9+EJ"CUBVK_R8Z\>9"X@V/A/?-*C_V5.ECYK]_1K.+YI#?XK/75N_:)'S M:JH6XG,26?CLXU])':&B4ZK'(3)Z%@0<()? )J+[3L%5 (4V1;@=#D85: M]3H[4O4'% #8+F&XW##H06YY4%NZ,19[H4%7I5/O('RP.C*5D,5.XM4JAY<] M:RH[F0=CTCV"O-!S)9U.M?(SV[68Q"RW(7JCH:Q1O44)JC^IERLBUF&UJ=3L9.8C'<1/-STL[< MG*B;TF9^JK#_'93!&43OJ/C @HQ?3IH);+U:?$@K)8VPNBNM1%(D0G5U3?*Z,+R6 M2P$B7S?)Y9$ET271)=$%^$"YU'*%5S[OE'4%H%>(H'T M-3#??$>-[P;/!38>B$7_@)](=9W/MO7*9_LG=03_^>B[K^^9D\7[6\#:MO?' MT-VT!]$H"84VIQ+*),+[(Y $Z['7=O$1TV%G".DS\ M^A\+\_&+(.C,L5QLSXM)Q'S\LK=N1:!788%2T)&3UO[<9>UTO#77>RO_:D,J M?RG3N1@Y<8N.*V>2COOB *&^2,-]\;IDU-JK)C&6D#KP5?\'M=F]-%9O1:>W M!)P)-B+O":17-2>Y05[?GP!S#Y8<<_\))_6 MN2DC9N=,SI2S-T6[TB'9>! ;_7H*(G!07LK)?D*W3-Z7O#XZKV7R?A&R:R71 M9&TPK=^BB-^[;_L3[]\F?VX<,7$D[E5:YW6\AO/R#'>8DB"JI6K MM;3Q=E%-."-*9@I**0EIY;<'EM^NE0](,:J=7DBMG$&\5=]N!;Q=*^^/MVKS MM"&.5CZNK7PC"%;S*R5U(6SEFT.TLLSFSEGN3X;,Q8X(],JW8HKG8O(;%5-G M_^W[[/1<*J8<*J:HE+%P:D(R26.Q)^GLDDZV-N5HD6"T9N''*,S,W57ID1^A M[E&6:<"/BE?XVNO/(5"7CLU5PFE![G"OA)6U>&68:Y]80L]PI>5*9+*8Q6IX MT_P8E5:0UXQG4U-"5>\9%C!-)V.MFUA_&V,>%$W6 1%>W7B_Y5%0.'Q9!#HT MTX&##15;JHV^F/ />G]RVQY\.?F --MV8PMYWX4%_H!QR[II M?J<3"2J@TVK_7D?>E>^]/[GN7-^=?%BM\$Q;']BA[*9X'[1_8RED->+\:N,Y:,K%,SL5,/0JO(G&5EIJ]Y.^B M?\>:CDNAA@\KW96\44":O#EH;.5KY.:'I3D.H<70Q\%H?IU\^,VK=X[!)'"( MQ=K(,#/&]BOUL^87.JTC/H7%44%AQ<,7U)X2;/@M)Q03S &?Y]-P>YJ7"0;B M^,V>@M+Z&^A#5?N_UOM%7BO,96.T+Z9EF3^(V@Y>?FM:7OGW.WAS9/OQ^AO: MCU=.KOBD5ZJ

    7B%[X'/;300JJFLB9MC"L846FW6.7[1?>#J$XN>_1D2*;7=\K)VVW=F9CN MT\3G"94=FSS3POB^8J!O6^G[M[*C^;O#:.[M++!EK"IUU:03 BZ,B*X1R@AC M[K=XL!QDJO#.LL0]8"S?:I0@O^LG,6==14-DT]QMVUU"7-WBM M\\-KF\/6,\/TO*T!*6CGR[;-NBJ6PJNCD_>?+GLVVW1)6&_"\$BPV5-M%1B4 M7,^KB#']Q=)&9YK!J..U+UVN,[0L.L'(#E=A.SXT=:IN_K$*C7&9*"'?HDG)'VUNC:B!YJ.^32U\0B6$BZ$+ZMVO2787)!QPN M7,-K,TI4O]FL2H5%6;10HL@((X"QTP%A\2F=,?-A9WK6%O3LAHA(@1XZ3ZW2 MDO5*U:: 1VNE+Q%'LE+$%Y=T7_\6_^O+J5"+Q'MUR=>@*M%]Y;%LX>8096)H M?[O^2/ZQ@6M=Z?]!\%PP:?H/YXI-IOI M, 1\6O+-)39+:O^:K%&3?[!C6\*8WBGSFK:#B>!K:A(\$C@,0*YQ8#[[JL.E MG=)7M:?)R<'R;,L:==+6Y;1_/#V?/M.#+#UO DGH%3ZO03/]U#]>!MVB,-U) M\@KZ^@+TWPR>? O8^6=TSV &O>#0RUX6/03Y_&>89/KB%:%$]D]28\6[U8=%NI4O;8 4=ZYU+D_.I ]U MW J,>\]T:!OJW7+;\$U$M6\\!O1@G>K91<$$C@ U5:T0>4=/7NYZ=4GCB^>T M]*10A"M>@O/Q1-)%TB4+=-GQEGVT7HHY5R-0-N^[U'HV71NV=ON#(-HFSU?P M.*M*U/MXDO'Q,MYW@4AV%XG=PK;*DNQ.@MW"*G/QL]KON<"*"+EM:VL?O8;I MGMF*_]J2*1J#4&Q+(;W@4MN[QC.Q'>;)C8B";LIO\-)"&0OO&0=O@8%!WY[)'B5:2DX]PBM1DC4H,,Y\7WO- )T]_5<)*S1+-$ M:_R&6J6)[LBN0RQ+#A<4P5S W(0S7)8;?AZFJICO222JV.#=<+,8X M5SDH!F/<2Y ZMM.C+@^,>4'I_]_>ES>WC23Y?A6$IWO;WH#8/'5TSW,$+QK)&LFO1W(N17272&[NQ^VA\5L=_.::=>\2OZWCP>]&O;1* M[*UUU&V&L&'45F7ECZ[/T Y2D'>9KK*P]($RF2J+27 $*2!E%]K*^7@.-ZVC M$MO_1B_G2)=SH.D->[SX/Y#8UNS)NG6 :RG6F:996=D&FEP'E2V@R750T?Y' M>0NX963_;AR)R[20'Q;_H@B_VUDQ ??USDFK46Z(W:+:T&Y)5%QC% MQ+<+8.P]OEV#9[?@*2:#YG]1V^724SU&W)\K1F] MFA'ZY/2>&D%2R7A_N%^?"K'/X0OAKF+"L3)JWM=>3,*4@H4=UXTS\[S3>ET: M1 7D5Y, -:66N;7WH/$KJRC/M7(/3+DECJ\IJZF[C$YT]:'U.\2#R(T M9_.@N 5FS69O+.0 +"9N<_8 +#I.OFV>GZUO<+HRNJUZ4N^P8%9,>.5RF.TJ MT%U#\>"AV-HG%%6(5-< W"\ <^T'=PE %4+-]ZVD[KH:1 48;L?9PGH439<* MC*+IHN8HATR7*G66OJ:^/J+7V*(FF)[M:7-2QO-7## /6A;OHT= M=R]!Z;GQ7-GG=I6F]=)NI8U.W:S7%_0L]9-)B Y*,PWO6'PO.86W3;S #I,N MI/.Y05]A;'@'M9C$#K)NA*UT(U]TB1M@!UK;X@8E]AD.9P&GMJ78_Y13)RIC MF/2IS/8+6Y)LM"E-Y@>)F_ %27^]N/T9_C)NW949:)QM3CB(XBZWH@.=Z#AL M?T?4A*/ X"ZB*#V0;:BP*7&RYDRKKFP3Y?E&A^:BUK"9#R=L MFK1"ML!$8 !IT< 4'O&Q1VEF2Z5)]5!$^'0%[%]T55 MN?75]3E\]1\^4 1KFHC;$_$*]'2T%Y2@H8IR5K=MVS$B+[T@5+6YCZ9UP=F= MH/EJ6A\'K?'>V*"+8U4IKGY,(CIVE*[:=_@--QJ-7/#B)04QK.O)A>=6<2%A M9KUS?A =,S0(2P%A+IYL,Q"2+RDUS/!\/9[F+1J*I4 Q=]FP&103RS()&#M" MZ:A^YNKEW-W8+VKQD^YL4=V-UB2N_$9K$BMWRAQ"92JMMKU>;O1;"VCC56"\9JSYSZ>A""+LBDT^MK@ MF!R.1SJR)G'E1SXF$JMO2.MK@YW[LW*U:_&XW]KRV-5=0:.33X)7T6>EP5H* M6!>&:I9R0[#'ROH:OY7%;^ZBZT7"=C\W!HM4WJ-/K@O6E*I1FR6KXMW)5 M91>X9&>+_73=P>P'F2=W?Z=P>GH8GBX-X)(NOW( ?M&I<@BJD(9M=6#;R/7* M*EGNEGO?<"A2>&GEO[3P5-$EK;(U!8G^NFR4 A4J=/F5PZKIX:*TK1AT/K77% MJ-MR?;OQ0F]^6F;CO'D0+D>-PG)0N##C>ST*=9:(QF+A MMSGU7!SA9F L\5+F< 2D^H&YNFK4,0>.'^G(FL25'_F82*R^\7I@Z1]54-PN MBJEGLM#(+3<>N7EJGI\=AGZGL5L.=A?6C7H-=G4,I ;P+JWFQD*K^34(WD]N MR ')8O5M;5U-:M^^K(5IAB^M>%*:_[]NUCN'$7.L@5H24!>F+A4 5'U%H-%: M/%H7FIH%H+7,.X3#$;+JNW>HJ)VA*TD=LQ/R2$?6)*[\R,=$8O6-Z*\UHUC*%&7N M.["AN_9W+1FT&*_7PC#OH@N%EA6FUSXWZV>'$4&BP5P8F%?<+13? 7+[P+VB M+A*,([Q).%1(+D=D3FDO6;Z6&*^'TK;SR@NO?1=BSI9++J0"TTS5I7]'L/O# MZ:\S$RIOD(4W$P;S.?QM.=& HV)E>.&(^P;P 8AG^1!8#X,61U4Z,WXO#+FI%*/N.1V:Y0W$(^GG@^\Z>& ^*0TP#9 MR1 #VD,;?L3@%T_,=I 8)P#&DP" !6#KAYD(DMG9/]OA"%8 LXW&D4.S$JO! MV?M\!+.VGS@-;<+6A5B%%19E^%P\'++O!FB[W IA^A.8FE@!4=_$NH(!;,48 MU&.Y;3[/S'<(=-AH:"/TX)=!Y(14!M:;<)]&"&H"D/N!W4S5\40@=5KYZ_=H M,G$XDHLYDN9$\H]V8,'R(EC: XSUP?&L;[/RYQ/,2\B?TY-Z(_32HO!O# YR M8P*CA'X<90SKYX-N*"N4#T_K@V:GF"IH2S8C+GW6JAD?NI^[-Y=71N\?5U93L M992:3XKX3?HC/YW/%O5-%VH'J7/$>+CZX^'D^N;CUT8P[H[UE\CD3EXF M6R,^B!Q^.XS7,+V,?!_^1?1\K3Q>QYRZ+\21U:&^\9[(2C!:=5.1(LN:C-N3 M478@4(&"NIBX+CK\?FTG#%U@6M-:WY"!B+IGSP:Z[7R;.<*S$D3]$W3:C/N. MZ>;9!MH " M--5HFD=3+HCAQ6@B1WTAH0GFQ08!_DI'(NPEPO)WS_^&3O&)[UD\4%6L*A/_ M6P#SY'P;"?,@+:[=.T&)7$/8(F2!7JK M99Z_MO;"\4KT:N O5_%P _P5)HA;YD7]_"#PMS04\"4RU"4!G M2BYRS"*98.!:&NETX!%Y8=<=7,4KT@$LZE]+ M*A_M\#7@P\@Q''NXNJ>M#B'1D4#'1D8=":0C@?:-P;>V:TPY\X]G@W7XC:HR M7--Z[])>E2NDSYP%?.0Y \,>3WQ4=]0I.[ C((F!_]M08]&'$@?4S-5*2*!T MG4$2I8F7?J'543#\1ZF15051ON+8MB J+(C,;#765[@YE)NCW1T@7Y@ULEWN MYYR0*O#!3D^0EG%BG*IZBNS[DKI(H9$+HDLPF/6J[N+DZ9AGY^N;41X5^:L, MO)Q+?VO@%1^N;. P_"HSZDVOJ0VHFL:.4"_Y9>_]UB)96R0T3, M1G-]K-110:#*X,M%Z[T(?,4%ZEUD-,A5A@C5UEL)O+9-T6 MNT4=D&?U]?EW*F#WI?9=Q;CHF-K$J+S1!2C*N;#]I8KR3BZR&F:CHYZF?*0C MEX^^7-#^B]!7V U8W6QW+I1#G_IVVF<>!+_,%,<=\(D/NRR*/*+QQL8>S$+4 MVCT,>%>-FX]1]5W:&Z#9RD5O=%/X?LR@%_[M>U5_90ND%R-4FFS[L*I7IVLIY')!427S4<2X)CSHGX C@6=]%VMH$!IP(9J&YQL.QKL:V+:F5H64;9F5/HBLT'AFO@\L,--[X\"7]S#BQJ7H M%81%$Y_L ;P!V):2SU,:6UY W7N#,UQAX(&L^GSS"<]XDYV*H"_L11XQ?"TFQL9P23 M\%R0;$: 77-L[@=F=G;_];?S9N/LUR!>/_RP#QLJ6U_ =*@9$2RX/TWF/&2V M@S?>/FPDO"VN @QL ^L4I8"Y_V1;V"O)@3G[4]IMW $+>T)0DR?+@W]9-&TV M_^::T1MYD3/ -<-R-AP82+QDW($-J_!%?Z1%:X]1 >\$>ML!MD+"'DFSB$EV MR+%9WZ9-?J99]A$9<(+X2'^$7Q#")C _\Q,X;6QO@!L*Q* <0X)D, U"+HGN MVBZ')P=L*N Z8;[L-2I750GA\Y"M $$ V".Q]B/"Q!KC9@K625#IY^"S);3 MUN1Y=A#Y,0>$(Y]+&-K?D5O"$9#8Q?9@S^T=Q_,8K37#1:VE-% MBNO?)9P^Q[NA>ZL<$ M6G<-JE<^:"TJ#YFUP[N6Y4?,679C<%Y4Z5:=OGR(\.DL"AW<%#[-PN#3;JK7 MMD.ID56%SZ+LU"VD3U'WE:>Z!]PAPJ>5J\"QG?0I"#YM7;#G!=JITSLV.O9J;TH77L!._V>$.N::+7L3N8B=R?S^MR 4ZTG M*C)R^7#BVUJ+5:1D \314;12CLR88J^5%@3,U^'<[H%"R)."* M20U:$=!7F=T6Y6D M(Y?O.LME3A8#R;6*LH;D@8Y(QA.BNS:FOH,S/:B$A@O MD)DE:-+-\]TC4WWG\EP +7<'*H?.'G"9CB8V.5"OVH6FZJNHVFIHJE:/JLN/ MMPT]["77=FINT#!%P[#",%Q4V6GS(-?"2HPU#@.&QU#1":L;?>1#3G5F9/6> MRM0VFE^8:00CSP]/L#:5F #@/+ #+%DV(H"%4YR=V#Q>N[%>N;=&RJA_Z@N@)?S6"XG;L[7 MT74'E_#7SF3UV?9%YW7KU:-&<"[%^(4(+JSWW09UD%2 L&[G4_5KIWRI[CG6 M*+L':7M]-K,*]TT:?R7A;]U%2NF*^WES>UFL[(TG_HW[9;L1$RLI\HO!G&4Z,$ MO!*]1+YPT>'$WLMKX:4X*1 %2VY$\Q4FKUT+#/$']KW(Z\\2;]NE![1=,ZYO M+F^_7!D/W3\2OZC8@)WW0JQ%\+76,X8<>)LYHO-(R$+1 M@P2$+>#3Q=XW0%@C9-^QF1#V/;$\?^+Y)'%$VYCYMC3PK.A@%,0MBO%"W^=! MY%"Q TZ]>;";$#Z)37&2/DO)";_-CUVL*E2,.&R?95IP-%OC8PT4&4"0 74 M.-0!*&:79SLW88>)>4YY3WM2 \A]=; *Y>]M>5R M2DA!6&#)OQ1>S;+A586#ZSH+_A%[P@+AW(W;XV'#P[B>9-IH:\S#$1P=SR/N M\_X42"F=SG@F@&[)97.R^ ?4.,_G^7,&L"CZKW'7@F?Z/'S&L8>VRUP+N[?Y M?(*=GV4[.WP]_I"8=-DXV"Z-P^D#QYOH? >:4I#\W"*OE&$QWY\"29^9/PA@ M.0R5J>Q:N'*Y5(?8PO7B7_$VA=,"GC*KH8P MR^X.LRPOPGI@N ^1&^\U:K/^ZB,CT5>/7N#E@8PCNC MC*:>RD&R&>BI[+OFWX!2<69]\,W*YT%'CWPWKRU10]- M6 P<^0 ;D()H=$C4^MQA\I61F^E_2F):Z V).1-W&L76H[D3="]AYDO,[GR% MP(^\7VC WJR]7-0V\V*NG >?W6-?Z' M@5'J3XW&*>E[]9GVM09YFJBC+""4&9\])EBFQZW(1S6F^PBJ)''.6_R=Y&1Z M+OE*\O [(1YZ<#@#V?%L=OC4^,#<;\9;^;O>OS[$#]>,N\@/(N:&<:O8V9?. MSG/,0 1[ON\]@^&-/WC+W@F%*^D__=9^)PW\)\]Y(JT&CIG5MDHSI]Q_AM_< M#L7%W"=FD2[WA7VWQ]'X XT/+[YDZ( ,IZNN*?YD?.3_>>O;CR"@'%Q:UQW$ MNYHL\@OIXB^S"#J)17#ZYGV[EK>=C3%H+%2ZQH?-D;O#QBCP#?;$;(><>A&8 M!4*4]N/UD0(IOV +]E,JB,)2L/& <%#*^>+\Q5;'J PLZA0LSVW^W>*3D&0F M8"1I4DP]Y86$G9L+#')>_Y&ZC /";9QW?'21@I'5FJ<&H&QYL^(Q-JX&28R0 MGALE.4%^351[TQAYSZB0FO36$1.Z UTQ( P'LI*3S!7Q^:.'KX.5X #85MD6 M7J)'#XR!(4,&Z:,*C5K(OZ/!([$6O&@,A]$CNHK(_013%MZA^$3&>PEX"U 2 M(#<0!W-LJR%OL $IS7"PBH[30G-.Z((_Q%F@HH/MH5//&Y/O)E<4'[+(D9P' M=A^%%(C9EQ?2EHEJ,#U64J(\HSAV.(JJ7C":MC@OAR >_"2<:Q M]S;.:@??H1[N.U'.8>WO8 >-BX7L56S/H>EPV?X*2+@-T*&-7Z,2;CXP0$'16(0Q,W2<\P4.Q7_ MBFSKFT&N4).D]]O^.Z-=.^O\.*\VU(QXCY"E)FQ*(H S.I&*!H\^-+/=$J7IF_$XRF ,!3' MSP"VTTPE3>NT+3M\Q^R=.EOQ49QIY"W:5V-%0S_^B"$<_*]B=3&)FE$SW $2 "I!/,7OB9\Y7TB'_!D M-;[$A/U(LLXS_B=RTB4ME+O"3!S.K!; :,.W P,]5_;01C])XLP8%DQ!GB1 3$H@GA&3(-AB9 @]#RX.F54T]:UZ>K72ZXFCF%>9&: MF(FD@@MU2O2X^M8?2+PD( M%J=.7FM>H1_G;HF*U8_%,E\(VTT5Y=.LHKR@G])B/7E^(Y?IR>9:11GH].&= M\"Q)CU/Z!D&2'UKI'(9SP_=E89W,K6.B UMQ'L@D\JT1JJ$4(('(N'P'\QE$ MEL1%<@0GUYQ2?T;-4;A-TP72]%?I80M"&PO4P[8%Q2*%;&-E3&IBM7J9NEBK MUNS\:$J"!$L(,DO#570I8KV=[0/>47W]\-ZL@S*AZ*P_17-16X8?HJ\31 M!J=H*W>*5NT03>ZL5QZB#R/;?\49.O?S)4?HW%.K=-5@,U5UEIB@LR[35O%0 MG=-8@Z@_)E]O?-&"$*'7 ,,R65X8[]ZEOAL8C]Q%T]TA+SV?B$ XF 8L4+)2 M?%:-;1?/7[K3[826RZL (> 1QR.UMX*#2"YS4<.^:5+A^'M\(L8 M\H:'G^,!YSEQ_>E/%"KY\)_QDH$QN/SX-\M2_G-%-@N76Z_9R W$5B>O_&=O M083K35QS+/ (NY$OEAI2Z'\EZA1G:KJ24[@8+Q<"LI!XQ M<9TZ\-FSFUSMDB]1>/6&$JXD@/#BUG;IYLJQQ>4PW0\Z#GSVQ%V&+LO,#5C6 MX8,N3\[#3/2"ST&0B%LZ&904J[ZI,HPW<_(68%8K8HM71U-<(=QRH6.+6/.> MCV$?8(IJ70#4W[QOF\U&$R-_- MQQWJW=*AWBOOG'/:/\@LT*A(7& J'<5Y@,YDV3PXK*OHTYIQ>?OER_4#W3\; MW9N/\/?-P_7-;UW _P;@9$QA@CW@(>Q+=P5(\QF#FEXU?*:#@7-' 1[4FAB4G<;I MHW@7F/$PD7RMA&:#D)IA_TIB:] <['R)>QE4%L MK&,2Q9BNW**0@I4PL@KFZ8B+;-*SW-@2R*#7G(D&]'!+*'[/P0L=>@,ZGLA\ MR"V%[I1% @FP:?$#PQ=3'"8X-VDN"5/LB\6^[9FKHQ2 MG2D.&#/E#$CCE+=.R&QX-\^"$5YO/U,4T279TK#6#6F &3ZQ<(X M%?ATZ-NRV"8^*M8#VJ0]%O9+D%&K XK2<&S06$2$/O(PK@X6(]VP;KH[EN ? M>E?,AV,VX,G5^^SE#CU'QT?LRYVWZH)9']S\0)EITH[;!&[X&O:8QAR 86:% M'NYX/(5YKNE/*?(;M2PZUF"I#O-S0\V=@@M]RX]D E:"@\B3AP(.I$=@2Q,V MB5:2#G"Z/8,G4-VVTX";Q,3% *CE%,.PB?A:#_$%1![9P$$^Q6V(:^Z%R H2 M6DH5 GA99@M8MF]%8XSNL"BV-3U?B'.(::T(Z9L:CL:#)\,U)K(IA\!L?SH# MQNRJ,JL@48T;A2Z(C,B.0Z$6B^KTTE_*9'.!P)Z1S I&T^;\@STPQ+YA_#.P MW]5?D1U.;P ;AV74G-6,WC^Z]U?_N/T,QG%/4LRX^M^OUP__=Y@6S=+JAC-7 M(=WH$?XTFIULE,X'C_GDAO\8"](XBAX#)C,*$3(R^X;1C4)$NAP8,$!U+/X)D$ J+\.0O]& U3NKG)Q@:^^K;]K/.\MOV M &<$?)M.J69TC>P4C5X2T@]_?(+)&+T3X=,;@IXZ$(<5165<7>(C/3X)I0-0 M[#Z^\<[W2'^( J.'MI9X(5V!N\:;KCB/OS#_&X?=>/NF^_#ES3O292ATN-G) M7LV#HCO&J2.#TCR"J!]PD)UNZ$SEI&;FT3B+)P+0N 7*XX?G"P.XB*[2APZ3 MP .8^Q1E, 7M%J8 _UQ>R3\G0V !MT.2)"!Q8%3X8P3F8G -RCP?7+L/H-$' MXC4+Q4CCI%&/Q8CX]_EF@!##S'DJ&^;IQ:EYULQ7T0(O6S);<8<_O^,^S7$)]K=8*F#_+K_D?5YQAE3%ME!R([EZ_)R&WFPF9Q1X++ MY!7H/_O$^>(PC1?C8.5-7+V6+\&3,!JC*TN)?BZ2;-<"[&X\-PZQD&FZ MM_*-EUZP.%>WK)4N@(%<*8@G5Y@-*X442H-$("VO:K.@EP?!"I=WBZ,(7:+< MM<^(_^8*\;^Y-/W$^SY=SPFYV9J]?21=E*[)7R=!]EJ]@\ KQW\P%)&YSPNU^B2#W5]W&^_&%\YR? M9T:FK;G9GE'^;]-,#5+['[PAO"NF??'5]F8VHG&VXJQ7T!S/R3\4)SX? 0SM M)RY*0: ]?@A6^#D@[?+RZY>OG[L/5Q^-VX=_7-WC9>,=&.97-[WK?UT9GV][ M/>,P#?(E@UR.L =2$MJ0)%:+DAB6%8TC$9(B/;99\I+'V!35,8:8?VV*4P1- M3NH$%1AO[6Q?$ 7:0N4-'FO$!Q$>VMUTM72@+8#R9U@PW?GK-E$*-_\XQ/Y" MEP)Z@#1%FN=H(FY/Q*]N7%>%1*.FY%I*OM%-M'03K;TU5@K1*2$C?422#GJ2 M5&VUI*E?+/5%T T71!=ZK";]<9#^P0N9HRJQU6^I]B'.-2 K,5,3H*56/7Y% MFF.]7>9Y:K1RYNB&1N@-#V^'#^S[JN+[(JDB-2P>TM.NFQQVP6ORQ;#.*BP4 M_C7;.V6+5FW;4.:=1M;FR,IYY@I'5FKMX.]NW>OT,"T!5.N[D&A,E8VIW!U) M@9@J%"R=_%UJD6A1OVW?[0)OK:R3^19=$^_B^S&?$VZ2:$?%NJ/J]FC$>+F( MI57<]H$H>S]/V!S_K4L,+EMS2-BUO99956BUIME!&7;(A9_L@AU*5'>VT7(T M*VA6R+!"+I"M7%8HHG%-XR P?FA>F%QXC-+L>DBM$5<81+FHN&(,HATJ88O< M-]OK8S/M%@_4_#Y@A"X':"Z:O7" ;JD6_8?[WH %HTU/BY.#:/VI\5N6A,T% MJQ8(X$.7FALWG%4F7#3GQY ]A%'AQ*H4N'._V^'H4F:UOS;,+NEH-.@"E?&/ M/\_JI\-ZJP!.C.\2+VK&_=6_KFZ^7E4J,!0+A4CJ9'L$5;)<2*8UD2^73'W0 M)O V&RL)8T.*0%3.\)_LN&\:A8_$C;:\M!0#]4%RXWATJK#A\R'61 ADD"T( MJX&LA8&_%$4-9A,<)^)QZJZ$J>ZA(W/*OUL4LBMS7+V +YA=?RHC<"DNWAB" M:#P)0CX1V1]!\(OQMO$.^!)?/)S&DR+VDV7IDM68QMOFW*,3[I/@I,Y?F1(% M20RQ>!/\LO5N+G\_3-. 1'H-/-06]9ZMN*''@F>H@F?G74JH63IAYM=LU9\ MIA10Y0RV9+K4"F48^>0H'\C^6UBGV23R=H-G3:\&Y MUKJX:#3.2TV4N%O*]UA*)E/3)I@&V)_9% 5.9"T40#'(3,Q E(518FE%G/C, ML0,.OBL(65Q]BTIN^#*])Q%N>%RE4T%<*'1+> M5*IC8,-279"!BT4&58V)Y5E@/\(DSF M\C.AB/D"*)AL\>+S8S89-*V9G%26>O09M03$[GTXR2?;X8^<2C]3$RH\<["W MI&@BD]1;&T1^O!W/S,=W3&4W\$H4IOGD9? E&VW*RCUCK.PU<9:>B;-@B!$7 M+$9.G)*Y['RE'BU4(A9WGY+4F..Y\PFKHOLFUH-8^+W079)^NJY:"A0LW84<,ATOM4&9Q*\\>HR/*XZ/0(OQ/3P%4+5DZZ MVP+XN ?XFXQL[+,=JY[X1BE.Q M1B@2"['9@9+I$4KNLB6>[5.Y,U'M+>B&E M6*>F$,'(GL2EJ ;<@>WT195>CB7*8=\'8@0LQR.5/$IQ0BZBYWP[^(:?4"]@ M2;98%F4FCP6Q4KDU,UWO"64!5K:2JDLBRK#?&LQ(?"K[7LK',]I5)%H0 (_A M/-+U(;VI7#HL#3N75((#Y^M$1EJ9([ MHC:B:,?3-0B6#Q"ED+"D6M)<=%:I3$X3P7G^(*[=1$6]!5LYHF$NUJB7=)B5 MN]$C*M^BA)@\4($%L&,LG#UQ13?*2Q;UOF'98RK',B=J M%@P4OQ[K6V'90*HIB/5CL$DL<'XED(+*W$<[8(^//G],:GA*:Z%2QFMJX,FR M?"A.A4.+=*>^%X4+X>M2)7':D&42V$(PLZ1I8GI@)-+S!%B,#C-QRJ%,!&$I ML6;@(??H^5,%$CYS<9"SZ+@=2F%=2%KG KU\>-ILL[^K37"=+:D>2G>>-"6"2M3,F=*T+IS6 M34WKHZ&UYNOCH;6R?*U^Q&4WL)E:03^*Y(PMC=_IY&J-KHGXN/HNO<]=\MWQ MP8K@Y(OY./W #_]$&A47CW]N7C3SI>D4I+]&WCSRLS3D-:>DRKUDW M,PUEE4&>^MG>5Q'V65*45_:=AE>D3I$KUU*V-BLH6YQ689ZWM&A79.3RX9J[ M^RQ;!2X8KFWU#H,C';E\U67;U)!7*\T%8[5IMEM;U"@Z!M!4&:ZY$A1E:]K5 M%ZWJ^W^_NA0&2YW6=*$D!/A7J8FBP M*P/V,L^@G'I?*-B;9F>#$GT:[AKN&96K3.=+SD(H%.X-LWVJX:[AOA7 MY"R,0N'>,=N-]26@58#[2UW[1\%XAU1!9CD;Y2H@E6@1%%(=SVRWMJ^0IXL> M50BRN9I')>KU16@W;?.\L;UZHR%;(970@W2=M.LO\ U9"M$&3+C ^< MUZ^+4 Q JS[?WD6X#\AN5)=N%]5R9.[MHJS.QY:*YN]IVFM^5K3NGI\K7Y45D^4!U3+9:)ZJM!IF4EJ MN4@IZA0AZ51<,D/=/#W?HM'C$3GLE$=?F8EJN="E4M!W9K;K=0V^ P1?I\PK MX<6] PL7?>?FV=F%1M\!HN]TE_<.):'OU&Q?''C^P%[R=)&\HLJVHCRS[\"Z M(OELEX$_LE=?0M["6.W";'1T_1E%1BX?L[N,_"D-LZ?F:5UG0BHR F@/3,;]?6APDJKX?MQ&,N.+(J@?;.K M# 48"WG_.(P<*^S?*N>S'.Z MR[H_.LM70[8 R.ZR>H_.\M60+4!;WV5A>YWEJR%; &1W61%?9_G2Q+.YN(4$ MTN^STS)B@[HH\^\6G\3]I/$#-L::2?B7[/">=!<7G>KA;9S2!I^9[S/8$C[; MHCOIQQPW39[IRXPMEUNYJX8TG.2+O4+FM$OZ14],YIH[NS1F_$I:IE- M@^.*=]O%>4DJMT[8/NB<&IVPK4FN$[9UPK9R*-6)G<;KC=]?R$7"X+ M%YW*].NRCRVA:-CN@+OQH7DG_+/"JRM]O4'BF=5H,'AY$2?[S[H.R9J MUQW$D5$/*46[8?<.R7GM@A)38(_ NGEQIE[BM%(CJPK1W<=G[P6BC;;9;NKL MS4.$Z%EI$45+@ZGW M$V2%%=]^DP(5I:G.;2N.?]'/1M\_3\P%,S=UTA12C; MO47ZM0<#*ZA6ZUP&THS*[,NW.F,SP\BWL)!B3YG.>BU(A>0&S0C*,$*923VK M4SC+9(36N<[JU(RPE9976M#MVJS.,AFA8=;/UE?\U*R@62'#"J6E3*Q-]"R3 M%<[KA]'.^*77$$?!DI5(\#C3_5V/Z!2I!F1U?U<-V0.#;&FFK<[\U) M![*[ M+/&H,S^KE_GY=SY^'^/$Z#.'N6!4B9&S__?O/\-SNTN0+&^0KF5A0FN 4;K< M?J(TR[DL5 QN&G%CPGW;&V1S60'5COV$Z:>/GC<(#,_'K-8G>P"32"*F,'R* MDE87)<$2/V/R*F H@-_Y,O\S /:!CP84-,R:[8F5L\(0DIH1>:\0'$;X,WPDB@=)J MXY3:@')J@S@#6.3J3GS@:A\X"<9P6 @_A5_$F;T!$Y/A\&!\KX7CQ-F[(P9; M9ED177;UHW!F:_%+UPN-*ELO(B M%]RR2$"B7 QO>#@K%+O![?"59W<=BZC5.PVSOJ"CCH -SE]2FH@%!)TP&Y.L M)]P-)+@\V#;?H&UT$WQX F\,T$W[B2'IL+H!_FR _R*?#U'L@V!RHS?B\,L\ MU&@62(H .,<>POE$PR AOK"IT6H(&M0,(2KW(Q!7YT>7E0^=9'M,^B,_G<\6 M^0AS2D'?8=:WC$_.>+CZX^'D^N;CU MRZ-BZ1&ZWPS[UL5%HW%>3";-DFDD#.78#*24C341$@$^8=,Q3\^?G%"&4X=D M"_X9 ?_Z!DLJ+A#[HQ@.8%'!T,:8W$#P?1!XEDWL'6>AV$'F3,MP>792;+%X MI7&RO+Y.LI[G EX62=;/=UL*Y MFT#!8,+ACR?N3$U#X'OA23'@,HA$DM\T@I'GAR? ZV/:@OP#CN<^BN]?<7A\ MC'Q\&G\>4BD"BAZWOQMCCS+4>2Y#71[@V;,_HWNM.+UST=,K*27-H/ODU:5Z M/XF,C?K+()B[/"EF884X'&AA9V=+%@; 2^ T"U6ADN9@:BV70C.Z114L#3PO M[_F8V2Y5I,G(=:\/C]*Y%%3&KKIUUW'YB*WD@F7NXF0+[](=O$TVL(RCY'RQ M-!8IGFOH.8-\%*>^336'-BV?-,U\'YM#TNK$4_PALY]H%.!C8($E M1@$[#& MOL-:0F!#2?BE6[XL@&'UEL.'J(F"1KEP\]OREC;PPS][\""8B]XG#V;(@E#< MS/XIA_NS%_4#_E<$+[N"<M6M[[^2-N MMDT*UAI:H>!)M"5Q!(K?#(3=.K1Q+$1RVQ2J%VIJL8V^;G.7W=B]:G,[N]O< MUNG"S86-2O>E0]N"]B@GLR(NP^7S1P\WGI.SD0L=]8DY$:FXPH#=@)6$U'&_;=&$2^I!^^R^7 (\Q'7XS#@YBIY+"V*R0 4H;UO2B$2?@V&2VS M#ACF.)Y%"@YLE>T#[R!;,6!FSX%_1VZJ<2^>;65.K$LO$#+%ZX= ']S78>0, M;+1#C8SL("'+DV0.-1CBQ *",I#S ,"Z2 M1YXT,WZ;D!N#,2 ]"!%L3SSCS0GB$GM^:/]'(%%Z'<%Z"Z<3O!N ^1"PPQ&( MGQCN-:.;"")4M_ U8_9OX!$X063EOGG?HP64);$FR#D6WB-8 .Q5- 2J@D @ MN3>),T%A$N3PL&-3TW91E'C^E)8UM+_3Q^@UBL\]M$Z9<+'"=\ HTH@5PC76 M$(W'".P)Y"!\(AQY 1?OP45S,"MNA8^+L!A[$%%MG)D[ZI9C/.F I5$L\+@J MH,MP+E^ECB$B6->LWH/=Q>_O/D0[=W]=&XO/UR=W73 MZSY ?[2\";R4 6LAP D M9$_Q#6H$@?$6^:-9__6^]S6@?S9^?6?.'';X3?+8W>QSV9.)X4\[E/":1;XU@?<;$ 4D7#W35N[O+S"=^ABY20%"LW9;<#M#0^-;YEZ&X M&W.&_$.Y[IR!/'M$I=Q WX>9*1^*2@X#N9&H-"3&084?&%$0^T,^H&_WI&>! M"@$+%J/3+\0$QQ[H]4*OG''5H9R-)R\R@K LJ]RJ]"()5#L[L$.>V!7BX$ - M#->!+P>;(@ %#PQR;Q(+XX!472 'F@CQ3)-E3")0:"Q4?GR&1DF\972/1%J8 MZQE/^&OX94S49%-1((. %C^GVQ_4M&:,EF3^<[2/!Z(Q@"@H[&$],) 59.\A MX-T#>PAOQ@-@",PC#X_E MP\-B!YBX#DOQ5CPRNJ##+9G*TM7!!&:/@[N N 6'&(!U/_DDO3JV*%OS;$1O9C1Y! AK-<^F' MI@^20 0,UPC5LK]-!G M@=Z*U&=!5 ?&'>!E[^R>"1,;'?=B*)C5\J&\S !GBYPB8J7X">U&[^0$ M$M(/@OL$__18%P?[S?>"H%A?HQALWI%O=NKUQ0X8P8O T2!D)&N)/S']^D9 MN1%+L,% O S^$UGR8C[U:. TV!.S'7%M&L_0)Z1E[II60[JV$TUG9X9?AD)B M6Z(Q!C?\1_HKUDI\8;ML=_%!CV%$U6ZKC2\R(/+=A'HR(.1V>"5/%9EED5H- M6;NB*YPF\*_;87H=(>0(&1NO-2UT&?0#K52IRZ!KDNLRZ+H,NG(HU>62CT1ZZ9[Y_=C>,4%EOD5\(S ML7&9J3A6!&ET.^PAA8JK(U)7KS*<4B.K"KI<1N$K0+>HI%.9H-,%,P\2Y MV.[7";I<]:12!=VIKG5]D*#+I0.^3M#EZA25"KHS]:I7*UUWE731>QYPYN-% M(67$4&0$7F KRCC[+AU6I%:1BS4O296-2=QU!Q]3 LNW%<=^K0OEV.](1RX? MNKG\K)(4XMU MZGM,E5&+E_%*=*66Z57[PBZ%TT-735&+A^ZN?#VDK3SW4"W MM4&=+J7U];WXCGOKLVD4X8?-+CP48-$=E -NGA;)NZN4_=\$+(!UNS.@*)Q[ M+W1Q>,T"6[% +KBR)*-A5RS0J>M&(9H%MM+@"KZ]7&I\[(H%SNKK'?V:!30+ M9%B@8-?14B-F5RQP<;9]47?E.R)DKB*.@AFK4/BX>9JKKU*LC5$ LYRVMK<: M=&WN"D$TEW19K U0A$IST=(0/6*(YCO5%JNC%]*/# BB07K,("TR=J"*SQ>4.TFJ_*U:1TX)?L8I753%N-)<4;;!EI8*5M8O226/-@PGS*64@ M4VYL1:'J?/G8V6*T.RS-MQ<^.NY2^*>5*(7_>N&^M.#]#HJQ+2KP!&R A:* MH>][7T7I)>+6!<67D$]%)>C!2ZN)4[E=%A=="10HKI&[ DV+:RRIIB&V84I MTI4S%$YNS&0BY@)?*I+.J?(6;YPRNN,TT=\)^WR@0E6%C8_#(\',&\U+!\5+ M79@8Z&G&;U@E33.4>L#1#'58#/41*XI^8K:OF4F#9N,26V2@J8 83< 7$?!? M6)=4!?H=(\<7%V>D0 V-TY:/*4/V.^P8= JH27/T4EJ_2#6K.W%"H M=6FL3$QFD9?&N9NQ)6Y7;+OV2'=C'Z:Y[BA4^?R&*F]+OVW0C<;A.1F2^3/I>=TE8OMTRID14M0'*>"Y!_,41% MN?;KM",#-5!Z&#'W5E2]3R 8>RFEAX40C,8AVH:D+I8.YZ^]CW=Y2&/[N?>G MM?;Z4)]#B27>W1GSF^@EH"CW'=ZAO.1 M+DCH_GKT]N?1.X/1+175DL&[0FD]JV$0FE9:MSQ>/L5=KQ1AE,T<=PKP;H&) MJRO.I%SEJ*T;QB4$5NJ4Z:PO(;4R@56?/.J>/ GVY-\)A _F,.K4 MSM2K3*F^K9-ZZ67'4>VHWQD7YVI_[]I1O[.SIZF@HJC4R*HZZO.=,A5VU._B MF#FM-77]<>VH5_=0R65WOIAC)5\2Z8+8<;:R&7:N7.%.SI8-\H^/"F,51O=% M<>?10G2_V-HI!?DKCJ%6H]91KYJY^N:.OMK9U=5.K@30OJ]V]G,XK2^$I1UL M"IXSBP.4]G>UL^OSY;Q65Z_C@/IFCK[:4?EJYR+O<"O\:F= M@Z?PF(+B;W9V?18U+_35SNNN=G)U8Q1AI\7"?U'IOGVS^$[*_5T4%P[WL@NA MW9U8K0M=V;(JET07BZ,1U+PDVLF)U;BH;6/XZP*8A0WRU1W ,8=EU*YZ=W.)X4\[IH;O(MT8 Z3N'N4OO2%Y6*#@/ MM#HH1NW5Y3/7+76[2+ MJ>V+54A%J924?XQGA(.1=&*NQ1>5.)AN5F;.7/?O?7Y!/Z+W\G7CJ;P[(B3 MGIMY)4Q+U(:&3^5OB0N1):-$D0#M&3A@8/#OW+?L@$K=9M=.-9X-3^BG)LT, MU4K\:NY)T#/%S#-2X%U^[S+[$?J3C"O<6RL[ 4*W)$R5L89X#; M#2)C$77X=\N)!O!AP"T8C K.AB,6&L]>Y R,$6PV3 O^?V@GK^'#(<@@ UZ^ MB( [K"Q=;O%>43:7MIO(+H$3T.YCQ>XH3+:X3\R$]!NLP+8"%7CS]EA2@7=> M4I. P ; 8D6Z!.\Q5]DYW765G0)YSD):I.C5@(5M=FJR2X-UY53!Q=:)F03!-Z\)I MW=2T/AI::[X^'EHKR]A8^VM$LO];8+WI>M/U MINM-/XX@MIO$Q:K"?FT5LW9H[68[N= 'V/QKVOO/6R1]%M$_WJR?KX_XU/%A MU85B+E)_/13+Z1/?,L^:ZXM,:RA6%HJM7$3^1E*QC'[P=?/L]#!Z;6LLEH+% M=BZI=B.Q6$+;][;9:K0/ HKJ)PU^Y*XWMEV5W"W*6&*5MKZ.=&1-XLJ/K$E< M^9&/B<3JN\E$H&\N?#8?#*K"=JJ,V]>[+G+1EW.I:K-I";0C^V&[@[X L?:?#)3DD7&_XKL)^9P-U1>13ZJ MVEU+F31W";.026464XY3NP/,G\),OQVHUQ>GZTL_K"S'=0Q278,[&=*ORY2\N"97>!JO_%V?:Q'AK<1PSNSF;>E9?+[B)K MZ)B=YO9W]ON M_K^]KBZQ<%YW'6M15G$9D.K?QGG[L)/?V&>G>HP6(WL[:R) M7%6W(I!=L,?_PJR?ZP*@&MG;(3N7GU"0S"[R[@!D]H+B;QK9&MFKM)'-3.3M M97:1MQ#GYD6KVB&_U>0Q93BIFK%A1SJR)G'E1]8DKOS(QT1B]9V*-XM*Y9X8 M%&>BP@Y6.K>ND_.;+*R56G@6_+(>$O5:<_N+5FU'5@:/[9R'>G,\OB85?CD> M#R3A4^.Q'#SF6J)N)1]?G ^_'(^M,XW'X\7C:2YJ:BOY^.*<^!7R\?0@\*A^ MW.X2/5@Z/S5GE:T)KY7TDA*[U(7UG(X9D;F$A"UE M9!GZ\&'H'QJ1Y>C#N>B(+65D&1KQ853.>ZEGN)J\H:\AJKO1FL25WVA-XLIO MM":Q7 M, M))FKCKW^=OJH4%-EO.:<;Z6*UZ+20^8J:&NXJC%R^7#-59@J5;P6E?.AO'@E M!?UGV0;\9^HY_CZ>I&R*GO\[F429C=E7]S_']=+*"^YWGK1MG/1'?CJ?U;;, MC,DRYZ?N.V#G9,HF& ]7?SR<7-]\O+IY$#NQJ-%BXVRC,5-2_#1ACV"P^)Q] M.V%#>,DO!G.>V33XZ?TFUIA\&Q^__SLS1CZ"^6^A9[UY3\WLL>C7)?*)&P9_ M_YG!B_#!Y?AY+4CC-I/Q[F<;3,^?K0#R_&" MR.?Z%_S^[!3OBOO$%N)]@7$TAB!()&@4$-N/G0=M'>#K#" MW,1SZ1N 'G,-XHN);P?<8'TO"@T0C]8(?C]A\"INP"^9:]G,,6Q72&HZ/>#% M3\QV",/AB(7X"7]B3L2PW(3/'R.'^<[4Z$_A:VY8(YL/#2^9'LKQ %\T9M^X M;QJ>;Z#'8F+"*/0E"A9CY#T;H0?L!I#"N< 1X$6^!;O"W $^"0*%!P$^"F^F MV;D6KU6!D@^P:7C*,G?Z7W\[;S;.?@W6;F*ZT?P['-OD=_&&0]O"+WW^9//G MP!@ L_I\*6$GL,<(B8$!?S#D8A*N1-4^"X#*\*PQB?R)%W#"4$IKF 9.*S]! M0:^46.G06;(97<*9B,7(#:!8VG%*!88+7W)@G.8. M#%S+9UQ*EU;R8?I;LH0NK""@H_#U9\=JO2:S&HO$' MI$J+3UZG"I5JHNS:,HG;<*_J2KIQY^U"D+MYM^T;[XECZKK1JILKNV[OWM+4 M9-RH$%TP^?WST?2Q<87'3,/7L@Y&?" M,ZR9K?'3K?'2K4$)SFR7 D,PG^?$\3R* PG0J2N"D)[M<&2[%-,QYLRE*)&A MT>/B\&B>=?%/_#8--S6ZHB5FXZ+5HM&3IQM7"YZ^^FZ-F/O(,S]KUXRNXV2G MX<&/? Q7<$:2!4UYVFFX]HM3C%*QO#*(Q\OC@8R7AKNQCNG'G.ARV! MV6&BF@QXEE%KS^'(P%"YX)UI@(CP\#?]* "Y& 0P,G[UB!#%N"G?"Y ^\!*$ M],2#2:)@%YI)8(3L&W<1'Q$]CLP81/W 'MC,MW%H$9PGX0EO>P*\#>0/* [( M";R5L'V@'5L!3GR+YSI30Y)5;.*GU3\0Z7S G,"//FZS@*&4$+14W_LWEZL4 M<89R6W%70QD@YF-,%Q 2/G&0+_KX$XH -)YP \(I!9S9P3?Q@PAIB<(GI,T9 M8ZP8/" VB>;%IR#!:!\17;[GQ%M(+ 4<&P6T^Q&0/Q9O,-[ !K3Y!J+=!V3 M9(8@7?$2'1]/&&<@:8K3Y ,A;E9LK8 4I\A%D( 8N!?/0-7()S: 50FEW'WB*-<"$:&)NY#@$G^R&/DXE\S6 M(_Y"1HR\;.=KQN\8@1; 6D!%-KP^G#=B^CCI"4T624.";HU,E3&D^(U@[O1[ M(62%V#.0C>PA2FPGC0\DE'BP32C$8=VFD7(Q;AO./_[."'B(DPE'XLP%FI B MT:C%\NB#W*M8'.&ZZ9&SY)$258YX5 QR!,)U71@1% :C>2[> M(L -&BER)T;@ FGE)CSS>0D?!?.?P!+F/^KRD6\\ $"7?F'TI@'L=Y Y*G#^ M\K%,="Q^25/#6>5^7A,$WHEJM9-!8L47[81;,-DQL%?: A724G\7HH@9#F?$ MP?*X\X4. /0%2RX2)PJQ .HG[J,),HZ.YQ/;%:U6 _8@?%"?-);HS%QR/VA(<6 MC.$@DR5A5CC)0.#/>/9\9P#V,$<)9V' *T[E+^!G.YQB9+9CTPSQCP#F@?^E MB0M&G<*^(9Y#, $PP$A[2)6PW"AD]"S4ZV8_;D_'3[Q\F=(7P& M"?_AVY#9@-,2K.-G\+#Q._+3'?L&QP9,"L$R\RFZ,>@<%I]_M#E]RGS0\OSD M)?+CSQX#MB?=E2;RQUW\Q,G-73HRZO(1'%*"E2TQ@B#K##__/(8EHD:U; VD M+:$QAT^8\=>SP@0%$[(T:/YX=L*6Q,(D-N>DV#KA ^R["K^Q4#]F?A]^%=>_ M0-V45#9BJ#GVAH/W(SW2^@C?N$'"\3#5L0>S &J-/!<9F1P^L54AWICP9CPQ M,^:S^5& Y/!U0/^&;^ OH2H['#^1FW+BN2?LQ!K9$RD.1U[H 8O'J3A@X_A" M(YZ0!SD>-:7:94PJ2AXR'._YQ/)0BF/"!S^)J0:'.BJ>6?E.# NFLFV965D1 M3R'9>1(_9#,^$VFEV$"E(,6P!+C$.7D& MB4> 6A,NDRYSF-Q=*0,*_5)1MN<'A0\%2^Y8=:;[>SQBLED M "BR-.(Y9"9ZDW+T'RE'BW?!?+C\"5 "R$JBL!("^A8.(4SJD:X%8<<$('PG MOCT&4T;(VH Y(M-JAJ1F3L0*!IB1F=FG$L#"A_(A2Z !0@RS-#^CO"#/Z,) MH',@62J8(*%1[T%Q@.JFQ84YS?"@2/TB=-J"G/!1;_%)YW!!F^"<_DVZ!0H$ M7'7 '6&Y^B0_A7V,;@UI(R?O1Z,'[*G0&R-:+8M/0K)221D,A(Z3VOMC$"BP M:0,.;QP0!X&A&J+ #[%FMUN +J#<$N94G*1ZI;@&Q$9BPC/@G7 'J ?'^Q. M<6L%>P53#H92#[5#1S V9;PB0/*6"7 F;4R+M%>1*F.*7J12S+N2KH#@^J9 M'HC0P:P=SS)V_/8^\M2_$TT\8="C"P .=3P!LCF6J8^@EW%\"(23,M?GG+(T MD2E%#BQE31)3D(G/4A*!&(%W35!\/'(753U@#L%$L1>*&S,AV#CO+ETO,G%F MB)&R[!'P;>8>*^NHNJ TQU15(_8D"_GR[V@@^1S>(!1)85U+QBY/4\2W"U_Q(OC=Z(3V;>2>(*21H MZM#%W%<3O6QQEC-1,5F)*1Q@D]3CF2QKU@N%'L1X3K ?B6P#H0,R=QSK4W@% M"?JX4,](&ODEZ@"P&=(1$ED/L4V4->T,QE"6XU#$QN0Y>;C>H[\@N$^0TP FM7=XSB"QTS%B>\1SC 29=Q])? MC-R2;J58GWA"0B_9'J%O"DDB'.Z@ZS=%J8DF<97/@0(O('_#$/19[*LN\ M%:4W-GXU%AT/=W)2PL<8;\'V7LVAC?$3"$;Y9$ M)]UBK""_$'X)V :1'UOOX)7#I.MLPKT0OE9/<4Y7O+'F7-K\>$12XJ'1#CU0#A]$<+I M:B/AM-6/FY7<:0$NJ?WN"U!%%=YXI/TVBY XW'__T13G:I[O.T1928JET4(0"^R;YTLH?VU!YQY2] MXSY^IBE8/:9=>:!K@FN6K6BQGH^>XS _$.[9*A3M>9F\T85WCH+:6XD=%:RW%CX36:DMQ]8MTW,FX7K4J()18$6T37,?5#!H7 MYGGK3,%M.5J"M,UZ71-D/R,71<1VLQ!T_:C EJC%':T+LW'15G!;CI4@S9;9 MN>@HN"W',')11#P]+5) M[JVKAF9^2%S6;IKUCN:RZA&VV3';YSFWJB;LP8O/TT+%I_J^B]E7S1KIYELX5?"#M_XX^K7:0)M2:!VK:,) MM%L"56VYQSARH3S8JC4U#ZI,('V*:2%9[3!C!&4<6*(5Y=V+F+-:6TL8A>G3 MT6JR/@'TR/MDP=/:N69!A>FCCS M(E^M)%>LE&!(>"6FMSS4U/JDZ[0^-=NW\);]OFM2:172JDPWPL!"UXU!UT+B:?1#"7,=Q MP7=9T]_/K03>\4.KUHHG8B;=VF2?KL6_:-8ZZ2^8[/$6Q);'XM_4T^56HF[L M8E2TF[5&CJH;U'T5F&AVTHW=_-> ".H\N TLQ!81.-92NY$#R&H\-;./;XB. M1JV^!W3HTHGBO9N53OR-8Y'TR4C73GPE,'7M1%V(3:%"; I0L%),JVLG:I;5 MM1-U[<1=X5)7W3HJ6NNJ6T=":[6K;FEJ:RFN::VEN*;U(4MQ]8.:NH'-5+C9 M>N5=: EE^L[-B^;R*F_'<+.J&$&:9K.QO([5,1)$F4OVS8L25"XW51'N:)V; MC4Y+P6TY5H(TZV:]J0M9'K:XRA?&J78NZ%7D>Q.N"!$/'SX-\[RE9?)AT[!] MW#)\9Y9]O-\WM2\U1=9^C",7IOZ8;=UUX,!IJ$7?SD6?"DM7WVGYU86-&!B] MD(6J5?I3Q/H\/=.>,G6HT30[*QQ?QT"/G*;+A:#- PVRO* M:AT# ZA%CX[9;N2*\BNP*Y462*U]"R3U_8^ZAK.NX:P)JVLX'^S(NH9S!;E, MUW"N*&%U#6?%1JY #>>]E:;#2$Y=EF[W-7W.SVLM7=1'90(U=6&Z71.H:LL] MQI$++0]"JU>0]:&%:OBA-G[JV8K3\ MUR/OMX"ZKMZL,GWJN@>-%I&5#JQ%4,X$UVI->?=BIE5K:#&C,'T:9_H M'GF_,E)?Z:A,GV9#RT@M(U^K*^^NTPEF'9_<>*$QYLRUW<=AY-!FG/DF M_AO0!Z 4!@YL0N2$9-R,Q,+'L"D!+3VS+GJ5B+.!=8B[!'@7 TG&''B7-QP& M/,1F#OB: ;>PR0/^QH5/X\XXPH69-4-RPX= I6BFEU MCQ'-LGN[#-B?FJ![C.PF)UA7IS]N6NOJ]$=":[6KTVMJ:RFN::VEN*;U(4MQ M]:.*[N3=@@KW2J^\B2RA-%;=;+3J"F[+L1+DS.PT-#V4O.'>O!M&Y,4(TC#[)P?=YWFPQ=7IQ=%BBOU,S%[,I9$$3)N9JPH@*P"S*D8 MJ !\55S;,UIGF2XT$ M.*?K^IQ69^3"?$S+'4R5K$\HXD\G%'^J""D7L^HA52]MU,V+SEKI<*S52P^8 ML&?F14-7:U=GY,*\TH6Z>50@Q@$S61.D9YX@FLL.GK"-IMFZ:&K"*C-RM;SD M%2..LK"HVG*/<61-XLJ/K$E<^9$UB2L_LB9QY4<^)A*K[Q"?+AW\(=,CE:MK!J#D:-66EXK2Y-""6X]YKB=D^-ZN$65F M^/(&R9;C2+LH8K?#'QJ-6MV 37)LSS6&,[T;5_=L%'T-?P!+_24_;]:,K *. MO1/32:$6^>,+)H/JSE:_@UD\B,:--#BVP7G,SLH;&LU:"_M*8HUP]LB-B6=C MG\AG%F1:2@XBCM-F;K*W^";;?8(?>?X4NTUR_XF;U$5R!*()9O#,?)^YX=3@ MWR?<#8"B^*7C/=I -"LP+"\(=]D60G_9&?SF>U!3EC M*,YEDO<=L"XS!9B,AZL_'DZN;SY>W3R(G5A4^+U9WVC,E!0_30 ,)WV@];<3 M-H27_&(PYYE-@Y_>;V(#R[=A6TQF $R'_^_-WT+/>O/^@:@ L+N$#<>.I'__ MF;W/-$)>+9Q>+P'W(H*:]04R9'W36"F &LU:>_M?S\N?F1FA$O?CUC-!76.+ M7TG9DY48\[*G46MN*GO"S*N -Y@#]($W2&$C7VG!?)@%(BGI_FMB.]QG8%O\ M+U R&L+WD0\,;/#AT+9L[L+_@G@4^3KY:]QPOY+=:^]!8#/?&I%,_LB?N.-1 M@^#C[F1;JI:W:UVVDFTL=>_934BN&UD>.@4KQ;2Z]ZQFV;W=QJVZ=-.]9RO9 MW4QW+3PJ6NNNA4=":[6[%FIJ:RFN::VEN*;U(4MQ]9-19ERW@ZSK=O]7RTMO MK0ZJW+)Y<::K+5>1KIV.;D*@SLA%A4 U*Q>Z?\!,UC;;3=V#H'IT;9GUMJ:K M.B,7%C]::%]Q]9-BNH'!LB$GWM (O9 YA@^:M!OI'._"D'51RRG1AWXN'S U M&O5:H9RNR5'Y./$C'5ES7#7)T:P5VJ)4DZ/R O!P8]&7^8C37 S+,S/\XJJIV^,"MH)B8>-OV'>B:\?R[TW;?!*,$N"C(N MG8\GCC>EY=&6+DG,&7$VL,#4"FO&[QR^!-EF3U@(PT5^=E\H;V?AYCW#?(RA M ^2.\'?P*.L'GA/!OP1*D^H0U8.G:],\/\M% MTFBZJAH"LCE=*QL!,=FI>Y/-H-),=/%T[9KN>BWO3=#U\X5EH$7:=MZ&1 ME03*GNJ6&BJ1XT*30\ ]/K!@KD_GA\,?X&8O2#C)!WG'J1_I>F,8XL4<->=I+M[1FDFIF/L)BP9V*)KR$ /''#OD24I&J[+I%==XTXU-&Y1T5K'9U[)+16.SI74UM+<4UK+<4UK0]9BJN?8Y&X8Z'YYHV$V&\OC?8X! MHVK1HW6^//ST&*EQ>+*JV3@]KEP!<9UOR^M\GESGNUSM)FGS]HL":"O PDKK MH6]DU1P3AQ\C#-ZN3>6=@<$V NJ=.B15AG(O./#S^8*'KMH>%8/EU#4M9H\0 M!8VUS=J.#@8[\_ F1]W9Q3Z6_N.[@_3>8B"N=Z":^R%5!#AMZR:XU:-JLZ-+ M'ZDSNXZ3E/UX&5GLUYHVG@5>/>4,]]&#=AL]PE^0GW,<#B8+I_*_&AC".;8+KN;K4XS M1"XN(ZTP">>:]$=^.I\M\A;FQ'_? 6,VXR\Q'J[^>#BYOOEX=?,@=F)1 %:S ML=&8*2E^FK!'?M(']'T[84-XR2\&O"E9<>H7#A*G%Y>/B7T4W=K:5Z M1-5]Z10:N;#@K.4I]3HV:]<G5< MJYY*P+M>: 3PI#V$/7*3LOX8KL2>F.U0&(/+0\.;<"QU[S[*X"J*C/)YP)EO MC>B/ 7_BCC<1Y>)]/L F$!;S_2FH]<_,'P0U8W?Q%^5'GWRV_XIL6.24%G_) M)C9VCKOG@1?Y%MHN.R_O7MX@ERP8F4#,8&1P6/4384@#VWP$PRF]3KX%%NIS$5$'T\/? MTKGW843E>'&#HPDX;X3-WGN+.'6%WH[!0Z46/3IF\U330QUZ MO&V8%_D:=*\I-*9^)<1K2C4\".&IAB-[&T USLS.Z7) '<-6'CX1WP(5SSK% MW.3J^H.%Z#$=L[7B:ETKQE*V?[)=YEI:MINB>U=%T+"9FTT!@!;@ M"$P%R=HXL2J4GSXNFC;7%K34-#TPFFY7)%[;!/*8NN%A4AX+4[\KXW8RK*EOSK2J1M\80%C\3MCKCGS,&D8^?4-G) MM:4JX>L@3$MNPB-@?[H\KC9I&FR H\M"F!:P"(,SW_7<$SKQ =7CP !T6Z-\ M_4[QL@&?^-RR*=I5A."./6"T_] 'IA&,F,]/^E1K$^-_N1LP6<=3A*7/_P3? MF8D^)S6$.//$&YY$^(,@X&%0,QY@ WYHU"Z2(.(!G]5::".#%3L9A^:^J.+G MNM\T38JXE_4^T\WK8P1Y3L,R(MP@VZ7*GF[H^5/XB3>(K&1;X>,!S'?"IB)( M68;N9P.>+: D$-6'G0"\#43 -LOORR3#5P,^Y#ZNR^

    8">ZGW@<:.\]NK8@-NQ0:#,'5ND-AT"E98O-3@!T78=;,>6998$&#&/ M>SDHFQBV+%8A*Z&FV-UA^/3>I=_;KP(>[XST.K;*\%-=*:2+SSQ M0ZM3:R7R8'/V?@%W"_F3(!M9/5/D-TVK&;,0Y'4X);$6@>$W E%W$G)_G"WB M:TH92]D4D\BW1DS*@PUG4P6BK^ %"7\CO; Z"O3'A\)PP3W='/+K+P+^2\ZU MFO%IB_>[&ZUEB6Z1_A!FY_.8,812$<0L!4N 60 U/.L;>M%C*0%?W_>^!HN/ M)5&AV[,XCW.$[""(8&941'GFE1&LS1>91^.)XTTY_-)A[B[S=\IGNMOA\.0# MB,.F]1]]+E(B-I;6>7R!OD=%!V/TB%'[ E5#,(&Z*EB!P+: >;[>#4C M)?1V.WWKR_!L/::-6,_XW0@ N!*9^$ MH0,?./'?'P4OBN32OA>%P%34XN'>#KZ!4(91JZ7X=&&=1C"&HQH$DT]RAO)\ MA0@")1GV"&0FBFV9L$N:@3022 +9+LBBL? DB(,['-D!.3(J=5YOB[FVQ%R[ M1GSH>XZPX^]0!QH@Q*H(J'BWKIZ8$R7NI92O5NQ%=3;A%M0 >)0)30:XR Y' M0O]%O9B<1['?+?+%C*R1S3%.A5L122+0C6R+^R:J#9=7M\*S)!Z2^CRJ%_(A M\0I\\A,\R<76(Z?"D)R"8- EQH-$1WDS2 EB90DR20CRAG03#H,)S>0J#J$! M.]"XCQP>B%$;+7;2Z+SE[^CWC:$"0^0"K[ M<"*"!3&K_D6)V(YT8"V2M8Z M6+\SPF>0["O*0^[2#^@E67DHQ6=6=,;J'NZ#$+B!^-TS[0'IF$'4!PTQD:9\ M=O-M\M6A7VD M:-P+:AP(.H!APX/GIK8." E&*?/S(?5;UTCU("!#-:['XTVO(EY65J>5 [+1<86PI) M Q#LQRZ8Q!" W:J4M!1F&3$56&1SAEAJ#-GQYEC9S4F%8:J]9.YKMFLR1GQ( M]F%L%P)8&3$Z,AAPIN!F%G@N:,U3P[&_(9Y#+_\#\Z73KVFC;9=&6TL;;;-0 M>^&K7J@F3YIOWM]U[Q^,ZVOCO_YVWFPT?S5N'_YQ=6]Q129LS23='B'=X4"A?*)X]U#V8CT[PR ^(_?I18*.J3)6P0.WQ M(T[.-EF5S>=.K/,X=BB=>\;SB(/6:4P\Y%R4YO@T*FHP?#^Y4L41Z0L+*-Z? M.4C0@3ZF%\/,\$K6'Y!;E-3C3]W>!['5V:)9->-C>LXERIY0[G"+Q"_DL0KK M%G^C!3(5U]C3U/N9VRL\O2*L7B1T3B- M+0ZI,=%9'+W".)RCR)IX-TUX^]S%SH5(OJV'-',5*PBP#1KQE<7+$&\A40+ ML,<<<==X!=(.I%6/6WBC;TL#]:L0U/+8R]^52;8Z_(V]\5R^23+;_TK.6(SOO]7I_^62-L]^S%9/;!60%Y-%?62<9"89#?K,-X MYXN3@#.[%_^XC(3@-ZGH'X7AY)>??WY^?JX%W*H]>D\_=WUK9#_QX&<^>&3^ MSP,0E#\WZNUZ^ZS^,T+RHM&L=\Y.+LY.ZLUZH]ZIA=_#-^];M<;;QCMQ9)1+ MKT/;F7L>A.3FZ>)\Q1&+[3O\B>-T.NV:'N6'AQT MDX 4S9::+5]S"K3;9Q?B%&C#^=@Z;G9J! #Y19XF6!>*H4BA\UV,837R4?K8FH2IK112$(^8-:@ M6-GV6Y:)E<6_3(J7''@3NL#/O*(G@V1;]682D,G\/G-Y<'+[W>%3>C=\ P=J MLT;WJ^U?-7<>.7/<^%KKU2YK"0?C6LW""G4^J-G11A8G:IF&M+' M ^G>Y3]6)AL>-L@?V'?/]<93L'-"[F+JI=&S1GS,-.J/&O67W<_51/I3-;'^$8LTV!KJ&NHQU#]W/U19=?G,^MS16-=8 M1ZS?W5]5&>MW/@\ VVLTF>W*UK]J2XP=QCYOUJ$EC7DN %%EH"B-+12E8WVL M ,[1YQ"7@&5C?N)2]#,\P46,M3'Q^1,FM3M3*@PT2&LES>?(QD%1!)(>ADU1 M%9XX6;9WTI!O^)_(Y4:C81J-BXLSX^TGK#=TX]6,5JMUTCR_.#][5WN]]'S] MMC6+I<+*_9<1[4:KUMABQR\CW\L9/IECT]"D05_0=G(](W_ *_,/K&V>JXS^GR!3QTD^T M YC%CCNK!/*$>,0;A$(7&OFN'8RX;,> Q2^(^O-+WDM;E^/.K.ML-*;.K-L6 M:LD.OS"Q+L ^=+WKWVZZ#U_OKWH'G4&;_*_=63KB7>:Z4Y3/2>OJ)'>>:=6) MF>@@^+IQT6J;<^'HQ@CK9>+Y8C%10']$A1I)/X!A^J+DB"A8B3U=^GS$G&%< M&9]J/5374:D,X,*2&TLQUA(;M%EVQ('DD>[5/^Y! M"O8>C-[_]1ZNOO16Y#'NTE9?8"IUZB5G3HIA6KL9I5/2,'LC4CDX_0A:\2_2 MA/\?YD98]:S1)-NDO3LWQX?I+QNDVBY-L2UH%C\'/XN=^*W[?S?&U?WUY3][ M6&5PC\0_# 0OA4=QN<^_L:EK7/FV]2W K&=-DCT[)M$!:0^HJ#,6S:8*Y%=) MXL.MB*76=-H[G=#*>7N71+_G2/1.FC>E$TI1L[KP6ARI+E7B@;W149VH6VJ< MV:E>5O+I??F/^^N><5M=?5Y0):9:B(%9;*!5WGE^.?+"#D4AVI(^)O1\3 MZ;GP+S@5C/1T]X:RT0 WC5DWPXL)CZI"VKQ GD.D1O2P06X(#,Q,#$N:'1MY5E1<]I&$/XK5W>2L6? M@!U/.T"8P39Q:6,[M7E(^M(YI 5=+>F4NQ.8_OI^>Q(&VSC!CILTY060M+>[ MM_OMMWNB';DD[K0CDF&G[92+J2,I,G_2]7ZCWMC%TW:MN-W^H5H]UD&>4.I$ M8$@Z"D5N53H6O>.3[L6IM(Y,M=IIUPIM0QW.A'6SF%YO#7KO!]7NV_[)65/\ ME5NG1K.6>'-^-FB*1CUSPJF$K$AI*HQ.9+K5:6?SI2Q5O>S_T2M$BV75-]W3 M_ML/S;L+6^*T>W'2AY5Z=MT2CJY=5<9JG#:-&D>N!<76&9V..[WWO_0/^P.Q MW]BM-]JU\FZ[EG7$L]N>[WBK\S(=VJSU[U@)D!@R2UL\ZET,^F_Z1]U!__SL M\G^QQ[M6^A5Q(F>IZ!D57%F=5D1 AB6$BZ1K?G=;]772/SON<66\.GC0<&-7 M]$4D)R0,311-48HN4E9\S*4!".(9[F?:.*%3\4:;!)Y4?Q=Z)+HH;C$@Z\3E M#/6:V&_A_3<+V]ZN.)06P4)8DIFX2O4TIG!,E2)Z9,]3(((I18(KHV0L1C+ +2-THL!FNI"[)Y!20-9*,V.11%X1["[I MM+@7PAF8C)FNV 8+!,J =R&68CD\"L[B(M05H +B M>&R6GJMTA&J33D&/2H,X#Z$3Z5R*:P504%RA&;+!0&* Q?$"*662[!W3 &.H M6'&%)?(8 H"'1@Z].>O]":2-Q"C64SO'CJ&Q O%+&))\L_ ;7E:6(&#GSMSS M=J-0\&I7#&Z%[.6//^\U?FK9,L]E;^%RTJ.1PJ4/9E](0SYM2(,:QL3A%>!8 M.8R5C5B]ZR"2 MZ9A$%_5[D<>0:.S+:N-@FW;\TL9!6%P5EXJ'@;3 #>L77.1+<"K2R[ZL;6AT MR] (AGB?=T$&"6Y,S]E[__/ V98[XI@L;B*&GI,_G^ *MXM YG;])P\%GN@#K+=&E:\:4HDW& !R>4,9(9A',= 6H@'B5@>DV"U;! MCNA-9)S[RN:8TVB$P4--$"V[8H"XZ89K,%5QN7JF\"C"0K",+2:7H<[=PQZL MPZ7R1IIX+!M]?KX5P_G YPN#BDC GQ8KWR@@A."7(L;W<\5GGW(@\$]6 N(1 MK,(=20=!;C@C2_2_0FNB<4PUQ.\UH,L&4%2>;PLUD;0WS8U+VV.'0L]Y?@,E M'\UPFKJBN#QTW9&O?/&>-@XO!T\=D_T+BW".M,JB ID0EK.]*$8NY4=TNWO3 MS(UK$A.-T\;>-!A_ RH3G-@=$1M:L6RHT;[X6:C@FU>P#7B!62PS%[YYIIJ# MF#[F"JY[P.9IX,]E.QLW"7=QFN6I02'W?"3@PT6@",DJ&\/-1#HE><5,7W1M MS_5^WO!O4N8GVT=!H!P>BP/9BOJ7(19:NBG_!^%23BE8@KQCF*@4[<:BU]@\ M23 !_TU^,R5/KGP'L''4P*-J%QUC9%!>%22#/",@G?YU5)GW2L'?*IWH>$), MXJD3B-=,(>\A2J@X%E:TN[7?$GL_'A<6AH"5F2J-I,! M_&C66R.X6K4 5M-;GJK01?A9?[$%3HWC3(8\2;_>JF^Q*C/7$Q&_+&PVD!;_ M()P_*!07QSW+JJ'YX/!^2GBG5T+?]8LM[Y_\!S&RRU2TJG9FFC7\..D^^%, M]"[Z1[]=GI]]8O.-O?5#AP_SZ;0\(@=/2->=0 VUB\*. M+Y OC 4^F.B^K__>5EHY1LMJBE]EBH/'K+%7$7OUO5=?KV/X/]$[_P!02P,$ M% @ >88L6*:F8J2Y!@ GQD \ !A96AR7V5X,S$P,BYH=&W=66UO MVS80_BMVTV"#[1IP$J?UT":=XPW]-M#2V>(BB2I)^66_?L]1KUW M=O7N:M 4+VK^3TL,>Q^'U>Z[_IO+IO@[MTZ-%RUQ<74Y;(IZ+7-BJ!*RXI)F M8J 3F>YUVME2U?ONX$T?VVK9O"45>Y^=T9+/6EML"1(M,:V7( M66\P[%_TS[K#_M7E]9HEW].*U;9^19Q%1EGQX5!]QC;5R>/:JH?BKZ(Y)2$H:FB&9++1;#S4RX-(A@O\#[3Q@F=B@MM$N1) M]7>AQZ*+=!5#LDY<+Y"!B7U^4+Z=%XU#<2HM;(>5R4+0-X=PUG1;O0AB#(V,N%SZ#!0)E4-@02[$=EH1DQ"Q2021LSC]6 M^V=DJ%3"#B3*QBAV)H&9E4]"CTB#.0^A$=-?TV264AB8*G")QD.27 MA=VPLK*&B%T:\\#:78+RZE ,[WCP\XM?&_5?6K8,>TE5G&QZ/%9X]+[UA33D MHXBHJ%%,[*T (6[&/ MZ(4$.(H0]>9!)-,)B2ZR>Y#'D*@?RVK]9)\._-;Z25@\%8^*:3\M8&3]@DM@ M#=TBVFS+U@>-[QPTQD'LYWW,(<$LNDLJWY<'XIPL7L(E3R!/Q[O"W!;(W&Z_ MA4EF1(A=>5)!6SHW4( TGRKKBP=2E'H]W.)69;=>NH9BZ<$H>6L5T$I9UKRH M4(*PQ>I8A7[ZL?G(JE!)H]@!5;"K)Y.4->66&<_GKO7TZ$M-6X)!F*G\I@S= M305Y+)DAX)8W8L6I"AE1:74JF1VD139PIV.8I0F7(4<2*#E2L7(+)M--QW(">G1\X(O>O(/ FU";X#OF1-*P>DQ\,<*99Q8+()YH, 8":@R\,!. M40X.1&\JX]SG/8> QF,T+36%\79#\[FE[BWJN'C$ K7'5!JV)QCQNB&\_T&4#*"H'^4)-).TM$W/B>R@I](S@'2BK M=8$Y]8;B-O65#_P(J$UQ-'!$?M&';2(-K>2U4L,TKV ?:J#O+=8U_N1\O['FJZ&-NYXRA P<,6CVV!(L2N9+';X6)&\H9IJ6!\3TR^ M5_D;W'*$?Q8BY1Q0C+H;JD.&V&CIMC@>1:_L<-@"&-"(*@4W6A"CS9,$P\P_ MY)TI663C96?7A<-31Q?T-C9(O@IB0[Y>$%U_*RUAJ!1DH]*ICJ?$C)/*27FY M-F6)49+%>D%8G46ZJ"MY!V2 \DWX\_!'?>(1;>?GG'+#"!B3J=I,!K"B66N- M86C5 N4F?VIKS53H(OQ:>[D'OHGC3(8\$KW>JWE59JDG(OYBT*P#%+\0+A<* M!2>UE_[L6T.121.5-FLLSCZTCURX8=_QR]:460XMHO3$Z>RNIJ==/ETT-QYQ M>C4X[PVJIU?#X=7[IJAG<^&G]]+IXY-O3=R.C:"G)]7^UUK>O*3#DI%G\OT+6IJ2S_Z&XI\#C ME>_L/45 MEOK_/NG\"U!+ P04 " !YABQ8( @]+_<# !K#0 #P &%E:')?97@S M,C Q+FAT;=57?W.;.!#]*GOII)/,@ UV:F5OJ8I\X"TIR0:>8BJG T*7XB^Z M[O-T-VJS, M:I"JSNF;O6%T%L4.O+":CPM)<)68_EDXGCCP]THJ-J]=.(TFB0.V52E(6$$E M3.@-Q&5!^-[ JUJHAVAF56L7%%TKD^1LP1W!%DOEXDP"G!0X$5/ )ZE$ MR1>#X.IM>!(FT.]U+-OK;M]Z78*_:@#?AV^CW!N\Y#-9N0\T2Y$M*MS;0(9! MG(2GX=!/PF@"%Y?Q]-*?))!$=X)Z&K+]"BX[T\ZP ]-@V*#;_6/+^&%M9[K L*L+KYLEV#P'13DM1H/+-=S O10/[<0,+E&=8 M9Y/RFA8S?.Q;!A+2ZQM ),Q9CF.[2*8T70FF&%8.X1D$ZW1)^(("^BN8E#IJ M_/Y!.$+78/<:I*-[H6U2:",S(#1@3&H.@6#I!UER RX$E2S3>X#V,5PR.D=/ MZ%FQ:PK1?,Y2#!,YT*C;3 W =YI% ZJ5D"N"UJJ$.X+=DMH(5F=&LK+2^\O= MZ>TD+9@M_I2(&>%4FM$ZIS7X:<.^%HR!XT09VJZHX0,O;Y"J!76>0PC/)ZD# M^Q 2S&.KG/DJ1QFE2%JN%W&WL()^7#%!]UA7>5Z1 M+,.);_:L!DJT.$NJ.Z)C(^_-0-8.; ".K?W&]R[0@H@%XXZEI]]F@NT_^X)U M?]^]UC6=DGR;CRJK^WC?3_RD=K[HXB2*1T%LGD1)$IWCB:!:@RQSEFU3[Q\_ MA_-MBK08=&47O"[>C/WW$PCB5 O>WI8_RV6%F^5G+!PV!?*# M7.!%;W0_^88L M6-03)MP$! 60T \ !A96AR7V5X,S(P,BYH=&W=5VMOVS84_2MW*5(D M@&3+=C*TDFI L>5$16*ELC)DGP9:HFUN$JF25&+OU^]2?N315YJEQ3##%BSS MWL-S#\\E97^ARZ+O+RC)^[YFNJ!]0A?R#[KL=9UN"T?]]OIG_Q?;'HJL+BG7 MD$E*-,VA5HS/(1R>!LD%49I*V^[[[37:5.0K4'I5T'=[@_@\3EQXY30O#]+P M.K6#\^AT[,*?M=)LMO)@%(]3%SI.I2%E)54PIK>0B)+PO;Y?;:$N@N0TPC2G M6GJ@Z5+;I&!S[DHV7V@/(PEP4F(@71[AG=)2\'D_O#Z+3J(4>MV6T_7;FU_] M-L%/U8=OPV]9[O5?\ZFJO">F9:@6E=X=D4&8I-$H&@1I%(_A\BJ97 7C%-+X M'JGG(7?>P%5KTAJT8!(.&O1.[]BQ_C5N,(%@&%^FX?!%Z6Y)OG5^A7@$Z5D( MDR Y"<;AQ(ZOS\/?(1BD9J3K/%BQ'[E:=VD1ATQP3C/-!(=;IA>@%Q0^U$1B M&<4*$EH)J4',(,!^@90J#9,5MD"IX,"$OG[UIMMUO($H*\)7S5W'.P1$&PE9 MHLWM#S 3LH']N(8%RG-LJK&XH>44;WN.A=5W>T 4S%B!0SLB$YK5DFF&74)X M#N$R6Q ^IX#3E4PI0QK?[PE'Y!5TN@W0T0-FZPJVQ"R(+!@L)%-PB0YBM86@ M.(EF-Q1^8QF%2TD5RTWW8]$CQ@G/J$EA='O+2 'Q;(;!LF&%)"75A@!FF)DW M8EB $49H"ZI:JIH@IA9PS\ ;W1L#F^I)+BJSW]P/WP89 VWP)T1.":?*CI<% M74&0-5R-@2P<)]HR>>4*_N+B%N6<4_<'^*G9VZ+Q,#2[V='Q%Y$..H>0(NF- MDV9U@;;*4*'"K.INI27]6#-)S;:K3#5JI\T!03M)Z!P?Y(<[!>Y\L?/$1H;. MV]Z19];E)4I*D-6T\3QG'!&6_*VFI$F.F]"IUHY+#,,"D* MP#0JC?MPH$)]E-5DS7:N1,"<-=#&EQA5%XTFHJ*RF5(]LFCK9VTTX&LR+>@V M82IDCJ>HJDB&)ZOK>#.4PE;L;^J:@]&[9;E>X%=G?P^;J"@JDN<8^&[/::#D M%F=!S7'H=E#W9B#?#JP!CIW]9NX=T9+(.>.N8\+O*L&S/_],=F_?NS$-G)%B M4X\6U4.\;Q=^LG(_.\5)G S#Q#Z)TS2^P,>!:@E*%"S?E-X[?HG)VZH-@[,D MFC2;773UE6([W:=+A1?Y]67X#LV?L3R/A)D*K47Y9?;WM_OG3/T?*_<3']R' M>=)A]JA['VKUA'/N_RZB3\O^P:5D*$&%&MRI850(LDS47)L_!!MQ#OTV)CQ; M%+R8K?&G/?-]5_ 0CQSWDP>LI@#SQZ?_#U!+ 0(4 Q0 ( 'F&+%CPW9#? M- T +.% 1 " 0 !A96AR+3(P,C,Q,3,P+GAS9%!+ M 0(4 Q0 ( 'F&+%C7?7T^W@\ #F[ 5 " 6,- !A M96AR+3(P,C,Q,3,P7V-A;"YX;6Q02P$"% ,4 " !YABQ89H?R374; , MJ@$ %0 @ %T'0 865H&UL4$L! M A0#% @ >88L6$8R%P'=1P +I0# !4 ( !'#D &%E M:'(M,C R,S$Q,S!?;&%B+GAM;%!+ 0(4 Q0 ( 'F&+%C"3.+>Y#H #TC M P 5 " 2R! !A96AR+3(P,C,Q,3,P7W!R92YX;6Q02P$" M% ,4 " !YABQ8,80#X2K8 +O@\ # @ %#O 865H M88L6)T:D3RY!@ I1\ \ M ( !EY0! &%E:')?97@S,3 Q+FAT;5!+ 0(4 Q0 ( 'F&+%BFIF*D MN08 )\9 / " 7V; 0!A96AR7V5X,S$P,BYH=&U02P$" M% ,4 " !YABQ8( @]+_<# !K#0 #P @ %CH@$ 865H M#,R,#$N:'1M4$L! A0#% @ >88L6-03)MP$! 60T \ M ( !AZ8! &%E:')?97@S,C R+FAT;5!+!08 "@ * 'D" "X %J@$ ! end