0001654954-22-006563.txt : 20220512 0001654954-22-006563.hdr.sgml : 20220512 20220512132743 ACCESSION NUMBER: 0001654954-22-006563 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 57 CONFORMED PERIOD OF REPORT: 20220331 FILED AS OF DATE: 20220512 DATE AS OF CHANGE: 20220512 FILER: COMPANY DATA: COMPANY CONFORMED NAME: DATA I/O CORP CENTRAL INDEX KEY: 0000351998 STANDARD INDUSTRIAL CLASSIFICATION: INSTRUMENTS FOR MEAS & TESTING OF ELECTRICITY & ELEC SIGNALS [3825] IRS NUMBER: 910864123 STATE OF INCORPORATION: WA FISCAL YEAR END: 1211 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-10394 FILM NUMBER: 22916979 BUSINESS ADDRESS: STREET 1: 6645 185TH AVE NE, SUITE 100 CITY: REDMOND STATE: WA ZIP: 98052 BUSINESS PHONE: 4258676922 MAIL ADDRESS: STREET 1: 6645 185TH AVE NE, SUITE 100 CITY: REDMOND STATE: WA ZIP: 98052 10-Q 1 daio_10q.htm FORM 10-Q daio_10q.htm

 

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

 

FORM 10-Q

 

(Mark One)

 

 

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

 

For the quarterly period ended March 31, 2022

 

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:  0-10394

 

DATA I/O CORPORATION

(Exact name of registrant as specified in its charter)

 

Washington

 

91-0864123

(State or other jurisdiction of incorporation or organization)

 

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

 

6645 185th Ave NE, Suite 100, Redmond, Washington, 98052

425-881-6444

(Address of principal executive offices, including zip code)

  

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

 

Title of each class      

Trading Symbol(s)     

Name of each exchange on which registered

Common Stock

DAIO  

NASDAQ

 

Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days. Yes ☒ No ☐

 

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). Yes ☒ No ☐

 

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, 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.       

 

Accelerated filer

Smaller reporting company

Large accelerated filer

Emerging growth company 

Non-accelerated filer

 

 

 

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

 

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

 

Shares of Common Stock, no par value, outstanding as of April 30, 2022:  8,624,171

 

 

  

DATA I/O CORPORATION

 

FORM 10-Q

For the Quarter Ended March 31, 2022

 

INDEX

Part I.

 

Financial Information

Page

 

 

 

 

 

Item 1.

Financial Statements (Unaudited)

3

 

 

 

 

 

Item 2.

Management’s Discussion and Analysis of Financial Condition and Results of Operations

15

 

 

 

 

 

Item 3.

Quantitative and Qualitative Disclosures About Market Risk

22

 

 

 

 

 

Item 4.

Controls and Procedures

22

 

 

 

 

Part II

 

Other Information

 

 

 

 

 

 

Item 1.

Legal Proceedings

23

 

 

 

 

 

Item 1A.

Risk Factors

23

 

 

 

 

 

Item 2.

Unregistered Sales of Equity Securities and Use of Proceeds

23

 

 

 

 

 

Item 3.

Defaults Upon Senior Securities

23

 

 

 

 

 

Item 4.

Mine Safety Disclosures

23

 

 

 

 

 

Item 5.

Other Information

23

 

 

 

 

 

Item 6.

Exhibits

24

 

 

 

 

Signatures

 

25

 

 
2

Table of Contents

 

PART I - FINANCIAL INFORMATION

 

Item 1. Financial Statements

 

DATA I/O CORPORATION

 

CONSOLIDATED BALANCE SHEETS

(in thousands, except share data)

(UNAUDITED)

 

 

 

 

 

 

 

 

 

March 31,

2022

 

 

December 31, 

2021

 

 

 

 

 

 

 

 

ASSETS

 

 

 

 

 

 

CURRENT ASSETS:

 

 

 

 

 

 

Cash and cash equivalents

 

$12,296

 

 

$14,190

 

Trade accounts receivable, net of allowance for

 

 

 

 

 

 

 

 

         doubtful accounts of $73 and $89, respectively

 

 

3,055

 

 

 

3,995

 

Inventories

 

 

6,625

 

 

 

6,351

 

Other current assets

 

 

817

 

 

 

737

 

TOTAL CURRENT ASSETS

 

 

22,793

 

 

 

25,273

 

 

 

 

 

 

 

 

 

 

Property, plant and equipment – net

 

 

953

 

 

 

946

 

Other assets

 

 

2,742

 

 

 

2,838

 

TOTAL ASSETS

 

$26,488

 

 

$29,057

 

 

 

 

 

 

 

 

 

 

LIABILITIES AND STOCKHOLDERS’ EQUITY

 

 

 

 

 

 

 

 

CURRENT LIABILITIES:

 

 

 

 

 

 

 

 

Accounts payable

 

$1,463

 

 

$1,373

 

Accrued compensation

 

 

1,526

 

 

 

2,496

 

Deferred revenue

 

 

1,466

 

 

 

1,507

 

Other accrued liabilities

 

 

1,439

 

 

 

1,413

 

Income taxes payable

 

 

3

 

 

 

-

 

TOTAL CURRENT LIABILITIES

 

 

5,897

 

 

 

6,789

 

 

 

 

 

 

 

 

 

 

Operating lease liabilities

 

 

2,138

 

 

 

2,277

 

Long-term other payables

 

 

193

 

 

 

138

 

 

 

 

 

 

 

 

 

 

COMMITMENTS

 

 

-

 

 

 

-

 

 

 

 

 

 

 

 

 

 

STOCKHOLDERS’ EQUITY

 

 

 

 

 

 

 

 

Preferred stock -

 

 

 

 

 

 

 

 

Authorized, 5,000,000 shares, including

 

 

 

 

 

 

 

 

200,000 shares of Series A Junior Participating

 

 

 

 

 

 

 

 

Issued and outstanding, none

 

 

-

 

 

 

-

 

Common stock, at stated value -

 

 

 

 

 

 

 

 

Authorized, 30,000,000 shares

 

 

 

 

 

 

 

 

Issued and outstanding, 8,622,369 shares as of March 31,

 

 

 

 

 

 

 

 

2022 and 8,621,007 shares as of December 31, 2021

 

 

21,183

 

 

 

20,886

 

Accumulated earnings (deficit)

 

 

(3,831)

 

 

(2,011)

Accumulated other comprehensive income

 

 

908

 

 

 

978

 

TOTAL STOCKHOLDERS’ EQUITY

 

 

18,260

 

 

 

19,853

 

TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY

 

$26,488

 

 

$29,057

 

 

 

 

 

 

 

 

 

 

See notes to consolidated financial statements

 

 
3

Table of Contents

 

DATA I/O CORPORATION

CONSOLIDATED STATEMENTS OF OPERATIONS

(in thousands, except per share amounts)

(UNAUDITED)

 

 

 

 

 

 

 

Three Months Ended

March 31,

 

 

 

2022

 

 

2021

 

 

 

 

 

 

 

 

Net sales

 

$4,965

 

 

$6,015

 

Cost of goods sold

 

 

2,662

 

 

 

2,677

 

Gross margin

 

 

2,303

 

 

 

3,338

 

Operating expenses:

 

 

 

 

 

 

 

 

Research and development

 

 

1,616

 

 

 

1,606

 

Selling, general and administrative

 

 

2,048

 

 

 

2,062

 

Total operating expenses

 

 

3,664

 

 

 

3,668

 

Operating income (loss)

 

 

(1,361)

 

 

(330)

Non-operating income:

 

 

 

 

 

 

 

 

Interest income

 

 

1

 

 

 

3

 

Gain on sale of assets

 

 

58

 

 

 

-

 

Foreign currency transaction gain (loss)

 

 

(60)

 

 

26

 

Total non-operating income (loss)

 

 

(1)

 

 

29

 

Income (loss) before income taxes

 

 

(1,362)

 

 

(301)

Income tax (expense) benefit

 

 

(458)

 

 

(32)

Net income (loss)

 

($1,820)

 

 

($333)

 

 

 

 

 

 

 

 

 

 

Basic earnings (loss) per share

 

($0.21)

 

 

($0.04)

 

Diluted earnings (loss) per share

 

($0.21)

 

 

($0.04)

 

Weighted-average basic shares

 

 

8,622

 

 

 

8,420

 

Weighted-average diluted shares

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

See notes to consolidated financial statements

 

 
4

Table of Contents

 

DATA I/O CORPORATION

CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)

(in thousands)

(UNAUDITED)

 

 

Three Months Ended

March 31,

 

 

 

2022

 

 

2021

 

 

 

 

 

 

Net income (loss)

 

($1,820)

 

 

($333)

 

Other comprehensive income (loss):

 

 

 

 

 

 

Foreign currency translation gain (loss)

 

 

(70)

 

 

(180)

Comprehensive income (loss)

 

($1,890)

 

 

($513)

 

 

 

 

 

 

 

 

 

 

See notes to consolidated financial statements

 

 
5

Table of Contents

 

DATA I/O CORPORATION

CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY

(in thousands, except share amounts)

(UNAUDITED)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

Common Stock

 

 

Retained

 

 

and Other

 

 

Total

 

 

 

 

 

 

 

 

 

Earnings

 

 

Comprehensive

 

 

Stockholders'

 

 

 

Shares

 

 

Amount

 

 

(Deficit)

 

 

Income (Loss)

 

 

Equity

 

Balance at December 31, 2020

 

 

8,416,335

 

 

$20,071

 

 

($1,456)

 

 

$1,024

 

 

$19,639

 

Stock awards issued, net of tax withholding

 

 

2,089

 

 

 

(4)

 

 

-

 

 

 

-

 

 

 

(4)

Issuance of stock through: ESPP

 

 

3,175

 

 

 

16

 

 

 

-

 

 

 

-

 

 

 

16

 

Share-based compensation

 

 

-

 

 

 

278

 

 

 

-

 

 

 

-

 

 

 

278

 

Net income (loss)

 

 

-

 

 

 

-

 

 

 

(333)

 

 

-

 

 

 

(333)

Other comprehensive income (loss)

 

 

-

 

 

 

-

 

 

 

-

 

 

 

(180)

 

 

(180)

Balance at March 31, 2021

 

 

8,421,599

 

 

$20,361

 

 

($1,789)

 

 

$844

 

 

$19,416

 

Balance at December 31, 2021

 

 

8,621,007

 

 

$20,886

 

 

($2,011)

 

 

$978

 

 

$19,853

 

Stock awards issued, net of tax withholding

 

 

-

 

 

 

-

 

 

 

-

 

 

 

-

 

 

 

-

 

Issuance of stock through: ESPP

 

 

1,362

 

 

 

6

 

 

 

-

 

 

 

-

 

 

 

6

 

Share-based compensation

 

 

-

 

 

 

291

 

 

 

-

 

 

 

-

 

 

 

291

 

Net income (loss)

 

 

-

 

 

 

-

 

 

 

(1,820)

 

 

-

 

 

 

(1,820)

Other comprehensive income (loss)

 

 

-

 

 

 

-

 

 

 

-

 

 

 

(70)

 

 

(70)

Balance at March 31, 2022

 

 

8,622,369

 

 

$21,183

 

 

($3,831)

 

 

$908

 

 

$18,260

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

See notes to consolidated financial statements

 

 
6

Table of Contents

 

DATA I/O CORPORATION 

CONSOLIDATED STATEMENTS OF CASH FLOWS

(in thousands)

(UNAUDITED)

 

 

 

 

 

 

 

 

 

For the Three Months Ended

March 31,

 

 

 

2022

 

 

2021

 

 

 

 

 

 

 

 

CASH FLOWS FROM OPERATING ACTIVITIES:

 

 

 

 

 

 

Net income (loss)

 

($1,820)

 

 

($333)

 

Adjustments to reconcile net income (loss)

 

 

 

 

 

 

to net cash provided by (used in) operating activities:

 

 

 

 

 

 

Depreciation and amortization

 

 

140

 

 

 

200

 

Equipment transferred to cost of goods sold

 

 

125

 

 

 

132

 

Share-based compensation

 

 

291

 

 

 

278

 

Net change in:

 

 

 

 

 

 

 

 

Trade accounts receivable

 

 

913

 

 

 

(843)

Inventories

 

 

(277)

 

 

442

 

Other current assets

 

 

(98)

 

 

36

 

Accounts payable and accrued liabilities

 

 

(835)

 

 

(94)

Deferred revenue

 

 

28

 

 

 

175

 

Other long-term liabilities

 

 

(253)

 

 

(105)

Deposits and other long-term assets

 

 

204

 

 

 

136

 

     Net cash provided by (used in) operating activities

 

 

(1,582)

 

 

24

 

 

 

 

 

 

 

 

 

 

CASH FLOWS FROM INVESTING ACTIVITIES:

 

 

 

 

 

 

 

 

Purchases of property, plant and equipment

 

 

(272)

 

 

(92)

Cash provided by (used in) investing activities

 

 

(272)

 

 

(92)

 

 

 

 

 

 

 

 

 

CASH FLOWS FROM FINANCING ACTIVITIES:

 

 

 

 

 

 

 

 

Net proceeds from issuance of common stock, less payments

 

 

 

 

 

 

 

 

     for shares withheld to cover tax

 

 

6

 

 

 

12

 

Cash provided by (used in) financing activities

 

 

6

 

 

 

12

 

Increase (decrease) in cash and cash equivalents

 

 

(1,848)

 

 

(56)

 

 

 

 

 

 

 

 

 

Effects of exchange rate changes on cash

 

 

(46)

 

 

(490)

Cash and cash equivalents at beginning of period

 

 

14,190

 

 

 

14,167

 

Cash and cash equivalents at end of period

 

$12,296

 

 

$13,621

 

 

 

 

 

 

 

 

 

 

Supplemental disclosure of cash flow information:

 

 

 

 

 

 

 

 

Cash paid during the period for:

 

 

 

 

 

 

 

 

    Income taxes

 

$441

 

 

$40

 

 

 

 

 

 

 

 

 

 

See notes to consolidated financial statements

 

 
7

Table of Contents

 

DATA I/O CORPORATION

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

(UNAUDITED)

 

NOTE 1 - FINANCIAL STATEMENT PREPARATION

 

Data I/O Corporation (“Data I/O”, “We”, “Our”, “Us”) prepared the financial statements as of March 31, 2022 and March 31, 2021 according to the rules and regulations of the Securities and Exchange Commission ("SEC").  These statements are unaudited but, in the opinion of management, include all adjustments (consisting of normal recurring adjustments and accruals) necessary to present fairly the results for the periods presented.  The balance sheet at December 31, 2021 has been derived from the audited financial statements at that date.  We have condensed or omitted certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America according to such SEC rules and regulations.  Operating results for the three months ended March 31, 2022 are not necessarily indicative of the results that may be expected for the year ending December 31, 2022.  These financial statements should be read in conjunction with the annual audited financial statements and the accompanying notes included in our Form 10-K for the year ended December 31, 2021.

 

Revenue Recognition

 

Topic 606 provides a single, principles-based five-step model to be applied to all contracts with customers.  It generally provides for the recognition of revenue in an amount that reflects the consideration to which the Company expects to be entitled, net of allowances for estimated returns, discounts or sales incentives, as well as taxes collected from customers when control over the promised goods or services are transferred to the customer.   

 

We expense contract acquisition costs, primarily sales commissions, for contracts with terms of one year or less and will capitalize and amortize incremental costs with terms that exceed one year.  During 2022 and 2021, the impact of capitalization of incremental costs for obtaining contracts was immaterial.  We exclude sales, use, value added, some excise taxes and other similar taxes from the measurement of the transaction price.

 

We recognize revenue upon transfer of control of the promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services.  We have determined that our programming equipment has reached a point of maturity and stability such that product acceptance can be assured by testing at the factory prior to shipment and that the installation meets the criteria to be a separate performance obligation.  These systems are standard products with published product specifications and are configurable with standard options.  The evidence that these systems could be deemed as accepted was based upon having standardized factory production of the units, results from batteries of tests of product performance to our published specifications, quality inspections and installation standardization, as well as past product operation validation with the customer and the history provided by our installed base of products upon which the current versions were based.

 

The revenue related to products requiring installation that is perfunctory is recognized upon transfer of control of the product to customers, which generally is at the time of shipment.  Installation that is considered perfunctory includes any installation that is expected to be performed by other parties, such as distributors, other vendors, or the customers themselves.  This considers the complexity, skill and training needed as well as customer expectations regarding installation.

 

We enter into arrangements with multiple performance obligations that arise during the sale of a system that includes an installation component, a service and support component and a software maintenance component.  We allocate the transaction price of each element based on relative selling prices.  Relative selling price is based on the selling price of the standalone system.  For the installation and service and support performance obligations, we use the value of the discount given to distributors who perform these components.  For software maintenance performance obligations, we use what we charge for annual software maintenance renewals after the initial year the system is sold.  Revenue is recognized on the system sale based on shipping terms, installation revenue is recognized after the installation is performed, and hardware service and support and software maintenance revenue is recognized ratably over the term of the agreement, typically one year.  Deferred revenue includes service, support and maintenance contracts and represents the undelivered performance obligation of agreements that are typically for one year.

 

 
8

Table of Contents

 

When we sell software separately, we recognize revenue upon the transfer of control of the software, which is generally upon shipment, provided that only inconsequential performance obligations remain on our part and substantive acceptance conditions, if any, have been met.

 

We recognize revenue when there is an approved contract that both parties are committed to perform, both parties rights have been identified, the contract has substance,  collection of substantially all the consideration is probable, the transaction price has been determined and allocated over the performance obligations, the performance obligations including substantive acceptance conditions, if any, in the contract have been met, the obligation is not contingent on resale of the product, the buyer’s obligation would not be changed in the event of theft, physical destruction or damage to the product, the buyer acquiring the product for resale has economic substance apart from us and we do not have significant obligations for future performance to directly bring about the resale of the product by the buyer.  We establish a reserve for sales returns based on historical trends in product returns and estimates for new items.  Payment terms are generally 30 days from shipment. 

 

We transfer certain products out of service from their internal use and make them available for sale.  The products transferred are typically our standard products in one of the following areas: service loaners, rental or test units; engineering test units; or sales demonstration equipment.  Once transferred, the equipment is sold by our regular sales channels as used equipment inventory.  These product units often involve refurbishing and an equipment warranty, and are conducted as sales in our normal and ordinary course of business.  The transfer amount is the product unit’s net book value and the sale transaction is accounted for as revenue and cost of goods sold.

 

The following table represents our revenues by major categories:

 

 

 

 Three Months Ended

 

Net sales by type

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Equipment

 

$2,607

 

 

(22.1%)

 

$3,347

 

Adapter

 

 

1,622

 

 

(15.0%)

 

 

1,908

 

Software and Maintenance

 

 

736

 

 

(3.2%)

 

 

760

 

Total

 

$4,965

 

 

(17.5%)

 

$6,015

 

 

Share-Based Compensation

 

All stock-based compensation awards are measured based on estimated fair values on the date of grant and recognized as compensation expense on the straight-line method.  Our share-based compensation is reduced for estimated forfeitures at the time of grant and revised as necessary in subsequent periods if actual forfeitures differ from those estimates.

 

 
9

Table of Contents

 

Income Tax

 

Income taxes are computed at current enacted tax rates, less tax credits using the asset and liability method.  Deferred taxes are adjusted both for items that do not have tax consequences and for the cumulative effect of any changes in tax rates from those previously used to determine deferred tax assets or liabilities.  Tax provisions include amounts that are currently payable, changes in deferred tax assets and liabilities that arise because of temporary differences between the timing of when items of income and expense are recognized for financial reporting and income tax purposes, and any changes in the valuation allowance caused by a change in judgment about the realization of the related deferred tax assets.  A valuation allowance is established when necessary to reduce deferred tax assets to amounts expected to be realized. During the quarter ended March 31, 2022, as a result of a dividend paid from our China subsidiary to the USA parent company, $442,000 of income tax was withheld and paid.

 

Recently Adopted Accounting Pronouncements

 

On January 1, 2021 the Company adopted ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. This ASU clarifies and simplifies accounting for income taxes by eliminating certain exceptions for intraperiod tax allocation principles and the methodology for calculating income tax rates in an interim period, among other updates. The adoption of this ASU did not have a material impact on our financial statements.

 

NOTE 2 – INVENTORIES

 

Inventories consisted of the following components:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Raw material

 

$3,992

 

 

$3,771

 

Work-in-process

 

 

1,727

 

 

 

1,602

 

Finished goods

 

 

906

 

 

 

978

 

Inventories

 

$6,625

 

 

$6,351

 

 

NOTE 3 – PROPERTY, PLANT AND EQUIPMENT, NET

 

Property and equipment consisted of the following components:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Leasehold improvements

 

$431

 

 

$430

 

Equipment

 

 

5,191

 

 

 

5,218

 

Sales demonstration equipment

 

 

807

 

 

 

754

 

 

 

 

6,429

 

 

 

6,402

 

Less accumulated depreciation

 

 

5,476

 

 

 

5,456

 

Property and equipment, net

 

$953

 

 

$946

 

 

 
10

Table of Contents

 

NOTE 4 – OTHER ACCRUED LIABILITIES

 

Other accrued liabilities consisted of the following components:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Lease liability - short term

 

$623

 

 

$601

 

Product warranty

 

 

430

 

 

 

432

 

Sales return reserve

 

 

71

 

 

 

71

 

Other taxes

 

 

132

 

 

 

180

 

Other

 

 

183

 

 

 

129

 

Other accrued liabilities

 

$1,439

 

 

$1,413

 

 

The changes in our product warranty liability for the three months ending March 31, 2022 are as follows:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Liability, beginning balance

 

$432

 

 

$371

 

Net expenses

 

 

217

 

 

 

864

 

Warranty claims

 

 

(217)

 

 

(864)

Accrual revisions

 

 

(2)

 

 

61

 

Liability, ending balance

 

$430

 

 

$432

 

 

NOTE 5 – LEASES

 

Our leasing arrangements are primarily for facility leases we use to conduct our operations. The following table presents our future lease payments for long-term operating leases as of March 31, 2022:

 

 

 

Operating

Lease Commitments

 

 (in thousands)

 

 

 

2022 (remaining)

 

$594

 

2023

 

 

920

 

2024

 

 

836

 

2025

 

 

585

 

2026

 

 

133

 

Thereafter

 

 

48

 

Total

 

$3,116

 

   Less Imputed interest

 

 

(356)

Total operating lease liabilities

 

$2,760

 

 

Cash paid for operating lease liabilities for the three months ended March 31, 2022 and 2021 were $212,000 and $201,000, respectively. 

 

 
11

Table of Contents

 

The following table presents supplemental balance sheet information related to leases:

 

 

 

Balance at

March 31,

2022

 

 

Balance at

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Right-of-use assets (Long-term other assets)

 

$2,697

 

 

$2,793

 

Lease liability-short term (Other accrued liabilities)

 

 

623

 

 

 

601

 

Lease liability-long term (Operating lease liabilities)

 

 

2,138

 

 

 

2,277

 

 

At March 31, 2022, the weighted average remaining lease term is 3.67 and the weighted average discount rate used is 5%.

 

The components of our lease expense for the three months ended March 31, 2022 and 2021 include operating lease costs of $220,000 and $171,000, respectively, and short-term lease costs of $20,000 and $7,000, respectively.

 

Our real estate facility leases are described below:

 

During the fourth quarter of 2021, we amended our lease agreement for the Redmond, Washington headquarters facility, extending the lease to January 31, 2026.  The lease is for approximately 20,460 square feet. 

 

In April 2021, we signed a lease extension effective November 1, 2021  that extends the lease for a facility located in Shanghai, China through October 31, 2024.  This lease is for approximately 19,400 square feet.

 

Our lease for our facility located near Munich, Germany ran through February 28, 2022 and in March 2022 we entered into a lease extension to August 2027.  This lease is for approximately 4,895 square feet.

 

NOTE 6 – OTHER COMMITMENTS

 

We have purchase obligations for inventory and production costs as well as other obligations such as capital expenditures, service contracts, marketing, and development agreements.  Arrangements are considered purchase obligations if a contract specifies all significant terms, including fixed or minimum quantities to be purchased, a pricing structure and approximate timing of the transaction.  Most arrangements are cancelable without a significant penalty, and with short notice, typically less than 90 days.  At March 31, 2022, the purchase commitments and other obligations totaled $2.0 million of which all but $590,000 are expected to be paid over the next twelve months.

 

NOTE 7 – CONTINGENCIES

 

As of March 31, 2022, we were not a party to any legal proceedings or aware of any indemnification agreement claims, the adverse outcome of which in management’s opinion, individually or in the aggregate, would have a material adverse effect on our results of operations or financial position. 

 

NOTE 8 – EARNINGS PER SHARE

 

Basic earnings per share is calculated based on the weighted average number of common shares outstanding during each period.  Diluted earnings per share is calculated based on these same weighted average shares outstanding plus the effect of potential shares issuable upon assumed exercise of stock options based on the treasury stock method. 

 

Potential shares issuable upon the exercise of stock options are excluded from the calculation of diluted earnings per share to the extent their effect would be anti-dilutive.

 

 
12

Table of Contents

 

The following table sets forth the computation of basic and diluted earnings per share:

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

(in thousands except per share data)

 

 

 

 

 

 

Numerator for basic and diluted

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

       Net income (loss)

 

(1,820)

 

 

($333)

 

 

 

 

 

 

 

 

Denominator for basic

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

       Weighted-average shares

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

Employee stock options and awards

 

 

-

 

 

 

-

 

 

 

 

 

 

 

 

 

 

Denominator for diluted

 

 

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

 

 

       Adjusted weighted-average shares &

 

 

 

 

 

 

 

 

       assumed conversions of stock options

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

Basic and diluted

 

 

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

 

 

       Basic earnings (loss) per share

 

($0.21)

 

 

($0.04)

 

       Diluted earnings (loss) per share 

 

($0.21)

 

 

($0.04)

 

 

Options to purchase 12,500 and 25,000 shares respectively were outstanding as of March 31, 2022 and 2021, but were excluded from the computation of diluted earnings per share for the periods then ended because the options were anti-dilutive.

 

NOTE 9 – SHARE-BASED COMPENSATION

 

For share-based awards granted, we have recognized compensation expense based on the estimated grant date fair value method.  For these awards we have recognized compensation expense using a straight-line amortization method reduced for estimated forfeitures.  

 

The impact on our results of operations of recording share-based compensation, net of forfeitures, for the three months ended March 31, 2022 and 2021 were as follows:

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

Cost of goods sold

 

$15

 

 

$10

 

Research and development

 

 

64

 

 

 

71

 

Selling, general and administrative

 

 

212

 

 

 

197

 

Total share-based compensation

 

$291

 

 

$278

 

 

 
13

Table of Contents

 

Equity awards granted during the three months ended March 31, 2022 and 2021 were as follows:

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

 

 

 

 

 

 

 

Restricted Stock Units

 

 

2,515

 

 

 

2,000

 

 

Non-employee directors Restricted Stock Units (“RSUs”) typically vest over the earlier of one year or the next annual meeting of shareholders and Non-Qualified stock options vest over three years and have a six-year exercise period.  Employee RSUs typically vest over four years and employee Non-Qualified stock options typically vest quarterly over 4 years and have a six-year exercise period.

 

The remaining unamortized expected future equity compensation expense and remaining amortization period associated with unvested option grants, restricted stock awards and restricted stock unit awards at March 31, 2022 are:

 

 

 

March 31,

2022

 

 

 

 

 

Unamortized future equity compensation expense (in thousands)

 

$2,021

 

Remaining weighted average amortization period (in years)

 

 

2.44

 

 

 
14

Table of Contents

 

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

 

General

 

FORWARD-LOOKING STATEMENTS

 

This Quarterly Report on Form 10-Q includes forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995.  This Act provides a “safe harbor” for forward-looking statements to encourage companies to provide prospective information about themselves as long as they identify these statements as forward-looking and provide meaningful cautionary statements identifying important factors that could cause actual results to differ from the projected results.  All statements other than statements of historical fact made in this Quarterly Report on Form 10-Q are forward-looking.  In particular, statements herein regarding economic outlook, impact of COVID-19; Shanghai COVID-19 resurgence lockdown impact and timing; industry prospects and trends; expected business recovery; industry partnerships; future results of operations or financial position; future spending; breakeven revenue point; expected market decline, bottom or growth; market acceptance of our newly introduced or upgraded products or services; the sufficiency of our cash to fund future operations and capital requirements; development, introduction and shipment of new products or services; changing foreign operations; trade issues and tariffs; expected inventory levels; expectations for unsupported platform or product versions and related inventory and other charges; Russian invasion of Ukraine impacts; supply chain expectations; semiconductor chip shortages; and any other guidance on future periods are forward-looking statements.  Forward-looking statements reflect management’s current expectations and are inherently uncertain.  Although we believe that the expectations reflected in these forward-looking statements are reasonable, we cannot guarantee future results, levels of activity, performance, achievements, or other future events.  Moreover, neither Data I/O nor anyone else assumes responsibility for the accuracy and completeness of these forward-looking statements.  We are under no duty to update any of these forward-looking statements after the date of this Quarterly Report.  The Reader should not place undue reliance on these forward-looking statements.  The discussions above and in the section in Item 1A., Risk Factors “Cautionary Factors That May Affect Future Results” in our Annual report on Form 10-K for the year ended December 31, 2021, describe some, but not all, of the factors that could cause these differences.

 

OVERVIEW

 

The first quarter of 2022 was very unusual.  It started strongly with orders and new sales funnel prospect additions, which appeared to relate to improved supply chain and semiconductor part shortage problems that had been significant issues in the second half of 2021.  The improvement of business conditions was before the geopolitical issues stemming from the late-February Russian invasion of Ukraine and the mid-March COVID-19 resurgence in China resulting in restrictions and the lockdown of Shanghai.  We discontinued our relationship with our Russian distributor, which represented an immaterial level of business.  We had no distribution or operations in Ukraine.  The lockdown impacted end of quarter shipments that were completed and ready for delivery to customers from Shanghai.  Approximately $1 million of potential revenue, including 5 PSV systems remained in inventory and backlog at the end of the quarter.  No orders were cancelled and we expect to be able to resume shipments later in the second quarter. The timing of ending the lockdown is uncertain and depending when we are allowed to resume deliveries may result in not having enough time to expect collections to occur in the second quarter. We expect that we have adequate cash resources and that the collections and cash should be normalized before the end of the third quarter.

 

In the first quarter of 2022, due to a continued cyclical downturn, Russian invasion of Ukraine impacts particularly on Europe, the COVID-19 related Shanghai lockdown resulting in about $1M of potential revenue not being shipped and realized, combined with continued significant investments in our security deployment business, we incurred operating losses. Our strong cash position and balance sheet combined with our long-term view of the market gave us the financial flexibility to make these security business investments.  At Data I/O, we are investing for the long-term to retain and extend our leadership position in automotive electronics and security deployment.  On the product side, we continue to invest with a long-term focus towards expanding our markets and creating unique value for our customers. This is true for both our traditional core business as well as the emerging security deployment business. 

 

 
15

Table of Contents

 

Our short-term challenge continues to be operating in a cyclical, COVID-19 impacted, geopolitical uncertainties and rapidly evolving industry environment with continued supply chain and silicon part shortages issues.   We continue to balance industry changes, industry partnerships, new technologies, business geography shifts, travel and customer restrictions, customer shut downs, exchange rate volatility, trade issues and tariffs, COVID-19 impacts, semiconductor chip shortages, increasing costs and strategic investments in our business with the level of demand and mix of business we expect.  We continue to manage our costs carefully and execute strategies for cash preservation, protecting our employee base, addressing inflation impacts,  and cost control. Many of our employees continue to work remotely from home or on a hybrid basis, with the essential production and process workers onsite as part of our essential operations.

 

We are focusing our research and development efforts in our strategic growth markets, namely automotive electronics and IoT new programming technologies, secure supply chain solutions, automated programming systems and their enhancements for the manufacturing environment and software. We are continuing to develop technology to securely provision new categories of semiconductors, including Secure Elements, Authentication Chips, and Secure Microcontrollers.  We continue to focus on extending the capabilities of our programming systems and support for our product lines and supporting the latest semiconductor devices, including various configurations of NAND Flash, e-MMC, UFS and microcontrollers on our newer products.

 

Our customer focus has been on global and strategic high-volume manufacturers in key market segments like automotive electronics, IoT, industrial controls and consumer electronics as well as programming centers.

 

Although the long-term prospects for our strategic growth markets should be good, these markets and our business have been, and are likely to continue to be, adversely impacted by the global pandemic of COVID-19. Chip shortages are causing issues and some automotive plant interruptions.  This appears to be a lingering issue for 2022 and in some cases drives consumable adapter demand in order to support alternative chips.

 

As a global company with over 90% of our sales in international markets, we have been and expect to continue to be impacted by the COVID-19 pandemic in all markets we serve, with follow-on waves of impact. On March 29, 2022 we announced that our Shanghai facility was being closed due to the local government lockdown.  We were unable to ship products valued at $1M, and the facility remains closed. We are supporting customers from our Redmond, Washington USA facility and dealing with shipping bottlenecks and shutdowns.  We believe that our classification as essential by certain U.S. customer groups will continue to keep operations open in the USA.  We source other components from China and other countries that are used to manufacture our equipment in China and in our Redmond, Washington facility. These components may not be readily available or subject to delays. Our manufacturing facilities in Shanghai and Redmond have helped us to be part of a resilient supply chain to our customers with dual production of some products and local sourcing of many suppliers.  Many of our employees and executives are working from home or on a hybrid basis and we are limiting visitors to our facilities as the pandemic continues.  All of our facilities are subject to restrictions and closure by governmental entities. The pandemic has and may continue to impact our revenues in some geographies, our ability to obtain key components and to manufacture our products, as well as sell, install and support our products around the world. We expect wide-spread vaccinations to help restore business interactions with customers, however we expect to continue to be impacted and respond to customer site restrictions on sales and service visits, travel restrictions, closed borders, cancelled trade shows and industry gatherings, and modifications in our operations to allow social distancing.  The geopolitical uncertainty from the Russian invasion of Ukraine remains a continuing issue.  See also the detailed discussion of the impacts of COVID-19 on our business and markets in Item 1A, Risk Factors in our annual report on Form 10-K. The pandemic could have the effect of heightening many of the other risks described in Item 1A of our Form 10-K . Annual projections on spending, growth, mix, and profitability have been and are likely to be further revised substantially as new information is obtained.

 

CRITICAL ACCOUNTING POLICY JUDGMENTS AND ESTIMATES

 

The preparation of financial statements in accordance with accounting principles generally accepted in the United States of America requires that we make estimates and judgments, which affect the reported amounts of assets, liabilities, revenues and expenses, and related disclosures of contingent assets and liabilities.  On an on-going basis, we evaluate our estimates, including those related to revenue recognition, sales returns, bad debts, inventories, income taxes, warranty obligations, restructuring charges, contingencies such as litigation and contract terms that have multiple elements and other complexities typical in the capital equipment industry.  We base our estimates on historical experience and other assumptions that we believe are reasonable under the circumstances.  Actual results may differ from these estimates under different assumptions or conditions. 

 

We believe the following critical accounting policies affect the more significant judgments and estimates used in the preparation of our financial statements:

 

 
16

Table of Contents

 

Revenue Recognition:  Topic 606 provides a single, principles-based five-step model to be applied to all contracts with customers.  It generally provides for the recognition of revenue in an amount that reflects the consideration to which the Company expects to be entitled, net of allowances for estimated returns, discounts or sales incentives, as well as taxes collected from customers when control over the promised goods or services are transferred to the customer.   

 

We expense contract acquisition costs, primarily sales commissions, for contracts with terms of one year or less and will capitalize and amortize incremental costs with terms that exceed one year.  During 2022 and 2021, the impact of capitalization of incremental costs for obtaining contracts was immaterial.  We exclude sales, use, value added, some excise taxes and other similar taxes from the measurement of the transaction price.

 

We recognize revenue upon transfer of control of the promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services.  We have determined that our programming equipment has reached a point of maturity and stability such that product acceptance can be assured by testing at the factory prior to shipment and that the installation meets the criteria to be a separate performance obligation.  These systems are standard products with published product specifications and are configurable with standard options.  The evidence that these systems could be deemed as accepted was based upon having standardized factory production of the units, results from batteries of tests of product performance to our published specifications, quality inspections and installation standardization, as well as past product operation validation with the customer and the history provided by our installed base of products upon which the current versions were based.

 

The revenue related to products requiring installation that is perfunctory is recognized upon transfer of control of the product to customers, which generally is at the time of shipment.  Installation that is considered perfunctory includes any installation that is expected to be performed by other parties, such as distributors, other vendors, or the customers themselves.  This considers the complexity, skill and training needed as well as customer expectations regarding installation.

 

We enter into arrangements with multiple performance obligations that arise during the sale of a system that includes an installation component, a service and support component and a software maintenance component.  We allocate the transaction price of each element based on relative selling prices.  Relative selling price is based on the selling price of the standalone system.  For the installation and service and support performance obligations, we use the value of the discount given to distributors who perform these components.  For software maintenance performance obligations, we use what we charge for annual software maintenance renewals after the initial year the system is sold.  Revenue is recognized on the system sale based on shipping terms, installation revenue is recognized after the installation is performed, and hardware service and support and software maintenance revenue is recognized ratably over the term of the agreement, typically one year.  Deferred revenue includes service, support and maintenance contracts and represents the undelivered performance obligation of agreements that are typically for one year.

 

When we sell software separately, we recognize revenue upon the transfer of control of the software, which is generally upon shipment, provided that only inconsequential performance obligations remain on our part and substantive acceptance conditions, if any, have been met.

 

We recognize revenue when there is an approved contract that both parties are committed to perform, both parties rights have been identified, the contract has substance,  collection of substantially all the consideration is probable, the transaction price has been determined and allocated over the performance obligations, the performance obligations including substantive acceptance conditions, if any, in the contract have been met, the obligation is not contingent on resale of the product, the buyer’s obligation would not be changed in the event of theft, physical destruction or damage to the product, the buyer acquiring the product for resale has economic substance apart from us and we do not have significant obligations for future performance to directly bring about the resale of the product by the buyer.  We establish a reserve for sales returns based on historical trends in product returns and estimates for new items.  Payment terms are generally 30 days from shipment. 

 

We transfer certain products out of service from their internal use and make them available for sale.  The products transferred are typically our standard products in one of the following areas: service loaners, rental or test units; engineering test units; or sales demonstration equipment.  Once transferred, the equipment is sold by our regular sales channels as used equipment inventory.  These product units often involve refurbishing and an equipment warranty, and are conducted as sales in our normal and ordinary course of business.  The transfer amount is the product unit’s net book value and the sale transaction is accounted for as revenue and cost of goods sold.

 

 
17

Table of Contents

 

Allowance for Doubtful Accounts:  We base the allowance for doubtful accounts receivable on our assessment of the collectability of specific customer accounts and the aging of accounts receivable.  If there is deterioration of a major customer’s credit worthiness or actual defaults are higher than historical experience, our estimates of the recoverability of amounts due to us could be adversely affected. 

 

Inventory: Inventories are stated at the lower of cost or net realizable value.  Adjustments are made to standard cost, which approximates actual cost on a first-in, first-out basis.  We estimate reductions to inventory for obsolete, slow-moving, excess and non-salable inventory by reviewing current transactions and forecasted product demand.  We evaluate our inventories on an item-by-item basis and record inventory adjustments accordingly.  If there is a significant decrease in demand for our products, uncertainty during product line transitions, or a higher risk of inventory obsolescence because of rapidly changing technology and customer requirements, we may be required to increase our inventory adjustments and our gross margin could be adversely affected. 

 

Warranty Accruals:  We accrue for warranty costs based on the expected material and labor costs to fulfill our warranty obligations.  If we experience an increase in warranty claims, which are higher than our historical experience, our gross margin could be adversely affected. 

 

Tax Valuation Allowances:  Given the uncertainty created by our loss history, as well as the current and ongoing cyclical and COVID-19 pandemic related uncertain economic outlook for our industry, capital and geographic spending, as well as income and current net deferred tax assets by entity and country, we expect to continue to limit the recognition of net deferred tax assets and accounting for uncertain tax positions and maintain the tax valuation allowances.  At the current time, we expect, therefore, that reversals of the tax valuation allowance will take place as we are able to take advantage of the underlying tax loss or other attributes in carry forward or their use by future income or circumstances allow us to realize these attributes.  The transfer pricing and expense or cost sharing arrangements are complex areas where judgments, such as the determination of arms-length arrangements, can be subject to challenges by different tax jurisdictions. 

 

Share-based Compensation: We account for share-based awards made to our employees and directors, including employee stock option awards and restricted stock unit awards, using the estimated grant date fair value method of accounting.  For options, we estimate the fair value using the Black-Scholes valuation model and an estimated forfeiture rate.  Restricted stock unit awards are valued based on the average of the high and low price on the date of the grant and an estimated forfeiture rate.  For both options and restricted awards, expense is recognized as compensation expense on the straight-line basis.  Employee Stock Purchase Plan (“ESPP”) shares were issued under provisions that do not require us to record any equity compensation expense.

 

 
18

Table of Contents

 

RESULTS OF OPERATIONS:
 
NET SALES

 

 

 Three Months Ended

 

Net sales by product line

 

March 31,

2022

 

 

Change

 

 

March 31,

2021

 

 (in thousands)

 

 

 

 

 

 

 

 

 

Automated programming systems

 

$3,876

 

 

(21.1%)

 

 

$4,910

 

Non-automated programming systems

 

 

1,089

 

 

(1.4%)

 

 

 

1,105

 

Total programming systems

 

$4,965

 

 

(17.5%)

 

 

$6,015

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 Three Months Ended

Net sales by location

 

March 31,

2022

 

 

Change

 

 

March 31,

2021

 

 (in thousands)

 

 

 

 

 

 

 

 

 

 

 

United States

 

$288

 

 

 

1.4%

 

$284

 

% of total

 

 

5.8%

 

 

 

 

 

 

4.7%

 

 

 

 

 

 

 

 

 

 

 

 

 

International

 

$4,677

 

 

(18.4%)

 

 

$5,731

 

% of total

 

 

94.2%

 

 

 

 

 

 

95.3%

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 Three Months Ended

Net sales by type

 

March 31,

2022

 

 

Change

 

 

March 31,

2021

 

 (in thousands)

 

 

 

 

 

 

 

 

 

 

 

 

Equipment sales

 

$2,607

 

 

(22.1%)

 

 

$3,347

 

Adapter sales

 

 

1,622

 

 

(15.0%)

 

 

 

1,908

 

Software and maintenance

 

 

736

 

 

(3.2%)

 

 

 

760

 

Total programming systems

 

$4,965

 

 

(17.5%)

 

 

$6,015

 

 

Net sales in the first quarter of 2022 were $5.0 million, as compared with $6.0 million in the prior year period and $6.4 million in the fourth quarter of 2021.  Sales in the first quarter of 2022 were impacted by a resumption of COVID-19 related shut downs in Shanghai.  This resulted in approximately $1 million in potential product revenue that could not ship.  No orders have been cancelled and their shipment is expected later in the second quarter. 

 

First quarter 2022 bookings were $6.2 million, as compared with $5.4 million in the prior year period and $6.2 million in fourth quarter of 2021.  We began the quarter strongly with improved orders and sales funnel additions.  The improvement in the business conditions was before the late February Russian invasion of Ukraine and the mid-March COVID-19 resurgence in China resulting in restrictions and a lockdown in Shanghai.  We believe these events caused uncertainty and a late quarter slowdown in Europe, and shut down related interruptions in our Shanghai business.  The first quarter of 2021 was early in the original COVID-19 recovery with business just resuming.

 

On a geographic basis, international sales represented approximately 94.2% of total net sales for the first quarter of 2022 compared with 95.3% in the prior year period. Total equipment sales were 52% of revenues, adapters were 33% and software and services revenues were 15% of revenues respectively in the first quarter of 2022 compared with 56% and 31% and 13% respectively for the first quarter of 2021. Automotive electronics represented 63% of orders for the quarter.

 

Backlog at March 31, 2022 was $4.1 million, as compared with $2.9 million at year end and up from $3.0 million at March 31, 2021. The backlog increase was primarily due to the Shanghai lockdown related $1 million of potential revenue shipments that were caught up in the shutdown and included 5 PSV systems that were complete and ready to ship. Data I/O had $1.7 million in deferred revenue at the end of the first quarter of 2022 as compared with $1.3 million at the end of the first quarter of 2021.

 

 
19

Table of Contents

 

GROSS MARGIN

 

 

 

Three Months Ended

 

 

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Gross margin

 

$2,303

 

 

(31.0%)

 

$3,338

 

Percentage of net sales

 

 

46.4%

 

 

 

 

55.5%

 

Gross margin as a percentage of sales in the first quarter of 2022 was 46.4% as compared to 55.5% in the same period last year. For the first quarter of 2022, gross margin was primarily impacted by the lower sales volume and mix. The Shanghai lockdown prevented shipments of approximately $1 million in potential revenue that would have added approximately 5 gross margin percentage points. 

 

RESEARCH AND DEVELOPMENT

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

Change

 

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

 

Research and development

 

$1,616

 

 

 

0.6%

 

$1,606

 

Percentage of net sales

 

 

32.5%

 

 

 

 

 

 

26.7%

 

Research and development (“R&D”) expenses in the first quarter of 2022 were approximately the same as compared to the same period in 2021. We have maintained our investment in our product development and supporting our growth initiatives.

 

SELLING, GENERAL AND ADMINISTRATIVE

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Selling, general &

 

 

 

 

 

 

 

 

administrative

 

$2,048

 

 

(0.7%)

 

$2,062

 

Percentage of net sales

 

 

41.2%

 

 

 

 

34.3%

 

Selling, General and Administrative (“SG&A”) expenses were approximately the same as compared to the same period in 2021.  The lower sales volume resulted in lower sales commissions, however these were  offset by higher marketing and rent costs.  Cost control measures have remained in place during the first quarter of 2022 and are expected to continue in the second quarter of 2022.

 

INTEREST

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Interest income

 

$1

 

 

(66.7%)

 

$3

 

 

Interest income was approximately the same in the first quarter of 2022 as compared to the same period in 2021 and reflects lower invested balances in foreign subsidiary accounts.

 

 
20

Table of Contents

 

INCOME TAXES

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

Change

 

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Income tax benefit (expense)

 

($458)

 

 

1331.3%

 

($32)

 

 

Income tax benefit (expense) for the first quarter of both 2022 and 2021, primarily related to foreign and state taxes.  During the first quarter of 2022 a China dividend withholding tax of $442,000 was paid in connection with a dividend repatriation to the US parent company.

 

The effective tax rate differed from the statutory tax rate primarily due to the effect of valuation allowances, as well as foreign taxes.  We have a valuation allowance of $8.2 million as of March 31, 2022.  As of March 31, for both 2022 and 2021, our deferred tax assets and valuation allowance have been reduced by approximately $399,000 and $371,000, respectively, associated with the requirements of accounting for uncertain tax positions.  Given the uncertainty created by our loss history, as well as the volatile and uncertain economic outlook for our industry and capital spending, we have limited the recognition of net deferred tax assets including our net operating losses and credit carryforwards and continue to maintain a valuation allowance for the full amount of the net deferred tax asset balance. 

 

Financial Condition

 

LIQUIDITY AND CAPITAL RESOURCES

 

 

 

March 31,

2022

 

 

Change

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Working capital

 

$16,896

 

 

($1,588)

 

$18,484

 

 

At March 31, 2022, our principal sources of liquidity consisted of existing cash and cash equivalents.  Cash decreased $1,894,000 from December 31, 2021 primarily from paying off year end accruals for annual incentive compensation of $791,000 and annual 401(k) matching contributions of $224,000, as well as one-time China dividend income withholding tax of $442,000 on the dividend from Shanghai and funding the operating loss. 

 

Our working capital decreased $1,588,000 during 2022, primarily due to the reasons for the cash decline in the period.  The Shanghai lockdown delayed the delivery of approximately $1 million of potential product revenue. Depending on the timing of the expected reopening later in the second quarter and resumption of shipping, there may not be enough time to expect collections to take place before the end of the second quarter. We believe we have the funds necessary to accommodate this. The company continues to have no debt.

 

Although we have no significant external capital expenditure plans currently, we expect to continue to carefully make and manage capital expenditures to support our business.  We plan to increase our internally developed rental, security provisioning, sales demonstration and test equipment as we develop and release new products. Capital expenditures are currently expected to be funded by existing and internally generated funds.

 

As a result of our cyclical industry, significant product development, customer support and selling and marketing efforts, we have required substantial working capital to fund our operations.  We have tried to balance our level of development spending with the goal of profitable operations or managing down business levels related to COVID-19.  We have implemented or have initiatives to implement geographic shifts in our operations, optimize real estate usage, reduce exposure to the impact of currency volatility and tariffs, increase product development differentiation, and controlling costs.

 

 
21

Table of Contents

 

We believe that we have sufficient cash or working capital available under our operating plan to fund our operations and capital requirements through the next one-year period, and beyond.  We may require additional cash at the U.S. headquarters, which could cause potential repatriation of cash that is held in our foreign subsidiaries.  We currently do not have plans and/or intentions to make further repatriations.  For any repatriation, there may be tax and other impediments to any repatriation actions.  As many repatriations typically have associated withholding taxes, those withheld will be a current tax without generating a current or deferred tax benefit.  Our working capital may be used to fund possible losses, business growth, project initiatives, share repurchases and business development initiatives including acquisitions, which could reduce our liquidity and result in a requirement for additional cash before that time.  Any substantial inability to achieve our current business plan could have a material adverse impact on our financial position, liquidity, or results of operations and may require us to reduce expenditures and/or seek possible additional financing.

 

OFF-BALANCE SHEET ARRANGEMENTS

 

Except as noted in the accompanying consolidated financial statements in Note 6, “Other Commitments”, we have no off-balance sheet arrangements.

 

NON-GENERALLY ACCEPTED ACCOUNTING PRINCIPLES (GAAP) FINANCIAL MEASURES

 

Earnings Before Interest, Taxes, Depreciation and Amortization (“EBITDA”) was ($1,223,000) in the first quarter of 2022 compared to ($105,000) in the first quarter of 2021.  Adjusted EBITDA, excluding equity compensation (a non-cash item), was ($932,000) in the first quarter of 2022, compared to $173,000 in the first quarter of 2021.

 

Non-GAAP financial measures, such as EBITDA and adjusted EBITDA, should not be considered a substitute for, or superior to, measures of financial performance prepared in accordance with GAAP.  We believe that these non-GAAP financial measures provide meaningful supplemental information regarding the Company’s results and facilitate the comparison of results.  A reconciliation of net income to EBITDA and adjusted EBITDA follows:

 

NON-GENERALLY ACCEPTED ACCOUNTING PRINCIPLES (GAAP) FINANCIAL MEASURE RECONCILIATION

 

 

 

Three Months Ended

March 31,

 

 

 

2022

 

 

2021

 

(in thousands)

 

 

 

 

 

 

Net Income (loss)

 

($1,820)

 

 

($333)

 

   Interest (income)

 

 

(1)

 

 

(3)

   Taxes

 

 

458

 

 

 

32

 

   Depreciation & amortization

 

 

140

 

 

 

199

 

EBITDA earnings (loss)

 

($1,223)

 

 

($105)

 

   Equity compensation

 

 

291

 

 

 

278

 

Adjusted EBITDA, excluding equity compensation

 

($932)

 

 

$173

 

 

NEW ACCOUNTING PRONOUNCEMENTS

 

On January 1, 2021 the Company adopted ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. This ASU clarifies and simplifies accounting for income taxes by eliminating certain exceptions for intraperiod tax allocation principles and the methodology for calculating income tax rates in an interim period, among other updates. The adoption of this ASU did not have a material impact on our financial statements.

 

Item 3Quantitative and Qualitative Disclosures About Market Risk

 

Not applicable.

 

Item 4.  Controls and Procedures

 

EVALUATION OF DISCLOSURE CONTROLS AND PROCEDURES

 

Under the supervision and with the participation of our management, including our Chief Executive Officer and Chief Financial Officer, we evaluated the effectiveness of the design and operation of our disclosure controls and procedures (as defined in Rule 13a-15(e) and Rule 15d-15(e) under the Exchange Act) as of the end of the period covered by this report (the “Evaluation Date”). Based upon that evaluation, the Chief Executive Officer and Chief Financial Officer concluded that, as of the Evaluation Date, our disclosure controls and procedures were effective at the reasonable level of assurance. Disclosure Controls are controls and procedures designed to reasonably assure that information required to be disclosed in our reports filed under the Exchange Act is recorded, processed, summarized, and reported within the time periods specified in the SEC’s rules and forms. Disclosure Controls are also designed to reasonably assure that such information is accumulated and communicated to our management, including the CEO and CFO, as appropriate to allow timely decisions regarding required disclosure.

 

CHANGES IN INTERNAL CONTROLS

 

There were no changes made in our internal controls during the period covered by this report that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting which is still under the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”) in Internal Control – Integrated Framework (2013).

 

 
22

Table of Contents

 

PART II - OTHER INFORMATION

 

Item 1. Legal Proceedings

 

From time to time, we may be involved in litigation relating to claims arising out of our operations in the normal course of business.  As of March 31, 2022, we were not a party to any material pending legal proceedings.

 

Item 1A. Risk Factors

 

In addition to the other information set forth in this report, you should carefully consider the factors discussed in Part I, “Item 1A. Risk Factors” in our Annual Report on Form 10-K for the year ended December 31, 2021, which could materially affect our business, financial condition or future results. The risks described in our Annual Report on Form 10-K are not the only risks facing our Company. Additional risks and uncertainties not currently known to us or that we currently deem to be immaterial also may materially adversely affect our business, financial condition and/or operating results.  There are no material changes to the Risk Factors described in our Annual Report.

 

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   

 

 
23

Table of Contents

 

Item 6. Exhibits 

 

(a) Exhibits   

 

10

Material Contracts:

 

 

 

 

None

 

 

 

31

Certification pursuant to Section 302 of the Sarbanes Oxley Act of 2002:

 

31.1

Chief Executive Officer Certification

 

31.2

Chief Financial Officer Certification

 

 

 

 

32

Certification pursuant to Section 906 of the Sarbanes Oxley Act of 2002:

 

32.1

Chief Executive Officer Certification

 

32.2

Chief Financial Officer Certification

 

 

 

 

101

Interactive Data Files Pursuant to Rule 405 of Regulation S-T

 

 
24

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.

 

DATED:   May 12, 2022

 

DATA I/O CORPORATION

(REGISTRANT)

 

By:

/s/Anthony Ambrose  

 

Anthony Ambrose

President and Chief Executive Officer

(Principal Executive Officer and Duly Authorized Officer)

 

 

 

 

 

By:

/s/Joel S. Hatlen

 

Joel S. Hatlen

Vice President and Chief Operating and Financial Officer

Secretary and Treasurer

(Principal Financial Officer and Duly Authorized Officer)

 

 

 
25

 

EX-31.1 2 daio_ex311.htm CERTIFICATION daio_ex311.htm

EXHIBIT 31.1 

 

CERTIFICATION

 

I, Anthony Ambrose, certify that:

 

1)

I have reviewed this quarterly report on Form 10-Q of Data I/O Corporation;

 

 

 

2)

Based on my knowledge, this report does not contain any untrue statement of 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 quarterly report;

 

 

 

3)

Based on my knowledge, the financial statements, and other financial information included in this quarterly 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 quarterly 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 quarterly 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 quarterly report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this quarterly report based on such evaluation; and

 

 

 

 

d)

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

 

 

 

5)

The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):

 

 

 

 

a)

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

 

 

 

 

b)

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

 

DATED:   May 12, 2022

 

/s/ Anthony Ambrose

 

Anthony Ambrose

Chief Executive Officer

(Principal Executive Officer)

 

 

EX-31.2 3 daio_ex312.htm CERTIFICATION daio_ex312.htm

 

EXHIBIT 31.2

 

CERTIFICATION

 

I, Joel S. Hatlen, certify that:

 

1)

I have reviewed this quarterly report on Form 10-Q of Data I/O Corporation;

 

 

 

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 quarterly report;

 

 

 

3)

Based on my knowledge, the financial statements, and other financial information included in this quarterly 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 quarterly 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 quarterly 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 quarterly report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this quarterly report based on such evaluation; and

 

 

 

 

d)

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

 

 

 

5)

The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):

 

 

 

 

a)

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

 

 

 

 

b)

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

 

DATED:   May 12, 2022

 

/s/ Joel S. Hatlen  

 

Joel S. Hatlen

Chief Financial Officer

(Principal Financial Officer)

 

EX-32.1 4 daio_ex321.htm CERTIFICATION daio_ex321.htm

 

EXHIBIT 32.1

 

Certification by Chief Executive Officer

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 Data I/O Corporation (the “Company”) on Form 10-Q for the period ended March 31, 2022 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Anthony Ambrose, 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:

 

(1)

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

 

 

(2)

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

 

/s/ Anthony Ambrose

 

Anthony Ambrose

Chief Executive Officer

(Principal Executive Officer)

May 12, 2022

 

 

 

 

EX-32.2 5 daio_ex322.htm CERTIFICATION daio_ex322.htm

EXHIBIT 32.2

 

Certification by Chief Financial Officer

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 Data I/O Corporation (the “Company”) on Form 10-Q for the period ended March 31, 2022 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Joel S. Hatlen, Chief Financial 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:

 

(1)

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

 

 

(2)

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

 

/s/ Joel S. Hatlen  

 

Joel S. Hatlen

Chief Financial Officer

(Principal Financial Officer)

May 12, 2022

 

EX-101.SCH 6 daio-20220331.xsd XBRL TAXONOMY EXTENSION SCHEMA 000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 000002 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 000003 - Statement - CONSOLIDATED BALANCE SHEETS) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 000004 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 000005 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 000006 - Statement - CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 000007 - Statement - CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 000008 - Disclosure - FINANCIAL STATEMENT PREPARATION link:presentationLink link:calculationLink link:definitionLink 000009 - Disclosure - INVENTORIES link:presentationLink link:calculationLink link:definitionLink 000010 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET link:presentationLink link:calculationLink link:definitionLink 000011 - Disclosure - OTHER ACCRUED LIABILITIES link:presentationLink link:calculationLink link:definitionLink 000012 - Disclosure - LEASES link:presentationLink link:calculationLink link:definitionLink 000013 - Disclosure - OTHER COMMITMENTS link:presentationLink link:calculationLink link:definitionLink 000014 - Disclosure - CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 000015 - Disclosure - EARNINGS PER SHARE link:presentationLink link:calculationLink link:definitionLink 000016 - Disclosure - SHAREBASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 000017 - Disclosure - FINANCIAL STATEMENT PREPARATION (Policies) link:presentationLink link:calculationLink link:definitionLink 000018 - Disclosure - FINANCIAL STATEMENT PREPARATION (Tables) link:presentationLink link:calculationLink link:definitionLink 000019 - Disclosure - INVENTORIES (Tables) link:presentationLink link:calculationLink link:definitionLink 000020 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET (Tables) link:presentationLink link:calculationLink link:definitionLink 000021 - Disclosure - OTHER ACCRUED LIABILITIES (Tables) link:presentationLink link:calculationLink link:definitionLink 000022 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 000023 - Disclosure - EARNINGS PER SHARE (Tables) link:presentationLink link:calculationLink link:definitionLink 000024 - Disclosure - SHAREBASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 000025 - Disclosure - FINANCIAL STATEMENT PREPARATION (Details) link:presentationLink link:calculationLink link:definitionLink 000026 - Disclosure - FINANCIAL STATEMENT PREPARATION (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000027 - Disclosure - INVENTORIES (Details) link:presentationLink link:calculationLink link:definitionLink 000028 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET (Details) link:presentationLink link:calculationLink link:definitionLink 000029 - Disclosure - OTHER ACCRUED LIABILITIES (Details) link:presentationLink link:calculationLink link:definitionLink 000030 - Disclosure - OTHER ACCRUED LIABILITIES (Details 1) link:presentationLink link:calculationLink link:definitionLink 000031 - Disclosure - LEASES (Details) link:presentationLink link:calculationLink link:definitionLink 000032 - Disclosure - LEASES (Details 1) link:presentationLink link:calculationLink link:definitionLink 000033 - Disclosure - LEASES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000034 - Disclosure - OTHER COMMITMENTS (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000035 - Disclosure - EARNINGS PER SHARE (Details) link:presentationLink link:calculationLink link:definitionLink 000036 - Disclosure - EARNINGS PER SHARE (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 000037 - Disclosure - SHARE BASED COMPENSATION (Details) link:presentationLink link:calculationLink link:definitionLink 000038 - Disclosure - SHARE BASED COMPENSATION (Details 2) link:presentationLink link:calculationLink link:definitionLink 000039 - Disclosure - SHARE BASED COMPENSATION (Details 3) link:presentationLink link:calculationLink link:definitionLink 000040 - Disclosure - SHARE BASED COMPENSATION (Details Narrative) link:presentationLink link:calculationLink link:definitionLink EX-101.LAB 7 daio-20220331_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 Interactive Data Current Entity Address Address Line 1 Entity Address Address Line 2 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 CONSOLIDATED BALANCE SHEETS Assets Current Assets: Cash And Cash Equivalents Trade Accounts Receivable, Net Of Allowance For Doubtful Accounts Of $73 And $89, Respectively Inventories Other Current Assets Total Current Assets [Assets, Current] Property, Plant And Equipment - Net Other Assets Total Assets [Assets] Liabilities And Stockholders' Equity Current Liabilities: Accounts Payable Accrued Compensation Deferred Revenue Other Accrued Liabilities Income Taxes Payable Total Current Liabilities [Liabilities, Current] Operating Lease Liabilities Long-term Other Payables Commitments Stockholders' Equity Preferred Stock - Authorized, 5,000,000 Shares, Including 200,000 Shares Of Series A Junior Participating Issued And Outstanding, None Common Stock, At Stated Value - Authorized, 30,000,000 Shares Issued And Outstanding, 8,622,369 Shares As Of March 31, 2022 And 8,621,007 Shares As Of December 31, 2021 Accumulated Earnings (deficit) Accumulated Other Comprehensive Income Total Stockholders' Equity [Stockholders' Equity Attributable to Parent] Total Liabilities And Stockholders' Equity [Liabilities and Equity] Statement [Table] Statement [Line Items] Statement Class Of Stock Axis Series A Junior Participating Current Assets: [Current Assets:] Trade Accounts Receivable, Net Of Allowance Preferred Stock, Authorized Shares Common Stock, Authorized Shares Common Stock, Issued Shares Common Stock, Outstanding Shares CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) Net Sales Cost Of Goods Sold Gross Margin [Gross Profit] Operating Expenses: Research And Development Selling, General And Administrative Total Operating Expenses [Operating Expenses] Operating Income (loss) [Operating Income (Loss)] Non-operating Income: Interest Income Gain On Sale Of Assets Foreign Currency Transaction Gain (loss) Total Non-operating Income (loss) [Nonoperating Income (Expense)] Income (loss) Before Income Taxes Income Tax (expense) Benefit [Income Tax Expense (Benefit)] Net Income (loss) [Net Income (Loss) Attributable to Parent] Basic Earnings (loss) Per Share Diluted Earnings (loss) Per Share Weighted-average Basic Shares Weighted-average Diluted Shares CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED) Net Income (loss) [Net Income (Loss), Including Portion Attributable to Noncontrolling Interest] Other Comprehensive Income (loss): Foreign Currency Translation Gain (loss) Comprehensive Income (loss) CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED) Statement Equity Components [Axis] Common Stock Retained Earnings (Accumulated Deficit) Accumulated other comprehensive Income (Loss) Balance, Shares [Shares, Issued] Balance, Amount Stock Awards Issued, Net Of Tax Withholding, Shares Stock Awards Issued, Net Of Tax Withholding, Amount Issuance Of Stock Through: Espp, Shares Issuance Of Stock Through: Espp, Amount Share-based Compensation Net Income (loss) Other Comprehensive Income (loss) Stock Awards Issued, Net Of Tax Withholding Balance, Shares Balance, Amount CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED) Cash Flows From Operating Activities Net Income (loss) [Net Income (loss)] Adjustments To Reconcile Net Income (loss) To Net Cash Provided By (used In) Operating Activities: Depreciation And Amortization Equipment Transferred To Cost Of Goods Sold Share-based Compensation Net Change In: Trade Accounts Receivable Inventories [Increase (Decrease) in Inventories] Other Current Assets [Increase (Decrease) in Other Current Assets] Accounts Payable And Accrued Liabilities Deferred Revenue [Increase (Decrease) in Deferred Revenue] Other Long-term Liabilities Deposits And Other Long-term Assets Net Cash Provided By (used In) Operating Activities [Net Cash Provided by (Used in) Operating Activities] Cash Flows From Investing Activities: Purchases Of Property, Plant And Equipment [Payments to Acquire Property, Plant, and Equipment] Cash Provided By (used In) Investing Activities [Net Cash Provided by (Used in) Investing Activities] Cash Flows From Financing Activities: Net Proceeds From Issuance Of Common Stock, Less Payments For Shares Withheld To Cover Tax Cash Provided By (used In) Financing Activities [Net Cash Provided by (Used in) Financing Activities] Increase (decrease) In Cash And Cash Equivalents [Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect] Effects Of Exchange Rate Changes On Cash Cash And Cash Equivalents At Beginning Of Period Cash And Cash Equivalents At End Of Period Supplemental Disclosure Of Cash Flow Information: Cash Paid During The Period For: Income Taxes FINANCIAL STATEMENT PREPARATION Note 1 - Financial Statement Preparation INVENTORIES Note 2 - Inventories PROPERTY PLANT AND EQUIPMENT NET Note 3 - Property, Plant And Equipment, Net OTHER ACCRUED LIABILITIES Note 4 - Other Accrued Liabilities LEASES Note 5 - Leases OTHER COMMITMENTS Note 6 - Other Commitments Note 7 - Contingencies EARNINGS PER SHARE Note 8 - Earnings Per Share SHAREBASED COMPENSATION Note 9 - Share-based Compensation Revenue Recognition Share-based Compensation Share-based Payment Arrangement [Policy Text Block] Income Tax Recently Adopted Accounting Pronouncements Disaggregation Of Revenue Inventories Schedule of Inventory, Current [Table Text Block] Property, Plant, And Equipment, Net Other Accrued Liabilities Schedule of Accrued Liabilities [Table Text Block] Product Warranty Liability Operating Lease Commitments Supplemental Balance Sheet Information Related To Leases Earnings (loss) Per Share Impact On Operations Of Recording Share-based Compensation Equity Award Activity Future Equity Compensation Expense FINANCIAL STATEMENT PREPARATION (Details) Product Or Service Axis Collateral Held [Axis] Adapter Software and Maintenance Equipment [Member] Revenue Revenue change in percentage Geographical [Axis] United States Income tax paid Raw material Work-in-process Finished goods Inventories Leasehold improvements Equipment Sales demonstration equipment Property and equipment gross Less accumulated depreciation Property and equipment, net OTHER ACCRUED LIABILITIES (Details) Lease liability - short term Product warranty Sales return reserve Other taxes Other Other accrued liabilities [Accrued Liabilities] Liability, beginning balance Net expenses Warranty claims [Standard and Extended Product Warranty Accrual, Decrease for Payments] Accrual revisions [Standard and Extended Product Warranty Accrual, Increase for Warranties Issued] Liability, ending balance LEASES (Details) 2022 2023 2024 2025 2026 Thereafter Total [Lessee, Operating Lease, Liability, to be Paid] Less: imputed interest [Lessee, Operating Lease, Liability, Undiscounted Excess Amount] Total operating lease liability Right-of-use assets (Long-term other assets) Lease liability-short term (Other accrued liabilities) Lease liability-long term (Operating lease liabilities) Plan Name Axis United States [United States] China Germany Cash paid for operating lease liabilities Weighted average remaining lease term Weighted average discount rate Operating lease costs Short-term lease costs Operating lease liability Area of lease Maturity date Lease base annual rental payments Purchase commitments and other obligations Purchase commitments and other obligations expected to be paid beyond the next 12 months Net income (loss) Denominator for basic earnings (loss) per share: weighted average shares Employee stock options and awards Denominator for diluted earnings (loss) per share: adjusted weighted-average shares and assumed conversions of stock options Basic earnings (loss) per share Diluted earnings (loss) per share Anti dilutive options to purchase shares Income Statement Location Axis Cost of Goods Sold Research and Development Selling, General and Administrative Share-based compensation Restricted Stock Award Outstanding shares Unamortized future equity compensation expense (in thousands) Remaining weighted average amortization period (in years) Vested year Amount of allowance for credit loss on accounts receivable, classified as current. Equipment Transferred To Cost Of Goods Sold. Custom Element. EX-101.CAL 8 daio-20220331_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.PRE 9 daio-20220331_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE EX-101.DEF 10 daio-20220331_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.22.1
Cover - shares
3 Months Ended
Mar. 31, 2022
Apr. 30, 2022
Cover [Abstract]    
Entity Registrant Name DATA I/O CORPORATION  
Entity Central Index Key 0000351998  
Document Type 10-Q  
Amendment Flag false  
Current Fiscal Year End Date --12-31  
Entity Small Business true  
Entity Shell Company false  
Entity Emerging Growth Company false  
Entity Current Reporting Status Yes  
Document Period End Date Mar. 31, 2022  
Entity Filer Category Non-accelerated Filer  
Document Fiscal Period Focus Q1  
Document Fiscal Year Focus 2022  
Entity Common Stock Shares Outstanding   8,624,171
Document Quarterly Report true  
Document Transition Report false  
Entity File Number 0-10394  
Entity Incorporation State Country Code WA  
Entity Tax Identification Number 91-0864123  
Entity Interactive Data Current Yes  
Entity Address Address Line 1 6645 185th Ave NE  
Entity Address Address Line 2 Suite 100  
Entity Address City Or Town Redmond  
Entity Address State Or Province WA  
Entity Address Postal Zip Code 98052  
City Area Code 425  
Local Phone Number 881-6444  
Security 12b Title Common Stock  
Trading Symbol DAIO  
Security Exchange Name NASDAQ  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.22.1
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Mar. 31, 2022
Dec. 31, 2021
Current Assets:    
Cash And Cash Equivalents $ 12,296 $ 14,190
Trade Accounts Receivable, Net Of Allowance For Doubtful Accounts Of $73 And $89, Respectively 3,055 3,995
Inventories 6,625 6,351
Other Current Assets 817 737
Total Current Assets 22,793 25,273
Property, Plant And Equipment - Net 953 946
Other Assets 2,742 2,838
Total Assets 26,488 29,057
Current Liabilities:    
Accounts Payable 1,463 1,373
Accrued Compensation 1,526 2,496
Deferred Revenue 1,466 1,507
Other Accrued Liabilities 1,439 1,413
Income Taxes Payable 3 0
Total Current Liabilities 5,897 6,789
Operating Lease Liabilities 2,138 2,277
Long-term Other Payables 193 138
Commitments 0 0
Preferred Stock -    
Authorized, 5,000,000 Shares, Including 200,000 Shares Of Series A Junior Participating Issued And Outstanding, None 0 0
Common Stock, At Stated Value -    
Authorized, 30,000,000 Shares Issued And Outstanding, 8,622,369 Shares As Of March 31, 2022 And 8,621,007 Shares As Of December 31, 2021 21,183 20,886
Accumulated Earnings (deficit) (3,831) (2,011)
Accumulated Other Comprehensive Income 908 978
Total Stockholders' Equity 18,260 19,853
Total Liabilities And Stockholders' Equity $ 26,488 $ 29,057
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.22.1
CONSOLIDATED BALANCE SHEETS) (Parenthetical) - USD ($)
$ in Thousands
Mar. 31, 2022
Dec. 31, 2021
Current Assets:    
Trade Accounts Receivable, Net Of Allowance $ 73 $ 89
Preferred Stock, Authorized Shares 5,000,000 5,000,000
Common Stock, Authorized Shares 30,000,000 30,000,000
Common Stock, Issued Shares 8,622,369 8,621,007
Common Stock, Outstanding Shares 8,622,369 8,621,007
Series A Junior Participating    
Current Assets:    
Preferred Stock, Authorized Shares 5,000,000 200,000
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.22.1
CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)    
Net Sales $ 4,965 $ 6,015
Cost Of Goods Sold 2,662 2,677
Gross Margin 2,303 3,338
Operating Expenses:    
Research And Development 1,616 1,606
Selling, General And Administrative 2,048 2,062
Total Operating Expenses 3,664 3,668
Operating Income (loss) (1,361) (330)
Non-operating Income:    
Interest Income 1 3
Gain On Sale Of Assets 58 0
Foreign Currency Transaction Gain (loss) (60) 26
Total Non-operating Income (loss) (1) 29
Income (loss) Before Income Taxes (1,362) (301)
Income Tax (expense) Benefit (458) (32)
Net Income (loss) $ (1,820) $ (333)
Basic Earnings (loss) Per Share $ (0.21) $ (0.04)
Diluted Earnings (loss) Per Share $ (0.21) $ (0.04)
Weighted-average Basic Shares 8,622 8,420
Weighted-average Diluted Shares 8,622 8,420
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.22.1
CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED) - USD ($)
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED)    
Net Income (loss) $ (1,820) $ (333)
Other Comprehensive Income (loss):    
Foreign Currency Translation Gain (loss) (70) (180)
Comprehensive Income (loss) $ (1,890) $ (513)
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.22.1
CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED) - USD ($)
$ in Thousands
Total
Common Stock
Retained Earnings (Accumulated Deficit)
Accumulated other comprehensive Income (Loss)
Balance, Shares at Dec. 31, 2020   8,416,335    
Balance, Amount at Dec. 31, 2020 $ 19,639 $ 20,071 $ (1,456) $ 1,024
Stock Awards Issued, Net Of Tax Withholding, Shares   2,089    
Stock Awards Issued, Net Of Tax Withholding, Amount (4) $ (4) 0 0
Issuance Of Stock Through: Espp, Shares   3,175    
Issuance Of Stock Through: Espp, Amount 16 $ 16 0 0
Share-based Compensation 278 278 0 0
Net Income (loss) (333) 0 (333) 0
Other Comprehensive Income (loss) (180) $ 0 0 (180)
Balance, Shares at Mar. 31, 2021   8,421,599    
Balance, Amount at Mar. 31, 2021 19,416 $ 20,361 (1,789) 844
Balance, Shares at Dec. 31, 2021   8,621,007    
Balance, Amount at Dec. 31, 2021 19,853 $ 20,886 (2,011) 978
Issuance Of Stock Through: Espp, Shares   1,362    
Issuance Of Stock Through: Espp, Amount 6 $ 6 0 0
Share-based Compensation 291 291 0 0
Net Income (loss) (1,820) 0 (1,820) 0
Other Comprehensive Income (loss) (70) 0 0 (70)
Stock Awards Issued, Net Of Tax Withholding 0 $ 0 0 0
Balance, Shares at Mar. 31, 2022   8,622,369    
Balance, Amount at Mar. 31, 2022 $ 18,260 $ 21,183 $ (3,831) $ 908
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.22.1
CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
Cash Flows From Operating Activities    
Net Income (loss) $ (1,820) $ (333)
Adjustments To Reconcile Net Income (loss) To Net Cash Provided By (used In) Operating Activities:    
Depreciation And Amortization 140 200
Equipment Transferred To Cost Of Goods Sold 125 132
Share-based Compensation 291 278
Net Change In:    
Trade Accounts Receivable 913 (843)
Inventories (277) 442
Other Current Assets (98) 36
Accounts Payable And Accrued Liabilities (835) (94)
Deferred Revenue 28 175
Other Long-term Liabilities (253) (105)
Deposits And Other Long-term Assets 204 136
Net Cash Provided By (used In) Operating Activities (1,582) 24
Cash Flows From Investing Activities:    
Purchases Of Property, Plant And Equipment (272) (92)
Cash Provided By (used In) Investing Activities (272) (92)
Net Proceeds From Issuance Of Common Stock, Less Payments    
For Shares Withheld To Cover Tax 6 12
Cash Provided By (used In) Financing Activities 6 12
Increase (decrease) In Cash And Cash Equivalents (1,848) (56)
Effects Of Exchange Rate Changes On Cash (46) (490)
Cash And Cash Equivalents At Beginning Of Period 14,190 14,167
Cash And Cash Equivalents At End Of Period 12,296 13,621
Cash Paid During The Period For:    
Income Taxes $ 441 $ 40
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.22.1
FINANCIAL STATEMENT PREPARATION
3 Months Ended
Mar. 31, 2022
FINANCIAL STATEMENT PREPARATION  
Note 1 - Financial Statement Preparation

NOTE 1 - FINANCIAL STATEMENT PREPARATION

 

Data I/O Corporation (“Data I/O”, “We”, “Our”, “Us”) prepared the financial statements as of March 31, 2022 and March 31, 2021 according to the rules and regulations of the Securities and Exchange Commission ("SEC").  These statements are unaudited but, in the opinion of management, include all adjustments (consisting of normal recurring adjustments and accruals) necessary to present fairly the results for the periods presented.  The balance sheet at December 31, 2021 has been derived from the audited financial statements at that date.  We have condensed or omitted certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America according to such SEC rules and regulations.  Operating results for the three months ended March 31, 2022 are not necessarily indicative of the results that may be expected for the year ending December 31, 2022.  These financial statements should be read in conjunction with the annual audited financial statements and the accompanying notes included in our Form 10-K for the year ended December 31, 2021.

 

Revenue Recognition

 

Topic 606 provides a single, principles-based five-step model to be applied to all contracts with customers.  It generally provides for the recognition of revenue in an amount that reflects the consideration to which the Company expects to be entitled, net of allowances for estimated returns, discounts or sales incentives, as well as taxes collected from customers when control over the promised goods or services are transferred to the customer.   

 

We expense contract acquisition costs, primarily sales commissions, for contracts with terms of one year or less and will capitalize and amortize incremental costs with terms that exceed one year.  During 2022 and 2021, the impact of capitalization of incremental costs for obtaining contracts was immaterial.  We exclude sales, use, value added, some excise taxes and other similar taxes from the measurement of the transaction price.

 

We recognize revenue upon transfer of control of the promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services.  We have determined that our programming equipment has reached a point of maturity and stability such that product acceptance can be assured by testing at the factory prior to shipment and that the installation meets the criteria to be a separate performance obligation.  These systems are standard products with published product specifications and are configurable with standard options.  The evidence that these systems could be deemed as accepted was based upon having standardized factory production of the units, results from batteries of tests of product performance to our published specifications, quality inspections and installation standardization, as well as past product operation validation with the customer and the history provided by our installed base of products upon which the current versions were based.

 

The revenue related to products requiring installation that is perfunctory is recognized upon transfer of control of the product to customers, which generally is at the time of shipment.  Installation that is considered perfunctory includes any installation that is expected to be performed by other parties, such as distributors, other vendors, or the customers themselves.  This considers the complexity, skill and training needed as well as customer expectations regarding installation.

 

We enter into arrangements with multiple performance obligations that arise during the sale of a system that includes an installation component, a service and support component and a software maintenance component.  We allocate the transaction price of each element based on relative selling prices.  Relative selling price is based on the selling price of the standalone system.  For the installation and service and support performance obligations, we use the value of the discount given to distributors who perform these components.  For software maintenance performance obligations, we use what we charge for annual software maintenance renewals after the initial year the system is sold.  Revenue is recognized on the system sale based on shipping terms, installation revenue is recognized after the installation is performed, and hardware service and support and software maintenance revenue is recognized ratably over the term of the agreement, typically one year.  Deferred revenue includes service, support and maintenance contracts and represents the undelivered performance obligation of agreements that are typically for one year.

When we sell software separately, we recognize revenue upon the transfer of control of the software, which is generally upon shipment, provided that only inconsequential performance obligations remain on our part and substantive acceptance conditions, if any, have been met.

 

We recognize revenue when there is an approved contract that both parties are committed to perform, both parties rights have been identified, the contract has substance,  collection of substantially all the consideration is probable, the transaction price has been determined and allocated over the performance obligations, the performance obligations including substantive acceptance conditions, if any, in the contract have been met, the obligation is not contingent on resale of the product, the buyer’s obligation would not be changed in the event of theft, physical destruction or damage to the product, the buyer acquiring the product for resale has economic substance apart from us and we do not have significant obligations for future performance to directly bring about the resale of the product by the buyer.  We establish a reserve for sales returns based on historical trends in product returns and estimates for new items.  Payment terms are generally 30 days from shipment. 

 

We transfer certain products out of service from their internal use and make them available for sale.  The products transferred are typically our standard products in one of the following areas: service loaners, rental or test units; engineering test units; or sales demonstration equipment.  Once transferred, the equipment is sold by our regular sales channels as used equipment inventory.  These product units often involve refurbishing and an equipment warranty, and are conducted as sales in our normal and ordinary course of business.  The transfer amount is the product unit’s net book value and the sale transaction is accounted for as revenue and cost of goods sold.

 

The following table represents our revenues by major categories:

 

 

 

 Three Months Ended

 

Net sales by type

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Equipment

 

$2,607

 

 

(22.1%)

 

$3,347

 

Adapter

 

 

1,622

 

 

(15.0%)

 

 

1,908

 

Software and Maintenance

 

 

736

 

 

(3.2%)

 

 

760

 

Total

 

$4,965

 

 

(17.5%)

 

$6,015

 

 

Share-Based Compensation

 

All stock-based compensation awards are measured based on estimated fair values on the date of grant and recognized as compensation expense on the straight-line method.  Our share-based compensation is reduced for estimated forfeitures at the time of grant and revised as necessary in subsequent periods if actual forfeitures differ from those estimates.

Income Tax

 

Income taxes are computed at current enacted tax rates, less tax credits using the asset and liability method.  Deferred taxes are adjusted both for items that do not have tax consequences and for the cumulative effect of any changes in tax rates from those previously used to determine deferred tax assets or liabilities.  Tax provisions include amounts that are currently payable, changes in deferred tax assets and liabilities that arise because of temporary differences between the timing of when items of income and expense are recognized for financial reporting and income tax purposes, and any changes in the valuation allowance caused by a change in judgment about the realization of the related deferred tax assets.  A valuation allowance is established when necessary to reduce deferred tax assets to amounts expected to be realized. During the quarter ended March 31, 2022, as a result of a dividend paid from our China subsidiary to the USA parent company, $442,000 of income tax was withheld and paid.

 

Recently Adopted Accounting Pronouncements

 

On January 1, 2021 the Company adopted ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. This ASU clarifies and simplifies accounting for income taxes by eliminating certain exceptions for intraperiod tax allocation principles and the methodology for calculating income tax rates in an interim period, among other updates. The adoption of this ASU did not have a material impact on our financial statements.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.22.1
INVENTORIES
3 Months Ended
Mar. 31, 2022
INVENTORIES  
Note 2 - Inventories

NOTE 2 – INVENTORIES

 

Inventories consisted of the following components:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Raw material

 

$3,992

 

 

$3,771

 

Work-in-process

 

 

1,727

 

 

 

1,602

 

Finished goods

 

 

906

 

 

 

978

 

Inventories

 

$6,625

 

 

$6,351

 

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.22.1
PROPERTY PLANT AND EQUIPMENT NET
3 Months Ended
Mar. 31, 2022
PROPERTY PLANT AND EQUIPMENT NET  
Note 3 - Property, Plant And Equipment, Net

NOTE 3 – PROPERTY, PLANT AND EQUIPMENT, NET

 

Property and equipment consisted of the following components:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Leasehold improvements

 

$431

 

 

$430

 

Equipment

 

 

5,191

 

 

 

5,218

 

Sales demonstration equipment

 

 

807

 

 

 

754

 

 

 

 

6,429

 

 

 

6,402

 

Less accumulated depreciation

 

 

5,476

 

 

 

5,456

 

Property and equipment, net

 

$953

 

 

$946

 

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.22.1
OTHER ACCRUED LIABILITIES
3 Months Ended
Mar. 31, 2022
OTHER ACCRUED LIABILITIES  
Note 4 - Other Accrued Liabilities

NOTE 4 – OTHER ACCRUED LIABILITIES

 

Other accrued liabilities consisted of the following components:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Lease liability - short term

 

$623

 

 

$601

 

Product warranty

 

 

430

 

 

 

432

 

Sales return reserve

 

 

71

 

 

 

71

 

Other taxes

 

 

132

 

 

 

180

 

Other

 

 

183

 

 

 

129

 

Other accrued liabilities

 

$1,439

 

 

$1,413

 

 

The changes in our product warranty liability for the three months ending March 31, 2022 are as follows:

 

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Liability, beginning balance

 

$432

 

 

$371

 

Net expenses

 

 

217

 

 

 

864

 

Warranty claims

 

 

(217)

 

 

(864)

Accrual revisions

 

 

(2)

 

 

61

 

Liability, ending balance

 

$430

 

 

$432

 

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.22.1
LEASES
3 Months Ended
Mar. 31, 2022
LEASES  
Note 5 - Leases

NOTE 5 – LEASES

 

Our leasing arrangements are primarily for facility leases we use to conduct our operations. The following table presents our future lease payments for long-term operating leases as of March 31, 2022:

 

 

 

Operating

Lease Commitments

 

 (in thousands)

 

 

 

2022 (remaining)

 

$594

 

2023

 

 

920

 

2024

 

 

836

 

2025

 

 

585

 

2026

 

 

133

 

Thereafter

 

 

48

 

Total

 

$3,116

 

   Less Imputed interest

 

 

(356)

Total operating lease liabilities

 

$2,760

 

 

Cash paid for operating lease liabilities for the three months ended March 31, 2022 and 2021 were $212,000 and $201,000, respectively. 

The following table presents supplemental balance sheet information related to leases:

 

 

 

Balance at

March 31,

2022

 

 

Balance at

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Right-of-use assets (Long-term other assets)

 

$2,697

 

 

$2,793

 

Lease liability-short term (Other accrued liabilities)

 

 

623

 

 

 

601

 

Lease liability-long term (Operating lease liabilities)

 

 

2,138

 

 

 

2,277

 

 

At March 31, 2022, the weighted average remaining lease term is 3.67 and the weighted average discount rate used is 5%.

 

The components of our lease expense for the three months ended March 31, 2022 and 2021 include operating lease costs of $220,000 and $171,000, respectively, and short-term lease costs of $20,000 and $7,000, respectively.

 

Our real estate facility leases are described below:

 

During the fourth quarter of 2021, we amended our lease agreement for the Redmond, Washington headquarters facility, extending the lease to January 31, 2026.  The lease is for approximately 20,460 square feet. 

 

In April 2021, we signed a lease extension effective November 1, 2021  that extends the lease for a facility located in Shanghai, China through October 31, 2024.  This lease is for approximately 19,400 square feet.

 

Our lease for our facility located near Munich, Germany ran through February 28, 2022 and in March 2022 we entered into a lease extension to August 2027.  This lease is for approximately 4,895 square feet.

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.22.1
OTHER COMMITMENTS
3 Months Ended
Mar. 31, 2022
OTHER COMMITMENTS  
Note 6 - Other Commitments

NOTE 6 – OTHER COMMITMENTS

 

We have purchase obligations for inventory and production costs as well as other obligations such as capital expenditures, service contracts, marketing, and development agreements.  Arrangements are considered purchase obligations if a contract specifies all significant terms, including fixed or minimum quantities to be purchased, a pricing structure and approximate timing of the transaction.  Most arrangements are cancelable without a significant penalty, and with short notice, typically less than 90 days.  At March 31, 2022, the purchase commitments and other obligations totaled $2.0 million of which all but $590,000 are expected to be paid over the next twelve months.

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.22.1
CONTINGENCIES
3 Months Ended
Mar. 31, 2022
OTHER COMMITMENTS  
Note 7 - Contingencies

NOTE 7 – CONTINGENCIES

 

As of March 31, 2022, we were not a party to any legal proceedings or aware of any indemnification agreement claims, the adverse outcome of which in management’s opinion, individually or in the aggregate, would have a material adverse effect on our results of operations or financial position. 

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.22.1
EARNINGS PER SHARE
3 Months Ended
Mar. 31, 2022
EARNINGS PER SHARE  
Note 8 - Earnings Per Share

NOTE 8 – EARNINGS PER SHARE

 

Basic earnings per share is calculated based on the weighted average number of common shares outstanding during each period.  Diluted earnings per share is calculated based on these same weighted average shares outstanding plus the effect of potential shares issuable upon assumed exercise of stock options based on the treasury stock method. 

 

Potential shares issuable upon the exercise of stock options are excluded from the calculation of diluted earnings per share to the extent their effect would be anti-dilutive.

The following table sets forth the computation of basic and diluted earnings per share:

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

(in thousands except per share data)

 

 

 

 

 

 

Numerator for basic and diluted

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

       Net income (loss)

 

(1,820)

 

 

($333)

 

 

 

 

 

 

 

 

Denominator for basic

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

       Weighted-average shares

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

Employee stock options and awards

 

 

-

 

 

 

-

 

 

 

 

 

 

 

 

 

 

Denominator for diluted

 

 

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

 

 

       Adjusted weighted-average shares &

 

 

 

 

 

 

 

 

       assumed conversions of stock options

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

Basic and diluted

 

 

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

 

 

       Basic earnings (loss) per share

 

($0.21)

 

 

($0.04)

 

       Diluted earnings (loss) per share 

 

($0.21)

 

 

($0.04)

 

 

Options to purchase 12,500 and 25,000 shares respectively were outstanding as of March 31, 2022 and 2021, but were excluded from the computation of diluted earnings per share for the periods then ended because the options were anti-dilutive.

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.22.1
SHAREBASED COMPENSATION
3 Months Ended
Mar. 31, 2022
SHAREBASED COMPENSATION  
Note 9 - Share-based Compensation

NOTE 9 – SHARE-BASED COMPENSATION

 

For share-based awards granted, we have recognized compensation expense based on the estimated grant date fair value method.  For these awards we have recognized compensation expense using a straight-line amortization method reduced for estimated forfeitures.  

 

The impact on our results of operations of recording share-based compensation, net of forfeitures, for the three months ended March 31, 2022 and 2021 were as follows:

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

Cost of goods sold

 

$15

 

 

$10

 

Research and development

 

 

64

 

 

 

71

 

Selling, general and administrative

 

 

212

 

 

 

197

 

Total share-based compensation

 

$291

 

 

$278

 

Equity awards granted during the three months ended March 31, 2022 and 2021 were as follows:

 

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

 

 

 

 

 

 

 

Restricted Stock Units

 

 

2,515

 

 

 

2,000

 

 

Non-employee directors Restricted Stock Units (“RSUs”) typically vest over the earlier of one year or the next annual meeting of shareholders and Non-Qualified stock options vest over three years and have a six-year exercise period.  Employee RSUs typically vest over four years and employee Non-Qualified stock options typically vest quarterly over 4 years and have a six-year exercise period.

 

The remaining unamortized expected future equity compensation expense and remaining amortization period associated with unvested option grants, restricted stock awards and restricted stock unit awards at March 31, 2022 are:

 

 

 

March 31,

2022

 

 

 

 

 

Unamortized future equity compensation expense (in thousands)

 

$2,021

 

Remaining weighted average amortization period (in years)

 

 

2.44

 

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.22.1
FINANCIAL STATEMENT PREPARATION (Policies)
3 Months Ended
Mar. 31, 2022
FINANCIAL STATEMENT PREPARATION  
Revenue Recognition

Topic 606 provides a single, principles-based five-step model to be applied to all contracts with customers.  It generally provides for the recognition of revenue in an amount that reflects the consideration to which the Company expects to be entitled, net of allowances for estimated returns, discounts or sales incentives, as well as taxes collected from customers when control over the promised goods or services are transferred to the customer.   

 

We expense contract acquisition costs, primarily sales commissions, for contracts with terms of one year or less and will capitalize and amortize incremental costs with terms that exceed one year.  During 2022 and 2021, the impact of capitalization of incremental costs for obtaining contracts was immaterial.  We exclude sales, use, value added, some excise taxes and other similar taxes from the measurement of the transaction price.

 

We recognize revenue upon transfer of control of the promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services.  We have determined that our programming equipment has reached a point of maturity and stability such that product acceptance can be assured by testing at the factory prior to shipment and that the installation meets the criteria to be a separate performance obligation.  These systems are standard products with published product specifications and are configurable with standard options.  The evidence that these systems could be deemed as accepted was based upon having standardized factory production of the units, results from batteries of tests of product performance to our published specifications, quality inspections and installation standardization, as well as past product operation validation with the customer and the history provided by our installed base of products upon which the current versions were based.

 

The revenue related to products requiring installation that is perfunctory is recognized upon transfer of control of the product to customers, which generally is at the time of shipment.  Installation that is considered perfunctory includes any installation that is expected to be performed by other parties, such as distributors, other vendors, or the customers themselves.  This considers the complexity, skill and training needed as well as customer expectations regarding installation.

 

We enter into arrangements with multiple performance obligations that arise during the sale of a system that includes an installation component, a service and support component and a software maintenance component.  We allocate the transaction price of each element based on relative selling prices.  Relative selling price is based on the selling price of the standalone system.  For the installation and service and support performance obligations, we use the value of the discount given to distributors who perform these components.  For software maintenance performance obligations, we use what we charge for annual software maintenance renewals after the initial year the system is sold.  Revenue is recognized on the system sale based on shipping terms, installation revenue is recognized after the installation is performed, and hardware service and support and software maintenance revenue is recognized ratably over the term of the agreement, typically one year.  Deferred revenue includes service, support and maintenance contracts and represents the undelivered performance obligation of agreements that are typically for one year.

When we sell software separately, we recognize revenue upon the transfer of control of the software, which is generally upon shipment, provided that only inconsequential performance obligations remain on our part and substantive acceptance conditions, if any, have been met.

 

We recognize revenue when there is an approved contract that both parties are committed to perform, both parties rights have been identified, the contract has substance,  collection of substantially all the consideration is probable, the transaction price has been determined and allocated over the performance obligations, the performance obligations including substantive acceptance conditions, if any, in the contract have been met, the obligation is not contingent on resale of the product, the buyer’s obligation would not be changed in the event of theft, physical destruction or damage to the product, the buyer acquiring the product for resale has economic substance apart from us and we do not have significant obligations for future performance to directly bring about the resale of the product by the buyer.  We establish a reserve for sales returns based on historical trends in product returns and estimates for new items.  Payment terms are generally 30 days from shipment. 

 

We transfer certain products out of service from their internal use and make them available for sale.  The products transferred are typically our standard products in one of the following areas: service loaners, rental or test units; engineering test units; or sales demonstration equipment.  Once transferred, the equipment is sold by our regular sales channels as used equipment inventory.  These product units often involve refurbishing and an equipment warranty, and are conducted as sales in our normal and ordinary course of business.  The transfer amount is the product unit’s net book value and the sale transaction is accounted for as revenue and cost of goods sold.

 

The following table represents our revenues by major categories:

 

 

 

 Three Months Ended

 

Net sales by type

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Equipment

 

$2,607

 

 

(22.1%)

 

$3,347

 

Adapter

 

 

1,622

 

 

(15.0%)

 

 

1,908

 

Software and Maintenance

 

 

736

 

 

(3.2%)

 

 

760

 

Total

 

$4,965

 

 

(17.5%)

 

$6,015

 

Share-based Compensation

All stock-based compensation awards are measured based on estimated fair values on the date of grant and recognized as compensation expense on the straight-line method.  Our share-based compensation is reduced for estimated forfeitures at the time of grant and revised as necessary in subsequent periods if actual forfeitures differ from those estimates.

Income Tax

Income taxes are computed at current enacted tax rates, less tax credits using the asset and liability method.  Deferred taxes are adjusted both for items that do not have tax consequences and for the cumulative effect of any changes in tax rates from those previously used to determine deferred tax assets or liabilities.  Tax provisions include amounts that are currently payable, changes in deferred tax assets and liabilities that arise because of temporary differences between the timing of when items of income and expense are recognized for financial reporting and income tax purposes, and any changes in the valuation allowance caused by a change in judgment about the realization of the related deferred tax assets.  A valuation allowance is established when necessary to reduce deferred tax assets to amounts expected to be realized. During the quarter ended March 31, 2022, as a result of a dividend paid from our China subsidiary to the USA parent company, $442,000 of income tax was withheld and paid.

Recently Adopted Accounting Pronouncements

On January 1, 2021 the Company adopted ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. This ASU clarifies and simplifies accounting for income taxes by eliminating certain exceptions for intraperiod tax allocation principles and the methodology for calculating income tax rates in an interim period, among other updates. The adoption of this ASU did not have a material impact on our financial statements.

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.22.1
FINANCIAL STATEMENT PREPARATION (Tables)
3 Months Ended
Mar. 31, 2022
FINANCIAL STATEMENT PREPARATION  
Disaggregation Of Revenue

 

 

 Three Months Ended

 

Net sales by type

 

March 31,

2022

 

 

Change

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

 

 

Equipment

 

$2,607

 

 

(22.1%)

 

$3,347

 

Adapter

 

 

1,622

 

 

(15.0%)

 

 

1,908

 

Software and Maintenance

 

 

736

 

 

(3.2%)

 

 

760

 

Total

 

$4,965

 

 

(17.5%)

 

$6,015

 

XML 29 R19.htm IDEA: XBRL DOCUMENT v3.22.1
INVENTORIES (Tables)
3 Months Ended
Mar. 31, 2022
INVENTORIES  
Inventories

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Raw material

 

$3,992

 

 

$3,771

 

Work-in-process

 

 

1,727

 

 

 

1,602

 

Finished goods

 

 

906

 

 

 

978

 

Inventories

 

$6,625

 

 

$6,351

 

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.22.1
PROPERTY PLANT AND EQUIPMENT NET (Tables)
3 Months Ended
Mar. 31, 2022
PROPERTY PLANT AND EQUIPMENT NET  
Property, Plant, And Equipment, Net

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Leasehold improvements

 

$431

 

 

$430

 

Equipment

 

 

5,191

 

 

 

5,218

 

Sales demonstration equipment

 

 

807

 

 

 

754

 

 

 

 

6,429

 

 

 

6,402

 

Less accumulated depreciation

 

 

5,476

 

 

 

5,456

 

Property and equipment, net

 

$953

 

 

$946

 

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.22.1
OTHER ACCRUED LIABILITIES (Tables)
3 Months Ended
Mar. 31, 2022
OTHER ACCRUED LIABILITIES  
Other Accrued Liabilities

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Lease liability - short term

 

$623

 

 

$601

 

Product warranty

 

 

430

 

 

 

432

 

Sales return reserve

 

 

71

 

 

 

71

 

Other taxes

 

 

132

 

 

 

180

 

Other

 

 

183

 

 

 

129

 

Other accrued liabilities

 

$1,439

 

 

$1,413

 

Product Warranty Liability

 

 

March 31,

2022

 

 

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Liability, beginning balance

 

$432

 

 

$371

 

Net expenses

 

 

217

 

 

 

864

 

Warranty claims

 

 

(217)

 

 

(864)

Accrual revisions

 

 

(2)

 

 

61

 

Liability, ending balance

 

$430

 

 

$432

 

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.22.1
LEASES (Tables)
3 Months Ended
Mar. 31, 2022
LEASES  
Operating Lease Commitments

 

 

Operating

Lease Commitments

 

 (in thousands)

 

 

 

2022 (remaining)

 

$594

 

2023

 

 

920

 

2024

 

 

836

 

2025

 

 

585

 

2026

 

 

133

 

Thereafter

 

 

48

 

Total

 

$3,116

 

   Less Imputed interest

 

 

(356)

Total operating lease liabilities

 

$2,760

 

Supplemental Balance Sheet Information Related To Leases

 

 

Balance at

March 31,

2022

 

 

Balance at

December 31,

2021

 

(in thousands)

 

 

 

 

 

 

Right-of-use assets (Long-term other assets)

 

$2,697

 

 

$2,793

 

Lease liability-short term (Other accrued liabilities)

 

 

623

 

 

 

601

 

Lease liability-long term (Operating lease liabilities)

 

 

2,138

 

 

 

2,277

 

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.22.1
EARNINGS PER SHARE (Tables)
3 Months Ended
Mar. 31, 2022
EARNINGS PER SHARE  
Earnings (loss) Per Share

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

(in thousands except per share data)

 

 

 

 

 

 

Numerator for basic and diluted

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

       Net income (loss)

 

(1,820)

 

 

($333)

 

 

 

 

 

 

 

 

Denominator for basic

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

       Weighted-average shares

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

Employee stock options and awards

 

 

-

 

 

 

-

 

 

 

 

 

 

 

 

 

 

Denominator for diluted

 

 

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

 

 

       Adjusted weighted-average shares &

 

 

 

 

 

 

 

 

       assumed conversions of stock options

 

 

8,622

 

 

 

8,420

 

 

 

 

 

 

 

 

 

 

Basic and diluted

 

 

 

 

 

 

 

 

earnings (loss) per share:

 

 

 

 

 

 

 

 

       Basic earnings (loss) per share

 

($0.21)

 

 

($0.04)

 

       Diluted earnings (loss) per share 

 

($0.21)

 

 

($0.04)

 

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.22.1
SHAREBASED COMPENSATION (Tables)
3 Months Ended
Mar. 31, 2022
SHAREBASED COMPENSATION  
Impact On Operations Of Recording Share-based Compensation

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

(in thousands)

 

 

 

 

 

 

Cost of goods sold

 

$15

 

 

$10

 

Research and development

 

 

64

 

 

 

71

 

Selling, general and administrative

 

 

212

 

 

 

197

 

Total share-based compensation

 

$291

 

 

$278

 

Equity Award Activity

 

 

 Three Months Ended

 

 

 

March 31,

2022

 

 

March 31,

2021

 

 

 

 

 

 

 

 

Restricted Stock Units

 

 

2,515

 

 

 

2,000

 

Future Equity Compensation Expense

 

 

March 31,

2022

 

 

 

 

 

Unamortized future equity compensation expense (in thousands)

 

$2,021

 

Remaining weighted average amortization period (in years)

 

 

2.44

 

XML 35 R25.htm IDEA: XBRL DOCUMENT v3.22.1
FINANCIAL STATEMENT PREPARATION (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
Revenue $ 4,965 $ 6,015
Revenue change in percentage (17.50%)  
Equipment [Member]    
Revenue $ 2,607 3,347
Revenue change in percentage 22.10%  
Adapter    
Revenue $ 1,622 1,908
Revenue change in percentage (15.00%)  
Software and Maintenance    
Revenue $ 736 $ 760
Revenue change in percentage (3.20%)  
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.22.1
FINANCIAL STATEMENT PREPARATION (Details Narrative)
3 Months Ended
Mar. 31, 2022
USD ($)
United States  
Income tax paid $ 442,000
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.22.1
INVENTORIES (Details) - USD ($)
$ in Thousands
Mar. 31, 2022
Dec. 31, 2021
INVENTORIES    
Raw material $ 3,992 $ 3,771
Work-in-process 1,727 1,602
Finished goods 906 978
Inventories $ 6,625 $ 6,351
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.22.1
PROPERTY PLANT AND EQUIPMENT NET (Details) - USD ($)
$ in Thousands
Mar. 31, 2022
Dec. 31, 2021
PROPERTY PLANT AND EQUIPMENT NET    
Leasehold improvements $ 431 $ 430
Equipment 5,191 5,218
Sales demonstration equipment 807 754
Property and equipment gross 6,429 6,402
Less accumulated depreciation 5,476 5,456
Property and equipment, net $ 953 $ 946
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.22.1
OTHER ACCRUED LIABILITIES (Details) - USD ($)
$ in Thousands
Mar. 31, 2022
Dec. 31, 2021
Dec. 31, 2020
OTHER ACCRUED LIABILITIES (Details)      
Lease liability - short term $ 623 $ 601  
Product warranty 430 432 $ 371
Sales return reserve 71 71  
Other taxes 132 180  
Other 183 129  
Other accrued liabilities $ 1,439 $ 1,413  
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.22.1
OTHER ACCRUED LIABILITIES (Details 1) - USD ($)
$ in Thousands
3 Months Ended 12 Months Ended
Mar. 31, 2022
Dec. 31, 2021
OTHER ACCRUED LIABILITIES (Details)    
Liability, beginning balance $ 432 $ 371
Net expenses 217 864
Warranty claims (217) (864)
Accrual revisions (2) (61)
Liability, ending balance $ 430 $ 432
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.22.1
LEASES (Details)
$ in Thousands
Mar. 31, 2022
USD ($)
LEASES (Details)  
2022 $ 594
2023 920
2024 836
2025 585
2026 133
Thereafter 48
Total 3,116
Less: imputed interest (356)
Total operating lease liability $ 2,760
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.22.1
LEASES (Details 1) - USD ($)
$ in Thousands
Mar. 31, 2022
Dec. 31, 2021
LEASES (Details)    
Right-of-use assets (Long-term other assets) $ 2,697 $ 2,793
Lease liability-short term (Other accrued liabilities) 623 601
Lease liability-long term (Operating lease liabilities) $ 2,138 $ 2,277
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.22.1
LEASES (Details Narrative)
3 Months Ended
Mar. 31, 2022
USD ($)
ft²
Mar. 31, 2021
USD ($)
Cash paid for operating lease liabilities $ 815,000  
Weighted average remaining lease term 3 years 8 months 1 day  
Weighted average discount rate 5.00%  
Operating lease costs $ 220,000 $ 171,000
Short-term lease costs 20,000 7,000
Operating lease liability $ 212,000 $ 201,000
China    
Area of lease | ft² 19,400  
Maturity date Oct. 31, 2024  
Germany    
Area of lease | ft² 4,895  
Lease base annual rental payments $ 58,000  
United States    
Area of lease | ft² 20,460  
Maturity date Jan. 31, 2026  
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.22.1
OTHER COMMITMENTS (Details Narrative)
Dec. 31, 2021
USD ($)
OTHER COMMITMENTS  
Purchase commitments and other obligations $ 2,000,000.0
Purchase commitments and other obligations expected to be paid beyond the next 12 months $ 590,000
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.22.1
EARNINGS PER SHARE (Details) - USD ($)
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
EARNINGS PER SHARE    
Net income (loss) $ (1,820,000) $ (333,000)
Denominator for basic earnings (loss) per share: weighted average shares 8,622 8,420
Employee stock options and awards $ 0 $ 0
Denominator for diluted earnings (loss) per share: adjusted weighted-average shares and assumed conversions of stock options 8,622 8,420
Basic earnings (loss) per share $ (0.21) $ (0.04)
Diluted earnings (loss) per share $ (0.21) $ (0.04)
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.22.1
EARNINGS PER SHARE (Details Narrative) - shares
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
EARNINGS PER SHARE    
Anti dilutive options to purchase shares 12,500 25,000
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.22.1
SHARE BASED COMPENSATION (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2022
Mar. 31, 2021
Share-based compensation $ 291 $ 278
Cost of Goods Sold    
Share-based compensation 15 10
Research and Development    
Share-based compensation 64 71
Selling, General and Administrative    
Share-based compensation $ 212 $ 197
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.22.1
SHARE BASED COMPENSATION (Details 2) - shares
Mar. 31, 2022
Dec. 31, 2021
Restricted Stock Award    
Outstanding shares 2,515 2,000
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.22.1
SHARE BASED COMPENSATION (Details 3)
3 Months Ended
Mar. 31, 2022
USD ($)
SHAREBASED COMPENSATION  
Unamortized future equity compensation expense (in thousands) $ 2,021
Remaining weighted average amortization period (in years) 2 years 5 months 8 days
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.22.1
SHARE BASED COMPENSATION (Details Narrative)
3 Months Ended
Mar. 31, 2022
Vested year 4 years
Restricted Stock Award  
Vested year 4 years
XML 51 daio_10q_htm.xml IDEA: XBRL DOCUMENT 0000351998 2022-01-01 2022-03-31 0000351998 daio:RestrictedStockAwardMember 2022-01-01 2022-03-31 0000351998 daio:RestrictedStockAwardMember 2021-12-31 0000351998 daio:RestrictedStockAwardMember 2022-03-31 0000351998 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-03-31 0000351998 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2021-01-01 2021-03-31 0000351998 us-gaap:ResearchAndDevelopmentExpenseMember 2022-01-01 2022-03-31 0000351998 us-gaap:ResearchAndDevelopmentExpenseMember 2021-01-01 2021-03-31 0000351998 us-gaap:CostOfSalesMember 2022-01-01 2022-03-31 0000351998 us-gaap:CostOfSalesMember 2021-01-01 2021-03-31 0000351998 daio:GermanysMember 2022-01-01 2022-03-31 0000351998 daio:ChinasMember 2022-01-01 2022-03-31 0000351998 daio:UnitedStatesMember 2022-01-01 2022-03-31 0000351998 daio:GermanysMember 2022-03-31 0000351998 daio:ChinasMember 2022-03-31 0000351998 daio:UnitedStatesMember 2022-03-31 0000351998 2021-01-01 2021-12-31 0000351998 country:US 2022-01-01 2022-03-31 0000351998 daio:SoftwareAndMaintenanceMember 2021-01-01 2021-03-31 0000351998 daio:SoftwareAndMaintenanceSalesMember 2022-01-01 2022-03-31 0000351998 daio:SoftwareAndMaintenanceMember 2022-01-01 2022-03-31 0000351998 daio:AdapterSalesMember 2022-01-01 2022-03-31 0000351998 daio:SoftwareAndMaintenanceSalesMember 2021-01-01 2021-03-31 0000351998 daio:AdapterSalesMember 2021-01-01 2021-03-31 0000351998 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-03-31 0000351998 us-gaap:RetainedEarningsMember 2022-03-31 0000351998 us-gaap:CommonStockMember 2022-03-31 0000351998 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-03-31 0000351998 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0000351998 us-gaap:CommonStockMember 2022-01-01 2022-03-31 0000351998 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0000351998 us-gaap:RetainedEarningsMember 2021-12-31 0000351998 us-gaap:CommonStockMember 2021-12-31 0000351998 2021-03-31 0000351998 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-03-31 0000351998 us-gaap:RetainedEarningsMember 2021-03-31 0000351998 us-gaap:CommonStockMember 2021-03-31 0000351998 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-03-31 0000351998 us-gaap:RetainedEarningsMember 2021-01-01 2021-03-31 0000351998 us-gaap:CommonStockMember 2021-01-01 2021-03-31 0000351998 2020-12-31 0000351998 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0000351998 us-gaap:RetainedEarningsMember 2020-12-31 0000351998 us-gaap:CommonStockMember 2020-12-31 0000351998 2021-01-01 2021-03-31 0000351998 us-gaap:SeriesAPreferredStockMember 2021-12-31 0000351998 us-gaap:SeriesAPreferredStockMember 2022-03-31 0000351998 2021-12-31 0000351998 2022-03-31 0000351998 2022-04-30 iso4217:USD shares iso4217:USD shares pure utr:sqft 0000351998 false --12-31 Q1 2022 5000000 5000000 30000000 8621007 8622369 815000 58000 P4Y P4Y 10-Q true 2022-03-31 false 0-10394 DATA I/O CORPORATION WA 91-0864123 6645 185th Ave NE Suite 100 Redmond WA 98052 425 881-6444 Common Stock DAIO NASDAQ Yes Yes true false Non-accelerated Filer false 8624171 12296000 14190000 73000 89000 3055000 3995000 6625000 6351000 817000 737000 22793000 25273000 953000 946000 2742000 2838000 26488000 29057000 1463000 1373000 1526000 2496000 1466000 1507000 1439000 1413000 3000 0 5897000 6789000 2138000 2277000 193000 138000 0 0 5000000 200000 0 0 30000000 8622369 8621007 21183000 20886000 -3831000 -2011000 908000 978000 18260000 19853000 26488000 29057000 4965000 6015000 2662000 2677000 2303000 3338000 1616000 1606000 2048000 2062000 3664000 3668000 -1361000 -330000 1000 3000 58000 0 -60000 26000 -1000 29000 -1362000 -301000 458000 32000 -1820000 -333000 -0.21 -0.04 -0.21 -0.04 8622 8420 8622 8420 -1820 -333 -70 -180 -1890 -513 8416335 20071000 -1456000 1024000 19639000 2089 -4000 0 0 -4000 3175 16000 0 0 16000 278000 0 0 278000 0 -333000 0 -333000 0 0 -180000 -180000 8421599 20361000 -1789000 844000 19416000 8621007 20886000 -2011000 978000 19853000 0 0 0 0 1362 6000 0 0 6000 291000 0 0 291000 0 -1820000 0 -1820000 0 0 -70000 -70000 8622369 21183000 -3831000 908000 18260000 1820000 333000 140000 200000 125000 132000 291000 278000 913000 -843000 -277000 442000 -98000 36000 -835000 -94000 28000 175000 -253000 -105000 204000 136000 -1582000 24000 272000 92000 -272000 -92000 6000 12000 6000 12000 -1848000 -56000 -46000 -490000 14190000 14167000 12296000 13621000 441000 40000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 1 - FINANCIAL STATEMENT PREPARATION</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;">Data I/O Corporation (“Data I/O”, “We”, “Our”, “Us”) prepared the financial statements as of March 31, 2022 and March 31, 2021 according to the rules and regulations of the Securities and Exchange Commission ("SEC").  These statements are unaudited but, in the opinion of management, include all adjustments (consisting of normal recurring adjustments and accruals) necessary to present fairly the results for the periods presented.  The balance sheet at December 31, 2021 has been derived from the audited financial statements at that date.  We have condensed or omitted certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America according to such SEC rules and regulations.  Operating results for the three months ended March 31, 2022 are not necessarily indicative of the results that may be expected for the year ending December 31, 2022.  These financial statements should be read in conjunction with the annual audited financial statements and the accompanying notes included in our Form 10-K for the year ended December 31, 2021.</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;"><span style="text-decoration:underline">Revenue Recognition</span></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;">Topic 606 provides a single, principles-based five-step model to be applied to all contracts with customers.  It generally provides for the recognition of revenue in an amount that reflects the consideration to which the Company expects to be entitled, net of allowances for estimated returns, discounts or sales incentives, as well as taxes collected from customers when control over the promised goods or services are transferred to the customer.    </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;">We expense contract acquisition costs, primarily sales commissions, for contracts with terms of one year or less and will capitalize and amortize incremental costs with terms that exceed one year.  During 2022 and 2021, the impact of capitalization of incremental costs for obtaining contracts was immaterial.  We exclude sales, use, value added, some excise taxes and other similar taxes from the measurement of the transaction price. </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;">We recognize revenue upon transfer of control of the promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services.  We have determined that our programming equipment has reached a point of maturity and stability such that product acceptance can be assured by testing at the factory prior to shipment and that the installation meets the criteria to be a separate performance obligation.  These systems are standard products with published product specifications and are configurable with standard options.  The evidence that these systems could be deemed as accepted was based upon having standardized factory production of the units, results from batteries of tests of product performance to our published specifications, quality inspections and installation standardization, as well as past product operation validation with the customer and the history provided by our installed base of products upon which the current versions were based.</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;">The revenue related to products requiring installation that is perfunctory is recognized upon transfer of control of the product to customers, which generally is at the time of shipment.  Installation that is considered perfunctory includes any installation that is expected to be performed by other parties, such as distributors, other vendors, or the customers themselves.  This considers the complexity, skill and training needed as well as customer expectations regarding installation.</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;">We enter into arrangements with multiple performance obligations that arise during the sale of a system that includes an installation component, a service and support component and a software maintenance component.  We allocate the transaction price of each element based on relative selling prices.  Relative selling price is based on the selling price of the standalone system.  For the installation and service and support performance obligations, we use the value of the discount given to distributors who perform these components.  For software maintenance performance obligations, we use what we charge for annual software maintenance renewals after the initial year the system is sold.  Revenue is recognized on the system sale based on shipping terms, installation revenue is recognized after the installation is performed, and hardware service and support and software maintenance revenue is recognized ratably over the term of the agreement, typically one year.  Deferred revenue includes service, support and maintenance contracts and represents the undelivered performance obligation of agreements that are typically for one year.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">When we sell software separately, we recognize revenue upon the transfer of control of the software, which is generally upon shipment, provided that only inconsequential performance obligations remain on our part and substantive acceptance conditions, if any, have been met.</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;">We recognize revenue when there is an approved contract that both parties are committed to perform, both parties rights have been identified, the contract has substance,  collection of substantially all the consideration is probable, the transaction price has been determined and allocated over the performance obligations, the performance obligations including substantive acceptance conditions, if any, in the contract have been met, the obligation is not contingent on resale of the product, the buyer’s obligation would not be changed in the event of theft, physical destruction or damage to the product, the buyer acquiring the product for resale has economic substance apart from us and we do not have significant obligations for future performance to directly bring about the resale of the product by the buyer.  We establish a reserve for sales returns based on historical trends in product returns and estimates for new items.  Payment terms are generally 30 days from shipment.  </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;">We transfer certain products out of service from their internal use and make them available for sale.  The products transferred are typically our standard products in one of the following areas: service loaners, rental or test units; engineering test units; or sales demonstration equipment.  Once transferred, the equipment is sold by our regular sales channels as used equipment inventory.  These product units often involve refurbishing and an equipment warranty, and are conducted as sales in our normal and ordinary course of business.  The transfer amount is the product unit’s net book value and the sale transaction is accounted for as revenue and cost of goods sold.</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;">The following table represents our revenues by major categories:</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="8" 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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Net sales by type</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>Change</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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" 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 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">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 style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,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><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(22.1%)</p></td><td 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,347</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">Adapter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,622</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">(15.0%)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,908</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">Software and Maintenance</p></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;">736</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;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(3.2%)</p></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;">760</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</p></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,965</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;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(17.5%)</p></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,015</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 0px 0px 0in; text-align:justify;"><span style="text-decoration:underline">Share-Based Compensation</span></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;">All stock-based compensation awards are measured based on estimated fair values on the date of grant and recognized as compensation expense on the straight-line method.  Our share-based compensation is reduced for estimated forfeitures at the time of grant and revised as necessary in subsequent periods if actual forfeitures differ from those estimates.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><span style="text-decoration:underline">Income Tax</span></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;">Income taxes are computed at current enacted tax rates, less tax credits using the asset and liability method.  Deferred taxes are adjusted both for items that do not have tax consequences and for the cumulative effect of any changes in tax rates from those previously used to determine deferred tax assets or liabilities.  Tax provisions include amounts that are currently payable, changes in deferred tax assets and liabilities that arise because of temporary differences between the timing of when items of income and expense are recognized for financial reporting and income tax purposes, and any changes in the valuation allowance caused by a change in judgment about the realization of the related deferred tax assets.  A valuation allowance is established when necessary to reduce deferred tax assets to amounts expected to be realized. During the quarter ended March 31, 2022, as a result of a dividend paid from our China subsidiary to the USA parent company, $442,000 of income tax was withheld and paid.</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;"><span style="text-decoration:underline">Recently Adopted Accounting Pronouncements</span></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 January 1, 2021 the Company adopted ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. This ASU clarifies and simplifies accounting for income taxes by eliminating certain exceptions for intraperiod tax allocation principles and the methodology for calculating income tax rates in an interim period, among other updates. The adoption of this ASU did not have a material impact on our financial statements.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">Topic 606 provides a single, principles-based five-step model to be applied to all contracts with customers.  It generally provides for the recognition of revenue in an amount that reflects the consideration to which the Company expects to be entitled, net of allowances for estimated returns, discounts or sales incentives, as well as taxes collected from customers when control over the promised goods or services are transferred to the customer.    </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;">We expense contract acquisition costs, primarily sales commissions, for contracts with terms of one year or less and will capitalize and amortize incremental costs with terms that exceed one year.  During 2022 and 2021, the impact of capitalization of incremental costs for obtaining contracts was immaterial.  We exclude sales, use, value added, some excise taxes and other similar taxes from the measurement of the transaction price. </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;">We recognize revenue upon transfer of control of the promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services.  We have determined that our programming equipment has reached a point of maturity and stability such that product acceptance can be assured by testing at the factory prior to shipment and that the installation meets the criteria to be a separate performance obligation.  These systems are standard products with published product specifications and are configurable with standard options.  The evidence that these systems could be deemed as accepted was based upon having standardized factory production of the units, results from batteries of tests of product performance to our published specifications, quality inspections and installation standardization, as well as past product operation validation with the customer and the history provided by our installed base of products upon which the current versions were based.</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;">The revenue related to products requiring installation that is perfunctory is recognized upon transfer of control of the product to customers, which generally is at the time of shipment.  Installation that is considered perfunctory includes any installation that is expected to be performed by other parties, such as distributors, other vendors, or the customers themselves.  This considers the complexity, skill and training needed as well as customer expectations regarding installation.</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;">We enter into arrangements with multiple performance obligations that arise during the sale of a system that includes an installation component, a service and support component and a software maintenance component.  We allocate the transaction price of each element based on relative selling prices.  Relative selling price is based on the selling price of the standalone system.  For the installation and service and support performance obligations, we use the value of the discount given to distributors who perform these components.  For software maintenance performance obligations, we use what we charge for annual software maintenance renewals after the initial year the system is sold.  Revenue is recognized on the system sale based on shipping terms, installation revenue is recognized after the installation is performed, and hardware service and support and software maintenance revenue is recognized ratably over the term of the agreement, typically one year.  Deferred revenue includes service, support and maintenance contracts and represents the undelivered performance obligation of agreements that are typically for one year.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">When we sell software separately, we recognize revenue upon the transfer of control of the software, which is generally upon shipment, provided that only inconsequential performance obligations remain on our part and substantive acceptance conditions, if any, have been met.</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;">We recognize revenue when there is an approved contract that both parties are committed to perform, both parties rights have been identified, the contract has substance,  collection of substantially all the consideration is probable, the transaction price has been determined and allocated over the performance obligations, the performance obligations including substantive acceptance conditions, if any, in the contract have been met, the obligation is not contingent on resale of the product, the buyer’s obligation would not be changed in the event of theft, physical destruction or damage to the product, the buyer acquiring the product for resale has economic substance apart from us and we do not have significant obligations for future performance to directly bring about the resale of the product by the buyer.  We establish a reserve for sales returns based on historical trends in product returns and estimates for new items.  Payment terms are generally 30 days from shipment.  </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;">We transfer certain products out of service from their internal use and make them available for sale.  The products transferred are typically our standard products in one of the following areas: service loaners, rental or test units; engineering test units; or sales demonstration equipment.  Once transferred, the equipment is sold by our regular sales channels as used equipment inventory.  These product units often involve refurbishing and an equipment warranty, and are conducted as sales in our normal and ordinary course of business.  The transfer amount is the product unit’s net book value and the sale transaction is accounted for as revenue and cost of goods sold.</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;">The following table represents our revenues by major categories:</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="8" 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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Net sales by type</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>Change</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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" 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 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">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 style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,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><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(22.1%)</p></td><td 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,347</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">Adapter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,622</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">(15.0%)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,908</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">Software and Maintenance</p></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;">736</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;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(3.2%)</p></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;">760</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</p></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,965</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;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(17.5%)</p></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,015</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="8" 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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Net sales by type</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>Change</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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" 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 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">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 style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,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><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(22.1%)</p></td><td 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,347</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">Adapter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,622</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">(15.0%)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,908</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">Software and Maintenance</p></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;">736</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;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(3.2%)</p></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;">760</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</p></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,965</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;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(17.5%)</p></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,015</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> 2607000 0.221 3347000 1622000 -0.150 1908000 736000 -0.032 760000 4965000 -0.175 6015000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">All stock-based compensation awards are measured based on estimated fair values on the date of grant and recognized as compensation expense on the straight-line method.  Our share-based compensation is reduced for estimated forfeitures at the time of grant and revised as necessary in subsequent periods if actual forfeitures differ from those estimates.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">Income taxes are computed at current enacted tax rates, less tax credits using the asset and liability method.  Deferred taxes are adjusted both for items that do not have tax consequences and for the cumulative effect of any changes in tax rates from those previously used to determine deferred tax assets or liabilities.  Tax provisions include amounts that are currently payable, changes in deferred tax assets and liabilities that arise because of temporary differences between the timing of when items of income and expense are recognized for financial reporting and income tax purposes, and any changes in the valuation allowance caused by a change in judgment about the realization of the related deferred tax assets.  A valuation allowance is established when necessary to reduce deferred tax assets to amounts expected to be realized. During the quarter ended March 31, 2022, as a result of a dividend paid from our China subsidiary to the USA parent company, $442,000 of income tax was withheld and paid.</p> 442000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">On January 1, 2021 the Company adopted ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. This ASU clarifies and simplifies accounting for income taxes by eliminating certain exceptions for intraperiod tax allocation principles and the methodology for calculating income tax rates in an interim period, among other updates. The adoption of this ASU did not have a material impact on our financial statements.</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 2 – INVENTORIES</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;">Inventories consisted of the following components:</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands) </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">Raw material</p></td><td 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,992</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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,771</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;">1,727</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,602</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;">906</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;">978</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">Inventories</p></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,625</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;">6,351</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands) </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">Raw material</p></td><td 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,992</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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,771</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;">1,727</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,602</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;">906</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;">978</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">Inventories</p></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,625</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;">6,351</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> 3992000 3771000 1727000 1602000 906000 978000 6625000 6351000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 3 – PROPERTY, PLANT AND EQUIPMENT, NET</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;">Property and equipment consisted of the following components:</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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; text-align:justify;">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 style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">431</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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;">430</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; text-align:justify;">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 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,191</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,218</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; text-align:justify;">Sales demonstration 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 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;">807</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;">754</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%;vertical-align:bottom;text-align:right;">6,429</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,402</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; text-align:justify;">Less accumulated depreciation</p></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,476</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,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; text-align:justify;">Property and equipment, 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;">953</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;">946</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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; text-align:justify;">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 style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">431</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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;">430</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; text-align:justify;">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 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,191</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,218</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; text-align:justify;">Sales demonstration 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 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;">807</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;">754</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%;vertical-align:bottom;text-align:right;">6,429</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,402</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; text-align:justify;">Less accumulated depreciation</p></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,476</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,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; text-align:justify;">Property and equipment, 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;">953</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;">946</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> 431000 430000 5191000 5218000 807000 754000 6429000 6402000 5476000 5456000 953000 946000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 4 – OTHER ACCRUED LIABILITIES</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;">Other accrued liabilities consisted of the following components:</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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">Lease liability - short term</p></td><td 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;">623</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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;">601</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">Product warranty</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">430</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">432</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">Sales return reserve</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">71</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">71</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">Other taxes</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">132</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">180</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">Other</p></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;">183</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;">129</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">Other accrued liabilities</p></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,439</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,413</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 0px 0px 0in; text-align:justify;">The changes in our product warranty liability for the three months ending March 31, 2022 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;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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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">Liability, beginning balance</p></td><td 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;">432</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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;">371</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">Net expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">217</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">864</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">Warranty claims</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">(217</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;">(864</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">Accrual revisions</p></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</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;">61</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">Liability, ending balance</p></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;">430</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;">432</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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">Lease liability - short term</p></td><td 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;">623</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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;">601</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">Product warranty</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">430</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">432</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">Sales return reserve</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">71</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">71</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">Other taxes</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">132</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">180</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">Other</p></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;">183</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;">129</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">Other accrued liabilities</p></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,439</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,413</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> 623000 601000 430000 432000 71000 71000 132000 180000 183000 129000 1439000 1413000 <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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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">Liability, beginning balance</p></td><td 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;">432</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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;">371</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">Net expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">217</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">864</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">Warranty claims</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">(217</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;">(864</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">Accrual revisions</p></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</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;">61</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">Liability, ending balance</p></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;">430</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;">432</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> 432000 371000 217000 864000 217000 864000 2000 61000 430000 432000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 5 – LEASES</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;">Our leasing arrangements are primarily for facility leases we use to conduct our operations. The following table presents our future lease payments for long-term operating leases as of March 31, 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;margin-left:auto;margin-right:auto;width:85%"><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="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>Operating</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Lease Commitments</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"> (in thousands) </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">2022 (remaining)</p></td><td 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;">594</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">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;">920</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">2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">836</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">2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">585</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">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">133</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">Thereafter</p></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;">48</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</p></td><td 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,116</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 Imputed interest</p></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;">(356</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">Total operating lease liabilities</p></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,760</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 0px 0px 0in; text-align:justify;">Cash paid for operating lease liabilities for the three months ended March 31, 2022 and 2021 were $212,000 and $201,000, respectively.  </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">The following table presents supplemental balance sheet information related to leases:</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="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>Balance at</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>Balance at</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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">Right-of-use assets (Long-term other assets)</p></td><td 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,697</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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,793</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">Lease liability-short term (Other accrued liabilities)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">623</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">601</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">Lease liability-long term (Operating lease liabilities)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,138</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,277</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 0px 0px 0in; text-align:justify;">At March 31, 2022, the weighted average remaining lease term is 3.67 and the weighted average discount rate used is 5%.</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;">The components of our lease expense for the three months ended March 31, 2022 and 2021 include operating lease costs of $220,000 and $171,000, respectively, and short-term lease costs of $20,000 and $7,000, 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 0px 0px 0in; text-align:justify;">Our real estate facility leases are described below:</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;">During the fourth quarter of 2021, we amended our lease agreement for the Redmond, Washington headquarters facility, extending the lease to January 31, 2026.  The lease is for approximately 20,460 square feet.  </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;">In April 2021, we signed a lease extension effective November 1, 2021  that extends the lease for a facility located in Shanghai, China through October 31, 2024.  This lease is for approximately 19,400 square feet.</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;">Our lease for our facility located near Munich, Germany ran through February 28, 2022 and in March 2022 we entered into a lease extension to August 2027.  This lease is for approximately 4,895 square feet.</p> <table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:85%"><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="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>Operating</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Lease Commitments</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"> (in thousands) </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">2022 (remaining)</p></td><td 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;">594</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">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;">920</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">2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">836</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">2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">585</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">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">133</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">Thereafter</p></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;">48</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</p></td><td 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,116</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 Imputed interest</p></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;">(356</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">Total operating lease liabilities</p></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,760</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> 594000 920000 836000 585000 133000 48000 3116000 356000 2760000 212000 201000 <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="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>Balance at</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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>Balance at</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands)</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">Right-of-use assets (Long-term other assets)</p></td><td 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,697</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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,793</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">Lease liability-short term (Other accrued liabilities)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">623</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">601</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">Lease liability-long term (Operating lease liabilities)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,138</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,277</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> 2697000 2793000 623000 601000 2138000 2277000 P3Y8M1D 0.05 220000 171000 20000 7000 2026-01-31 20460 2024-10-31 19400 4895 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 6 – OTHER COMMITMENTS</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;">We have purchase obligations for inventory and production costs as well as other obligations such as capital expenditures, service contracts, marketing, and development agreements.  Arrangements are considered purchase obligations if a contract specifies all significant terms, including fixed or minimum quantities to be purchased, a pricing structure and approximate timing of the transaction.  Most arrangements are cancelable without a significant penalty, and with short notice, typically less than 90 days.  At March 31, 2022, the purchase commitments and other obligations totaled $2.0 million of which all but $590,000 are expected to be paid over the next twelve months.</p> 2000000.0 590000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 7 – 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 0px 0px 0in; text-align:justify;">As of March 31, 2022, we were not a party to any legal proceedings or aware of any indemnification agreement claims, the adverse outcome of which in management’s opinion, individually or in the aggregate, would have a material adverse effect on our results of operations or financial position.  </p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 8 – EARNINGS 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 0px 0px 0in; text-align:justify;">Basic earnings per share is calculated based on the weighted average number of common shares outstanding during each period.  Diluted earnings per share is calculated based on these same weighted average shares outstanding plus the effect of potential shares issuable upon assumed exercise of stock options based on the treasury stock method.  </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;">Potential shares issuable upon the exercise of stock options are excluded from the calculation of diluted earnings per share to the extent their effect would be anti-dilutive.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">The following table sets forth the computation of basic and diluted earnings per share:</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: 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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(in thousands except per share data)</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%;"><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></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">Numerator for basic and diluted</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%;"><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></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">earnings (loss) per share:</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%;"><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></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">       Net income (loss)</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:right;">(1,820)</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:right;">($333)</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;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 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">Denominator for 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 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:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">earnings (loss) per share:</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">       Weighted-average shares</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,622</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,420</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><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">Employee stock options and awards</p></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;">-</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;">-</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></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">Denominator for 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="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">earnings (loss) per share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">       Adjusted weighted-average shares &amp;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">       assumed conversions of stock options</p></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;">8,622</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;">8,420</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></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">Basic and 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="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">earnings (loss) per share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">       Basic earnings (loss) per share</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;">($0.21)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">($0.04)</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">       Diluted earnings (loss) per share </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;">($0.21)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">($0.04)</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; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;">Options to purchase 12,500 and 25,000 shares respectively were outstanding as of March 31, 2022 and 2021, but were excluded from the computation of diluted earnings per share for the periods then ended because the options were anti-dilutive.</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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(in thousands except per share data)</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%;"><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></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">Numerator for basic and diluted</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%;"><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></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">earnings (loss) per share:</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%;"><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></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">       Net income (loss)</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:right;">(1,820)</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:right;">($333)</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;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 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">Denominator for 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 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:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">earnings (loss) per share:</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">       Weighted-average shares</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,622</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,420</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><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">Employee stock options and awards</p></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;">-</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;">-</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></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">Denominator for 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="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">earnings (loss) per share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">       Adjusted weighted-average shares &amp;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">       assumed conversions of stock options</p></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;">8,622</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;">8,420</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></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">Basic and 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="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">earnings (loss) per share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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">       Basic earnings (loss) per share</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;">($0.21)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">($0.04)</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">       Diluted earnings (loss) per share </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;">($0.21)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">($0.04)</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> -1820000 -333000 8622 8420 0 0 8622 8420 -0.21 -0.04 -0.21 -0.04 12500 25000 <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:justify;"><strong>NOTE 9 – SHARE-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 0px 0px 0in; text-align:justify;">For share-based awards granted, we have recognized compensation expense based on the estimated grant date fair value method.  For these awards we have recognized compensation expense using a straight-line amortization method reduced for estimated forfeitures.  </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;">The impact on our results of operations of recording share-based compensation, net of forfeitures, for the three months ended March 31, 2022 and 2021 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="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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands) </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">Cost of goods sold</p></td><td 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</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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</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;">64</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">71</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;">212</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;">197</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 share-based compensation</p></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;">291</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;">278</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 0px 0px 0in; text-align:justify;">Equity awards granted during the three months ended March 31, 2022 and 2021 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="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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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; text-align:justify;">Restricted Stock Units</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,515</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,000</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 0px 0px 0in; text-align:justify;">Non-employee directors Restricted Stock Units (“RSUs”) typically vest over the earlier of one year or the next annual meeting of shareholders and Non-Qualified stock options vest over three years and have a six-year exercise period.  Employee RSUs typically vest over four years and employee Non-Qualified stock options typically vest quarterly over 4 years and have a six-year exercise 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 0px 0px 0in; text-align:justify;">The remaining unamortized expected future equity compensation expense and remaining amortization period associated with unvested option grants, restricted stock awards and restricted stock unit awards at March 31, 2022 are:</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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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></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">Unamortized future equity compensation expense (in thousands)</p></td><td 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,021</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">Remaining weighted average amortization period (in years)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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.44</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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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">(in thousands) </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">Cost of goods sold</p></td><td 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</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td 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</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;">64</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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;">71</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;">212</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;">197</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 share-based compensation</p></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;">291</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;">278</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> 15000 10000 64000 71000 212000 197000 291000 278000 <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 </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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"><strong> </strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong> </strong></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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>2021</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; text-align:justify;">Restricted Stock Units</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,515</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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,000</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> 2515 2000 <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="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>March 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px"><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></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">Unamortized future equity compensation expense (in thousands)</p></td><td 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,021</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">Remaining weighted average amortization period (in years)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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.44</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> 2021 P2Y5M8D EXCEL 52 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( '-KK%0'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 " !S:ZQ4I"C_;NX K @ $0 &1O8U!R;W!S+V-O&ULS9)1 M2\,P$,>_BN2]O39#A=#E1?%I \&!XENXW+9@TX;DI-VWMXU;A^@'$/*2NW]^ M]SM(@T%A'^DY]H$B.THWHV^[I#"LQ9$Y*("$1_(FE5.BFYK[/GK#TS4>(!C\ M, <"655WX(F--6Q@!A9A(0K=6%08R7 ?SWB+"SY\QC;#+ *UY*GC!'59@]#S MQ' :VP:N@!G&%'WZ+I!=B+GZ)S9W0)R38W)+:AB&MW!= M8M,A3:^24WP*M!:7R:^KA\?=D]"RDK*H;HM:[NI[)>?S/KO^\+L*^]ZZO?O' MQA=!W<"O?Z&_ %!+ P04 " !S:ZQ4F5R<(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 '-KK%1S:)#4(P4 ,@5 8 >&PO=V]R:W-H965T&UL MC9A=<^(V%(:OM[]"PW6)+1D(["3,."1IF>X"@;0[VTXOA"W $]NBLAR2?]\C M8VR2$23<'J5ZRG1":O"5QFMUV=EKOOSI.%NQ$PK,KN1%@$);'#7'?@)#Q*.^.;XMY"C6]DKN,H%0M%LCQ)N'J_ M$[$\W'9HYW1C&6UWVMQPQC=[OA4KH?_<+Q1<.95*&"4BS2*9$B4VMQV??IUX MG@DHWO@K$H?L[#LQ35E+^6(NIN%MQS5$(A:!-A(:R7\O"[*!O4-WJ!C+/B/SD< MW^VY'1+DF99)&0P$290>/_E;F8BS ,8N!+ R@'T*H+T+ 5X94&3..9(5S;KG MFH]OE#P09=X&-?.ER$T1#:V)4M.-*ZW@:01Q>CR1KT*1+LEV7(GLQM&@:9XX M01E_=XQG%^(]\EVF>I>1AS04X<=X!U@J('8"NF.HX'>NKHA'?R7,9H>>A^?G'7V=:P9#[%Y'L59*]0K)W0?(AU9%^)TNQC8QH MJLF,)\*6>ESGWG_VR=29D\E\N9@O_>?I?(;@]2N\?AN\B4@!+B93Z-7TZ&@T1K$&%-]-5EX.'6[3PC%=45QC!R3NSR#QYG557 9K7(L2]2MWV2UM _20"+6-TBWY#13T#D7#!1O16(W&6DW\7+EX8*06L_IZT,_3&*H51,@&LK ME;TK<9V93+L\"&")HT D/ IBA+6E4]R)JP26?E'F\1%NV_L5EWO"K(+6CDY; M6OJYBUUFPL6:>K-V>(I;]&D:R"2!9>9*R^ %_,.LCL@\UYGF:0B3PK8R*87[ MA;!9/[^.AP/6H]>0KE<;4^WV%#?H*E-/.5=:J/B]G)[61.%:3=Y:6SW%3;JN MR+"(R:)B58Y0X6)--L9JRV>M+-],'C++D_7G*50N0G$1MTM=;]3#@&K+9ZTL M?YH&4D%V>)$HXZD"!ED.JRPSV$*KF34H__ QP-KX62OC?^9O9!I"AT:;*#A2 M(OG#)4>TZPX'/FECM_:R5]_MA M" :159_?X#5"K5RXWF#0ZQ,Z[,.:P(=6SAXPRMK_6:LUO972MLFZ:]!;Y1&, M7NJZ&%U=!QANW9_H)N9BKLBS/*16-EQM*4(P;G0K6M<"UJH6G,B.DQ;0%DJ^ M1FE@G[.X)#YGZXK TO^PEN.!HZ/:Q LKJNL!P*R_ZSU>" M7T;!!7JLC^W7 @\W[)4(1\98)1U?[OX68-]3LLUOGOR5K&5B);L7%HY$&H9F_NO>M&W[G[*S,;,**(\2,!*82'X_-JKO5,:5?',XY M]>O',T[82\ >+B.QV$"H>W4-IJF.QX;'"RWWQJP]OQ_U!+ P04 " !S:ZQ4IFT%-X4% #'% & 'AL+W=O MN?A1)HQ)]"O/ MBO)FE$BYOYY,RCAA.2VO^)X5\&;'14XEW(KG2;D7C&YKHSR;$,?Q)SE-B]%\ M5C];B?F,5S)+"[82J*SRG(JW3RSCKS'GA=VR+%.>@,?/QNFH'5,9'E^_>_^S#AZ"V="2W?+LGW0KDYM1.$); MMJ-5)K_RU\^L"E?5_]-I@G1&*JU+RO#$&!GE:''[IKR811P9X.F! M&@-RKH';&+AUH =F=5A+*NE\)O@K$@H-WM1%G9O:&J))"S6-:RG@;0IV=VB1P#6L5Z$T1A%XO5@,HBCQSJ%X;JF<-];YX@0G@(F7&2?"T(7V?]'D90*Z'S;S\ MEI=OY?4H$R;0:0F:"/K:V"$.>OQT3. &9GI!2R^P5PB7-#N#7J -34@0N3V" M!I1' M=,,6PIAE:**P$J)N3;&*TRJDA"+:HEM\\5Y4M5R2;&H<8E\OI\#9BI M;V8;M6RC,^9[.)&1GJ)@2GJ\#*#0#,N1ZFUIB?#.M/P[!'S@2+ M'&^@$/&1-.&SVO1#2C=IEDI8R;9>C;OVCXDU[K:9K>B;:G[&V(D6%)[Z_7HQ MH=RA^L:=FF"[G !!43%0$Y[#?JVD:L=C).GJPWNDKR0&%)E& V6-.RG!=BU9 MLAV#"=J"!$"GK4RH/P@C :8=LJ [=+P",( JZ5X1@\,-O>_Y:KW>X)=K;\94"08*L].%[!= M&!YX\7PIF3<3U04 :V)K @V)!.E$@MA% GI0GLI\:#-+].;O]'A9 M(:>L.FT@=FU8B??NLY8\_H$N;<>"HW/!;X2AD@GL&/]EVS'RQH[CJ#^T3JA@ MY1C!*LVJK2HNE:D%JH_)8R5+" M*0H>PYZ;%\9U3G19T9)J@YR&W\D.<>V""U,-1^LZHV.TD'!%)?#^3K.*V5/< MJ0:QJ\9QBEVGE^/!1(5CGY"QZT?OP$6==3A7QDE[L*S-%!*#R^ 4"4=(EF]@ ME9F/D4W:=1TB&(?]=6:".6$X(*BDTRMBURM0JBJOLCKE=U04$'F)/FS9#@I) M?C02UN7HT@U=W"=L@!$'#QQD2"=;Q"Y;QX2;8PUL6 1+U&>>%X8.LF8DKJM4 MY/3[K@D4#/6S3LS(.6)6UWC"LRT3Y1_UZ4$:CZ]$URD<$E];C098%'H#&P/2 MZ1FQZ]F![)&*U35^-OE0^X9@VK^;8(;]^^3H*Y/ZQ >+[SDM2I2Q'=@Y5P%$ M+PY?S0XWDN_K#T\;+B7/Z\N$42"M /!^Q[E\OU'?LMIOE_/_ %!+ P04 M" !S:ZQ4\J?I_ML" "M" & 'AL+W=O-16)WMM.R_?K93LA: M2 -(6R\:VSGOZ^>89$ %811Q6 VMP+T3O$IF MB06,6?J#Q#(96CT+Q;#">2H?V.X:RH3:VB]BJ3#_:%?$=AT+1;F0+"O%BB C MM+CBY[(0>P*W=43@E0+OHP*_%/@FT8+,I#7!$H\&G.T0U]'*33=,;8Q:94.H M?HRAY.HN43HY&L_NP]G=S2183"?H*K@+[L=3%%Y/IXOP#)W.,0PPDZ/3E#)XA0M$A8+C"-Q<"6"D4;VE$Y[54QK7=DVF^87R#?/4>>XWDU M\G&S? )1)7]PKQCS/5*W(ZZ_L#>[E?H M;4BO7X4<,+MXGM_IO\*MC7,=IUM/VZUHNY^@G>522+7H"5TW('<_B%P;=QRY5R'W&I%# MX 0$"M!M3@GC2.UC:@LC&RP5=L/J[E?^_7^T7[C.WXW8^0^KKS1]?_G5!'IU MK[*]=Y;H@USMU&M"!4IAI83.15 Z0-U? M,29?.OK$JKY01G\ 4$L#!!0 ( '-KK%3!6R&PO M=V]R:W-H965T&ULK9AM;^(X$,>_BH7V12LM3>Q @(HB\;0] MI&VI"KU][9(!HDULSC;0_?;G))"DB>/=D^X-)&%F_!MG_!^;X9F+GW(/H-!' M'#'YT-HK=;AW'+G90TSE'3\ T[]LN8BITK=BY\B# !JD3G'D$-?UG9B&K#4: MIL]>Q&C(CRH*&;P()(]Q3,6O"43\_-#"K>N#UW"W5\D#9S0\T!VL0+T=7H2^ M<_(H01@#DR%G2,#VH37&]U/B)0ZIQ=\AG&7I&B6IO'/^,[E9! \M-R&""#8J M"4'UUPFF$$5)),WQSR5H*Q\S<2Q?7Z-_2Y/7R;Q3"5,>_0@#M7]H]5LH@"T] M1NJ5G_^"2T+=)-Z&1S+]1.?,MM=MHQ2&=.2H66W]#R9?XZ7B^T ;IY>QZ_S1;:YA:UT=MJ MAFZ^W*(O*&1HO>='25D@AX[2/$E49W,9>Y*-31K&]M 39VHOT9P%$'SV=W0> M>3+DFLR$6 ,^47&'//P5$9<0 \_TS]VQ!N0\D&C%H\"$E\7HED8FOD\J>":C7L^,Y^=XOA7O47 ID7[]NY"9P/SZF)[K M5<#J1I[G]@2F)R%*8<>! MEL!0JF123F#B'=1?E=OI5WA-1J5"^\2+W4))72OQFBN-67]E1F%TZ]7B^YT* MI]FJH:9P2?*Q%;1 7+ -CP'=1+K^;XVE57TZZ;> TY%_J-[0+^J+=>:,E2 M$4\DBN%EF.[F.OMD]X<,30]"@%L\PNM!6629MNR M%-]23W7Y;OMN%=JD\0W4A<1CN\9GJ]-443;#J/2,B[7:04UFGHL;D(NF@NU=I:!#-Y!)7T+.8!L:.PNN M=XUVIU[ !BNO2:J+WH+MS279)?W^Y0]J.Z$V[I-:M1K,=.*^$%!%KMJ3 JUB5BKTSBWI%JP9K-W$X#<=%6B+VMS,+HJ"#X MC\SXSYB-9HW,18XQC5VB5>NQ[Y/JDO,9-4A M# U6=5ZG=,R,0>S2T[=$&WYD*CNDY4_S$_XX M/==6GD_TR3\[IQ=ALK\-LCVX1!%L=4CW+CEGB^PDGMTH?D@/L^]KD' M&H!(#/3O6\[5]289(/\_9/0O4$L#!!0 ( '-KK%0VI.AAGP( ,' 8 M >&PO=V]R:W-H965T&ULM55=;YLP%/TK%MI#*JTA0!*Z MBB EA*Z1F@^5I'MVP0FH8&>VD[3_?M>&L#2B:"][ =O<DP*++]H3"ERWC!98PY3M3[#G!B085N6GW>D.SP!DU M?$^OK;COL8/,,TI6'(E#46#^,2$Y.XT,RS@O/&>[5*H%T_?V>$9 M6;,D64&HR!A%G&Q'QMBZ#UQ5KPM>,G(2%V.D.GEE[$U-9LG(Z"E!)">Q5 P8 M7D<2D#Q71"#C=\5IU%LJX.7XS/Z@>X=>7K$@ IL%N/-= :@&W2+ M-M$4=;[=>*8$18K7C*O=)^7N]A>[.VC.J$P%"FE"DL]X$SJIV['/[4SL5L(Y MYEWD6-^1W;/M!CW!O\.M%CE.[:ZC^9S_YFZ+B'XMHJ]%]+\0L8 LF-&8%01U M9QXOW6NHVU,0XUUUVLVQJTUNZV:6RQIDNDVG>"/:Z$-50/K^@3-BSPI"-_IF!4H9@\C-QR(ME>I]8K MDY"!>IC"7XIP50#?MXS)\T1M4/_W_#]02P,$% @ 1Z;S!8/R\7]W)FN7 ^X3\O?@/O'\WSU%[AX?I@^.W,>? GZX'GI@(MOE^ ;"!.P M"N@NPXF?C37&@8GRFE> N#N 0"T@5I3A2)$VZTZ;T3CF:VW)J/>JR':ZLY\( MX_N(^,#%:1(FFPQ<3#UO%^\BS/A=AZQ#+V27BL)N=^'C*I0%) 4>C?DN#L3V M>B-@GO Q 1?W-,L:Y37>O;*%J&PARI\W:'G>'8YPXI$KL QP2C* &0?O70,# M7@&D(UTUL8>*P[RB.$O>)M8 FH8Q'&MO"BA&"<4X#\HTIKN$G0/E[E#1/((" M;=.P2R 'P'(4/PI'L![ER%%].!B:]2A7\40=#=3,!R7S02?S?!&"Z1ZG?@;F M6;8C_A5XX ?]8@U6^!W\"ED0T,CG"^VC4:J^#*2^(-VRU="&);3A_P?MT#A5 MGX82M/Z@T:2A//V-$$>NHC>ZTQ51XV^6_,U._H*R6)6"[V$N5D%*=YO@!KC9 M=MO5#E/"8L!1RQX9E7!&7X/3WH*1! 28)LVNB!I-NZ1I=](4F^KC M=(_DT_W SY;WD6$8#8)R4 .\B9@TM MM!J49D64V<%:4:C9U5//JO,^\DGPLRK[$Z>EM$&E?8$*F45P:+>V4VT)?,!E+^I5>8#1,APVPQ&^CH_<*7S(8* MS1V2703?+:;4 H79@- RFFV0P_J&933U31%FZTU]TXY>EHEWH9S*)DPR$)$U MS]*O1WP&T\/KQ<. T6W^_NR%,D;C_#(@V">I"."_KREE'P/Q2JY\R3OY%U!+ M P04 " !S:ZQ4\-L>-:@% U%0 & 'AL+W=OYVD"9,XGLZ^0.)>>WV/[?$K%S]DR)A";TF\W+.:OUQW<^6AXBG:AT@W=R7A/=VS-U/-^)>"M6XX21 E+9<13)-CV MNC/%5S/BZ0Z9Q=\1>Y4GSTB[\L+Y#_UR%UQW>AH1BYFO]! 4_HYLQN)8CP0X M?A:#=LHY=GE_-Y]N%G.T MWL#?P^)Q@Y:W:#9=?T.W]\OO:W3V_#A]GM^!R3FZ0,_K.3K[XJ@*,'[?K%U#?YU*1E:@<]\%2%$BW2@ 6_]N^"&Z4OY,.7&V(=\(&* M2^3@KXCT"#'@F7V^.[; <4IJG6P\IXU:*D-T"^M$HEO!$[3<,T%5E.[05.=N MI"(F+=.XY31N-HW;,LTCK/6[U.<)0VN'L\ MY<=@Y3A.:?0+O'X)KV]E81K\ UD,"U])M.'HB?D\]:.8H09N_5DW9KRM!#]& MD!;HYAV='20\W*7G1@JO+!P.2I #*X=S!C70CVA66:9I@*8)%RKZ-VLP\9D/ MUS]A"KMU-ILV4%O-9 Y+G$,KSL7/0[377**-H*G<,B& &>!MQJ5"RRWZB_- MHC6/ Q/J81,UZ==0&VP<8D8]*E&/K*C7(17L0A?; ( FH$"RE=A1DS0/UR : M;(8C,T2OA.A9LS3+NY"F.P9Y9LLHW*L*:\_J-40H8)"G/C_HW(?$9]&1OL3, M6"E[#9\\[-3\-AA=C-R6]8E/% !;@=ZE1\@H+AKEJ("&F[.2X;".K6GENBUY M@TD%C5BA+57(!)H=(,TAYZ=2,F7&2)H8O5$=8M/(&;0@K&H\=JP(R_BNZ+L. M;EX]?%\<(-GO(_H2Q89"7Z!V#/%TZ@O29.6Y+;@KT7#KD TZTYJSE8A@NXK\#Y$U>M"4B@O<'Y&Z#TTSTI:^ ME:+@T1_MK70-DW^P,<"5,&#/2M;J(/P0I$MJ>07"@!SU_A6M8JHK$H2\U&0C M1YZI>#8H,EAY+<635 )$[ )D";&)+A-\8E"<)GR352O\2I8(_JTD WJ?L> C MR%(>:.HS'0G81R2P5ULK[O_XBNZ9S"IPMLVTG20JY2%VY8$S(LKV+1)]CU08 MLKC89QUA?6_HFY&MIL ,ZE0U37 ;4Y4&$;L&60)]&Z7 V"<"W129!O2F22OT M2H:(78;@ " 8K"YT%K#\22=G7IWTXLH>] H[TK@9VP)[4X+@<./6E4Q$W'B<(*93$/;JYR"SV6#8XD(E8\0N8U87%EJ, MK>!-AR'B->@WG8<&!+> KP2,?$+ 5C0*T/P@--.;D!5H$=0>FW:12KN(7;N* MXS64JY95[S4._*Y;/VV9C.KIUSVY@$J8V&7W_^IMF-5ZW] M!E_-\AN\:IC\0O&!"DA*B6*VA2%[ET,(B0_4$L#!!0 ( '-KK%0E-^)N.0\ $(G 8 M>&PO=V]R:W-H965T&ULK5IM;]LX$OXK1&[OD *NXSAIVNT; MD*997.]NFZ!)KY]IB;;92J)*4G&]O_Z>F2$E.7&Z=\ !16-9$CFOSSPS].N- M\]_"VIBH?M15$]XMB91MS[57HZEK[[3M3NM6K\R-B9_;:X^KHWZ5TM:F"=8URIOEFX/SXY?O3NEY?N#?UFS"Z+,B31;. M?:.+#^6;@QD)9"I31%I!X\^=N3!510M!C.]IS8-^2WIQ_#FO_AOK#ET6.I@+ M5WVQ95R_.7AQH$JSU%T5/[G-WTW2YQFM5[@J\/]J(\^>8L>B"]'5Z65S1UZ8IQ?F++=LQ%*^UU&_?>W=1GEZ&JO1!U:5WX9PMB&GW$2/ MNQ;OQ;>_??AX_O'BP_F_U,WM^>WE[YJ-]=$]=!73:E*7??/X)PO83S+.&[^4\7_%W[J3HYGJCY;#[_ MR7HGO<8GO-[)_T/CG1U.^QU.>8?31W;XZ*)1Q^JI^LTVNBFLKM1-U-$@EJ.Z M]J;57E-([C/NGZQ\=7LI*_]<"46QH#X<7:D+YULGVZG#O_WEQ7P^>Y5O\N7Q MJXE*WW\Q][^YZOS]KSZ'],T3U;(JIE1Q;=2RUS5D78/20;FE@@>+=>]"I9MR M]ZMCY&;A?&F;E8J.5_-=90(_Z,QM@O]LBGL%_);Z9JB\&Z]P9!7U+H#%> M@ERNMI'>+XR/@'Y820H$(RVT73H7&\J#TH:B#CN>=9U75#K5\>SI/Q]H@&<>!.Q4 M?3)WIND,_A9N!<>1;+?(S$*=S<[@;W=G2W*/"MBS,I-1"#REZDP2WYFG(9H6 M+BE-1;Z%SKIM*TM0Y3B1H7KT8 1!%)=":SS\_"&.0JG?+POO1V+!;3Y)2U&* M?S7%I?@/W(*(1^"W&"E*DV 8(FS6MA!S7X@!DZ-#DA96MK$RY00A$VDC2.,V ME (BB@'L(-D,Q6CL?!,FG&>T?:#L#+H27]!"=P:W 00;0PB&+?0/W 1QJ%)H M$2;T%H!LIA'[@(RX.Y,P" ]9,N_*$131'L;?61*(HAO&;,+2>"\F9J73B@P@ MI!Z@H[<[0N=[9X,8LG A!O9D+;DAXA<]G.,F:7W/:='XFO/9-2FJ\ Q>E/C< M6'*S;FW4E?W#" 37SD>Z@&4\Q[*N9/?QBNP_\Z,PA'1IZ:EZWS&J]Q6,PG7" MBEIXL& O]=OI'" /-R)%W((PDY8;J03/V)J=@<$]4%A/N=KA!O MNBPI. +L2T_!,[71A,6,Q5)N,.^TP(#\$$AD)\B M_0_3!WG74O F1[.Z.4B6NR&"#V57Q-TH050,,?8_Y M(>*Q93,##Q>VHBLN';QBVC^5("Y9!10E_ ED=L O2KP1TL!5%M+#],X3UEC2 M Y5HG:00F$V/V08;5E*.X$63305Y*&(RS$%MII?,&K@DDQ!N4=D5O]HSHBT@ MLI;DQ<)-J?W(<9P-;8>WPGIPJ KP@EURV2(ZQBGEV5U+N^J\7E2I1/0H;+>R!$RY$16=*4?62@ M#FB-Y.F+-B7"0DKL=-&YU&.+&M3GHD>>VU+NE.>=/7W_7H)]):S(M1Q>)FS:G+V"VD6Y! M+#B4'R*K%&J >09:B.6-&%M\EI/?FXKK#3/6M):GA&%4W-&6O6L#VY'H!4EH MPP HY7^#)&R.,69,DM1#<;8AIQ"*(6N9,P=5?)] &58HHL>R"64AOVWW:]*S M,$FR%"#)WHRVR#GJ1R:"!7 KRG'T%NV%(]'E(5BRE$N_XT_.Y#J8ZLYPIHQ$ MS7A8@^#\0)QA@V]4V#@"?"HB#2J5I$P.JCY21/*4K^"S6OCN6$LI-6@K*&Z( M'GE/J"I,CV.O1N80PWH$4E+%1.E&K)52)DEJ*EO,75*2)W,.UMXU-BF)23WMO4(ST[[+J.W=35 L*5$0IQ"!38L>$%$VVOA/Q-C0U[&9Q1G MGXISZBGV+@?X,1NTQ4HOH\G6 "_$\\SIV'(2/[!R<%4Y- F[J))M+P]S]/5. M(61H.3")XDUV#>[W+C>69_1P C;._PG[!WJ6K-8^I_'G_7KOVQ3HCRJZ'7@W MR9O]J5?>I*%$W*(E8A0<,523"/C0E:142X)-=J3:S9I,0Z7O39.&D"HHVBA$ M4,;-A\[G+,_"]7!@1E(RZ^TE_4(MQD;29+!.9B[5EF/I,0*Z-C\K'7FU7"[L M>#+ "^0B,1G*IK#!1@83B&74-6J<$(*/(1X8-$T]G#2YA/[)ZPO*S=0F/L*XN16CTL%A0HRY)9EI[)+[*!9]X8BN20E*C*Q. M\YG8Y_AD]S%/X^HP$H.X602UH;!.)%RV(#*<%*,82HUCX,^'!)Y2 MQKL%TI$'\.?G]Q,J<"T\;]W49H?C0PQ/G[\*XX4V3(5IK06C*!;K9UD4&+EQ M6U((K[>!4@QV [)GYNM5J6N],KD5?[BO]-]]J04 VZ.F*P?V( M0(IU9M%=:K11:!R+R_8)%C%,!)GD''F EEYVZ)_,?8)=6D1^1/0L9&ZZ<%W, M [&'QN,.*JLAW(4Z,:+GX 2$6_Y.JHY,$=* 9"@%0IK9:!'%I^1N-"^>GR;% M\I!%9$>54I9:E:FZUENF"S(NH'P;(.9D!MMO4Y\Q\-$O(]#*(].A6>W8I;E\ MY%[=,B$SOH&D5%@%M+]QH:^5OM/H[ZGCRKH*8>]7'8]D=L&8(.MAS\=PUEM[ MZ6CBQ/Y (QQ>]M)53C=,Q[U,-8C!P%+29[T"D5PA>8U$UNC[WA^EJ1$.,4%# MWW)/U16'PR"T1.O0DZ?JGWL<&<[F52E-&E/QB4-'CAZ]UU#.@.CGUC?[FB6# MOI' K[ESH-\TANC\ K'$FA, C61$(TKZ"@@2 =ZP)D#4_49>^#7]1\Z)<)V/#G#HH?'SZ8SW#V>_#I[H6XRQ9"CIX'W/#\Y M4X?'XV4[>.(OH7=3KY]>P9UG@^?<8[G$UFQ\_4#8B>>?J.<83&M@:V M9E.?$XN)KOB6)M#%^*;&QJ6@1)J]E0,6#7-<.OX1EX9,9.GTA3U$,9>(V<":23 UARCP3^D$D09F((MY2N(Q$J/L:B\%I$:@O'*I5U2!B3PHV%>C[_4SAA62_+ P;<8NH;1M3().P9L?=D M3#H&T5LA;R/9]NTT-B%QS-%<8&$*W0GVP5AT)(WX$)^+;18F;HQIF::3[[DXIW@G04=IP2RC/[("=M' /T&Y[2-'M9UO8U5,?G?(W MG[PH5H#KCTZ/T]-?NW(ET]H1;]DY Y"O9'RVQVI3=;YW.YH[969#0U"RQ,[) ML63K7D?0&">Y\][L2F2CZ=[[85+SO0.I,W[OX24/*W6:G\HXI[0\R 5WT#8= M'U%IN$#1U)SPMK1)1CY_O3FGKH-LE(X+)^J7T]/Y9#:;C;Q*XM.DET9.:U,) M_Z<=J-\O)!#/2\<3X?/A"/C:@Z-V,)CTGE>-^H=N.MH^EY+Q,9O."]Q\QLWC M7Y\>0\$!71 AW+:^/QT]N2ENK%U6]GE-AMJM"]%VOC%-+BCA0OP$FJD)"&" MK,&7NZ_;,90AK-!E(^[ED#F31#J':@<&;:D5$2 5?TM_E!JI?!:>28& F*O< M2CIPT+^"08='@+W5!6+D3(89IZT36$\HC"@3>7[9M:7 ,?$$MF0?X4GSTI8# M_&F53[/Z(S*A1OO.E*?[?G=S-/I=4VW\BG^]Q6<%392?./7?]C\0.Y??10V/ MRZ_+$-0@I@%E8(E79]/GSPZD!G0U?UP;C1Z6'L!]^D%#OJ - M^I_-O?T/4$L#!!0 ( '-KK%353(AJ= ( "H% 8 >&PO=V]R:W-H M965T&ULE51M3]LP$/XKIPQ-FU1(XKYW;24*1>L'"BH,/KO) MM;%([,QV&_;O=W;:K$B M"^V[WS/<\_9/H\KI5],AFCAM4H#$V2 M8<'-A2I1TLY&Z8);,O4V-*5&GGI0D8/=ZO%_&$<6B)T[C Y@&K_V_U;UAZS1L'<_6^8!MJ2P" M@W-8R#U*J[1 \]ZA?&;D 17 M.\-E:K[#BE?TIBQJP7,X@W9K.&1^[O=C>*:N.A?RO-0J06,@;O59G\9>Q.!& M2$%O+X6M4JF!8=2#87_P1O(9]%H]UO5SNQO#>_<0GKS? O76=ZFK=B=M_90; M;_,17-;O_U]X_8M0Z5LA#>2X(6ATT>\&H.O.K VK2M\-:V6IM_PRH\\,M0N@ M_8VB6SX8+D'S/4[_ E!+ P04 " !S:ZQ49-4\&L8" #>!0 &0 'AL M+W=O^ZY>" M"SUV,F/*H>?I),."Z5-9HJ";M50%,V2JC:=+A2RM@PKNA;[?\PJ6"V;"4K*1^L<96.'=\20HZ)L0B,/D]X@9Q; M(*+QN,-TVI0V\'"_1_]1UTZUK)C&"\G_Y*G)QL[ @137K.)F(;<_<5=/U^(E MDNMZA6WC&T4.))4VLM@%$X,B%\V7/>_ZC -X@5R4>9%Q=BSH2! MJ4AA]ECE)?W7QH4YFO<:_"&XE>E0ERS!L4,ZU*B>T)G,;Y CU*DK6O M I>88+%"M3\)X$LN*%Q6FN#U5[A&DDXF>0IY42KYA#:9AA.(.D&]^J]]@:X; MG 6TAL$ [AA'33HKB)=1K);R*]N!WX=^-X*>&X5G=O5#2J4UJ3VIBHHS6TB* MU*37 MGK;#:]IH]M6]F7S4RTTN-'!<4ZA_VN\ZH)IITAA&EK6"5]+0/*BW&0U@5-:! M[M>2_K>=81.T(WWR#U!+ P04 " !S:ZQ4?$<.M!D# #B!@ &0 'AL M+W=O99*Y\S24:]\4VAD:964"S\*@A,_9UQZPWYEN]/# MOBJMX!+O-)@RSYE^':-0ZX$7>AO#C*\RZPS^L%^P%=ZC?2CN-)W\%B7E.4K# ME02-RX$W"GOCCHNO GYS7)NM>W!*%DH]N<,T'7B!(X0"$^L0&%V>\1R%<$!$ MXT^#Z;4E7>+V_0;]5Z6=M"R8P7,E'GEJLX'7]2#%)2N%G:GU)39ZCAU>HH2I M?F%=Q\;''B2EL2IODHE!SF5]92]-'[82NL$7"5&3$%6\ZT(5RPMFV;"OU1JT MBR8T=U-)K;*)')?N3[FWFKR<\NSP=GXYF<'H_'SV,+F J^EH/+V:SJ>3^[YO M"=X%^4D#-:ZAHB^@8KA6TF8&)C+%]'V^3[1:;M&&VSC:"7C-]!'$X2%$013M MP(M;K7&%%_^?UG?8G1:[4V%WOL"^41:A S_@UF:H890DNL04KCA;<,$M1_-9 M0W=BNGGLF8(E./!HX SJ9_2&-[?S"17Z_JT;A>%/^%)30X0U1,0;$4@4S92Q M9%5+H"A8*D'#R>6*7'FA)$IK>D#M3[*V_W"!">8+@FPL(>QS2>FJ-$RFY@"N MD*:C+?1*O3"9TA8LZASVX"2*W6\0PIU6:9E86#.MF:3(3AS0-X)[)HB>1EMJ M-_&58C@-W:=68]D+!804&G:#QA9V8PBCLQUZ]R \[,1G]36,84Z2DXS)%?E( M@BHU%!\IO9NG9]:!'3",PT[?R7#FZ*'L("5UQ*5V/! M!),)$GO7HCV(J1LWM*WQA1:S(0E1> K=DPX\;K@G@O'&PO=V]R:W-H M965T2.>[?=R7YS'&\9-HO($N[S^X^^W)[NE+ZNZD1+3PT0IJS46UM M>S(>F[S&AIDCU:*DEU+IAEGZU-78M!I9X94:,4[C>#9N&)>C\U-_]UF?GZK. M"B[QLP;3-0W3ZTL4:G4V2D:;BR^\JJV[&)^?MJS".[1_MY\U?8T'E((W* U7 M$C269Z.+Y.1RXN2]P#\<5V;K#"Z2I5+?W<>'XFP4.X=08&X= J-_]WB%0C@@ MMA06\2L*::^0>K^#(>_E.V;9^:E6 M*]!.FM#RZ'(+BL"H3S5S ME6Z.X&N-I"FHXQR\94OA,-%X TZX[&Q'=CP@M&P=3#MC0LGJT*)N-H $T-ME MI%L")2JOATR=P.T@Y@F"*]4TW ; ?2[!UJHS3!;FP"O OD8W+$CA /9@>CQQ MUQD?A+0WW;HEB M6VM$:$(CH&N$'7: XG:'A')&=.^E21K%<>RO]](X<1\1S3;3HI].8OV3W)FN M;84O% IJR023.4*8WER&$1VFI6".#"J1D+L3N.R%F=WU<>OE'>;8+(GC_C'9 MS: ?VH>J/'0%R(Q!E^2/CR5#K.C^_L 3.SN>!X*/L[X^-D2N#TVMM 6ON'\; M-/-<=^3W%MD',*/JF,7),W57J1OMUY-%51T!OAAO(CF9SG[T7M0IN*2^0L5%_DWGXN0Q&<06PCSERK6 MC3)J3@'4=B[PW7GE)EJ!)M=\2;$LW2)P N\Z[>O;5WNG;0T_.J9=?Y--%USD MYAQK @&/;+&*V'$-,/#U!0LBJXC@&S4P85IJ@)KVDQ[/#/Y$1+4EO(W=/K4* M_F*29-<;@F]"UO$JIR%80=W-?UTU(Q' M<$7!,U<]JJMJN,VMVNKDB8N)8GDCJ.0XFL0[0=T.O/N9V.GG/DAD&FXZR?,Z M@C^H@)A<4P/(P9/WN-2>WG2Q5;_D>JAJ?T-LH1_A0/^RM%4W'I?"I) M-3Z:3T>@PTX8/JQJ_1ZV5):V.G]T98K:"=![J6C3Z#^<@6$Q/_\74$L#!!0 M ( '-KK%0^L.-X5 , (' 9 >&PO=V]R:W-H965TV1<,GE75: M$"]=G?K6H2BCDU9IGF7O4BVD21:SN'?M%C/;D9(&KQWX3FOA=F>H[&:>3)*' MC1M9-Q0VTL6L%37>(GUOKQVOT@&EE!J-E]: PVJ>G$X^GAT%^VCP0^+&'WQ# MR&1E[7U87);S) N$4&%! 4'P:XWGJ%0 8AJ_]IC)$#(X'GX_H'^)N7,N*^'Q MW*J?LJ1FGIPD4&(E.D4W=O,5]_D+@P)99_^J=, M9^"4/W ZR_\*N!1N#-/)"/(LS_^"-QURG$:\Z?_E^ ?FT8!Y%#&/7L#\9@GA M';R%*VK0P;G56A(7*_GG!/P'UM7=!6.]>7623R:?X E=^(G0B#5"V[FBX1($ MNU*R%J&L/7!C@C1K#FW=#H0IH76V[/JB+ZPG#\+#ANL^O&VD>^CONZ())X5H M)0D%N.6&+R5U#OT(/+JU+)"!##EN(=[BYKU'DJ8>Q6@EKKFUVY [B-HA1A7& M<.J<,'6_ N$BA)#^D+K3\*MC.TG!F2RL'H4KF3++(XO@YLFQ2IQF3$.T+-M6H'U'#[C#@3_NY]FC>_QU8 M@%IR)@HK=LW&[X\36.W:_" &&W][B M-U!+ P04 " !S:ZQ4B+U4+[8" "3!0 &0 'AL+W=O "JPK9G-[DD5AT[ MLQU2_OW.3LBH5)"BQ#[?]]UWOMQ-:J5?38YHX:T0TDR#W-KR/@Q-G&/!3%^5 M*.DD5;I@EK8Z"TVID24>5(@P&@R^A@7C,IA-O.U)SR:JLH)+?-)@JJ)@^CA' MH>II, Q.AF>>Y=89PMFD9!GNT/XJGS3MPHXEX05*PY4$C>DT>!S>S\?.WSO\ MYEB;LS6X3%Z4>G6;53(-!DX0"HRM8V#T.> "A7!$).-ORQET(1WP?'UB_^YS MIUQ>F,&%$G]X8O-I+[6:_VOQ8;A:KY6X26J)T!V'J*3GGETE7#-=!]&PQY$@RBZPC?J\AMYOM$%ONW^Y_(9%MOU>K5?+S?[W17. M<<%#2@4J [BO/NDGI0(ST:02H+#$JF[1&L B:/(#!C DJM M8L2$I!)> ZL9>1.1\^!4N$+RE,>L:9-,(U+768@%XX7I@'.W(>/ M"AV>-4J!.O/CP$"L*FF;GNFLW<1Y;!KMOWLSKJ@(&:?H E."#OJW-P'H9@0T M&ZM*WW8ORE(3^V5.4Q.U&PO=V]R:W-H965TWW6>?7>^N-*FD>M(IHH'G3.1ZZJ7&% ^^KZ,4,Z;[LL"<3A*I,F9HJ?:^ M+A2RV"EEP@^#X*V?,9Y[LXG;6ZO91)9&\!S7"G2994R]+%#(:NH-O'9CP_>I ML1O^;%*P/6[1_%&L%:W\#B7F&>::RQP4)E-O/GA8C*R\$_B38Z4/YF ]V4GY M9!>?XJD76$(H,#(6@='P'=^C$!:(:/S=8'J=2:MX.&_1?W>^DR\[IO&]%-]X M;-*I-_8@QH25PFQD]1$;?^XM7B2%=O^AJF5#$HY*;636*!.#C.?UR)Z;.!PH MC(,+"F&C$#K>M2''\I$9-ILH68&RTH1F)\Y5ITWD>&X_RM8H.N6D9V;+^6;U M:?5A"^OE!K8?YYOEQ#>$:T_]J,%8U!CA!8PA?):Y234L\QCC8WV?^'2DPI;4 M(KP*^)FI/@P'/0B#,+R"-^R<'#J\X?]T\@ATU(&.'.CH NA*&H0QW,&2J9SG M>PUK5+!-F<)S(?P!V)>O2P)[\\LX' S>P6O"L&":1X"MK8)L:6L+N(:(B:@4 MS&#L,C0&2G>3(E0N)VG-OJ.B$H.\S':D*!.(9):1E(/00-6J#BE>=:EVPG M$,K"EC.M,DOI&57$R1:I4+5$3R +6^_Z.!2&.I8NU4LCDZ%)K6/KZT8R%!1-!$;L[AP&-:\^ M?"7Y1 IJI39JQC'5:#1M*I/6]F56E*:SOW-Y0V&^PN2!'-H#<. QI_'0Z'M_"(N:1^>()^!?%;DX9W)VDX[KTE]\:]41C ,BN$?*%( MG'QHXLPJILC3._H[-?T?W)G'?U$O)YGJ HLW+"O>=4D=R9R.M3/^*NT."2]^ M)J:+ZR&BR ;]<'#KQF!T^[KJ?ZCQI:%(F5V4E"]4@3 (>_=!X#B&][V IHW+ M]"O07)"<(<=@3G/3Y+0@5#Z]6!7FEKG3 $>%\"5 K0?SVK4;WO(?W ;4_[OW9N#NJ0LW[Z2AEX*;IO0T0V4%Z#R1U.":A370 M/?9F_P!02P,$% @ &ULO5;;3N-($/V5DG>T&J2$Q"8,]TC 9#7SP&4)[#XW M=B5N8;M#=SL)\_5[JAV"R0":U4K[XG3;5:=.59^J]/'"V >7,WM:ED7E3J+< M^]EAK^?2G$OEMLV,*WR9&%LJCZV=]MS,LLJ"4UGTDG[_2Z]4NHJ&Q^'=M1T> MF]H7NN)K2ZXN2V6?SK@PBY,HCIY?W.AI[N5%;W@\4U,>L[^;75OL>FN43)=< M.6TJLCPYB4[CP[.!V >#OS0O7&M-DLF],0^R^9Z=1'TAQ 6G7A 4?N9\SD4A M0*#QN,*,UB'%L;U^1O\CY(Y<[I7CGX]%7.K^ZN!Y=CD]OOU]= M'O<\P,6DEZZ SAJ@Y!V@';HPE<\=C:J,L]?^/9!:,TN>F9TE'P)>*+M-.W&' MDGZ2?("WL\YT)^#M_)=,7R$/ULB#@#QX!_G2>*8#ZM(X5Y:[(I*,SDV)QG%* MM/=6-3^$E%8\=#.5\DF$7G-LYQP-+Z]N1XCS^V_[21P?44BH^W-&!+F2:U%1 M"V4S1U.K*L]9AQ9,N9HS>BHUTTK_@$G:8DN\E#53XXT7/F=BYS6: "\"#F58 MTT1I2W-5U$PE^]QDVR$X[.&^"ONKT6JGJRDIN%O:@LGAT9U9":$B68#8-@)+YM)[';- MVA0[5&$ZPK05HA.B2V%\;AGI-^)G$3]!NFF^UBZI*I-%C%)89.3@6F 8ND/0 M%-]VXVSZOMK&]%G+:9C: =-M060N$)L:@TH[4V3TB>)=>?3I!H<0O"5^QG,, MX!G&J:!N_5!^&2 M@UB>>_LT>JRU?]K0'&6UE0K_[_5"#;S5J5 8>Y,^T%VE(8*DLXLJ)9U^OT^7 MINIR.2O,$Z S#3EX8]U[GI^E^Y+^T3N@A^XQ4:#JVDE]T0E)=L4XTF@_*U=.GH.6')XTW^$VF:%\1UA3XB MM('S6"OKV6(;$ ?_AJ TL&6Y54AEZFHU!Q!2YD4XEDDMG4C<".[-F2*A7E!> MS9(F$-3E3*K# %EHGR.24)>Q%W)J!(QNMR]R:')>";R)L/&MAE36!OXG>5L^ MW'QWUTKP%_+:& .?1,I![<^I+L)M1&8_*H_+U9NY"THXDBU*M@<#>NNOL->Z M6I1LI^$"Y<"JKGQSRUB_7=_13INKR8MY<\%#RE,-E10\@6M_>V\W(MM>L,QQSV0K!O@^,?BC76TDP/KF.OP'4$L#!!0 ( '-KK%1> MM1GHR T +$C 9 >&PO=V]R:W-H965TUPE%+;UG3!NDYYLWIY<''T M_/4YW<\W_,>:VU!\5F3)TKFO].5]_?)@00J9QE21)&C\F*8A05#C6Y)Y M,!Y)#Y:?L_1W;#ML6>I@WKCFBZWCYN7!LP-5FY4>FOC9W?[3)'N>DKS*-8'_ MKV[EWM.3 U4-(;HV/0P-6MO)O_HN^:%XX-GBG@>.TP/'K+<5RV>BZ_>O?]X\?'-^XM_JZOKB^NW']Y^O%:7 MG]]>7GR^N'[_Z:-Z=.D:6UD3'K\XC#B/GCJLDNS7(OOX'MDGZH/KXB:HMUUM MZMWG#Z'GJ.QQ5O;U\8,"/V@_5R=',W6\.#Y^0-[):/P)RSOY_XQ_X(33\813 M/N'TGA,^FQO3#49]-I5;=Y82<9\?'Q1"=?D\]+HR+P]0>,'X&W/PZMKUME)G MBS/5>W=C:Q.45L%VZ\;,\)/M*MLW)CRAE*W5"JG_)$33J];5IE'1J:51NN\; MBZOXIIM&58B61YD$Y&#=VVG\P )*FX,:G,T3KD5OHK- M%C6'_UHW=!'WZ4A%3-48^"F<%B#&:WX.*MQN;+7A2V]SMJ:+ M-C:FGJD.8(6#H(V[U5V55#$A6I0I[/$F#KX+,U7;4-'Q0>%ZT/ 'M*I(T(W! M90U+@0?T;]1WN(AJ(@7)8=ZUDP>@F^G$/ZA0=V/$<'BBM>3>M7.UG('@6%)( M>Z/@S"ZLC/?B8C8Z29RK+X;-ZX(9_0Z(^C;8((ZL7(B!(PFPM'"[J%^Y%D<2 M).(B6?U=T*+Q;2#GN,ZHK=&>M,*#T*BK<0N%6? .\ MQ34YO93(\3-WE8$M6?1<_3H@T=9@GCIV6SH$85(8/3YG^AQF3?.@I>5.@V=R< M)*O=%,&'>JCB;I8@*Z8<^Y_JY=:DZB 94,L@HTD"#-_H;FU2<;I@]I[,UFPT MGJD-!1B(4\N9;O#TQ-IK)!J"89"2/7MF@V"@[X,6(&E4[ZQX"]%!%L0MNSE$ MO;0-?0L#%S,DIO.1W97I(]4K&6C5WSHW-U MO0&NJK %1+92O!#-JZ <\%3930%5 %.S*5BQ)DHV>1[A6=CUXO6R, M/#I*=#W?RJ%$UC15'SEH %JC>-!,0%Y2(2QU)*<91@\*!W_(5I:.@UF%?8E?=L(UJ[I!@ ?=;Q5O"7]H((NF$[C--[%9 M1)LJ L.]?8Z4(Y!7&)P8< 5D> 0CI= R$)2&[.'[$9S/>R]0CHS/LND[5U-6 M"PHT1"G$(7/U+F7"CB/8YCWVW^/]&37((8B-0@_2@9D2JC4T9MY99B7JR669 M"8Q'YP51;:^'_TR-6XHR/J,Y^]2<==+ _R86]T@'U;19&^ %^)^YG3L M.#FXIJ8H)-J]@RK9]W(S9]\8%$*&GA.3*-YLU^%^K[A2G^+F!&Q<_S.. M#^RLV:Q]0>//^^W>=RC0'UUT._%NTC?'4Z^]X40%[]QB)&(4+!BJ201\FDI2 MJ27%9CM:[59-IJ%TQ1N>O;I$,0:,M TR*./FC\'G*L_*C7!@"BV9]8Z:?J$1 MXU;*9/).9B[-EG/I/@*Z,0^UCBPMMPNX=^H8+" WB=G4-H4-=@WW N0R^AH- M3DC!^Q /#!KNH\QB>J!SI(YMGG8XH5"#N%D$M:&T M3B1!BZD4F#;^]1#9[GM'%"&3\XH:@)6=BWPWSN'YBJ E=\&"U\BCRV%K M_#_^]NSXZ/R74 JZ92I,LI:,HA!69UTH,?+@MJ(4WFP#E1C\!F3/S->K6K=Z M;?(H_N.Y,G^/K3H3+BK3I#)%! G98::KIO C RG7F44/:=!&HW&L+OLG6.0P M$632LX@ B5X-F)_,]P2[MLC\B.Q9LCYZZ8:8EBU[G,<35#9#N M-8D3/P0G2 MSHA/DRU"6I!,K4!(,SLMHOG4/(UFX?EN,BPO641W="EE:529JTN]9;H@ZP*J MMPEB3A;P_3;-&1,?_5* 5F4\C?_%L#IP2'/[R+.Z94)F? =-J;$*:'_E1M\J M?:,QW]/$E6T5PCY*+5C]HU3G=,Q[UL M-8C!P%,R9_T"(KE&\1K)K.+W,1ZU:9$.,4'#.'+/U2=.ATEIR=9I)D_=/\\X M(+,#[3?2K@AETAEB$8%\59?/=50S(/IY],VQ9LU@;R3PZVXM(0:_1"ZQ MY01 A8X81(D;$PLO1E^2)>P[;]U8OXXR7(BZ(]*M,6F C7F9QY9#@)M"&HS' MU$@;$1MV,IX4'8&"%H*T^<^;H#0*S MD]-S=5'KG@C;T>P,0A\=/9TOFS:]! MN.Y;E#\LZ8*84W35UR2M*J0I#6-K0::T[ZLG_)MVQRL-B.$T"ID\US0L4590 MGB\;]14%1C/@N9IGKN54#AJ-9;RFUIZ%6D(*277=D55EP"7%H@C MYL\?B/;9&.VS!V/T'F02.E_KNWWQ_4O/IJVN4+I^8*")X]8&62QK"7U'DP/M M'WC_3=\K.);PC8!&FKP.P8CC&IM7ESE*X^PP':CKWX= TIDV4GBX_0GC+#L^ MGY99 M!.+A+,Q:E)*29N*;I8FWQG0YHRDVN)>)OKA77AI0[)F#I!(C18M*9#)E"<-H M2 %$TWN-U+'LF#FJ'WP/7X;4K[[S>EH7),C(+Y@4&\!M5J?;Z>[?AWHM2^F" MGNV\ZI"?9$NXQVMS=;'W.%JO90)'NU[RQ%3-O/$G@-@;"-I6I7!^MZ(3W6B) M^>NTD/HV@+O24HP;TVX;XIVL3FMBV5K5EO?5H$C:IK=DU '?@!MHQAA;VZ0C M2?_MZH*&*_)1)2_U9NJGT]/CV6*Q**)*ZM-"FS9K&]/(F$,G/(0XYR/BG/_) M.]A*4OFB=KPZOQ *0!ZX]"#S US.0_H^1'I8]J=._4MW UF/GZLJV?6-7VQR;0E%*[O+!M!(EP148'XVH M4H-!9/#7W<=MB9[(9--0J6F^GNDWO>'KI]G$TI G[4)23";/-**F5\PCW1+< M=(U;RVX#Q+IBG./EZAAH035YV\53,\]#4W'69@[,FQJ)+E MM:TGQ-4JOR<<7SX*Z9PP 245)=)[\^JP^#.*UO@U_[$(OX7IHOQ%Q?CK^/.9(" !4!0 &0 'AL M+W=OR))I,F7JJDHB2RRH+-S \X9NR7+N3,?6MY+3 ML:AUD7-<25!U63+Y-L-"'":.[YP%!G:S"5[(1X,L9],G$\DQ 6&&O#P.CW@G,L"D-$ M:3P?.9U6T@#/UR?V;[9VJF7'%,Y%\3M/=#9QKAU(<,_J0J_%X3L>ZQD8OE@4 MRG[AT,3V23&NE1;E$4QVF?/FSUZ/?3@#7'N? ((C(+!Y-T(VRSNFV70LQ0&D MB28VL["E6C0EEW-S*!LM:3%@LM[!:+U;1.MK> M/RZALV6[ M75V-6D9C!N?&2>-4+_Z_T"PK]5J%O%?J?*-SEBJ6IQ)39&_BXAS6^ M(*_QHVY>I#*S>:LJ%N/$H>%3*%_0F<(VDXCO^@Q+&F3%Z,A@]P;ZK:)M)N.L M;1S,,\;3?[P^='(..A.U8CQ15[!XKO.*9D_#%PBZ0V\$G2#H^5^OR Z[87\$ M4<(JC1+\[I!(._Z@Y]&NW[WQKF$C]OK ) *1D5#.-7+&8X11.(1.V LH]1)G:>580BYKKYM*WWO;)B)I) M^1O>O#?4@#3G"@K<$]3KC08.R&:&&T.+RL[-3FB:0KO,Z-E#:0)H?R^$/AE& MH'U(IW\ 4$L#!!0 ( '-KK%337+,$20( -T$ 9 >&PO=V]R:W-H M965TF=2T4?K=%(@6/JM2FEE06%M?A:') M"JRXN50U2MI9*UUQ2Z[>A*;6R',/JLJ01=$PK+B003KUL85.IVIK2R%QH<%L MJXKKWW,L53,+XF ?6(I-85T@3*=GH'CRU1I_!>:-I?1B=G6 M6%7MP.170K:6?^[NX0 PCHX V [ ?-WM0;[*6VYY.M6J >VRB:KNSH)=E-V96J>X2R@,3*H/S!(@01G1:<8;C'#:H5Z'XGA M3$BPA=H:+G-S#DO>4!M8U(*7\ V2WF3"O!V-8GBC0;@0\J+6*D-C(.Z-V(B^ MPXC!O9""VB6'C5*Y@4DTA,EH# >2B&;8&[*!M\D@AJ]N+#QHN0KUQ@^6@4QM MI6V[KXMVLWO=MNS?]';P2?I&2 ,EK@D:78X& >AVF%K'JMHW\$I9&@>_+.C] M0>T2:'^ME-T[[H#N14O_ %!+ P04 " !S:ZQ4"7-J4)0" !P!0 &0 M 'AL+W=OR0D$G&ZE*9LA56U]7"EGF0&7A1T'0]TO&A3<9 MN;U$34:R-@47F"C0=5DR]3[#0N[&7N@=-I9\FQN[X4]&%=OB(YJG*E'D^2U+ MQDL4FDL!"C=C;QI>SV(;[P)^<=SIHS782M92/EOG+AM[@16$!:;&,C#ZO.(- M%H4E(ADO>TZO36F!Q^L#^S=7.]6R9AIO9/&;9R8?>T,/,MRPNC!+N?N.^WIZ MEB^5A786=DUL''F0UMK(<@\F!247S9>][?MP!!@&7P"B/2!RNIM$3N4M,VPR M4G('RD83FUVX4AV:Q'%A?\JC473*"68KZ"\Q5;%Z@O1KZA=!;DIWOJ64,=?4'=A0]?Q=?^S]A,IXC9%[%+$7Z50-#[*O'<@*9@P M'9B*#.8O-:_H8I.[0/-98T^2VCF]UA5+<>S1(&I4K^A-@+J3YFU[X!93+->H M#CLAG',!)I>U9B+3%W"/=)ES663 RTK)5[2*-)Q!W V=#3Z$0J\37H5DHW ( MCXSN ]W\4@IM%'/#A6WD,!C H!=#OQ-'5]8&$:72FN8OK]*WM]>'0+R"-'Z0=$/0\G<%5KVMMW(?/?HU_- 4EJJV;=0VIK(5I!J+= M;9^3:3-%'^'-6T2]W'*AH< -08/+0<\#U @ M08 !D !X;"]W M;W)K&ULK55M;]HP$/XKIZ@?J-0U;T!I!4A F89$ M-P3M^MDD!['JV,QV"OWW.RVA1[V M56$%E[C08(H\9_IMC$+M!U[H'0U+OLVL,_C#_HYM<87V:;?0M/(;E)3G* U7 M$C1N!MXHO!MWG'_I\)/CWIS,P3%9*_7B%K-TX 6N(!286(? :'C%"0KA@*B, M7S6FUZ1T@:?S(_K7DCMQ63.#$R6>>6JS@=?S(,4-*X1=JOTWK/F4!29*F/() M^\HW[GB0%,:JO ZF"G(NJY$=:AU. GK!)P%1'1"5=5>)RBKOF67#OE9[T,Z; MT-RDI%I&4W%RLIIV.<79X8_';],EC":3Y=/T'N:ST7@VGSW.IBMH/;*U M0'/9]RWE<=Y^4F..*\SH$\P8'I2TF8&I3#'],]ZG^IHBHV.1X^@LX /3UQ"' M5Q %470&+VY(QR5>_*^DSV"W&^QVB=W^#-MFJ&&4)+K %.:S M4.X^WID=2W#@T84SJ%_1&P*)D62-&G"/">9K2EE;0FAQ"393A6$R-9]:"LX54[OJW&,(8SXG<: M\3MGQ3]2>#Y2..K_]I'Z9['^E_K' JY@C5LN)9=;:B."R02)N9/W F)2\CLU M8#Q0KS4D313>0*_;?N>1",9S RVW<0DMMW=9'3(FZ)6\JH9-41-B P V%!MNFF2UL&I7-J:ULM3FRFE&WQ74SH'V-TK9X\(E:+Y4P]]02P,$% @ MH3Z @ V08 !D !X;"]W;W)K&UL M?55=;]LZ#/TKA'$?$J"MOV(G+9( 3=?A%NBPHNF]]UFQF5B8+'F2O&S_?I3L M>-ENXY>$DG@.#TF)7AZ5_F(J1 O?:R'-*JBL;>["T!05ULSR5KIFE MI3Z$IM'(2@^J19A$41[6C,M@O?1[+WJ]5*T57.*+!M/6-=,_-BC4<17$P6GC ME1\JZS;"];)A!]RB_:=YT;0*!Y:2UR@-5Q(T[E?!?7RWR9R_=_B7X]& R MV2GUQ2V>RE40.4$HL+".@='?-WQ (1P1R?C:VFH5+ (H<<]:85_5\6_L\_$""R6,_X5CYYO- RA:8U7=@TE!S67WS[[W M=3@#+*(+@*0')%YW%\BK_, L6R^U.H)VWL3F#)^J1Y,X+EU3ME;3*2><73\_ MWF\?MS!Y8SN!9KH,+9&ZH[#H"38=07*!((5/2MK*P*,LL?P='Y*805%R4K1) M1@D_,7T#:7P%290D(WSID&'J^=+1#$>(9@/1S!/-+A!];E SR^4!GI'N 3RH MNN:6+J@U[Y5ME,R]M3O3L )7 3TF@_H;!FL8"0$3+L%6JC5,EF;JJP,3C>[A M$6 *?T%V.W/;*=PFD3-FL$AS9V20+3)GY!"G*;Q52.]W;U'#; %ORC)!Z/0J MCG.*:PP\U4UKL00NR0>-A4F:Y3#M7=4@4GB1@K,=%]QR-$237,WS"$;*G0WE MSD;+O6V;1J#+G6)NF&"R0-CZ0?4DNVGDGO4K"N:TOJFN9N_V8C32A5Z<0C(+ M="6+:KB3YR&PO=V]R:W-H965T>ZYX^X8E%(]ZA31P'.>"3WT4F.*ON_K.,6_F+!-ZFQ%_YH4+ -+M%\+^:*3G[-DO 92@,+UT!MW^I.NM7<&/SB6 M^F /-I*5E(_V<)L,O< *P@QC8QD8+4]XC5EFB4C&KQVG5[NTP,/]GOVKBYUB M63&-US)[X(E)AU[/@P37;)N9A2QO6+9:;=-Y25;4C&\58;F>_ I"#G MHEK9\RX/!X!>< (0[@"ATUTYK0)(X+^Z,LC:)7 M3C@SFHX7L]O9MR7,IPM8WHP74VCXJ4*<'%1D,CDUHW88X*EBE3^%8"SU+9#NSK@L4X]*C%-*HG]$9PGRK$5ZD% M2DRQ @PLPJ=QJ)A(-^!QC8: @6=K*@H0*I0FS;8Z*&:F 6MM6-H^! M["'AV=:0"SP*J\;W84;#@HM8YKA_;'1:O3"@]4,414WX@D)2L1ZQGV%\<-V# MR05[(E$;K.XU]%I7%%ZOU0T#F.9%)E\H$]04\2/(PK:U=II9R11%>D&?8]?O M"&><_*1&(YORA(J/+"\^ ],TN<@JEH*>M7,NUT=J#@5/_B>GD_,IHLP&[;#3 M=&O0I13_B_(OQ%NE[A],#BJ'C9N/FD+<"E,-D?JV'L'C:O+\,:_F-]7@AE,& M,EP3-&A_NO1 53.Q.AA9N#FTDH:FFMNF]#>"RAK0^UI*LS]8!_4?T^@W4$L# M!!0 ( '-KK%3!D^Y[& , ) ' 9 >&PO=V]R:W-H965T6%[^LXPX+IKBQ1 MT)^U5 4SM%2IKTN%+'%.1>Y'03#T"\:%-QFYO:6:C&1EQ\<#3S-@-?S(J68HK-$_E4M'*;U 27J#07 I0N!Y[T_!B-K3VSN G MQZW>FX-E\BSEBUW<)F,OL %ACK&Q"(P^&[S$/+= %,;K#M-KCK2.^_,/]&O' MG;@\,XV7,O_%$Y.-O3,/$ERS*CPYGP3<.T M[]\HMR#W&^2^0^Y_@WQ;E)1EL!"P*%$QFW8:%FMXP%BJA(L45AE3^,.F40*7 MLJ#2TL[LD,RM9]EBO=!T'(X]JD:-:H/>!!XSA?CI H#DB[-&O\_+$(ZY )/) M2C.1Z!.*21N0:TBE3#1HF2=P!.' #@'1T.B\R98R?T,575)]&ACVX32$%946 M<>Q BH+8Y\Z,)92T7!NKQ@8A"B,(ST_A41HRT'MJQ'MJT''1>6C'TS-HN9=! M=C*^;HRE4+84=_/-9B_V3D>$J 5\QL!OK!]$JR0RO#?Q&]= M!X%U$)^N&.L@OB;@D57 B61?%%LR6]=8"8QM**M2A!U\#4-UQF7B4-XI.0DA MZO;[!P7T][ID@2IU;X&FJ"IAZH;9[#;/S;3NLG_-Z[>***><:CO'-;D&W5-* M'%7W_WIA9.EZ[K,TU,'=-*,G$Y4UH/]K*ICV8Y$*B)G9J.]#]^]E)")2/ M#%5](;9SS_&YYQ)?=[:4O? 0*"W."*\JP5")/>ZSKT 8LSK- $BWZPHB[&0 M4[;6><( ^QDHCG3+,!P]QB'1>IUL;(Z+:KF=IN M81:N Z$6]%XGP6N8@WA.IDS.])+%#V,@/*0$,5AUM;YY/S!M!<@B?H:PY0=C MI%)94OJB)B._JQE*$43@"46!Y6,# X@BQ21UO!:D6KFG AZ.=^Q/6?(RF27F M,*#1K] 705=K::SC:LA+N:!Q 98*XI#D M3_Q6&'$ D#SG 58!L(X!C0L NP!DSNFYLBRM1RQPK\/H%C$5+=G4(/,F0\ML M0J+*.!=,O@TE3O2>1I/^9##J?T?S17\Q' \G"S2=#:?]67\Q^C%!M4<0.(SX M'?J*GN>/J'9SAVY02- BH"G'Q.<=74@=BDWWBCT?\CVM"WO::$R)"#@:$A_\ M]WA=ZB^3L'9)/%B5A&/,ZL@VOR#+L*PS>@;7P\T*.7;IJ9WQ-2[PS6 #)(5S MQN1 )P.J+VS3:[2=9D??'*H]#7(,U#P(LNV&>[X";JG)_=0*5+-95MTT;BNL:I6R6I5$?1\G E@%4[MD M:G_4]/:)Z::COM1WIK=/3#?;1NN\Z::Q/]^,3[7]/W0ULUDWJO_YYL'9:U:2 MS>E*;#$#),]1-)8]5P#!Q(,J&C]0=U3\F:[9XF MO^3(QK$."4<1K"2E47?EGY?E]X9\(FB2M=XE%;*19\- WK6 J0#Y?D6IV$W4 M!N7MK?&PO=V]R:W-H M965TV$SV4KY;8YZ/O, * @X96@9JEC-,@'-+9&3\;CF]+J0%WNZO M[&\N=Y/+GFJ82/Z+Y5B,O*\>R>% 3QS7LOX&;3Y#RY=)KMV7U(WO,/1(=M(H MRQ9L%)1,-"N]M'6X 83].X"P!81.=Q/(J9Q2I$FL9$V4]39L=N-2=6@CC@G[ M*!M4YI89'"9O\V6ZG,S3[V2S3;>SQ6RY):OU;)6NT^W\QY(\30$IXYHLJ5+4 M5O Y]M$$MG _:X.,FR#AG2 #LI ""TUF(H?\7[QO!'>JPZOJ\LU%)DL@2"^D MHBS_7^$:@A='8 ?HG$21&:@@]L^W@?V;%RY!'5T?:Y+)D\#FL;O3;E32ID/^ MNC=S9FIW9$(3#@<##7I?AAY13>\V!LK*]HND^MRW,N(.R#N;^("5>#1N@ M^X$D?P!02P,$% @ &ULC55=;YLP%/TK%NI#*ZWA*T!;$:0U:;4\K(N2?CR[ M M0H7EB-? ],J:BPHK'8J-*VL!N+"@BKJ!Y\5NA0ESLM3.+426\JVBA,%"(+FM M*BS^W +ES<3QG8^))=F4RDRX65KC#:Q /=4+H2.W9RE(!4P2SI" ]<3Y[M], M8Y-O$YX)-')OC(R35\[?3# O)HYG! &%7!D&K%\[F *EADC+^-UQ.OV6!K@_ M_F"_M]ZUEU2;R5FA4Q=I?GW-N?H(3%/H_P'97U!+ P04 " !S:ZQ4T)Z94+$" "K M!P &0 'AL+W=O6I!;25H.PT)6-:637MI$K>Q<.)@.RU\^YV=DI76=!-O$MNY_]WOSO%Y ML.'B2>:$*/12L%(.G5RIZM)U99J3 LL.KT@)7Y9<%%C!5*Q<60F",R,JF.M[ M7NP6F);.:$C$:\%HQ6I)$(%D7!1:OUX3QS=#I.F\+,[K*E5YP1X,*K\B< MJ(UO3'X2! M"".ITAXPO-9D3!C3C@#C>>O3:4-JX>[XS?M7DSOD\H@E&7/VBV8J'SI]!V5D MB6NF9GSSC6SSB;2_E#-IGFC3V,9@G-92\6(K!H*"ELT;OVSKL"/HAA\(_*W M_U]!L!4$)M&&S*0UP0J/!H)OD-#6X$T/3&V,&K*AI=[%N1+PE8).C9+9]V0Z M6_Q&R>W5_0)=W4_0],?#37(WA=G]=(%.)T1ARN09^H(>YA-T>G*&3A MT2+G MM<1E)@>N A#MSDVW0:^;H/X'0>^PZ*"@>XY\S_2B6P.?CD&&ET -'W>GN@AS:]*+1SQBUG?)0S$=!6A7I%/_Y#*:%UIG51,ZQ(!K6%YI]24UH; M:>]P5\->O$=J,XIB.VF_)>U_HJ3GJ"36C>\?'(F+*-C#M-B$^Y3N3BO5UQBT MJA4M)6)D"2JOTX,L17,U-!/%*]-='[F"7FV&.=RF1&@#^+[D7+U-=,-N[^?1 M'U!+ P04 " !S:ZQ4X?M3 JX" ." &0 'AL+W=ODL*)A=6_*HR$K)24%3#D299YC M_OD(E&U'EFM]W9B152;U#3L:KO$*YB#?UU.N(KO-DI(<"D%8@3@L1]:#>Q\/ M-+X"_"*P%9TUTI4L&/O0P20=68XV!!02J3-@==G &"C5B92-/TU.JY74Q.[Z M*_N/JG95RP(+&#/ZFZ0R&UD#"Z6PQ"65,[9]AJ:>GLZ7,"JJ7[2ML:%23$HA M6=Z059R3HK[B7=.'#L$-3A"\AN!=2O ;@G\I(6@(0=69NI2J#S&6.!IRMD5< MHU4VO:B:6;%5^:30VSZ77#TEBB>CU[?GIQEZ&(]G[T\Q>ID\/$Y>)F^3ISFZ MCD%B0L4-^H[>YS&ZOKI!5X@4Z"UCI^$VD_,;Y'O M?D.>XWD&^O@\/8:DI;L&>GPYW=FGVZIM;>^\MG=>E<___]Z=4?%;%;]2"4ZH MO( ZUH@2O""4R$^U&R)C7"()/#?M0)TMK++IEWX3A9X_M#?=-ALPCMMB]FP& MK/B8.CNS[_1/V>ZW]WEG[ M6Z@K.0/7-A:RX\:^Y59L"1Q#LPOG/AD:![ MV+*Q 3-PS*[ZK:O^OUV9_/0-6HS8X M.D)NX-\=F#2!7/_ I=T9OOI+J6;,R:] C_CV+T#T%U!+ P04 " !S:ZQ4MFXU:K$" "W M!P &0 'AL+W=O]4,E( DX0S)& U\(;!_;AG\!;P@\!>'HV1R63)^;N9S+*!US*&@$*J MC +6KQV,@5(CI&W\K#0]%](0C\<']:\V=YW+$DL8<_I&,I4/O)Z',ECA+55S MOG^ *I^.T4LYE?:)]B4VCCR4;J7B1476#@K"RC?^J.IP1- Z]82P(H2GA/@" M(:H(D4VT=&;3FF"%D[[@>R0,6JN9@:V-9>ML"#.[N%!"?R6:IY+O+P_3.1J. MQ_/7Z00]SH:CV>/L939=H*L)*$RH1,$UND6OBPFZ^G*-OB#"T$O.MQ*S3/9] MI3T8)3^MXHW*>.&%>!%ZXDSE$DU9!ED-?]S,#\(& 5\G[RH0'BHP"AL5G["X M0U%P@\)6&-89:J9/('7TH,%.Y#8DLGK1?V_(=4.4MHO2ME':%Z(\$KPDE*C/ M&[2$-6&,L+7^'2AF*=1M:JD66S73&'9).]+%VAW7Z1P3=0.'^<-FQ]GL--K\ MIML8?.B.):'VK)7LSE'(,.B>V#K'].)VO:W8V8H;;;UA(3!3GRBEF!2USN*S MJ+?GUFI %[UUG;=NH[=AFHHMIKK#[HAIM;7NNC7N3KS50.(+N]ESUGK_>NB M97\Y<;V:$]]L0"QME>&1"G?,E6V2;?J;J6A;<;^;WAYI>E. MH7\5B2BL-+5UU]75$>4U44X4W]A.N^1*]VT[S/7-"L( ]/<5Y^HP,0'<79W\ M E!+ P04 " !S:ZQ4\_P1XG0" V!P &0 'AL+W=O+,-J7]][,=R-AB8"_$3GS.=VZ"K[,=%Z^R!%#HO6*UG'JE4LW$]^6JA(K( M 6^@UD_67%1$Z:G8^+(10 HKJIB/@R#Q*T)K+\_LO;G(,[Y5C-8P%TANJXJ( MCQDPOIMZH7>X\40WI3(W_#QKR 86H%Z:N= SOW,I: 6UI+Q& M93[S:?XM3?U.J81'H\/ M[E]L\;J8)9%PQ]E/6JARZJ4>*F!-MDP]\=U7V!<4&[\59]+^HEV[-L(>6FVE MXM5>K!-4M&ZOY'W_(HX$.#PAP'L!MKE;D$UY3Q3),\%W2)C5VLT,;*E6K%NCZ'A2A3-Z@*T1K]%SRK21U(3-?:8A9ZJ_VAK/6 M$)\P_$[$ $7A)X0#C%\6]^CZZN9O%U]'['+B+B>VMM%_YCQC&766D;4 D5N5"M*CY"C7'@1L4=*KZ$&KI0<0^5 M1HD;E72HY!(J=J&2'BI.8S=JU*%&EU")"S7JH<(H13V7H-O;6H%P M =,><)BZ>>..-S[/XXHP%VK<0T5A>.*3A<&?_1Z= +\#F*3P4X:CCAY7J1/E8$4;3>( :ZJ2)&R9(RJCZ<2<+>EL2CY-^- MXA]U07.BZ$ZTH;74@+66!8.1KD2T3;J=*-[8QKCD2K=9.RSUP0;"+-#/UYRK MP\3TVNZHS'\#4$L#!!0 ( '-KK%1@+B>Y5@( .D% 9 >&PO=V]R M:W-H965T0ZW OYJE( )&\9S]7421&+ M>]=5<0H957U10*[?;(3,*.I2;EU52*"))67<]0>#L9M1ECM1:/>6,@I%B9SE ML)1$E5E&Y?LC<+&?.IYSV'AFVQ3-AAN%!=W""O"E6$I=N8U*PC+(%1,YD;"9 M.@_>_6QD\!;PF\%>':V)2;(6XM44WY.I,S"&@$.,1H'JQPYFP+D1TC;^UII. M/>E;W8\0/!K@O]90E 3 ANT9?7*'4;YGF8;1X>E@]K4AG#D@95\3KDAYY65?1)X7X@_\/T6^NPZ?0YQ0_=.Z:Z. MV63UFZR^U0L^E[5[13)H) ,K.;P@:;_ZGMCT2@6$*@6H2&,+T-\^X8RN&6?X MWE.ID$BLZ<[/RG4>X!1$V#T7P&X;OK! M?P&2(M,U/P%=2C#ZM[]><'L6H07D3R9G&=RC0327H!Z +&ULE59= M;]HP%'WN?H65?6B3MB8. =(-D KMOK2N55&W9Y<88C6QF6W*D/;C=^V$)"N) MN[X0V_$].??8]W!'6R'O5$JI1K_SC*NQEVJ]?N_[:I'2G*ACL:8*W\_PT 38'3\8W:K& M&)E4;H6X,Y,OR=@+#".:T84V$ 0>]W1&L\P@ 8]?):A7?=,$-L=[](\V>4CF MEB@Z$]E/ENAT[,4>2NB2;#)]+;:?:9E0W^ M1*;L+]H6>Z/00XN-TB(O@X%! MSGCQ)+]+(1H!8=01$)8!X<, W!'0*P-Z-M&"F4WKC&@R&4FQ1=+L!C0SL-K8 M:,B&<7.,W#1T EX0>8QZ^"T*@S"\F9^AUR_>+/6K MYW@8?VBA-_M_-%RB.4CV*@5[%C;J@)T1E:(U80F"HD)07T8_OD(9A=N%,D9N M6<8THZI-T )Z8*%-Q=U/8MP/@F#DW[=0BBI*D9/23WMY:8+(/;!94:@W4]$U M*TUEWD;'#=M#.TJD0C'*BW/&*"$[AX3]BF__:7P3IA9BPS4"+6D;43=>_S@( M7CIX#2I> R?.Y8/#7 BE6X]Q<'",(?AHXQB+^WFX#0]QYVD/*Y9#)\MY*J1^ M9X[T,9H%3K])LX7EX:YA)\>XXA@_2S::,:':N+PD&?+MJ!;S9.*Z8F[ MG%/&B>/NX*!VUL")= I_JT@LRXS_((=S34NHINCX).K*!3?<'3LY7!"]D2 S M%&I[(3T2?[G0UC.?'1V!:T8N7<*:4^C$_ 0WE7"7;^#:>[';?)^D<>] XR@^ MZ7=(7'LM=KOB-_MITTH@POF&9."V7,-C37;0[[178HG9O+S]N//NXMI(L=OY M;C@S/CK7<-S*I7!M@=CM@4]2>-!B,-&@*ZO:X+#;X1Z_Q>[XKX0W;O&@31>_ MT4+E5*YL9ZF0_1I>3VW/]F!]:KI:VYK5,$5+#/W'BG$%2BX!,C@> M@DZRZ#*+B19KVZC="@UMGQVFT)E3:3; ^Z40>C\Q'ZAZ_&PO=V]R:W-H965TL&MBNQ'D&T=&-V)VH&5U:,6^.8<3 M0=*[($@:01)\'S8*+L>"1)9:LP/KHYGF.R'5H&9SLO(?94Z65R7K*'M>/-S/ MX.YY,GE<3.Z?%G.X&B,)J1P\"6N%/[./:4R\E1?$>8,=';#)!>P8\P[T>Y\@ MZ2:]E_D8KC[\1HG9:.LV:=TF =O_5[=_8?9;9C\P!Q>8TXW-2_ZND!NM)7'! MD0-1%6"H1 MFJ>1:^ IRYX[AP+X);'\!MAE?!_^D\?:,J4%K:O"?3 'N:ZYP M+( ,+!%J(0MNWPP'79% 9_I'#]]4P&\4F1^?LZ$78M>7^% M*Q9V.Y^O(["'.W 8D*E#W2T-<16';LF_#;0^@-=7QM!QX$NY_1%E[U!+ P04 M " !S:ZQ4?+154_(" #5" &0 'AL+W=ONJ\(84JI:(@...ULA M4ZIQ*G>NRB30R(+2Q/4]K^>FE'%G,K)K*SD9B;U.&(>5)&J?IE2^SR 1A['3 M=HX+:[:+M5EP)Z.,[F #^BE;29RY)4O$4N"*"4XD;,?.M'T['QI[:_"#P4%5 MQL1X\BS$BYG<1V/',X(@@5 ;!HJO5YA#DA@BE/&[X'3*(PVP.CZR?[.^HR_/ M5,%<)#]9I..Q,W!(!%NZ3_1:'.Z@\*=K^$*1*/LDA\+6+T9#E=/]X_?M^0U7)--G?3]9)<+4!3EJAK-@MR]>5ZY&H\ MRR#[]?H MF5\.;S?("BA3(52*4JHU[3M&S%.:. MODYNV@.\M)XWI5SLLU0Z;T_:O--7I'5ZDM];J MDUZWTB%2D#O;.!6F>\]U7H/+U;(W3VU+^K ^PYZ=M]B_-'G#QPJ[8_C9)+!% M2J_5QX3+O(GF$RTRVX>>A<:N9H - :XOQ5"'R?F@/)/9O('4$L#!!0 M ( '-KK%2A=6F** ( P% 9 >&PO=V]R:W-H965T-FG#(0GK5(5(0-G:AR($VO9LDH-8=>S,=DCW[W=V M0LJZ@OJ2^,[W???=V>>T5?K)E "6/%="FFE06EO?4FKR$BIF1JH&B3M[I2MF MT=0':FH-K/"@2M H#+_0BG$99*GWK766JL8*+F&MB6FJBND_^GHFCB]7PO@O:;O8!(/SQEA5]6!44''9_=ESWXSS9)\N /+N#!DQ;1FKLL?R6=B2J;!I-1B4@>E M>9]@WB6(+B2(R:.2MC1D*0LH_L53%#LHCDZ*Y]%5PD>F1R0>?R)1&$5OZ%F\ M'SZ^(B<>&AA[OOC=#;Q"F@RDB2=-+I#.I.6DX*)QW2>J=C?>$*M(W>B\Q%M[ MY3@ZYHEG=C-\S,;1) Q3>CQOTO]1+N@EJI--SRY6!?K@Y\V07#72=B(>1 MGOF;_,H_QU'O)O.%IGLG\#P.'(L3L$?*<'2#FG0W>YUA5>VO[TY9' :_+/&Y M NT"<'^OE#T9+L'P &9_ 5!+ P04 " !S:ZQ482C\ K " "J!P &0 M 'AL+W=OPG7EOWILX,^VM5.\Z033P MD:5"=[S$F-6=[^MY@AG3MW*%@IXLI,J8H:U:^GJED,4.E*5^6*DT_(QQX77; M[FRBNFVY-BD7.%&@UUG&U)\^IG+;\0)O?S#ER\38 [_;7K$ESM"\KB:*=G[! M$O,,A>92@,)%Q^L%=X.6C7!4K"%.<&\O Z&^# M TQ32T0R?N\XO2*E!1ZN]^P_G'?R\L8T#F3ZB\D(^KW9: B# MY_%D]#3KO3P^/\'E$ WCJ;Z"&WB=#>'RX@HN@ MX2>1:,Q'KMF](@*7QY[MD M_3Q9^$6R*HRE,(F&D8@Q_HSW27BA/MRK[X>EA&.F;J$:7$-8"<,S>@;_#P]* MY%2+8E8=7^VK8B9,X8V]53',949?FF;VLIZK5,[4<$SV4]MTPQ9IV!RJ/Q,3 M-8N83Q)KA<1:J<2!U ;D NZEC#7,9%KV&NH%:?W;?.=,]0-/0?W(]IF0RGG7 MC4)@HU3@%#4R-4^ [BT,<4/-:T6MR)1XCPKJZ-N\1R?&&K4C[Z>[,0 MV"P72"V2B^4UW*- Q5)7@UY,O81KHYCMHB5E:!596M]6AM;IM0["HSJ&PO=V]R:W-H965TCAVH%)L&)L:D_"]NUK M&X*HM(EZ@SWV?#_S#S9)H_3)E !(WBHAS2PH$>M'2DU>0L7,2-4@[>J8OK/ H1J9D$47!=V M_%BB6Z!I4K,C9( _ZJVV$>U5"EZ!-%Q)HN$P"^;1XW+L\GW"3PZ-&4L^!J0 @[L+'"GFB?H_$R=7JZ$\4_2M+F3AX#D9X.JZF!;0<5E.[*WK@\# M()K< .(.B/\7&'> [QQM*_.V5@Q9FFC5$.VRK9J;^-YXVKKATGW%#+7=Y9;# M-'N:[]9D,<_6*[+;=R[C;W>Y(;>#@QJGB,4 M)$.5G\B\8;JX(SSNA<=WA3=G-,ADP>7Q3J]:C:G7<-?KDL;3:)K0R[ C[R2% M8=@GM>71P1=WM\WV^&PO M=V]R:W-H965TKWK6# NHRSU9PN=I:JF MDDM<:#"U$$SOIUBJ9ASUH\/!DF\+<@=QEE9LBRNDEVJAK1=W+#D7* U7$C1N MQM&D?SL=N7@?\)-C8XYL<)6\*O7FG(=\'/6<("QQ38Z!V<\.[[ L'9&5\=YR M1EU*!SRV#^S??>VVEE=F\$Z5OWA.Q3BZB2#'#:M+6JKF'MMZO,"U*HW_A2;$ M7B<1K&M#2K1@JT!P&;[LH^W#$2 9?@)(6D#B=8=$7N6,$MZS3P)I\PCJ 1R6I,#"7.>;_XF.KL).9'&1.D[.$CTQ?P:#_%9)> MDKRL9G#QY?(,[:"K?N!I!^>J_[_X,\S#CGGHF8>?,+]()I0F_AMSV-14:P1\ MKSGM8:V$W2C#_%#BA[,1+K@$*E1MF,S-R8:'=-<^G=NT769;T4_CW0F1HT[D MZ*S();JUY7(+C9]>JY7M4-MEA%9]4%FAYBKW(O?(]&F!YU,E 0DC$&$R;B!G M>W.JT_'1- O46[^SQO:MEA0&NSOMGH5)V(:_X>%-L6.SY=) B1L+[5U]LR)U MV-/@D*K\;KPJLIOFS<(^;:A=@+W?*$4'QR7H'LOL#U!+ P04 " !S:ZQ4 M-5 DS@4" #D5"JY]!)[ M['EOWG,\CANESZ8$0/)6"6GF08E8/U)J\A(J9D:J!FEWCDI7#&VH3]34&ECA M096@41A^IA7C,DABO[;32:PN*+B$G2;F4E5,OR] J&8>C(/KPIZ?2G0+-(EK M=H(,\'N]TS:B/4O!*Y"&*TDT'.=!.GYD66+YO= M>INEWYY?MN3#"I!Q8&J5]G*CJ]Q%-$BX87I$)N-/) JC:(!OTMN?>+[I';Y7, @%>0>F_^5N&#SU M.#,@8]K+F XR[:T,S7,G)4.5GTG:,#UT7K.>>/8__H;! _[HS8VK0)]\7QF2 MJXO$]O+UJWWKINV-_9/>]KW]I2E\!JX OV#EOP&4$L#!!0 ( '-KK%2]O@E*_P( (D/ - M >&PO<'J]IE1[7<5% MD_IKK>L/0="LUK0BS9FLJ3!((55%M)FJ,FAJ14G>@%/%@^ED$@<58<)?S$5; M75:Z\5:R%3KUIZ/)L[?/>>J'\3O?LW29S&GJWYZ^_M%*??'*L_>3MR,+[9U$9AJ<@FG)[[.X?^9H(LIN][<<#=%7N[ M.H$]%>/0"!J&EL9.@'^?S7+OT1>O5[$[J3ZW)1O1SZ!5ZI6C!NG[>%6-\ MC#W$V4E=\\U'SDI149O[DP,NYF3KYZVE8O"_G@=3Q:/3CV4O\;'+%\%]1;MHQK)H;9FN4Y%0_>RH9>DZ7Y M/^. WZS/:4%:KF]&,/5WXZ\T9VV5C*NNH!##JMWX"Z07QN.9:V(QD=..YMDP M5>6R'WIF8*(.%S@<(Y?]Y48P'XNY$<"P.)@"S,=Z87'^IWQF:#X6P[3-G,@, M]9FA/M;+A63]!XOC]DG,Y2N'<;BP,>V"Y@O0/QW7&@I]P^ M402[BFG#GF <21(,@5YT]V@<(]6)X>/>'^PIB:(D<2. N15$$8; TX@CF +0 M@"%1U)^#1^=1L#VG@MV/[\4O4$L#!!0 ( '-KK%27BKL

M-8?20$3;8T.P6BP^0"X99K>]9!:GS._!FIMI-Q># 9UOJ$EJ;_R+:W4R)J+DDC5%$^#>BLH6=4;2F59#/!P M.!F4A%76U>5N7[$8Z TN:2X9KU1GT_' Z%O]=[QIHE=6LR4KF/PUM=K?!;50 MR2I6LG>ZFEI#"]4;_C;G@KWS2I(BS04OBJEE=P,/5$B6?^I.&\B,+.NV1Y)E M0A3(U)H,U0[73-2R_4>[?Z(87ZGZ<]=ZD?R&%9**&9'T5O"7+:N>FMVHLQAH MI]'68;?MBG@A_J>,?+UF.9WQ_*6DE>SJ*&C1 %;UAFUK"U6DI%/+XZ]4-.>C M#A"LNG.3"DJKE+A@:D $JQ;/($H4IM$BF+F9/T/7[L(-/1^E<]_/4@T0 X#X M:( GZ$NL03H I'- R#13FSL_S%(4W: H]A,-<@1 CHX&Z45W>B7' .3X&) - M8YI%WC<-<@) 3HX%Z;GI'&F0IP#DJ5G(FR!4]TK@+C3"./%C-W&S( HUR#, M\LPL9! ^**XH"7P];LX!H'.S0''2W+#9#Q2KI,F0&\Z0__T^B-ORA;X>VD,H MM8=F,:-L[B?(];SD7DW!1>!>!XL@ZU?1!K5BV"L+WTW[-)!#;,,2Z."1D%&S8*G#@C'1/2"S:L%QASK&-"FL&&-=,+QAF5A!7]&0G)!1N6 M"YR,NEPP)!=L6"Y ,C85U3$ASV##G@$Q>YYQ(,\XACVS"_ ]D]&!Q.(<2"Q_ MN)#=(X/RD A!FM>5/4+PE99AM7Q:,_5A=4Q(+<[!%RO[IR'D%<>P M5P#&II8Z)N05Q[!7.K)]3Q,MK(X)&<8Q;!@0LY^)D&$A.D2M^G-2Y+% S:9[%S0:-\NW]4M1>*HO MJA:M@GT5M1;"?16U%L)]%;46PGT5M1; M"?16U%L)]%;46PGT5M1;"?0VU-L(]#;4VPCT-M3;"/2VEX\E!'H;ZFT$>AOJ M;01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'H7J'?Q3KU#O-0^/'KN:[S_.ZF.UVO] MX_:WY7T3GQ?%#6<'_P^6OU!+ P04 " !S:ZQ4F,0A):(! "F& $P M %M#;VYT96YT7U1Y<&5S72YX;6S-F/##F MTH)JY1)MJ D[N;:U\N'6+IE1Z4HMB8G1:,)2W7AJ_-"W&O%\^D2Y6E<^>MZ& MQZ[4S2RV5+DX>MP7MEZS6!E3E:GR89]MFNR;R_#@D(3.KL85I7!"SLP[M MSL\&A[[7#5E;9A0ME/4OJ@Y5;%LQYW<5N:1?XDQ&G>=E2IE.UW5H29RQI#)7 M$/FZ2O:B@WYG'TZ8]E=^M7\GTV<8*A=6&Q&PO=&AE;64O=&AE;64Q+GAM;%!+ M 0(4 Q0 ( '-KK%1S:)#4(P4 ,@5 8 " @0T( !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ &PO=V]R:W-H965T&UL4$L! A0#% @ M&PO=V]R M:W-H965T&UL4$L! A0#% @ &UL4$L! A0#% @ &PO=V]R:W-H965T&UL4$L! A0#% @ &PO=V]R M:W-H965T== 0 ,4* M 9 " @0Y1 !X;"]W;W)K&UL M4$L! A0#% @ C(#0 L2, !D ("!N54 M 'AL+W=O M.9(" !4!0 &0 @(&X8P >&PO=V]R:W-H965T&UL4$L! A0#% @ M&PO=V]R:W-H965T%N !X;"]W M;W)K&UL4$L! A0#% @ Q@# "0!P &0 @($/ M=0 >&PO=V]R:W-H965T&UL4$L! A0#% @ &PO=V]R:W-H M965T&UL4$L! M A0#% @ &PO=V]R:W-H965T&UL4$L! A0#% @ &PO=V]R:W-H965T&UL4$L! A0#% @ &PO=V]R:W-H965T&UL4$L! A0#% @ &PO=V]R:W-H965T M&UL4$L! A0# M% @ 6QE&PO=V]R:V)O;VLN>&UL4$L! A0#% M @ XML 53 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 54 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 55 FilingSummary.xml IDEA: XBRL DOCUMENT 3.22.1 html 50 178 1 false 15 0 false 5 false false R1.htm 000001 - Document - Cover Sheet http://dataio.com/role/Cover Cover Cover 1 false false R2.htm 000002 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://dataio.com/role/ConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 000003 - Statement - CONSOLIDATED BALANCE SHEETS) (Parenthetical) Sheet http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS) (Parenthetical) Statements 3 false false R4.htm 000004 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) Sheet http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) Statements 4 false false R5.htm 000005 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED) Sheet http://dataio.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossUnaudited CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED) Statements 5 false false R6.htm 000006 - Statement - CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED) Sheet http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED) Statements 6 false false R7.htm 000007 - Statement - CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED) Sheet http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED) Statements 7 false false R8.htm 000008 - Disclosure - FINANCIAL STATEMENT PREPARATION Sheet http://dataio.com/role/FinancialStatementPreparation FINANCIAL STATEMENT PREPARATION Notes 8 false false R9.htm 000009 - Disclosure - INVENTORIES Sheet http://dataio.com/role/INVENTORIES INVENTORIES Notes 9 false false R10.htm 000010 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET Sheet http://dataio.com/role/PropertyPlantAndEquipmentNet PROPERTY PLANT AND EQUIPMENT NET Notes 10 false false R11.htm 000011 - Disclosure - OTHER ACCRUED LIABILITIES Sheet http://dataio.com/role/OtherAccruedLiabilities OTHER ACCRUED LIABILITIES Notes 11 false false R12.htm 000012 - Disclosure - LEASES Sheet http://dataio.com/role/LEASES LEASES Notes 12 false false R13.htm 000013 - Disclosure - OTHER COMMITMENTS Sheet http://dataio.com/role/OtherCommitments OTHER COMMITMENTS Notes 13 false false R14.htm 000014 - Disclosure - CONTINGENCIES Sheet http://dataio.com/role/CONTINGENCIES CONTINGENCIES Notes 14 false false R15.htm 000015 - Disclosure - EARNINGS PER SHARE Sheet http://dataio.com/role/EarningsPerShare EARNINGS PER SHARE Notes 15 false false R16.htm 000016 - Disclosure - SHAREBASED COMPENSATION Sheet http://dataio.com/role/SharebasedCompensation SHAREBASED COMPENSATION Notes 16 false false R17.htm 000017 - Disclosure - FINANCIAL STATEMENT PREPARATION (Policies) Sheet http://dataio.com/role/FinancialStatementPreparationPolicies FINANCIAL STATEMENT PREPARATION (Policies) Policies 17 false false R18.htm 000018 - Disclosure - FINANCIAL STATEMENT PREPARATION (Tables) Sheet http://dataio.com/role/FinancialStatementPreparationTables FINANCIAL STATEMENT PREPARATION (Tables) Tables http://dataio.com/role/FinancialStatementPreparation 18 false false R19.htm 000019 - Disclosure - INVENTORIES (Tables) Sheet http://dataio.com/role/InventoriesTables INVENTORIES (Tables) Tables http://dataio.com/role/INVENTORIES 19 false false R20.htm 000020 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET (Tables) Sheet http://dataio.com/role/PropertyPlantAndEquipmentNetTables PROPERTY PLANT AND EQUIPMENT NET (Tables) Tables http://dataio.com/role/PropertyPlantAndEquipmentNet 20 false false R21.htm 000021 - Disclosure - OTHER ACCRUED LIABILITIES (Tables) Sheet http://dataio.com/role/OtherAccruedLiabilitiesTables OTHER ACCRUED LIABILITIES (Tables) Tables http://dataio.com/role/OtherAccruedLiabilities 21 false false R22.htm 000022 - Disclosure - LEASES (Tables) Sheet http://dataio.com/role/LeasesTables LEASES (Tables) Tables http://dataio.com/role/LEASES 22 false false R23.htm 000023 - Disclosure - EARNINGS PER SHARE (Tables) Sheet http://dataio.com/role/EarningsPerShareTables EARNINGS PER SHARE (Tables) Tables http://dataio.com/role/EarningsPerShare 23 false false R24.htm 000024 - Disclosure - SHAREBASED COMPENSATION (Tables) Sheet http://dataio.com/role/SharebasedCompensationTables SHAREBASED COMPENSATION (Tables) Tables http://dataio.com/role/SharebasedCompensation 24 false false R25.htm 000025 - Disclosure - FINANCIAL STATEMENT PREPARATION (Details) Sheet http://dataio.com/role/FinancialStatementPreparationDetails FINANCIAL STATEMENT PREPARATION (Details) Details http://dataio.com/role/FinancialStatementPreparationTables 25 false false R26.htm 000026 - Disclosure - FINANCIAL STATEMENT PREPARATION (Details Narrative) Sheet http://dataio.com/role/FinancialStatementPreparationDetailsNarrative FINANCIAL STATEMENT PREPARATION (Details Narrative) Details http://dataio.com/role/FinancialStatementPreparationTables 26 false false R27.htm 000027 - Disclosure - INVENTORIES (Details) Sheet http://dataio.com/role/InventoriesDetails INVENTORIES (Details) Details http://dataio.com/role/InventoriesTables 27 false false R28.htm 000028 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET (Details) Sheet http://dataio.com/role/PropertyPlantAndEquipmentNetDetails PROPERTY PLANT AND EQUIPMENT NET (Details) Details http://dataio.com/role/PropertyPlantAndEquipmentNetTables 28 false false R29.htm 000029 - Disclosure - OTHER ACCRUED LIABILITIES (Details) Sheet http://dataio.com/role/OtherAccruedLiabilitiesDetails OTHER ACCRUED LIABILITIES (Details) Details http://dataio.com/role/OtherAccruedLiabilitiesTables 29 false false R30.htm 000030 - Disclosure - OTHER ACCRUED LIABILITIES (Details 1) Sheet http://dataio.com/role/OtherAccruedLiabilitiesDetails1 OTHER ACCRUED LIABILITIES (Details 1) Details http://dataio.com/role/OtherAccruedLiabilitiesTables 30 false false R31.htm 000031 - Disclosure - LEASES (Details) Sheet http://dataio.com/role/LeasesDetails LEASES (Details) Details http://dataio.com/role/LeasesTables 31 false false R32.htm 000032 - Disclosure - LEASES (Details 1) Sheet http://dataio.com/role/LeasesDetails1 LEASES (Details 1) Details http://dataio.com/role/LeasesTables 32 false false R33.htm 000033 - Disclosure - LEASES (Details Narrative) Sheet http://dataio.com/role/LeasesDetailsNarrative LEASES (Details Narrative) Details http://dataio.com/role/LeasesTables 33 false false R34.htm 000034 - Disclosure - OTHER COMMITMENTS (Details Narrative) Sheet http://dataio.com/role/OtherCommitmentsDetailsNarrative OTHER COMMITMENTS (Details Narrative) Details http://dataio.com/role/OtherCommitments 34 false false R35.htm 000035 - Disclosure - EARNINGS PER SHARE (Details) Sheet http://dataio.com/role/EarningsPerShareDetails EARNINGS PER SHARE (Details) Details http://dataio.com/role/EarningsPerShareTables 35 false false R36.htm 000036 - Disclosure - EARNINGS PER SHARE (Details Narrative) Sheet http://dataio.com/role/EarningsPerShareDetailsNarrative EARNINGS PER SHARE (Details Narrative) Details http://dataio.com/role/EarningsPerShareTables 36 false false R37.htm 000037 - Disclosure - SHARE BASED COMPENSATION (Details) Sheet http://dataio.com/role/ShareBasedCompensationDetails SHARE BASED COMPENSATION (Details) Details 37 false false R38.htm 000038 - Disclosure - SHARE BASED COMPENSATION (Details 2) Sheet http://dataio.com/role/ShareBasedCompensationDetails2 SHARE BASED COMPENSATION (Details 2) Details 38 false false R39.htm 000039 - Disclosure - SHARE BASED COMPENSATION (Details 3) Sheet http://dataio.com/role/ShareBasedCompensationDetails3 SHARE BASED COMPENSATION (Details 3) Details 39 false false R40.htm 000040 - Disclosure - SHARE BASED COMPENSATION (Details Narrative) Sheet http://dataio.com/role/ShareBasedCompensationDetailsNarrative SHARE BASED COMPENSATION (Details Narrative) Details 40 false false All Reports Book All Reports daio_10q.htm daio-20220331.xsd daio-20220331_cal.xml daio-20220331_def.xml daio-20220331_lab.xml daio-20220331_pre.xml daio_ex311.htm daio_ex312.htm daio_ex321.htm daio_ex322.htm http://fasb.org/us-gaap/2021-01-31 http://xbrl.sec.gov/dei/2021q4 true true JSON 58 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "daio_10q.htm": { "axisCustom": 0, "axisStandard": 7, "contextCount": 50, "dts": { "calculationLink": { "local": [ "daio-20220331_cal.xml" ] }, "definitionLink": { "local": [ "daio-20220331_def.xml" ] }, "inline": { "local": [ "daio_10q.htm" ] }, "labelLink": { "local": [ "daio-20220331_lab.xml" ] }, "presentationLink": { "local": [ "daio-20220331_pre.xml" ] }, "schema": { "local": [ "daio-20220331.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://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd", "https://xbrl.sec.gov/country/2021/country-2021.xsd", "https://xbrl.sec.gov/currency/2021/currency-2021.xsd", "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd", "https://xbrl.sec.gov/exch/2021/exch-2021.xsd", "https://xbrl.sec.gov/naics/2021/naics-2021.xsd", "https://xbrl.sec.gov/sic/2021/sic-2021.xsd", "https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd" ] } }, "elementCount": 245, "entityCount": 1, "hidden": { "http://dataio.com/20220331": 2, "http://fasb.org/us-gaap/2021-01-31": 7, "http://xbrl.sec.gov/dei/2021q4": 5, "total": 14 }, "keyCustom": 15, "keyStandard": 163, "memberCustom": 7, "memberStandard": 8, "nsprefix": "daio", "nsuri": "http://dataio.com/20220331", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "strong", "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "dei:EntityRegistrantName", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "000001 - Document - Cover", "role": "http://dataio.com/role/Cover", "shortName": "Cover", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "strong", "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "dei:EntityRegistrantName", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000010 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET", "role": "http://dataio.com/role/PropertyPlantAndEquipmentNet", "shortName": "PROPERTY PLANT AND EQUIPMENT NET", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000011 - Disclosure - OTHER ACCRUED LIABILITIES", "role": "http://dataio.com/role/OtherAccruedLiabilities", "shortName": "OTHER ACCRUED LIABILITIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeasesOfLesseeDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000012 - Disclosure - LEASES", "role": "http://dataio.com/role/LEASES", "shortName": "LEASES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeasesOfLesseeDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "daio:OtherCommitments", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000013 - Disclosure - OTHER COMMITMENTS", "role": "http://dataio.com/role/OtherCommitments", "shortName": "OTHER COMMITMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "daio:OtherCommitments", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000014 - Disclosure - CONTINGENCIES", "role": "http://dataio.com/role/CONTINGENCIES", "shortName": "CONTINGENCIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000015 - Disclosure - EARNINGS PER SHARE", "role": "http://dataio.com/role/EarningsPerShare", "shortName": "EARNINGS PER SHARE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000016 - Disclosure - SHAREBASED COMPENSATION", "role": "http://dataio.com/role/SharebasedCompensation", "shortName": "SHAREBASED COMPENSATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueRecognitionPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000017 - Disclosure - FINANCIAL STATEMENT PREPARATION (Policies)", "role": "http://dataio.com/role/FinancialStatementPreparationPolicies", "shortName": "FINANCIAL STATEMENT PREPARATION (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueRecognitionPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000018 - Disclosure - FINANCIAL STATEMENT PREPARATION (Tables)", "role": "http://dataio.com/role/FinancialStatementPreparationTables", "shortName": "FINANCIAL STATEMENT PREPARATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000019 - Disclosure - INVENTORIES (Tables)", "role": "http://dataio.com/role/InventoriesTables", "shortName": "INVENTORIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000002 - Statement - CONSOLIDATED BALANCE SHEETS", "role": "http://dataio.com/role/ConsolidatedBalanceSheets", "shortName": "CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "lang": null, "name": "daio:TradeAccountsReceivableNetOfAllowanceForDoubtfulAccounts", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000020 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET (Tables)", "role": "http://dataio.com/role/PropertyPlantAndEquipmentNetTables", "shortName": "PROPERTY PLANT AND EQUIPMENT NET (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000021 - Disclosure - OTHER ACCRUED LIABILITIES (Tables)", "role": "http://dataio.com/role/OtherAccruedLiabilitiesTables", "shortName": "OTHER ACCRUED LIABILITIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "us-gaap:LeasesOfLesseeDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000022 - Disclosure - LEASES (Tables)", "role": "http://dataio.com/role/LeasesTables", "shortName": "LEASES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:LeasesOfLesseeDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000023 - Disclosure - EARNINGS PER SHARE (Tables)", "role": "http://dataio.com/role/EarningsPerShareTables", "shortName": "EARNINGS PER SHARE (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000024 - Disclosure - SHAREBASED COMPENSATION (Tables)", "role": "http://dataio.com/role/SharebasedCompensationTables", "shortName": "SHAREBASED COMPENSATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000025 - Disclosure - FINANCIAL STATEMENT PREPARATION (Details)", "role": "http://dataio.com/role/FinancialStatementPreparationDetails", "shortName": "FINANCIAL STATEMENT PREPARATION (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "INF", "lang": null, "name": "daio:RevenueChangeInPercentage", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31_country_US", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:IncomeTaxesPaid", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000026 - Disclosure - FINANCIAL STATEMENT PREPARATION (Details Narrative)", "role": "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative", "shortName": "FINANCIAL STATEMENT PREPARATION (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31_country_US", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:IncomeTaxesPaid", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000027 - Disclosure - INVENTORIES (Details)", "role": "http://dataio.com/role/InventoriesDetails", "shortName": "INVENTORIES (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BuildingsAndImprovementsGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000028 - Disclosure - PROPERTY PLANT AND EQUIPMENT NET (Details)", "role": "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails", "shortName": "PROPERTY PLANT AND EQUIPMENT NET (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BuildingsAndImprovementsGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "daio:SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseLiabilityCurrent", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000029 - Disclosure - OTHER ACCRUED LIABILITIES (Details)", "role": "http://dataio.com/role/OtherAccruedLiabilitiesDetails", "shortName": "OTHER ACCRUED LIABILITIES (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "lang": null, "name": "us-gaap:ValuationAllowancesAndReservesBalance", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "daio:TradeAccountsReceivableNetOfAllowance", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000003 - Statement - CONSOLIDATED BALANCE SHEETS) (Parenthetical)", "role": "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical", "shortName": "CONSOLIDATED BALANCE SHEETS) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "daio:TradeAccountsReceivableNetOfAllowance", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2021-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProductWarrantyAccrual", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000030 - Disclosure - OTHER ACCRUED LIABILITIES (Details 1)", "role": "http://dataio.com/role/OtherAccruedLiabilitiesDetails1", "shortName": "OTHER ACCRUED LIABILITIES (Details 1)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "lang": null, "name": "us-gaap:ProductWarrantyAccrualPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock", "us-gaap:LeasesOfLesseeDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000031 - Disclosure - LEASES (Details)", "role": "http://dataio.com/role/LeasesDetails", "shortName": "LEASES (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock", "us-gaap:LeasesOfLesseeDisclosureTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "daio:SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000032 - Disclosure - LEASES (Details 1)", "role": "http://dataio.com/role/LeasesDetails1", "shortName": "LEASES (Details 1)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "daio:SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "daio:WeightedAverageRemainingLeaseTerm", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000033 - Disclosure - LEASES (Details Narrative)", "role": "http://dataio.com/role/LeasesDetailsNarrative", "shortName": "LEASES (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "daio:WeightedAverageRemainingLeaseTerm", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "p", "daio:OtherCommitments", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2021-12-31", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:PurchaseObligation", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000034 - Disclosure - OTHER COMMITMENTS (Details Narrative)", "role": "http://dataio.com/role/OtherCommitmentsDetailsNarrative", "shortName": "OTHER COMMITMENTS (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "daio:OtherCommitments", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2021-12-31", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:PurchaseObligation", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000035 - Disclosure - EARNINGS PER SHARE (Details)", "role": "http://dataio.com/role/EarningsPerShareDetails", "shortName": "EARNINGS PER SHARE (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "0", "lang": null, "name": "us-gaap:WeightedAverageNumberOfSharesIssuedBasic", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000036 - Disclosure - EARNINGS PER SHARE (Details Narrative)", "role": "http://dataio.com/role/EarningsPerShareDetailsNarrative", "shortName": "EARNINGS PER SHARE (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000037 - Disclosure - SHARE BASED COMPENSATION (Details)", "role": "http://dataio.com/role/ShareBasedCompensationDetails", "shortName": "SHARE BASED COMPENSATION (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31_us-gaap_CostOfSalesMember", "decimals": "-3", "lang": null, "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31_daio_RestrictedStockAwardMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000038 - Disclosure - SHARE BASED COMPENSATION (Details 2)", "role": "http://dataio.com/role/ShareBasedCompensationDetails2", "shortName": "SHARE BASED COMPENSATION (Details 2)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31_daio_RestrictedStockAwardMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000039 - Disclosure - SHARE BASED COMPENSATION (Details 3)", "role": "http://dataio.com/role/ShareBasedCompensationDetails3", "shortName": "SHARE BASED COMPENSATION (Details 3)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2022-03-31", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000004 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)", "role": "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited", "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "lang": null, "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R40": { "firstAnchor": null, "groupType": "disclosure", "isDefault": "false", "longName": "000040 - Disclosure - SHARE BASED COMPENSATION (Details Narrative)", "role": "http://dataio.com/role/ShareBasedCompensationDetailsNarrative", "shortName": "SHARE BASED COMPENSATION (Details Narrative)", "subGroupType": "details", "uniqueAnchor": null }, "R5": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000005 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED)", "role": "http://dataio.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossUnaudited", "shortName": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2020-12-31_us-gaap_CommonStockMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:SharesIssued", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000006 - Statement - CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED)", "role": "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited", "shortName": "CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "AsOf2020-12-31_us-gaap_CommonStockMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:SharesIssued", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "daio:NetIncomeLossloss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000007 - Statement - CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED)", "role": "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited", "shortName": "CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": "-3", "first": true, "lang": null, "name": "daio:NetIncomeLossloss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000008 - Disclosure - FINANCIAL STATEMENT PREPARATION", "role": "http://dataio.com/role/FinancialStatementPreparation", "shortName": "FINANCIAL STATEMENT PREPARATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000009 - Disclosure - INVENTORIES", "role": "http://dataio.com/role/INVENTORIES", "shortName": "INVENTORIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "daio_10q.htm", "contextRef": "From2022-01-01to2022-03-31", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 15, "tag": { "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2021", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative" ], "xbrltype": "domainItemType" }, "daio_AdapterSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adapter" } } }, "localname": "AdapterSalesMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "domainItemType" }, "daio_CashPaidDuringThePeriodAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Paid During The Period For:" } } }, "localname": "CashPaidDuringThePeriodAbstract", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "daio_ChinasMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "China" } } }, "localname": "ChinasMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "domainItemType" }, "daio_CommonStockAtStatedValueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Common Stock, At Stated Value -" } } }, "localname": "CommonStockAtStatedValueAbstract", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "daio_CurrentAssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "[Current Assets:]", "verboseLabel": "Current Assets:" } } }, "localname": "CurrentAssetsAbstract", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "stringItemType" }, "daio_EmployeeStockOptionsAndAwards": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "label": "Employee stock options and awards" } } }, "localname": "EmployeeStockOptionsAndAwards", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/EarningsPerShareDetails" ], "xbrltype": "monetaryItemType" }, "daio_EquipmentTransferredToCostOfGoodsSold": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Equipment Transferred To Cost Of Goods Sold.", "label": "Equipment Transferred To Cost Of Goods Sold" } } }, "localname": "EquipmentTransferredToCostOfGoodsSold", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "daio_GermanysMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Germany" } } }, "localname": "GermanysMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "domainItemType" }, "daio_NetIncomeLossloss": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "label": "[Net Income (loss)]", "negatedLabel": "Net Income (loss)" } } }, "localname": "NetIncomeLossloss", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "daio_NetProceedsFromIssuanceOfCommonStockLessPaymentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Proceeds From Issuance Of Common Stock, Less Payments" } } }, "localname": "NetProceedsFromIssuanceOfCommonStockLessPaymentsAbstract", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "daio_OperatingLeaseLiabilities": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "label": "Operating lease liability" } } }, "localname": "OperatingLeaseLiabilities", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "daio_OperatingLeaseLiabilitiesNon": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 21.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "label": "Operating Lease Liabilities" } } }, "localname": "OperatingLeaseLiabilitiesNon", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "daio_OtherCommitments": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Custom Element.", "label": "Note 6 - Other Commitments" } } }, "localname": "OtherCommitments", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/OtherCommitments" ], "xbrltype": "textBlockItemType" }, "daio_OtherTaxesPayable": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "label": "Other taxes" } } }, "localname": "OtherTaxesPayable", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "daio_PreferredStockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Preferred Stock -" } } }, "localname": "PreferredStockAbstract", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "daio_RestrictedStockAwardMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Restricted Stock Award" } } }, "localname": "RestrictedStockAwardMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails2", "http://dataio.com/role/ShareBasedCompensationDetailsNarrative" ], "xbrltype": "domainItemType" }, "daio_RevenueChangeInPercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenue change in percentage" } } }, "localname": "RevenueChangeInPercentage", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "percentItemType" }, "daio_SalesDemonstrationEquipment": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "label": "Sales demonstration equipment" } } }, "localname": "SalesDemonstrationEquipment", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails" ], "xbrltype": "monetaryItemType" }, "daio_SoftwareAndMaintenanceMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Equipment [Member]" } } }, "localname": "SoftwareAndMaintenanceMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "domainItemType" }, "daio_SoftwareAndMaintenanceSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Software and Maintenance" } } }, "localname": "SoftwareAndMaintenanceSalesMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "domainItemType" }, "daio_Stockawardsissuednetoftaxwithholding": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "label": "Stock Awards Issued, Net Of Tax Withholding" } } }, "localname": "Stockawardsissuednetoftaxwithholding", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "monetaryItemType" }, "daio_SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Balance Sheet Information Related To Leases" } } }, "localname": "SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "daio_TradeAccountsReceivableNetOfAllowance": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Trade Accounts Receivable, Net Of Allowance" } } }, "localname": "TradeAccountsReceivableNetOfAllowance", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "monetaryItemType" }, "daio_TradeAccountsReceivableNetOfAllowanceForDoubtfulAccounts": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "label": "Trade Accounts Receivable, Net Of Allowance For Doubtful Accounts Of $73 And $89, Respectively" } } }, "localname": "TradeAccountsReceivableNetOfAllowanceForDoubtfulAccounts", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "daio_UnitedStatesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "[United States]", "verboseLabel": "United States" } } }, "localname": "UnitedStatesMember", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "domainItemType" }, "daio_VestedYear": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Vested year" } } }, "localname": "VestedYear", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetailsNarrative" ], "xbrltype": "durationItemType" }, "daio_WeightedAverageRemainingLeaseTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted average remaining lease term" } } }, "localname": "WeightedAverageRemainingLeaseTerm", "nsuri": "http://dataio.com/20220331", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "durationItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r307" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r308" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address Address Line 1" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine2": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 2 such as Street or Suite number", "label": "Entity Address Address Line 2" } } }, "localname": "EntityAddressAddressLine2", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address City Or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address State Or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation State Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r310" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r305" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r304" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Security 12b Title" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r306" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://dataio.com/role/Cover" ], "xbrltype": "tradingSymbolItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r135", "r179", "r180", "r254", "r280", "r281" ], "lang": { "en-us": { "role": { "label": "Product Or Service Axis" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r135", "r179", "r180", "r254", "r280", "r281" ], "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r136", "r137", "r179", "r181", "r282", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302" ], "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative", "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r136", "r137", "r179", "r181", "r282", "r289", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative", "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "FINANCIAL STATEMENT PREPARATION (Details)" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r36" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.", "label": "Note 4 - Other Accrued Liabilities" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r35", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 13.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedIncomeTaxes": { "auth_ref": [ "r14", "r15", "r202", "r257", "r268" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 9.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due. This amount is the total of current and noncurrent accrued income taxes.", "label": "Income Taxes Payable" } } }, "localname": "AccruedIncomeTaxes", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesAndOtherLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OTHER ACCRUED LIABILITIES (Details)" } } }, "localname": "AccruedLiabilitiesAndOtherLiabilitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent": { "auth_ref": [ "r259", "r274" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities.", "label": "[Accrued Liabilities]", "verboseLabel": "Other accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrentAndNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrentAndNoncurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OTHER ACCRUED LIABILITIES" } } }, "localname": "AccruedLiabilitiesCurrentAndNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r33", "r146" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Less accumulated depreciation" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r20", "r47", "r49", "r50", "r269", "r287", "r288" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 14.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r46", "r50", "r56", "r57", "r58", "r88", "r89", "r90", "r218", "r283", "r284", "r311" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "Accumulated other comprehensive Income (Loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "domainItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r111" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Anti dilutive options to purchase shares" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/EarningsPerShareDetailsNarrative" ], "xbrltype": "sharesItemType" }, "us-gaap_AreaOfLand": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area of land held.", "label": "Area of lease" } } }, "localname": "AreaOfLand", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "areaItemType" }, "us-gaap_Assets": { "auth_ref": [ "r84", "r125", "r128", "r133", "r140", "r162", "r163", "r164", "r165", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r214", "r219", "r227", "r250", "r252", "r256", "r267" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "[Assets]", "totalLabel": "Total Assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r5", "r6", "r44", "r84", "r140", "r162", "r163", "r164", "r165", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r214", "r219", "r227", "r250", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 8.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "[Assets, Current]", "totalLabel": "Total Current Assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current Assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_BuildingsAndImprovementsGross": { "auth_ref": [ "r7", "r145" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.", "label": "Leasehold improvements" } } }, "localname": "BuildingsAndImprovementsGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r3", "r31", "r79" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash And Cash Equivalents", "periodEndLabel": "Cash And Cash Equivalents At End Of Period", "periodStartLabel": "Cash And Cash Equivalents At Beginning Of Period" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets", "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "auth_ref": [ "r72", "r232" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "[Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect]", "totalLabel": "Increase (decrease) In Cash And Cash Equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowOperatingActivitiesLessorAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Flows From Operating Activities" } } }, "localname": "CashFlowOperatingActivitiesLessorAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_ClassOfStockDomain": { "auth_ref": [ "r83", "r84", "r104", "r105", "r106", "r108", "r110", "r118", "r119", "r120", "r140", "r162", "r166", "r167", "r168", "r171", "r172", "r173", "r174", "r175", "r176", "r227", "r309" ], "lang": { "en-us": { "role": { "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock." } } }, "localname": "ClassOfStockDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical", "http://dataio.com/role/ShareBasedCompensationDetails2", "http://dataio.com/role/ShareBasedCompensationDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_CollateralAxis": { "auth_ref": [ "r142" ], "lang": { "en-us": { "role": { "documentation": "Information by category of collateral or no collateral, from lender's perspective.", "label": "Collateral Held [Axis]" } } }, "localname": "CollateralAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CollateralDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Category of collateral or no collateral, from lender's perspective." } } }, "localname": "CollateralDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r40", "r154", "r260", "r273" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 19.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OTHER COMMITMENTS" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r151", "r152", "r153", "r155", "r290" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Note 7 - Contingencies" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/CONTINGENCIES" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r88", "r89", "r224" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Authorized Shares" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Issued Shares" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r18", "r177" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Outstanding Shares" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r18", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 16.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Authorized, 30,000,000 Shares Issued And Outstanding, 8,622,369 Shares As Of March 31, 2022 And 8,621,007 Shares As Of December 31, 2021" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r66", "r254" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost Of Goods Sold" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing cost of sales.", "label": "Cost of Goods Sold" } } }, "localname": "CostOfSalesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DeferredRevenueCurrent": { "auth_ref": [ "r24" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 11.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Deferred Revenue" } } }, "localname": "DeferredRevenueCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r77", "r123" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.", "label": "Depreciation And Amortization" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r179" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation Of Revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r197" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Note 9 - Share-based Compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/SharebasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "EARNINGS PER SHARE" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r64", "r93", "r94", "r95", "r96", "r97", "r101", "r104", "r108", "r109", "r110", "r114", "r115", "r225", "r226", "r264", "r277" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Basic Earnings (loss) Per Share", "verboseLabel": "Basic earnings (loss) per share" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited", "http://dataio.com/role/EarningsPerShareDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r64", "r93", "r94", "r95", "r96", "r97", "r104", "r108", "r109", "r110", "r114", "r115", "r225", "r226", "r264", "r277" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Diluted Earnings (loss) Per Share", "verboseLabel": "Diluted earnings (loss) per share" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited", "http://dataio.com/role/EarningsPerShareDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r111", "r112", "r113", "r116" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Note 8 - Earnings Per Share" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/EarningsPerShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r232" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Effects Of Exchange Rate Changes On Cash" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 12.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Compensation" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r191" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.", "label": "Unamortized future equity compensation expense (in thousands)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails3" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r191" ], "lang": { "en-us": { "role": { "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Remaining weighted average amortization period (in years)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails3" ], "xbrltype": "durationItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r0", "r56", "r57", "r58", "r88", "r89", "r90", "r92", "r98", "r100", "r117", "r141", "r177", "r178", "r193", "r194", "r195", "r207", "r208", "r224", "r233", "r234", "r235", "r236", "r237", "r239", "r283", "r284", "r285", "r311" ], "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." } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "domainItemType" }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "auth_ref": [ "r228", "r229", "r230", "r231" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 8.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.", "label": "Foreign Currency Transaction Gain (loss)" } } }, "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainsLossesOnSalesOfAssets": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 9.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of assets utilized in financial service operations.", "label": "Gain On Sale Of Assets" } } }, "localname": "GainsLossesOnSalesOfAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r65", "r84", "r125", "r127", "r129", "r132", "r134", "r140", "r162", "r163", "r164", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r227" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 7.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "[Gross Profit]", "totalLabel": "Gross Margin" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r61", "r125", "r127", "r129", "r132", "r134", "r255", "r261", "r265", "r278" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 11.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (loss) Before Income Taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r148", "r150" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location Axis" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r150" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement." } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r85", "r99", "r100", "r124", "r201", "r209", "r211", "r279" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 12.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "[Income Tax Expense (Benefit)]", "negatedLabel": "Income Tax (expense) Benefit" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxPolicyTextBlock": { "auth_ref": [ "r55", "r199", "r200", "r203", "r204", "r205", "r206" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.", "label": "Income Tax" } } }, "localname": "IncomeTaxPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxesPaid": { "auth_ref": [ "r73", "r80" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.", "label": "Income tax paid" } } }, "localname": "IncomeTaxesPaid", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r80" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income Taxes" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.", "label": "Accounts Payable And Accrued Liabilities" } } }, "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Trade Accounts Receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "[Increase (Decrease) in Deferred Revenue]", "verboseLabel": "Deferred Revenue" } } }, "localname": "IncreaseDecreaseInDeferredRevenue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInDepositOtherAssets": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in moneys or securities given as security including, but not limited to, contract, escrow, or earnest money deposits, retainage (if applicable), deposits with clearing organizations and others, collateral, or margin deposits.", "label": "Deposits And Other Long-term Assets" } } }, "localname": "IncreaseDecreaseInDepositOtherAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "[Increase (Decrease) in Inventories]", "verboseLabel": "Inventories" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Change In:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentAssets": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in current assets classified as other.", "label": "[Increase (Decrease) in Other Current Assets]", "verboseLabel": "Other Current Assets" } } }, "localname": "IncreaseDecreaseInOtherCurrentAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.", "label": "Other Long-term Liabilities" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestIncomeExpenseNonoperatingNet": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 10.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net amount of nonoperating interest income (expense).", "label": "Interest Income" } } }, "localname": "InterestIncomeExpenseNonoperatingNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INVENTORIES" } } }, "localname": "InventoryDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r144" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.", "label": "Note 2 - Inventories" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/INVENTORIES" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "auth_ref": [ "r25", "r143" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Finished goods" } } }, "localname": "InventoryFinishedGoodsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/InventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r4", "r42", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventories", "verboseLabel": "Inventories" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets", "http://dataio.com/role/InventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "auth_ref": [ "r27", "r143" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Raw material" } } }, "localname": "InventoryRawMaterialsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/InventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "auth_ref": [ "r26", "r143" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Work-in-process" } } }, "localname": "InventoryWorkInProcessNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/InventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseExpirationDate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Date which lease or group of leases is set to expire, in YYYY-MM-DD format.", "label": "Maturity date" } } }, "localname": "LeaseExpirationDate1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "dateItemType" }, "us-gaap_LeasesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "LEASES" } } }, "localname": "LeasesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_LeasesOfLesseeDisclosureTextBlock": { "auth_ref": [ "r241" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for lessee entity's leasing arrangements including, but not limited to, all of the following: (a.) The basis on which contingent rental payments are determined, (b.) The existence and terms of renewal or purchase options and escalation clauses, (c.) Restrictions imposed by lease agreements, such as those concerning dividends, additional debt, and further leasing.", "label": "Note 5 - Leases" } } }, "localname": "LeasesOfLesseeDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LEASES" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeasesOperatingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "LEASES (Details)" } } }, "localname": "LeasesOperatingAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "[Lessee, Operating Lease, Liability, to be Paid]", "verboseLabel": "Total" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r248" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "[Lessee, Operating Lease, Liability, Undiscounted Excess Amount]", "negatedLabel": "Less: imputed interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r23", "r84", "r140", "r227", "r252", "r258", "r271" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "[Liabilities and Equity]", "totalLabel": "Total Liabilities And Stockholders' Equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities And Stockholders' Equity" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r38", "r84", "r140", "r162", "r163", "r164", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r215", "r219", "r220", "r227", "r250", "r251", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 22.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "[Liabilities, Current]", "totalLabel": "Total Current Liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current Liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_MachineryAndEquipmentGross": { "auth_ref": [ "r7", "r145" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Equipment" } } }, "localname": "MachineryAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r72" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 15.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "[Net Cash Provided by (Used in) Financing Activities]", "totalLabel": "Cash Provided By (used In) Financing Activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Flows From Financing Activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r72" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 16.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "[Net Cash Provided by (Used in) Investing Activities]", "totalLabel": "Cash Provided By (used In) Investing Activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Flows From Investing Activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r72", "r75", "r78" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 17.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "[Net Cash Provided by (Used in) Operating Activities]", "totalLabel": "Net Cash Provided By (used In) Operating Activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments To Reconcile Net Income (loss) To Net Cash Provided By (used In) Operating Activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r1", "r51", "r53", "r58", "r62", "r78", "r84", "r91", "r93", "r94", "r95", "r96", "r99", "r100", "r107", "r125", "r127", "r129", "r132", "r134", "r140", "r162", "r163", "r164", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r226", "r227", "r262", "r275" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "[Net Income (Loss) Attributable to Parent]", "terseLabel": "Net income (loss)", "totalLabel": "Net Income (loss)", "verboseLabel": "Net Income (loss)" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited", "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited", "http://dataio.com/role/EarningsPerShareDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "Recently Adopted Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NonoperatingIncomeExpense": { "auth_ref": [ "r68" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).", "label": "[Nonoperating Income (Expense)]", "totalLabel": "Total Non-operating Income (loss)" } } }, "localname": "NonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Non-operating Income:" } } }, "localname": "NonoperatingIncomeExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 6.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "[Operating Expenses]", "totalLabel": "Total Operating Expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Expenses:" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r125", "r127", "r129", "r132", "r134" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "[Operating Income (Loss)]", "totalLabel": "Operating Income (loss)" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r244", "r249" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.", "label": "Operating lease costs" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r243" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Total operating lease liability" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r243" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Lease liability - short term", "verboseLabel": "Lease liability-short term (Other accrued liabilities)" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails1", "http://dataio.com/role/OtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r243" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Lease liability-long term (Operating lease liabilities)" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails1" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r242" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Right-of-use assets (Long-term other assets)" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetails1" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r247", "r249" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Weighted average discount rate" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "FINANCIAL STATEMENT PREPARATION" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r2", "r223" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.", "label": "Note 1 - Financial Statement Preparation" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparation" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r8", "r9", "r10", "r37" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 10.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Accrued Liabilities" } } }, "localname": "OtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent": { "auth_ref": [ "r259", "r274" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other.", "label": "Other" } } }, "localname": "OtherAccruedLiabilitiesCurrentAndNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r43", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current assets classified as other.", "label": "Other Current Assets" } } }, "localname": "OtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r34" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax": { "auth_ref": [ "r45", "r47" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount before tax, after reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.", "label": "Foreign Currency Translation Gain (loss)" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r52", "r54", "r56", "r57", "r59", "r63", "r177", "r233", "r238", "r239", "r263", "r276" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).", "label": "Other Comprehensive Income (loss)" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (loss):" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossTax": { "auth_ref": [ "r48", "r56", "r63", "r201", "r210", "r212", "r233", "r236", "r239", "r263", "r276" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss).", "label": "Comprehensive Income (loss)" } } }, "localname": "OtherComprehensiveIncomeLossTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r39" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 20.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Long-term Other Payables" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForRent": { "auth_ref": [ "r74" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Cash payments to lessor's for use of assets under operating leases.", "label": "Lease base annual rental payments" } } }, "localname": "PaymentsForRent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r69" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "[Payments to Acquire Property, Plant, and Equipment]", "negatedLabel": "Purchases Of Property, Plant And Equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r184", "r192" ], "lang": { "en-us": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name Axis" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement." } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r17" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Authorized Shares" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r17", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 17.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Authorized, 5,000,000 Shares, Including 200,000 Shares Of Series A Junior Participating Issued And Outstanding, None" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "auth_ref": [ "r70" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from the additional capital contribution to the entity.", "label": "For Shares Withheld To Cover Tax" } } }, "localname": "ProceedsFromIssuanceOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrual": { "auth_ref": [ "r159", "r160", "r259" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Product warranty", "periodEndLabel": "Liability, ending balance", "periodStartLabel": "Liability, beginning balance" } } }, "localname": "ProductWarrantyAccrual", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails", "http://dataio.com/role/OtherAccruedLiabilitiesDetails1" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualPayments": { "auth_ref": [ "r156" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "[Standard and Extended Product Warranty Accrual, Decrease for Payments]", "negatedLabel": "Warranty claims" } } }, "localname": "ProductWarrantyAccrualPayments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails1" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualPeriodIncreaseDecrease": { "auth_ref": [ "r158" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in the standard and extended product warranty liability.", "label": "Net expenses" } } }, "localname": "ProductWarrantyAccrualPeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails1" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "auth_ref": [ "r157" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.", "label": "[Standard and Extended Product Warranty Accrual, Increase for Warranties Issued]", "negatedLabel": "Accrual revisions" } } }, "localname": "ProductWarrantyAccrualWarrantiesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails1" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r1", "r51", "r53", "r58", "r71", "r84", "r91", "r99", "r100", "r125", "r127", "r129", "r132", "r134", "r140", "r162", "r163", "r164", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r213", "r216", "r217", "r221", "r222", "r226", "r227", "r265" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "[Net Income (Loss), Including Portion Attributable to Noncontrolling Interest]", "verboseLabel": "Net Income (loss)" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "PROPERTY PLANT AND EQUIPMENT NET" } } }, "localname": "PropertyPlantAndEquipmentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "auth_ref": [ "r149", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.", "label": "Note 3 - Property, Plant And Equipment, Net" } } }, "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNet" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r32", "r145" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Property and equipment gross" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r12", "r13", "r147", "r252", "r266", "r272" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant And Equipment - Net", "verboseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets", "http://dataio.com/role/PropertyPlantAndEquipmentNetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r12", "r147" ], "lang": { "en-us": { "role": { "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.", "label": "Property, Plant, And Equipment, Net" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/PropertyPlantAndEquipmentNetTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PurchaseObligation": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.", "label": "Purchase commitments and other obligations" } } }, "localname": "PurchaseObligation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherCommitmentsDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_PurchaseObligationDueInSecondYear": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of purchase arrangement to be paid in second fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Purchase commitments and other obligations expected to be paid beyond the next 12 months" } } }, "localname": "PurchaseObligationDueInSecondYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherCommitmentsDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r198", "r253", "r303" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 5.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Research And Development" } } }, "localname": "ResearchAndDevelopmentExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.", "label": "Research and Development" } } }, "localname": "ResearchAndDevelopmentExpenseMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r19", "r178", "r196", "r252", "r270", "r286", "r288" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 15.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Accumulated Earnings (deficit)" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r0", "r88", "r89", "r90", "r92", "r98", "r100", "r141", "r193", "r194", "r195", "r207", "r208", "r224", "r283", "r285" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "auth_ref": [ "r81", "r82" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.", "label": "Revenue Recognition" } } }, "localname": "RevenueRecognitionPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_Revenues": { "auth_ref": [ "r60", "r84", "r121", "r122", "r126", "r130", "r131", "r135", "r136", "r138", "r140", "r162", "r163", "r164", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r227", "r265" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 3.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).", "label": "Net Sales", "verboseLabel": "Revenue" } } }, "localname": "Revenues", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited", "http://dataio.com/role/FinancialStatementPreparationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r246", "r249" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.", "label": "Cash paid for operating lease liabilities" } } }, "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Liabilities [Table Text Block]", "verboseLabel": "Other Accrued Liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock": { "auth_ref": [ "r190" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of cost recognized for award under share-based payment arrangement by plan. Includes, but is not limited to, related tax benefit.", "label": "Impact On Operations Of Recording Share-based Compensation" } } }, "localname": "ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/SharebasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTextBlock": { "auth_ref": [ "r182", "r183", "r184", "r192" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an equity-based arrangement (such as stock or unit options and stock or unit awards) with an individual employee, which is generally an employment contract between the entity and a selected officer or key employee containing a promise by the employer to pay certain equity-based awards at future dates, sometimes including a period after retirement, upon compliance with stipulated requirements. This type of arrangement is distinguished from broader based employee benefit plans as it is usually tailored to the employee. Disclosure also typically includes the amount of related compensation expense recognized during the reporting period, the number of shares or units issued during the period under such arrangements, and the carrying amount as of the balance sheet date of the related liability.", "label": "Future Equity Compensation Expense" } } }, "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/SharebasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r110" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Earnings (loss) Per Share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/EarningsPerShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock": { "auth_ref": [ "r240" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of future minimum payments required in the aggregate and for each of the five succeeding fiscal years for operating leases having initial or remaining noncancelable lease terms in excess of one year and the total minimum rentals to be received in the future under noncancelable subleases as of the balance sheet date.", "label": "Operating Lease Commitments" } } }, "localname": "ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r11", "r28", "r29", "r30" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Inventory, Current [Table Text Block]", "verboseLabel": "Inventories" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/InventoriesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "auth_ref": [ "r161" ], "lang": { "en-us": { "role": { "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.", "label": "Product Warranty Liability" } } }, "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": { "auth_ref": [ "r187", "r188", "r189" ], "lang": { "en-us": { "role": { "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.", "label": "Equity Award Activity" } } }, "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/SharebasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r67" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited": { "order": 4.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General And Administrative" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.", "label": "Selling, General and Administrative" } } }, "localname": "SellingGeneralAndAdministrativeExpensesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SeriesAPreferredStockMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Outstanding nonredeemable series A preferred stock or outstanding series A preferred stock. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.", "label": "Series A Junior Participating" } } }, "localname": "SeriesAPreferredStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r76" ], "calculation": { "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-based Compensation", "terseLabel": "Share-based compensation", "verboseLabel": "Share-based Compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited", "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited", "http://dataio.com/role/ShareBasedCompensationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SHAREBASED COMPENSATION" } } }, "localname": "ShareBasedCompensationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "auth_ref": [ "r186", "r192" ], "lang": { "en-us": { "role": { "documentation": "Number of options outstanding, including both vested and non-vested options.", "label": "Outstanding shares" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ShareBasedCompensationDetails2" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "auth_ref": [ "r184", "r185" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.", "label": "Share-based Payment Arrangement [Policy Text Block]", "verboseLabel": "Share-based Compensation" } } }, "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/FinancialStatementPreparationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SharesIssued": { "auth_ref": [ "r177" ], "lang": { "en-us": { "role": { "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.", "label": "[Shares, Issued]", "periodEndLabel": "Balance, Shares", "periodStartLabel": "Balance, Shares" } } }, "localname": "SharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_ShortTermLeaseCost": { "auth_ref": [ "r245", "r249" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.", "label": "Short-term lease costs" } } }, "localname": "ShortTermLeaseCost", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/LeasesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_StatementClassOfStockAxis": { "auth_ref": [ "r16", "r17", "r18", "r83", "r84", "r104", "r105", "r106", "r108", "r110", "r118", "r119", "r120", "r140", "r162", "r166", "r167", "r168", "r171", "r172", "r173", "r174", "r175", "r176", "r177", "r227", "r309" ], "lang": { "en-us": { "role": { "documentation": "Information by the different classes of stock of the entity.", "label": "Statement Class Of Stock Axis" } } }, "localname": "StatementClassOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical", "http://dataio.com/role/ShareBasedCompensationDetails2", "http://dataio.com/role/ShareBasedCompensationDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r0", "r41", "r56", "r57", "r58", "r88", "r89", "r90", "r92", "r98", "r100", "r117", "r141", "r177", "r178", "r193", "r194", "r195", "r207", "r208", "r224", "r233", "r234", "r235", "r236", "r237", "r239", "r283", "r284", "r285", "r311" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Statement Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical", "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited", "http://dataio.com/role/FinancialStatementPreparationDetails", "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative", "http://dataio.com/role/LeasesDetailsNarrative", "http://dataio.com/role/ShareBasedCompensationDetails", "http://dataio.com/role/ShareBasedCompensationDetails2", "http://dataio.com/role/ShareBasedCompensationDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENT OF CASH FLOWS (UNAUDITED)" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfOtherComprehensiveIncomeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) (UNAUDITED)" } } }, "localname": "StatementOfOtherComprehensiveIncomeAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENT OF STOCKHOLDERS' EQUITY (UNAUDITED)" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r88", "r89", "r90", "r117", "r254" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheetsParenthetical", "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited", "http://dataio.com/role/FinancialStatementPreparationDetails", "http://dataio.com/role/FinancialStatementPreparationDetailsNarrative", "http://dataio.com/role/LeasesDetailsNarrative", "http://dataio.com/role/ShareBasedCompensationDetails", "http://dataio.com/role/ShareBasedCompensationDetails2", "http://dataio.com/role/ShareBasedCompensationDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "auth_ref": [ "r17", "r18", "r177", "r178" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.", "label": "Issuance Of Stock Through: Espp, Shares" } } }, "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r17", "r18", "r177", "r178" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited.", "label": "Stock Awards Issued, Net Of Tax Withholding, Shares" } } }, "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "auth_ref": [ "r17", "r18", "r177", "r178" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.", "label": "Issuance Of Stock Through: Espp, Amount" } } }, "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r177", "r178" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited.", "label": "Stock Awards Issued, Net Of Tax Withholding, Amount" } } }, "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r18", "r21", "r22", "r84", "r139", "r140", "r227", "r252" ], "calculation": { "http://dataio.com/role/ConsolidatedBalanceSheets": { "order": 18.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "[Stockholders' Equity Attributable to Parent]", "periodEndLabel": "Balance, Amount", "periodStartLabel": "Balance, Amount", "totalLabel": "Total Stockholders' Equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets", "http://dataio.com/role/ConsolidatedStatementOfStockholdersEquityUnaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalCashFlowElementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Disclosure Of Cash Flow Information:" } } }, "localname": "SupplementalCashFlowElementsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementOfCashFlowsUnaudited" ], "xbrltype": "stringItemType" }, "us-gaap_ValuationAllowancesAndReservesBalance": { "auth_ref": [ "r86", "r87" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of valuation and qualifying accounts and reserves.", "label": "Sales return reserve" } } }, "localname": "ValuationAllowancesAndReservesBalance", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/OtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "auth_ref": [ "r110" ], "lang": { "en-us": { "role": { "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.", "label": "Denominator for diluted earnings (loss) per share: adjusted weighted-average shares and assumed conversions of stock options" } } }, "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/EarningsPerShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r103", "r110" ], "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted-average Diluted Shares" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": { "auth_ref": [ "r101", "r102" ], "lang": { "en-us": { "role": { "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).", "label": "Denominator for basic earnings (loss) per share: weighted average shares" } } }, "localname": "WeightedAverageNumberOfSharesIssuedBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/EarningsPerShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r101", "r110" ], "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted-average Basic Shares" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://dataio.com/role/ConsolidatedStatementsOfOperationsUnaudited" ], "xbrltype": "sharesItemType" } }, "unitCount": 5 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e7018-107765" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2646-109256" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1278-109256" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "55", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2626-109256" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258" }, "r116": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "http://asc.fasb.org/topic&trid=2144383" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124267575&loc=SL82921835-210448" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.BB)", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729" }, "r144": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "http://asc.fasb.org/topic&trid=2126998" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r149": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "http://asc.fasb.org/topic&trid=2155823" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(24))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r153": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349" }, "r155": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(2))", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(3))", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(27))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(5)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "30", "SubTopic": "10", "Topic": "710", "URI": "http://asc.fasb.org/extlink&oid=6409875&loc=d3e20015-108363" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "710", "URI": "http://asc.fasb.org/extlink&oid=6409961&loc=d3e20517-108367" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b),(f)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)-(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r197": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "http://asc.fasb.org/topic&trid=2228938" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "730", "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318" }, "r2": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "http://asc.fasb.org/topic&trid=2122149" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e39076-109324" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686" }, "r223": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "http://asc.fasb.org/topic&trid=2197479" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=120253306&loc=d3e28228-110885" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(5))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "840", "URI": "http://asc.fasb.org/extlink&oid=123406913&loc=d3e41502-112717" }, "r241": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "840", "URI": "http://asc.fasb.org/topic&trid=2208923" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(2)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "730", "Topic": "912", "URI": "http://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.15(5))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(a))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.15(a))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(19))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Subparagraph": "(d)", "Topic": "958", "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "985", "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756" }, "r304": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r305": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r306": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r307": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r308": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r309": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1402" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.1)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.13)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.14)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.17)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.8)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e637-108580" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e640-108580" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e681-108580" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669686-108580" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(1))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(21))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6812-107765" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(d))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-09(Column B))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-09(Column E))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" } }, "version": "2.1" } ZIP 59 0001654954-22-006563-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001654954-22-006563-xbrl.zip M4$L#!!0 ( '-KK%38U[HHDPL .5K 1 9&%I;RTR,#(R,#,S,2YX M_OJQ=]$2XH,R[;K3/SAN( M>#9SJ+>\;OBBB85-:0,)B3T'N\PCUXU7(AJ_?OKG/Z[^U6Q^O9D.48_9_IIX M$G4YP9(XZ)G*%5*D>RPDXK/T8TOJ$>$ M0#/F^DH5\6\T\.PS9+DNFBH)@:9$$/Y$G&UWPE[!( @\[(G+%_>ZL9)R<]EJ M/3\_G[T\,\258HVX-:<@]MF2 M/;5"JO)5.Q0!1)<8;YI8RDAJ@<6C[G]+; &1TT=? LY;,4'M_$& D.B?O-BK M?$Y%2;!2[XD(F<\MYN=2,@C2Q5AA?[YV.+,):TM6R2%J2WR1]*D MM(ODZX:(7/]HBF9/ZB7DAA=X""CQ_A.J/W="Q=NMK_?#F0Z81A0Q$!1Y[.V/ M'S^V-#5DS7 FPTN1'V&.13T#E>[AIYZ:[W:"WTE!M65^WPJ("5::R_HA8*51 M^#+?D[PH>@-B$AG)]P /U @-+HLPC$@Y(#J2I\02HP"YIB!H]F_OHA#VUP:M@(-P:D<"S"LAP[QF2@[TS34B1_WM>E&\ MD.18C"F+^!TLX?7,9FN]GI]W%%^T^-PRONZ1!?9=4,CWOOG8I0NJ)C5QB=IN M$@PQLL1\2>0(KXG88)OL'0Z6:82NL.5WK]:?+8$MM( H+5? 8=11VY9 %]:@>\ES]::/F;A]M(BUUU4JS MIGOQ8=\<>Y_T,^QH H2U&6H[V4IO6?9)VMBU??< P9UFQ7+;UM!UAWO4$\RE MCEK6;["K5J?9BA I0B\7D8V>OP!WS\!M)'3]>#0;#P<]:][OH1MK:(VZ?32[ MZ_?GLQJ0$H!,X"3FR161%,PPH)/D-4+5*0_56_0FT?G;&KM\[")_BO%BO"%< M:RX>/.P[5!^AT@":!(PHOMN'XFP._]WW1_,9&M^B\:0_M>8#8$!O'D;60V\ M/#64):#LLC48OB*>H$\$\A2V)D,FRN)JE#:"_+X\R-WQ_63:O^N/9H,O?308 MP7L?O1F.9VH2UZB71GV\F$EF_[5BK@-Y=O^;3^5K&;SWRQF1_E *:07T;#[N M_G8W'O;ZT]E/J/^?A\'\CQKA2@AWL5C=NNRYU$3.93?B^7-I/+O6[ [=#L>_ MUZMS 8JWU(/##L5NY- ))QL<[)D!+D=C. 8-+"& M,:Q@>9U8P49:H[-#9S#Z MX93P?]68!%O,'H^8]IS\>D:R_OO#SA#$Z)\G4" MYWYI>8[:8#8JSD=$!F[?RV'"H7V>QF$R5<=&V%HFD!#,D37JZ;UFHJ?"J#^O MP=F!,X;\B%NVS7WB#"E^I"Z,2[9)=1'1"$D[#?(JO;G3[ )C(<6#># MX6!>3Y0$%L.^-0M7HNVST=,7:4\'@K5;4R$."SUV?AV/YH/1YSX<1<*83C89_?TN[>^$?.WKG:_[F'O46XH)X;,5 MYB1P=Z;5Z/'W:8_WK>D(/#Y#L)^BV9TU[==NW[E=>U5]K.:HZQ+BB=BIOH!F MA.!#&@+M]1M8TWOZGJ0_FM7'^"I)U@2R8CLZT91C-:+T<\6D"[T)^ZZSX[+ MS?&C6PJV+:,1M*J9,GH3]%Q#%D^9O2D,74X%0]%?<(,+MECL4AIQ&L3-9O M/!=ONZY1JXC:"'/U_D3*P[<3,>*8N3HHBR.*!JD1S4]U$K,NI]V(3>;"()'L MU/.I6K:3@*,,HQ&?S-V .=^I02N=\"3P,O 8H6J,JF+4+@-2VXA2 M)W.!8$8)M6N<,KEI8NHDFXP89"X'PNRTGA8&=[=S_%TBZ NO ^H(-[H\=38N MH!DAR-P(I"&HS[IEOB.1#XJ1RPA/YF(@\QV*&JEJUVB)#:*(:,2EQ"?_];91 M 8[4Q#%R&0'*)/=[ *IG3O&EYTWZ2C,Q?_:S&$'*9/D!+GGWGO5,*;&)<(B]3 &1?H9N@5M.0 MV;JC/2+JK1G*-553LWW1[+3/7H03ZEA%A9U]U50(Y2JKD%^]I^3@H8 :]7V% M\?++^N0-*O:)A"\J/JN86U 3J]SX<9GH[5 -XI5]2@V_$U"/S>#Q@&#+K_E3 M!O:XY"@05/!_5$'7_G"4*H>I<: .1>7(2L$0\>NG"NAG"U5ME\#6 MNR25XV M+O:P9/SU%M[+N<+E/-%+?]?)<.A"\.NDEZI84-V]5!A2$-9LKU#9ZJ!M8@KQ:ZGYJZG Y3)%F4[5!G=4V5E MS*7>BO0Q2>IW<4A([$H'EHN)D%\_'1(5OC@X*.(UWP(LPLX.CXO<@HM'J'-8 M9!16P3LT0(_Q1Z:NWA'NT)5 "Y39UMC35P0J(_ASSK%#+%L?P,24V(0^J>]N MCH@<+RS79<_J/'S+>(_YCW+ANR%K0QMTW3A"GKJN8KUN2.ZK9$55K[Q\#.J( M@7;DDOOQ^N"6J4Y0OZT%B-5(6V"J=/S57?S%9GHD3,KJY'MM,S*%CW9GDBR[;D!ND_1H++T MI20O\L8%G(]?)?W-)FC#;KP\[,!;,+[68T^)J_;F.8O]@-X\5"!:08_OY\<[ M8TJ>B.>3[@I[2S+P(,YL9= RVA'W,517'W3?!#T<#R-VU5?V8/JKT%?"T1H9 M(;27Y33/^6K&S/$+46N94B\QE5*$TSR%_$[4KZ<@CO4$ZR5$[YKCC9(6EN=8^BP8G3<,3"=Z MIOI"! 34'P3ST)!$RP^*ID 3R\$;2;A>E.[)^C$LV:\5SR,>O#TX3,VDX[0- M?\L-@'X/G4GBZ0TN5_D2O"=H2TDS3L*"!X^&I7:S[L\C_E!MNROJX:R>R>8? MJN%GV%VP]YK5,4WXH5I.B3J?VS*\_E*+;T;C?4S_2^VO6L'=\*?_ E!+ P04 M " !S:ZQ4S3EWSOP, "9D0 %0 &1A:6\M,C R,C S,S%?8V%L+GAM M;-5=W7/B.!)_OZK['W3LPV:JCA!@/E.3W7+ F5!'@,-D;O=IRK%%<*VQ.,N0 M<'_]2380X<\V(.29AV0@W?*O/]0MM63IZ^^OML$\=XMW4FI=7-80]B]B. M]WQ36]*Z22W'J2$:F)YMNL3#-[4UIK7??_O[W[[^HU[_XW;<1UUB+>?8"U#' MQV: ;?3B!#/$__1@T@#[]?J&^GOTG&O4NFQ?7GW>?7]K4L9%O)"'_;&Y^TN7 MM8?(%%F\Y9#UZD.CV6JTKEJM'9%!IL&+Z6-D^M;,"; 5+'W313:FSK.'&' 4 M"72-M%\MU)V9_MQ<^'AN>EPHI*V"RUU;';)8^\[S+$ 7UCO$'X-Z]8$^0;=+ MZGB84F00=\FAT'^BGF==(LUUT9AS4#3&%/LK;&^:-QLO+R^5+^Y+XSTR>JV;CCX>^8/\13QWX_CWNZ9MAF8#KFTR+S!_]3H$.:5#&7(-//Q M]*9F,X(Z-\E5.VKWESVB8+U@WDF=^<)EXC4.>J9'B>O8W(EO39=;P)AA'-!B M' 6,$K&-F.=[P0P'CF6Z!P--;>6TJ(V _>1Q@@ZGPP7V0Y^CCYZYM%FGM29,.I$1#KKQEQ;1:J]?\NG6!] MG$R@%J5)TS'I[,XE+T<:)J^AX['?.2P/68[I[IXW\O'"C)RZ""^(^7B,O<%W M?3 9CGNZ480HA?3XYX]\PKIYL!ZQD!5HGLT=:<&E'>"@"!"$]WB$0Q8\?:9A:0849/*Y M)$? $0O'%J GE6I$,N:)^>0>B7B_B1-$<&_%'D!\I@08NDP&N=$@K3( M#@,*8CY!E,>L=P(AI=&>/L;!L.1SR8IW,&P07LEQI(L9L7M<((FU<1[$ ]/G MGU>%J>Z@QDX:#8$ZSN:0&P^!\$HT(2TB J'"N&6C;!X'LWGJV U47BKQB3$4 MJB:=^L0HP"$DG^OT/5'6;O+?_4)_,\-6Z41@I1B]IECZRA%\Q7;F]J396VV$XMUD)!.FF%?2J( M_MM*]9\FU:.^)W MR?(IF"[=+6F*UGE[AS<',<][->8Y3K!J]B"^/,Q\$Z4+]5F-4#_%^$RH_A6.E=-H%8;4 MJ'P9;22:F*\X+[RFT$(\YXLTS\G6>]R+,L6LFBME%)6!4[!L/HBAFE?J+063 MOVI6Z^(I9@#M,693FB4NM%86/W:M;1YPN7K#$>8Y?7D\IT*P K MR&;R*AU@FX&U4#7S;>>6(W/-YZ#%);0,>I"AY)5$RB2K''FK9IWD[MULRZ31 M*O6KY7P9=H;M"ES:UNJPYL'&#+D.5ZXAD"?*J_YDFRSIB8=HJ&HN.N;K+!ZV MMZN$@E@LD3F6DQ-,(+P@<\JK^X#-"==#U2S(%\>)%PI:5*E+4(*L(Z^< K9. MEHQ5L\7(WPS^(.9()0991%X1!6R1'$FK9A1A<*%Y=IF<7,P),I>\\A!4M)CQ M<@@K9CMAYP\OS1,O8,$9>^)N]/0XE\D$LMA9RC)E+ ;00]5,%XZ*!''!1?\, M'M"B^5FJ-&4,5ZP%V=PJ]\^E(REVWP6D"'.4H@!&:)8H&/+_ZVS M5##*>-UA!8ROC;B0??;YK%N8TM^D%O8SM>'[F=ZAB[WFWIUA/Q;TW6I!HO=Y M$AD3]NM!'TP,-+Q#PY$^UB8]1H N'@?:8[?':-ZIV[?US6;9FSQW/ MH4&T37@#,:?,"N17NPN);WK4M+@QOYF.QVUTBZ>$O[6=LWQ6JA&U M6]4*[19SQ0/T4S57Y4 I1XKIT#-,E_V:%FW$S>-1NV.LK &+I:^:O7I>@'U, M@SWI1+$+WB&!<"O>3%;6B&544C5S,FB0@4B,3*7[;5'<,;-%1?PE4_%;H2B* M>,)63/V5#>69USB>Z:][S/!A 9EQ,I]P0Q-'YLOS6HD/5;PG+]4!$@XN7>E5 MZQ<[43;=^99-#W-+=)D,BO?OP>V;*6SN>%U-P?N@(RN%@O$'>,&X,WP8C?5[ M?6#TONNH-V"?=731'QJ\."Y4D,]8&(>=:2F(^Q$D+I?6F P[_[H?]KOZV/@5 MZ?]^[$W^5"=FSJF7@G2?P-)U-.,>W?6'_ZE(\9]U3BXBFTRN'*:JV_4CY6\1 M[.:B&AO+K_;.8TQ-S> VE,93GZ\;=G'TN^=U\8)0)Q#>^,H-K@!NM]Y6S8R*!7O%9RK WSU2![3_#N^(MPU2T:UTV(L&4L8U\<9P;RJEX' M.=A )62LYF"'S;Q];#EF=(SBPL6AUMEP;4[\P/E?07^#<:LO_!_7_^?&H?AH!35JCSGM 5Y_ M\&M^$@]"J+(N\Y+AX;J45S>KLB[S1L:5>#$3=B.FL'_A,S\&WZ$6&[\O?Y1R\%$>C$T3>(S:LXQ-&8 MO^XY^1.-^AK3H3;HAEM:1J%&!_I$$NZB.S4%R,TXY.'D7A\CK=,9/^I=U.]I MM[U^;R)/Q[&+-P5HK3BT+:D\G:5=P"D@:J.A-P@U;LK8GI5[+*2![ M'T<6XY""*O.63@'8AS@P71L/&# #L8Z!C'MMK$M"5W!GIX#Q8QQC".N6.5LW MW'VG#PR9<:_X%<('<33H/ !CR@ %0 &1A:6\M,C R,C S,S%?9&5F+GAM M;.U=7W/B.!)_OZK[#K[LP\Y4'2&$R(L.-[5R>MT[,3 M#7J6;SO>].IDB1L 6XYSHN$ >#9P?0]>G;Q"?/+K+__\Q\__:C3^N![UM!O? M6LZA%V@=!$$ ;>W9"68:_>D.X "B1B.B_K:ZSJ5V?MH^/?MI_?TUP(3+]T(> M\F-K_%TO2GX'0]5L=?O")G.@NT=]9[C5Y& MZS;ZQEB[7F+'@QAKIN\N*13\;ZWK6:>:[KK:B')@;00Q1$_0CH9S'>^O2_K/ M(Y%/(XKV\.4+=JY.9D&PN&PVGY^?3Y_;ISZ:$GG.6LT_[GJF-2.X&HY'%6[! MDYB+CL+B:WW^_+D9_AJ39BA?'I$;7Z/=C.&L1R:_VL&:(4E\T5S]2$BQ"!Y/! J)PSN%[#RQM?$V*>7>,W?XWHS\>C+J&F8>(0;K[]8?()[=Y\#HD M+BO0/9M.I 65M@^#/$ RO+LC'!#GB73+0DMH]QSPZ+A.X,#"T+-)J8%!OP?/,.B/N_TO1K\C,7>9Q+MC, #RR%85#R$R MR485YL'@T>^.)!R.[M!LNM*094;*R8BY%'O (7''EL2=5&@0Q9C'X-'=$?'F M$'OPX-X3N8"/B!+DT'$9U'IS.7#R(RCS[') I9CWX.4AN3LE(;%H]^_CY+"( MN53Y.SEL,KR*_<@-),3N;HXD-<9A$/ZK0;;JS>4U#&?0ZT_E(17 M8 AE'E$2JARW:I2MW6"V]NV[)97')-XSAES5L*GWC$+:A8BY]A_+%,4GR[__ M-5AR3N6P*<,EK4%9_CWM%Z[3:[ZD'J68%6,\WPGD^8%0MG="V3X02NGY66P4 M/FJ K!@XBS0)@G,.$Q_OT .8BQ#;C R!K.4C;-C.G.:5:> >72BIF?4HCAGVIANW/@5,0,YU%_TR,<-U/ E@)[]=M1 AY,[ M+PV<@)*>K?YK:8VWX_R&%E)J0S"%6M>;^&B^RN:%F&)4KF]M0''I$;&/LAK$ ML>@86J=3_ZEI0X<>Y+?^_D#_;*S^7.D1.@_AM?5''"!@K9/O+GB$;GB-!T(3 M"1+IJ,E0DA+MY1W@)C1Z3I2X#E>I0@=]<]#KWNACXT:[UGMZOV-HYE?#&)NJ M;%WH%#;V(F3B0>-_(VD M0U_Q3) _S]5>=#U?"-A'-D17)\1IGA&.T(->6KX7D'EMN"$A\<)P2O]X^]WU MR9;IZB0@(78EC-1Q <;1B;7^XLC,LBR+2M,Q]V)YIMR8>CPS9N586[1,TR1A MW41[.9Y-6+0JC9'=9>99@C>_4D9A"1)9HUUC:SRT,N"5&23>:2FS2"A,9)0/ M$BZO1.\&:>NB=4EQXLE=INO9O.W"+!G6E\',1\Y_ MWT*=K/?)XZN#J21%B=?U4I=U?S[WO8(V$C+5R$!".>(%OE+6Z6*\+&29F*'. M5HEEB"QR42F+#)9!^"R-XTT+F&6#J\ZVV1 D,M#',C-XLH\')!)C'T2),7-, M_G=G],>F-KC5!D-CI(^[A$![=]_7[V^ZA.:]^DS?5L\))$2\D!>Q,[@;CHRO M1M_L?C.T;I]\-K1WO8%)LX*ER"SW'$%"VH]2TE)AS?&@\]O70>_&&)D_:L9_ M[KOC/S>D+#\QE;DECWG/8]YS?T9:W4[4I_@>]2^2N4\V6SWSGVQ9*I$#34'+ M2[QQR*N5"17-N)2)./)4(B&Z#]-4,2VZJWGJDQU-;&;SZ92WG2Y=NP>/RU72\D6>E M D/4RW %!(MM66IZ3RYK5-M4$3,_5*H_RT:JHLUTEK9.RF? K\+)0XAK-2=N MEHBXUR%$CF^OYLH(X@ Y5A EY?5G@.SP^.361Q/H!$L$A>'/SD/7S<"[25N% M(PZ.&-^ NX1*ID.!D>L_&PH(6X43%>&<-N8+UW^%,"0:+I$U QC2I^JV=0FB M >MO^GP9JW!B(YJW7.S;W?."X>IO[3P)TX<_I6UW,P_CY&Q\&?1ULA9'A,@< MG\HT!UD"WLZG^%9(D=5(^2GDD:O& ML.M;XJ3YD_1)X-8>LLC7 XH@4CXS^U84\G M&M3[-V&-P3#49]\8JX&=UUMNKSM6IN%4 M[[D$LO,TLIA4F<98+>@2@-IL574&=W?=<5@]HZ@DAMF7+@'L0QI8BD,%*&Z7 MN@2NBS0N0Q_U"2Y3(_>$9G[51X8:<#DMZQ(0/Z8AAJBNR42[">N@C+ZIT-\5 MZUJ7@/VIH+O6WL6CE;'@I+IF)>0HNNQH[U9C*9*"W_4N@5FT"BG&5Z#QW1O@ M\\*+DF(IY+KB)0207Z,4(VU0A5J1?=@B3J5A[JTT L!5UP3GZ:KA[OB@$]8I@J:S^TTD:&L1*T[ M>^IP59_R41!;'@QQYGKSTCXC?($51W! N)]<)&:;GZE>"KD;HEI(FUOUW%9B'M;Z'X M"NBMASWFY8YYN>\G+[?& M_P7Z4P06,]KJE9^<$Y#7(^05RU!:FLY<38DD(E&"2$!>>IHN=T8E3<&7H[1< MW;Y,485(>%_F.'3"+FXF'C:Y0Z\KHT4?0IN%UHJ^>+@W&::)?KPWRX[6+]88O^:J?K9J#Q9 MGQP?O/1$ #E3X)-?>Z)6#LGWCR5$R-3["*I/RL3>8H!O9VI_\L%K+:75,WQ- MMS-U/G'YC%JULYJ,I$L6T[4]J3AG@,88\A[#&$_?\(8;/!1UWB MIN\NA*UO-N%[#6';E:XYH?OK/ICS2N0BLDVJ>G@N)O1*-/*+(>65.Z3I*E%I MPIHP')6G7%.Y)3[;*;T*3FE;Q2>=T,5!JTON/2=^ME5<_< BK$D"C0<_]C#[ M?<_+S/& 6)6;).4GQ=CWV\8;7380QWK;:UW(%XCFP'L5:RY-5 ?=I3''VBNW MUL.9SH+!Y![#\"T]@\=5S\FN9[Q8X;G^K8^B#OG>-$PUQ%DE0<^ZG08MWY3R M%26[R*FB".5W2!%!6W\B%YW"$:3BQM<>D_G'N9TD^.I@%DE1JM!_<'-:I$#3 M)!T]ZQD1@:.J&O[-5GRD.IAR:^&JT$QP$W7'Q]+F6]'6UD K^)5HX3?S44!O M=PD3L&AK9 (6_)UZZG$6%_9*YC#K1"F#@+X.VLT1H0J=['0$P6#2 Y[@[#U) M4P>U,V!7H4M=. &,EX43E9(2,5I\I;.I:Z1^M@!5:%TW!*]A]QVRM1X)]T49 MPAJI/X,]W7ON4$4GZ9Y',L?,F7X,F1Y(S!/G@_2]$%062'0B4EUEP$$KU':F M8%T 6[FZV7U&!4K/E"NM +.:=QR[7AQ+$^I4FK!E.>6;Z/125-?"4SXA4ZT. M_8225.(]:QR$>:=3.6R5."&4F'MRYJK4V]=4&*Q"IXM[-EJ=FFY@^KY7X8/: M$2V#M/PX0&I>9OH09 2IQ$, (X@AD7ZF>_8-?(*N'U9\D]"13.+<5X!),=?3 M7E*B5>)5;B9TR:#3+] +6V%XMF[/B8IQL H5(LBY=UK!8>IIU8)"5N?U;L?W M723>=W'P9W>$9>S =(5JH1Z? ]>L;270 M%THQ6%!"/%@&. >?1%1?YD3"NW_4N5/@QTWWSM)7\E]>YNU;\\\"9Z_;V^7 M<1@G.E/\D'DB/%^(XZ/#QR#D&(0<@Y Z;GN/04B5K'$,0HY!2/6"$(Z6OY$+ M0OM/"'A:31*4KT6YJN^NNF7_P%02P,$% @ V[+LMCN[MW;L>-#HH$;>Y0I(>D_)A?OWB0 M$A\ "%(2F+7WPTR[I$SH@#A,)(!$YI___6WCHQ<!X0#.W2\ MX/$O'[;QN17;GOBC_1VB M/X.NSF^6#^CS-O8"',?H/O2W%$I\AJX"^WNT\'UT1S5B=(=C'+U@)VW.]X*_ M_T#_;TWZA\B##N(?WF+O+Q^>DN3YAT^?7E]?OW\=?A]&CZ0_O?ZG__QZ?6\_ M$5SG7D ?N(T_9%JT%9%>?SZ??V+?9J(5R;=UY&>_,?R4P2'BL?=#S'[N.K39 MP]500U()^J_S3.R'YP/^]^_Q MYMFGD-AG3Q%VQ5#\*/I$]3\%^)$2C?[,G/Y,?T)_YE_3CZ^M-?8_("KYR]V5 MM%?S0ENITB=-J,T:O\61%SK+(/N5(W6TW*PN^*/^_'UB14FK1U[5-]R!AS"Q M_%;0\YJ&0=_@=D][KV?Z*1.KC]L]Y9SF"4 G5<"-'ZWHF?KTHVOR5P$@?DMP MX& G@T@;4%A;/H1N%&^*-IOT/!EW_XZYT^?S#D)X0P"T(1CL-M9.-&8Y+' M*GM"*9Z-3R2H)X6#\U_N/_S(9-#OF=3_^_.G?2M&AGD9)%[R?H(7!>IJ"$_KP;JSN63R $@1 VTBB/( MQ1&71U0!$0U$53IR NXWEN]GNUS2B:PD9=(!$ (L3O\%$0"LD*.23/U,=+?7 MV!43GK#O7X2;9RN0^X)%(:,\$, KT2 G 8<%55 R$E!)E(IVQ('E!D>/7O#X M4Q2^)D]U9)!(FV2%$G"1'D)1,#Q1H9,0)E-!7*=CZJ1SVQU^#J.$H+I/K&0K MGU%DXD;7EDK(I26F4!8,?93P9 O.U!O9*2&NU=FZP(7%8)7)F5Z)"D.4E M:4$( $E4N*2+5"[A_??[)XL\F-4V M83%/Q!F2NUI*):/^JP;\DA>KT ! )VV0,H^6:2*FBK@NRBEW9HC^NK6B!$?^ M.W>U%2]21=*L(9( +1NBDA@ YJB120W13CQ=!'5WY!990>S1<+Q:BE1%#1_% M2:!6CN5*,4F5$M3OBVH/U=N40H^>Y'H\/KS$X4GF3_*H!76261!@,I]3X M)&PB2JBHU;7)(GZ592?>"[ZT$BO=:U:\1V)QLT9*!;ELG42R8"BDA">U1SL= MNM]K9><#'1%HX3CDN<3I?ZZ] />EW17*FJ2. FR1-P)!,*218Y,P)I7<_9>J MH#X8O@P:]'30-5\&NGP9 .;+H 5?!MWRY8+\N8H>PM>@KI]YR0ZX4@4J9,I> M#!I/*LAJ6$+ET2I"5*-;CC#??!7=1N&+%]CR!9=,O .V2" +*5.2A<8;,;P: M\O#E%&%/IM8M@V[#.+'\_^L]*Q?L8N$.V".$*^1.01(:(L*6A"?%KPV%:0L@[4*S<]\!&'T!G$H(-AMM(M/-^-)+]_[M4QC(]W&K M(F;&608M&^OR]P#&6P*I/.9,##&YKC9%[K&]C0CU^H/U@Y?XHG>[*F)FW&70 MLG$O?P]@W"60RN.>B2$BAYB@\7%_B"QZ\GS_OEF'HIZ4OCEX& $4L*0O?"9[[.O5 MKA6O&>QM?/YH6<^,%)^PG\39)XP;Y[U^F@/G7]./_V +$GJ8O'*_>($5V!Z9 MN4)^J"Q)P-!,]?0\:M,5RJTF>G1@_YCU)\/)M$/:M4=<<3=7-_>KZZO+Q7"]N+I;H_N?E\N$>!"T7<8R3N(: 92%S5!/#RY.J*,$&H[^>.N,> /JH ML%6N#3-90)Q(3W^TJ%&1-VV#XHH0HNU',57\ P9\+ M*WY:! []S_(?6^_%\@G">)%<6%'T3MRT7RU_6_:/&NJ:XU>CSN3YIJ7(!G?= MGSD6A.FN!>0*'XDN(FT@]D>NE<.8Z5A>2.DVZ U3LM%/V-H +VR;1LW$=]C& MY-?6/K[!9,)>^'[X2K,I?@FCRW"[3MRMGXF6OKPEM;LT[UR')XB T]]"27EK7>L2[BJ\P!M"WMA][5JDRGGYVM MPO08,@/P1HI1E2GQ.Q<[RUAQS/R=[?EP&X7/.$K>;PG6A#@/K'WV9AC>@PRBV('HW'&0SP<,OC4[P-XJ0;^=/B+<$ MC;-Z!THJA4YXJ7&T))=FHSBS"2SN*7'*#IER^C!.FK)]UUOKG6[3UBR. M)<(&YT4EW,(\*93D1X'3P6 ,XK12 V/EE#O;*$^50+!HN7GVPW>,[[#/2D)5 MWA+) ]#0,\L0\NU(*RN&\(5D"_:8H?E2<5!S"Y)@R#@)78Q MP>_TE@EORNDA3?"9J[O2F$(\0Z?-7S9BJ(F&2]SV5T0:6WD&+=<_NX M/S.U752[0U@'4GVB".WUU9XINIT=#N)/?P[@U55AJVP[YH2/=>PH":%;/6.: M@2IXO,96C'._>Q-6,B+4RQL*A=,!O0MW4PGS\Y/1;#3K/*1-'V;%/\@T$5,% M9V*8_U+LD,:YH43!L$.JA%UQ1H72;/#FH]'0L0"8(5V-Y@J,-XNYH MZDS 8!C-^^LE&Q:M'#@784#?!AS8GM0956H8C"ZO!UZ(*9>+\]$;]"8C$)'D MND"KI7)WBB"8U?B4#<:Y6K.3M)I3J,E\.!Y".#O3Q5FY%GKTTS&),W4;I1M# M[!=E=;55DH8<*#70G>LD%DOWQGJ329<[*]H JY%6V>X=SQ-_#L+0%'NBNB(E ME#09O"<%6HS9JXCQP%MG.IR9"@Q6A^K5 *P<'VR3IS#R_HF=,S0^Z_5Z]']I ME8$SFLW7W[(D!(/"-_1*R#V.V$$]^C_;P NI[Q0EGNT]B]]76@_68PC!FTWQ"N(!,GF4M8$^.ESU.Q!\S$%DVRXT="'"3SB( MO1?,#W>NPSAF]UX?K#?YJ5&S5HP>R[7I8.G,KDD3?"^U-QB!6-(>!%Y%Z/3R M8+XYQ-OKY/RONG37VXC@;_!HVIN;NNA;>_Y7!U)\_@ (KH0GSZ)O/4VH1OO* GI.E)]+FCF0%88QUYS/"O4X;MXD]' M6D-YV9M!%K_ZWV*POG),&SXC2!=*6M-R",'CU4>JBBA 5GJW-'F'<;%IEV;O M@5HVJ?DL"G60[[ 3YC9D$EP=Z"W=D'<&U5AJQZ4I++H=R8-C![79+5W1?Z4 M'>J*!#N@206FD"H[*9Z3"$][/0AA2G7X%)2A&HBI ./-A6_%\25TX0IIQ;38R=*TIK)C4-4SKL5O[L#S0"ITN3+'@RX7,6WQ'I#9$X1C49S ^,'I_J!6*Z*E MJM15C) ,OCQ9I@VQU8$$ZA MM4"JF94&"D%F52Z 2?#&W-W(FI0[5&3),B5=,MIP:) MI@526:3I_H'\Y^ORYN$> MK;Z@U>WR;O%P1030QU]N%K]<7A$9&+%A:>X1V6[V_FN3<8=%2,7H0OX=WX>S MYWT7PBT ,:HR0>@:\=Z"<]LQ)BO?G\+08:? .'KQ;!S?A[[<8Y(KF)S4ZF 7 MIS29- ^Y&..QL0U.]82FA[,ZG<5LWX%I(BK?21C/3U$8Q[=1Z(I#@G-?ITDN M2/NFCI1J@W.DZ,H/FPG2X/1'#T;&+\%CE_?-Y$O:D \0SGQ$F"J[RIP!7 K& MZ?0N:\/RC6:CPW5%&!7R!G,BU($NI$20"?-[=M/^U(7@,FK"E&?=R/1@Y$2] MPS&FMW#(;'1)G!L_9!4$4HQ2+TBI8]*!U !?]"H5"OR0J>_,' B>0@.H9:YE MJBQ\-*<,@G#WV">-/OZ$ _)"^ 3APMEX@4??(5KX3,T\7663H1%-NE.,DM#1 MY&ZA/>N-(90N:X.Y&CO!VCA#:2N,I<5V.O%M*X9=:Y+B,;0CXK4/H?BY-1C% M4>?5^0F$M9 .2EV?.W5S])D#X8!2CJSB%U=9TLUUDAV._9TWY3/?BZ4)QR<] MRU2@@O[[*D,I]R73A)T??:(#8YM1,3+UW>[DI6U'(0C!URILBE^MJ@*RCJK)0SK]KA1/[.KUN'WI3YPAA#"7YHBK&:]Y"[67 MW4WN]EI>$%/CC.-5P,Z15JZR9)M*P>!><"WLPM:P5)J?Z]OVT)B'IMPNUL19 M.4,@>F@5L'- %C *I_S?ES#"WF/ (Z?M]X?("F)BN;TPH*!I7S]CE\C(,X0T M:L$< UMT+$_)!NH\M=;<[:TA[,JT!EXF;=H0REI"N:808W3=2J,+]ZJ16\5# M.Z;.U :S7Z.)5;QO(_*H(*T':T=-]V& \.1;4 VTU[Z'6%DOYG5VO$K5@*P: M]\O>+V3X>-KH+8&;+G7#(+5[N?HGRS>R2@DCQPNLZ)U=/J89S8DF>88^>SK< M'Y0ZG"?\1=-A?"=]<-50P)/\')_/IJ,YB&JMQCHJ*=S#[3[B/Y*]M.QG.IFQ M=]U,S<9G'&!)I(A$E$=HS'KN_.2S]9P/;X ?6;' VE&NP2HOK80^XM2*HE03 MD#&5#I;>,S!OQ YF5Q_"87\MP,KTG.-3JH,^IEJJV?F43A-.U%OI!0%^660R M=D>FGG^]'R[')XKP!>AKBT9 U4FC/G5S>O0A9".1P*KZRSE*L).5YOGW3!8Q M3A/8WN*(W8?Y;,6>+7D"$EF#Q8I58 L%BD6"O.3A>NZ".$#1@%BF%A/)I1SF M3AYI@%]E LFG2\_?)M([F5+I[CA5 JQB52K*8\CQ *\AW)33 EDI3,R%@'/K M-^P]/A&8BQ>RBGK$-UN:GV?E5BX$JFQ8PS;,\;!5Y_+L;-0 -S2C,1Y#.+X[ M 'J9R5E3YQ9O"W&C">BNIZ2SZ2NH>^6X<2N=,[FN@QIQ=5%]]-+NF7-B^*I M!,J.)6#L9NC40DD[EN_70\BW9.JN4AZK=F^_(=\%/\PL^DWWF%[H&Y!7M-VK!NB5:4']76"C/9J# M*(O0"*P@=9ELA@#!OMPRL46]>RW=3M;Z]9V1K/)K"LV/U[/U%$+JBA:0]5;V M=&%__["Z^(^?5]>7R[O[/Z'E7W^Y>O@;N"1HNR? ^TS?M# @_XQUZGR(=3J@ MJ@J\D*(B!3X=.I8[@E"JJ@%4>=V/M.[=7AG]3M5AK%%SJ2R5)3\$*E$H"**4ZQ0KV2(3[JYXM)PW8DF>B7\Z&#L0ML!U M,%;3[7"=W#%ZOK3NY3=6(5K)MP;ZH*I"RUFIK,].TG(SBU0-A(/W)WJ@MO5EV3*L:IE=K5QZ+W4G[S MDB?ZJK%D?Y"F,_%C^=7RM_CXKT^#9CM_>QH_ HV71[M-?G]N-+9!G @?MS<' MO3K?RM2SW#S[X3O&3.B6#,:3%>-;TN]6$XZJMU_"QNC:*MS]NMU5G=N MD#;$,W=-\'@"(0+']Z60T[=*<)!S&+C% M< 7"AO<%I' K.P05 M2;Y)LYZZ$PCA!#H8*RX&U3E?4R64U_I6[H8/[?YLZ!IZ^!KQU0J$WT:(M4Z, MXP'AD5#"A\I=:1J[RH;66<^=B2GR'1J86D3<..KT)!73V71FL?6-Q^;, ">A MFUAOK_N53:G+#?0,U4MOTHE=N70=)5X^;C@=KTUMCXHXUA+N 6O9;^, :6T- M)D-3U0;YOO4R4&8?@W0;^/(8!?Y=V'%3U_\ M\+6N@)A:I9, 32ET25QF19X'DO6F,Q?&%J,N4OTHS(O%_<_HR_7J-W@%:+,^ M[@H1+.S$>_$2#\?7.([#J(:0#?0-!LPU[50AD$Y7F:>:'DW&-H3CZY:P*R0F MS2!&>D2S)>8J$.W;,SI_,7^HL,SS2ZM5L42Z#G<'#H DA3H03[Q>E2P)I$]6 MB=R8L]]VX#OWX.6PE#=_?4#57W!"C<%M%+YX#G8^O_\28^A^"L1C+N;?C%Z"-$=IB/A^1A5R$Z_IA^R MB2?[??3Y'7W@R9=R3-?1R_="\/S'H3B(9IND2EU6+91=@71Q% MV'D(<.@,C:7_U#A,TH%Z^(&>V>SA$2;0+C'_;VY"O["> MO<3R:URW)@T8S3'>L%NEM..:VCQ-IS4;#R$$^;3%+5I77CR13^B)$PPWJMJU MA6W3;=J8.([8>Z%97;2?BDBU2V[*NZ)F956/6Z+U8 (BLV)SQ)5:29'E8)1I MH;U:5W4Q2OVY"E[(#!Q&GCBT5JG I_?9VC:625]C@FN N%HI8R<(U&0(1JM) M][LU$@=3K0_A:H,F3%'9#"://F::WR$O0#GE;BY:":9<%OG!LA$E\C*:.GK< M-([[KF-JO=+*0-0!EP2V< 5(]36;C&6+I]*Q_WM<6O8A)!]IAE;7IHCX"6._ M7>Y/W5KOU"NB6U2V'6VQ<^U9:\]G^Z"-G3-U8Q <99WNZKG.JI;2_>O19 C; MF=;O@R"+ '>LTR;X3B5O!.5: 3*U7F*^RW6'R:R_U5PDE932E"#SO@7:ZU:B MKFXVI[M_J3108R49OJ;/HEL3=#0.]KL\@&X!57?Z+),1ZM3)IGF:'9M/]&TF M3%43G?MZRJYI^'Q"?>[9SP?C"4SVZB(7KTFNP^#Q/,'11F_NZ]B8/H>QES#@ M#9)<<: M3?')\Z/7A\X?"K\\O%DBB)A&465MG"'6"O/$=NV ,&7-Q[SUG^C;YL!F)7\@C/C@V%4;8=@E1"UXX M#8F7#Z(9"82Q:C[LK1\>3#_K"&SN0TAMTP9ST^6#B,6@EP]?O, *[",L'Y0- M=4YKC6YJT%O1"G>_'3S%$+:9#\5?MWS8-72\RTORJYRD%S;&3DQ_.#,B9"0]\"VS%T,/:BS^?NCK1KBEW?MWMSITF ?L0NB/]7L]HH6.]3I3J'ZN5TD#?H=MIGJ.6< 45(M.L M.CRE$?;3:U(O.**)CB M?P1SRF$S*@\<&=AKUY0-:KO\J07?8/DCFE%!V)SF MP][ZX<'T$X_ Y@$$F]0&<]/ECXC%W6S64)#T?W3/Z,7R,;O!D^52IU\L J?X M04Z2Y]LM'X8OW]+*]>0/=M7LSDKPTG6Q/.6..01\?WBRQHZI#,:U5K/+!U"] MZ9-%?CF[R*^K@%.9[H^S/W(_#\+T=L/A3D?1=$*M_^],Q,#4GK)J*NJJWY7I MC#9]5GGYS]#^Q_F7]/2A_%E!@8-"@@#3,[2#AC)LB()#'!V,W4&.9>7FG]XJ M.&B<)&-_DE\R9S1.^*#REN$$/\-/9J;V>@S!!)R\@Y7D(^P'V0%Y\37D:0/( M%]P=Z,Q;)5TK=6A!'/8H>B>6@Y5^D,T@M8KI)=7>=&2J[JUFB;P6Z(5+:I$' MAQ8)^HP?O8#6R65A$0S3_]3AG4\=9VIV>&N2&;? WFAPES3 N'Y83:8^WCX_ M^RS-KN5GF4N7_(/:%,A:J@93(3?H2B$QDH8>WZ&?C0<]""$LS1%7LB7E6D"7 M7FS[8;R-^(%"=FY&/$,WC#8LB])I#LK8WH[EI16#'IXP?S%4YV&U*H:.O32A M[TZW:N2Y3;&<\:SSA*F-D(IWBXDVXNJ(Z&<+C2]A!";+4;C!#]8;CBG4&ZS( MNE41-'J%1P*S=&&G),7O8,UZ:P>"TUR'3[#K17.2,@40;%E%CU:0II2\"(,X M]#W'2C-5WI*G16TH_>?*37>2+7^7NKYN"CU2VP9+"QWS811J#QVCX;02RVC: M@Q"[=8(N50Y=KVX6-Q=7B^M$$]V'D#]4$6G&-;GXE!GYU M=[6\A\JL.BNM5NF46TKKJ9+GFWW3"1Z9JHK6D%T2I$*K-B!6#5J*2>D%G1H[ MIJ%G-(10KQ.E$$*U$A_1\=J%<;6J&=S*C<"[U>WR[N%OZ/9Z01S9Q+!]@DU'?"#9K @!%-8UD$WW&A.E\/)A!,)KMD0N-Z) 84>6-5E8! M% 2=J[GLLKR.@;//\%-C:)LV8H[2[;J7)W6S%GA$UQS/K9/?V-:@]2'8*[F; M'GY>WJ'%Q<7=+\M+='VU^'QU??4 Q1752=*H;Z!;MV:4V(=TN,3P-DWQX@9X M-'(@9($Z2B>$QGQ$C#E/"M4H9:=!\E_3H*VZK>:RD#FJBN'E&5B4X$[B>HUM M"%E-5-C*?+E>+NZ!&$0.>^72"V$8ZYL^#3W3S-'H1)5,"B7^SD_FM@MAY[(A M7*&)&A,3Q=L!P3UZ9\SC-0=I,$T8T,OE.+ +)KBNG'&S-@Q&8+?I7"$^JDD# M?!\:SV<@,L$? %WL3EZLOGZ]>J#K^P.MIB3 A">JWZ,6Q3M490R%D,C [6)& MR@+<$@P<=]:EX=* )C12DYT?E=/[=NQ5W<39M!%@%DLYI39K@;_XT_ET *'( MZ"'8A3R>$AX7F@'!X:45T:!A>M.$W<*NF5[EX@:O)=1 +MPMD,CR:+3YW+4A M%&_60UF)\E_/_SXFX)DE%U!E AWQVGE&9-*LR/80?CD6WJ M8FH35DE@"HW5C!BK3)_&8?(4#2#X)2[R6A=S7J-D,-I<"WY] =[BT?]@VN]! MN'C?!&LEMIR:L,^+^^4E]>]OES?W<(+1]E,^2VVRZ]D=]FG>4UK4.=[W?9KRQWD A<+SAS7)S].L]7 "P5T\:F>$)GE.3#+H8M5I19D[;(>/ M@4=AW8:^9[_7O04:>N9XKMV)/)-KE?AU36MF.Q "R1K"+;,Q54,#U'CWD/]:=793,\N'H\&PY-F1Z-*F4']Z,R'T,V-@<,_N'/ MK7M_T1C+X3J5>MA5I$YG8;2((GHMGOW].]='U!8B9@QA)*W878?2FU/EXAW< M0].8066R::UB=S !4N13 Z7\9AH()MW@US3H@2SN;Z,P('_:_$(#[Y8>PYHW M8S+A7;LN%M/>-6N#GV2X$W.9[%5,/0Q]U>.C%M9_1PLG?*9)@?9MHV+C(!A. MUF+6XV-$2Y*PJSNIP_I WPTEN0ZND87WOJ=*2VOZQ73W*RS@0LA&*L%Y$I- MOD(3-"]!;=7=4SIO]A-VMCY>N;OK%6DD9?WXZ>KR&M+],9X *IG<#GQUYH1U MH:3I<+9\*$:7%Z88"L%_:PRXLGI(&T"AN[OM]'Z&TD;0[ZP9<&L'Z2V%UA=. M8%TS:7>YI#2A3/!H OI*B01OY3)4N9I4DPLD1@Q--<"ZB:FIT^9[E_W^; UI M;ZXE?'$A;*CQY,V'N/5CZF:*-,!<6-.D-F351"F@*]290]P_[>D,>ZS73!YF9=%'-:KPU>*<*=3L8V*'JW02^8;VD;*&MD1_-W8(S^ MLDVV$?[J!=YFN[EC&?RR8^@O8;2K! M8&.GBGIOR=&Z5/%F=O7'F>[QXKLE4?WYY)6?+9\6*KI_PCC)Y:M,PS4>0HW7 MX$AM&KHU<*S.[VX9'-H@XP:>.7C890J*$W1%F3,U;1ZQ]O.94E'Z"[3X%: [ M67LS4 XG_6S%GDT6EY>>OZ5/IMF,T;"U+N:(5AT6SPJ-FN)1&=B=S2'LR1^E M$Y70]2RT^*,?QO%WT"*,=UW.QQO0$#XRWU6"^'+1 _'"9[C8X84X:H$% GYF MNSL-WQBC6+IXWSIXV.*WU2 07HIV/K+&$.ZA '@$E2.@S;-%5E>K *7>8AC$ M_%3/#B-6: 9VF-KNB4HBXWGIN*;;"LT:Z^)E;M-=\=O8I*6TF'FOYT)(:W:, M/E1FSG]LB09:O%J1DQ4>A+;3<(E='$6EONZ-!2WS>A4X!+FSM?SFMR9.\4-= MO"+'?DSBU^=8O\)/G=:."Z+ YZG[5TF8S?9 4/KVY7\++=_HWS \UUS,%XWO M\FJS^Z@4C">E4L 6Y)T22/.=VOE@OH9P_U(79\/D[+3>7F)Y?OS=*2@71TF. M;N1?9:J1C_Y(][Q7T3V.7CP;+]Z\Y^-9# M)SN*6)'%--=!5 F$9;H(?;J]%5F^@"PR(9.Y+D3PBKDL\A+\F+ZW=C"$"UTJ M;)5*.SM9]#/V'?0[53GP]%6RW[YPK&?R2_>6C^.O>+/&40F_5,K0GK@+_@JN,41O0%D/6(1413"AEZ_6KB[=T\JF59GM?O8U#4*Z8NGB5%V+S\M M^.P%Z'FGV=E2<5??Z"<S M <0RB?+21UD;%+@38_O[Q_#E$]L8B=XY?=)_,/8PWJ0?_$'P%/N5_^+TC*C" MH,.__Y3[VCU[8'4YUC(\Y8'])?!H= FC!8PM@5*%3\E<6)'JK)"JR(THB? ) MVW4&:PB;Y$IPDEOJB?6&GHDP$(:D5ZSNK->O=-/"L_SX!B?T9FB,HQR@:%AM-X2EPZ1:O/"&.U\/(90M;8JWXKY8KVB3ZL%BWV]A]'?BAD6AC>-F M]%-I=L"_^HX("2A7XR8%K_L80IKQQH#+%*1ZYUYP_LPU8;'PBQ=X\1-V?@I# MIQD+59H=L+"^(T(6RM5X\N7U<&QUN71K#;AR_I?JH4>JV,G.R:X/TN+Q^^]9 M9\;6VNJ9.G35V$&1 X2>8^#SUO-I7!O-.GZU(9;HA4?8_12%L>Q-K]$Q]XYK M@<\32:F0KE3'[@R"?], :J6^#XWG?PI]!WDY11!T^VK93UZ H_?\57,5UU0* MYHA6#SO/,KET>MUZW)]#B+_5Q2G=;S_-@0P])KK$FS"@T2LTYFGW>\)C Y6X MJ>.8>LC[TQBY+,_*:[MXV&55QF8H*V=W5!$Y>4V$C\.74Z,T;#<4\ZB,I!6X>I6V^?.K-^R#\PM/TJNI" MQC&R]C]%+/K^MSI9(TH[(EDSJN3YSF!_/C*VCZ2QAM0'K&?XSE MG@WZ1[+ M+93_J&GM;F4;79;NUNB 6>Z=D"<^!P 7;MN]VGCSQMSN9A_8I=\ M)4W))WE.=4KFV*H'/T]/M09?# RM;I M*7L0>_$V50+#H5\O?\DMK MOA^^T@A+:K.SDX(T78CD(6CJFN-8H\[D*:>ER,/?K/ZL#V&N;0%9O#<3X60; M!>0_3/-T]8S30)!W>MM8M,4D$#)9T5@$KUC2."_!-]Q[8]SK_!9'Q#L^$ MRH,P0 Q/U7%,YVA"Z1LR>FIOJDD+!EVKYATK^%GZZGSI3MZX*83,;:V!"YG: MR=Y"^U%KT&_+=4<]4[<\-?8;VD 7&QR0+:"YW[Q(J2FKW*6KB5!7:VM#Y#:_SH M!30C&UISOQ6$N1!WZI8]D:O CN@&P27F_VWT7&1-=+T85W>MGIYB?>Z.#F8S M%T+VY?;(*U5Q<8(P3[[23922RX$HKPBQ?3C)" +8ML.%L]ENXMS9'9"2%/5T.X!UN@S,MA M%FC_,XC_#B13U/1P:#(9#4W%T?*%T3)H86R*8!7+(C*2T-9$/#7\[ERU)DA# M*FW.C-0 SE-+(LH3HMIDO"#49],"6>'4([1H$E"'MKM(F?;ML:/!F?6Q(*0J_A8_2@SGYY%?CML MO]QBVJ6'U_"0QY1O!1BOJQUL3.9]$]PE&@W&-OCKY5^ ("C[XY G\A3_0(CXP-WQM\==[^48MIBX6=;4/E0D,\)&?NK-WU-\1G11?*I'YXPA&V M7&7J: "C>\B \@.'0=_N XH(:P>^,GIA B2C5M.!;/DX(%J>@[GYS6P2Y0%7 MSDIX"V=HUP:O=7JVKYI]AI(0K3&B&0N[.0M1]O*7P/%BEG,3.\LWFB5LL:'_ M:CR^LH;XX<1\-G9/OMNM?VA[A)Z(+C3_0//AT-JAB*87)]AA7(\]B #'>')@ M#)@9MD.XQ7\8^E9V+M\JXLTBWNXQ4RX?_6:MY %*I3N_2RLBJT0TK5H\'@TA ME%[6 BGT]E"XXYU?O$8+D%EWWN-3LG)_B?&"O#1Z5[8K.EVQ3 )>SK62 M\) MZUF]Z0 T4P0ADDW:Z_N5BOU_GT57-+L4XI32NT MGH\@N%D-X=91U"?V)6.H9,8#PU&:1NC&VHB*98I%#(9Z"J 58OYRW[,!ZKG# MZ1S"CH0<627Y _D7HJ(U-3%/\)C9+7%>?X.7WY#4!:N*I/GUQJYC:F=9,<=H M83QAV1%);@/Y@U7C-I;=H/W(#[OT"6N!51:]A;$^34G1BRT "+ M0.V&-O\E?W;S\=3N,MMP#:Q*P5@J>9+!_(E,W%;PKAC.LH2A 14#VPUI\>LT MVT=OU&D842VP:J$O)@O"-2HM-%?KQ/("[%P%RS=>S.Y+C3JH17..UQ$Z M7BAJV;ZY-!-(KP/) 74O12:R@9,HO:\'>6LE:#[RE9/;O3])EML%;N.J?JR.+Z*,H: M2,D%)F]A\<4I=?LR/9*X(SY<6GA4:RFOTTQ76RGZ793OK-2WP9>?N&?/(40! M'8:^EMS9R14B/P+C8ERQPQ=AK,=;+M@5,_,PY=RC4NF^F#/$\$ZFJO@J::E* M$ZU--&!GQ\= MC3>R#)E";]*K%->K$S:5,;,.[CYSIDR2[]LY8Q=W>0F_"<8ZJP+KD'L186OE M7EN!+.5#7L!@TKH*K$)BNMVW?/=@V!N[$/;Y9;@JF4&(' I=3@@0-&"47KX] M>[SVTB7QE_J23HI%#5_5ET"MW-,OR?$W=6KWUQ!J<-8C+!/GJY5L(YIFWH'B MT&;QM%_"Z$Z^"JM(&3PU% ,L'!P61?B=V^%Z-H7@C2C!B4^>U_3_K"#@R8<" M&FGUG+8"@S/D^3P1C*NU[STRZLOZ+A TR!PIS )Y*E(\PRAV\ C"$KL.7^4$ M.I4G7NQFXR6,-2QG$(^-"G?-0.72Y19?!?>8#+"CR *BH=F8&CI1I?K<@1;OK4*!C:^-&"O=O\44KSW+W#M=MI[>NF."NUKU-5%%-= M%')E-H%93!VN5;ST?'KYC;]5JVT2TT22-*><\U_;.%$4EFW=6L=]ET(I=V/THDZ ^OP]E0FUF)-$YG,UIX7;2U_<8B%WQ 9,L[D2Y9A MEVZJ%=ZP3MR[9=JQ6QRQAR:==H6"[&'B^6!F;/FH<6-# VEYV#^KYU$0(Y-2 M6V=L4E%^ CVU^\:R:+08'2'6RFM9]QJ"F)(60>(Q@^&]8+)6I+N?'HZ7;[:_ M=;#SA8SN14AO9[.UW\HM/PGEK>R0IR?K0S&4Q"Q3]I R[3CBFBGB3+5FCM#!LE&@R;(0IP6#A6&S2ODS!%+ M"C)/IXH0WSV?K$<3"%:N!EXEL)B(4Q_YIS!T8G0?^@X(NM!RM.3Q/9'%]"5^ MP7[X3'F]Y%63E 32TC08*:_?D4)$?+T:WV2=.>,9A/)8C0%7[N&G#;"%7*X) M$'2\QSYI]/$G') UIT]W>!RR?O5H"GTZTZ?=5%NVAFT8C-%KT[E"^%Z3!C@+ MIL.> R%[\0'0*T%_O*DSE#;&B%QLKI,5;K8ZQPYU;TEWI ?78DD>N.3.W!&8 MPR8=H-683*)S3@,AZ/[07NLDF_3$F"619[,KJ*']=[8?++\MJ)(VM#U?#WBW M-R\7Y>GS>KV)L>K$THUY79""62C50TP1,4T8B1>?V?W_2^3V:?DN;J.7ZZ#?,1EO?J*'5&\G#_@1?AS9']H80M7D$W>O$@V]%X>T M.[([VL/1BV=C\4.YH0<-]%B"G_BQ'&;Y[^GJZB9,_H:3.VR'CX'W3VDAO1/^ MGKG7[^0/K; ??ZH?XWQ=KV=#""LK0]VL)D"Q-F&44$'D;I-MA!'^QY9&&N>] MIZR0,?KH!2AY"K9.!1/2<[,'QHL\L_)9]1.5DL?&F0?P/>->5C]>( 1 B M2--2C$86A+WB+OM>=9JS&^.50*C4AG!;P4M?,E/QCJWH4#,A67O]RGHL"/2M M?&MH;54%M%M+[;_BJ?!G,Z?3.#HEJ/*PZ. M"7>Q]V*M?7R#DY6[\/WPE99"K0R EM8?8A_JX!%P0GM+G>=L0Z;T@ 5#HPOW M1WY823?VK>QC%FEC1]CQ$D3/]1%Y(ZVT*13MVCJC1>_CV',]^AK'*,UO^#V M(5X2_X/M"9/'$,0N)L"+#S"WI\48TEU-&",\2Z<'_<":*<)'H($3O2 M6>6/=" ,'LO$>K$/U:^,4UD SI (D/UXL8V3<(.6/EL15Q]P_H-K\A?Y,/N( M_!_=AOSQOP%02P,$% @ N'C[]\6B<7,'%\_],H26'HPB *T2^? MWE#RZ3_^_7__K[__R\7%?U_>WXZN(V>]0F$ZNHH13)$[^N&G3R/RIV\P25%\ M<9&W_FWS/3^/E,_J9\G+Q1Y(T<,G+65=*_R,H7 M15*4;:-EY*4_8(Q&,':>_!0YZ3J&P3?W-&UT\P7L'G M&*U@2$"-)B_IY^U85]'S6^P_/J6CGYR_CF1C.Y1@N(7Y.;#!7[XY\_D/S;&-\*,#I.?7Q/_ET]/ M:?K\\Y"'-P\\7].LJ^[C9R,N0S=1M06Y+>+HMD%^>A"5BY4 M^?-KXG["W!B--OR(HP#=(V]$?GZ_GVV_TX4I]*//3K3Z0O[TY2K"LQ)3F75Z MBI'WRR<7-[@@(I'4S;C_NMEUW>&213X+IG$ES @$E@^ M(90F[72T=#PA;7=XYH?I$TI]!P:]":T=95BJERG^+]$3R<);/*,XFW/)]Q"N M7;QHW2ZD,PYU.OJOHA76($\H3/P7A-5 M$*W47(\&-9Q3X1LX2W3R/GS*0I< MK*JG_UC[Z=MQF)A&/!F:*Y@\W031CR,%TS30\;3?^'@?G8PDU;4=7L>QT=+[OF,?&3J?&(:E:.(5-Z)2O4H*M5WHI)Y?G8;A4[U M[&[F*4M1S=P4%*\VMGU&54%7$#E[I 3DPB@ZN)TAE"28E.Q:*$'.Y\?HY8N+?')7)_]# M(_^\V/PSXQG^%63?/;&3-(;.UA470!L%V7< W.:@R9=WH6L:8I:]W:-'GWPO M/D/!%:HGK[[E/I5EJ4YB9Q3%+HJQ.(H18>SLR;)ZMY:W^/*<7=)<.$]^L)T& M7ARM:-S*>1.UD%MF(?ZJ]^7R%484PV"&I_;K?Z*W)C97FC+Q6>;&9PJT=V=T ML=H?\*CU_-UOP<16A0-;ZX"\.S*GRH&?M5#>G:%7 MZYC@N/$3!P9_(!A/0Y?$?5 V!&IK)C9K'-CO>@(1.? M=6Y:MQ86+Q8_H2 @9T(8-NYL^^V8&&SP8W -*$[\G:Y0_(@MPZ]Q]"-]8F T MI0,3Q\?<.-X(D]>Y;:/4[M%S%*>8-N*_73>J$5H/)N:;_$YQC4"Y'>;N4.Q' M;N-626G*Q&^+X_&N%AJG:7[C!RB^PG0\1G&C9CEHR&::\+,!:W%QF\R;H]%& M[C?X,XH>:6C.QF\>MF K1LY<)P=29IZ7&K-QG*>92,'':\.,5JLHS*(A,W]A MLEBG65@]WE,:M\W&?FQ2X&% BF&8^(1#+ ROMF;C. _3LPTAQ]/+?+VR=W%G0TI%- /QL42;_XFHZE] M[E.[L,F!GUG:@I7;JL#[#2;;?T'8>(.Y[=R\'.I[L/&?AYG*@I03^R>NBQF5 MY#]N_1#)3;RO;WL>O(PO1Y=3FXG\ZOI:/GK=/JP M/#9,V(.)G-717^0DR3!,FJ'L]\..(IMZG;;0JE,RV&72Q].[R^H M9G"[Z%[>\LE=/ZQB.F@.5-F GB#2HO"Z02XT-+LH87[B(45;)J%+?I!TR!<8 M8$J327H%X_@-[X._P6!=M_/D_9FZ U-Q3-<427PTD=1*L1O(7:QR#ZE6\V;( M)]D!"TT'V' M YKAZJI^?H(E(75BP-B';!UX*<.AA/&T"R%%MIO=T15B3U8':!V1B( MA_ ?W=L-'ZB$9E2F40J#K"5/.;+4):N*M:D7<&W%A.V>3+[#>A]P&.;_2"PG7[\JMO M#W3#T#3Q]&XFJ 54I.$.F V>5@"3Q;TVU!C,&^(FJ 5%?KD'+WD[_=$3YF-1Q+=,^CVG!>W*>I"["1Y(P%N0_H+#UF=*7D!\X[VCZ! M;'ZPVC[ =CQ;.5?)L<,KI4]PO!??U2(E5[]12"8<"LOU\6MNP^F=@*NJIG3F MYW\6?*4T#'[2Z^,3:W!&Z)*M5 ]5YR4[!GBE?([AMJ^[8@O-"&@J9(E;US<& MEFU"LZ(.> 5KM?*QNF6UX"JE<_"\:BO3V!+W4],8N*:M>+SM9 9N4Z[5Z(!* M*1_#K8M2T8=)FD4 NMFWMJR0MFY@["#)YGUCUED*G:"5LD3X'A!R:MMBY Y: M L?1QYXG@(B8.4X]#=3B*J6;\)///:DL'2*WJ(N.;?+U:IWY+:^1YSM^PU&@ MO2^ DJ<;O-T4Q\NP ])2I@M7YU)!7_%D0-U;D%E0WP-\;?0\=1D(V&/90+PC MD(^7=U_8I8PA W(2GD]'S&NH7\\ T"*Y5GGKZZ9 M<19!Z -$N B1@U7_]'(I(4ME3\CZV^BGO>'^]J$SM!39\>S*QL4%9/8L' .< MK!U05<^3>.^X?3A-T=JUX+:1:%R=G5OB\.I%,_S/!A]GM2W0[3$2)6Z:PN=F MF52A;'W0@@CF*H!)DK\3/GGU6>1SV 5 S5&J+J8S$A,5D1@W!B7JKJ,5-JL: M7 *5ML"T=%7A?4)AYGB]0X".2@@)+1%YF7*R[YCZABAU-@I>T#L!79$5C;$[0U[2(V'LQ'.+EN[VY'] M!<5VE*#! P^8$B8I@F/J"\:FK$J\+[3;!5,59#=X(N1Y[Z_S39GIR3I]BF+_ MGSOCK.VBY[ ?4'79&?,.3>XJP6[0CLKG'OZR@5UT#9V :2!'XYW7T5-N++A$ MR-6NT#E+DG4G@6TZ &2,#8=WZ,A0PCK )$(F=\=7!VC(2KV 81N.?J9ZD0G8 M89(W+R_A]OR%S[YY8"#^Z_<0KET_W8U7=A5J3:["Y0/^\6TZ?UB.%C>CQ=WT M?O(PPPU&/WV?3[Y?SW ;CO["S0W-EOAV%R&E Y!,RQE7@N+?]WXVRT1H\&04 M+8"M&IXJ2+QQ&T,IMZP'2$0HS'05)?BT^C6*W.PN <4OOH.2910T[E"T/L#P MD*,*$B/72T@,V$0XR'^-HR2YBR.O*8"AU @X#C[&GO/JJ0.S.Y2?XT7G-H)] M^DI>0D<,Y>NH78"D0,T3Q/O>2[[MT$0XS=]C?F)>D$)@UUB=!U%6=",GN6D3 M:^@&/'TLR[P=(,QBH.QM+ !%..8O41"0!T)1B($&F-Z)N_+#[)5W\D)%JRC9 M^@,;04D3Y-ZRITP[(A6AX%,%:0=5"B35MG5!SBX]148'==X%H+:X=L%I#)+= M-0:J9D#(VQ(?2+8UL':5GLY1NO,HC/;!Y9QI/Q"U=@5HK$%=D(-13\FS@Q2A MEE3VW!-*TCU*RQ!:BE:V]P8R&AN.(*N973BULNV$MU2QBJ/I"?TP(=H')8MP M"0/\PVNK'T;O Z!GZCIOM_8PLF1 *41EJ9LH1OYCN'$*.V_92YSD?;8H) @( M@$ODX3:-H?,=!@&VHZNN(%$M1\JX#VPAJE!1H<3U>[X^(-9MTF77N-P>[N238SME2G9/J*&8=A^R&,W[)P%I*@CWMB6$'& MI\VFU7;C<)(O!9JJJ)8@Y<>/WOU/SR8ABG!M >3LN40A:O1=4SH %ZF.(TC4 MUR#"IT,LE>-BU#O61N^$Z#$KS,9;\^"C*XN]OM<,Z*:)K(\AX'I@I?)([=.'6-@>F84-%$._HD4)N!BA$H:]#$J_]8)TVA2!1.@!% MUC15D")Z XOM$&*I_!<_P?V.38TG3-7D!0-]S)].7'B5>)R6-=AI&*!9NB8+ MB:!B%]'R:=@A0ZS@04"W-,CZ&:=<7>B5-182P-DJ.?F.,F\X> MXW:U^'9W/_UU.E_.?IN.9G/\^W3TT^UB21)E10AZ*R5?TFH6=,J5;1L$C#73 MJ(8RO6^T/HEV:3X\[]H S](T2Y";CCZ,KEW#-?BX9<@,60^RI>3&711G DO3 MV+?7*4DK>8@V^>H,44+#? %P##16>1>1&GI"#VHWD2YWIX91+;,I M1,F0@L_-,JE"$:VRRV:J$=4>A<3>9ZSN4M<-N(8%JU5JSTAQ4<5%ER'4$67L-YK_[ 40>DKW?Y&<5^1"S>..7N83ZR1+(E:SH4 M)!&JLTSI<':>VC.7[&;&7J]CO%7<;8C+9O(]PI:J[Z3%8PL_8.QFOJ>;*/:0 MGZ[CIH2XHX?&*E%V3$'R6'O-FT'0B^!RI:#):DR?9)8PCPPLTT.&:%;/<9.D M.W@14MD;9WSQQF_6Z&X=.T\P07S.D7?[\F<73CVU#F.="N\JD'DG?9/=SBO\Y+K@'J(YMB_+:>5>A=P)X5,([ MI>)QIJHA.;\E?J;40Y1&7@I??_CI$S$MZ^-M25^6KL#3D&$+$F'++)S.Z(3( M5>_CT'+'8U&JN1_GT,J!E%+.^_@]IB'_1+(C_5FV!9$LVI,7_?U9!9Q26OD0 M@A4@2.@*)D\W0?2C.:I]S!P;=#59_CJZN5W\+DCAUCJHG0*!*KV :UF65SER MO^OE:D[3MKC-Q$G]E^QULEN4)%'K"A(^Q\9R!>"C9AT%TX[?L9[_.\ Y?'DDQ4)3OYG MB]^'I3>P+-NLYLURRB#L+ZU:Z7=BP%%>?HK2)F? K+9JE@"PT4@/4:EJ-:5T M-^G,U!?(LN9)@@3F#B:^[O"%\,P/XY:U9<6S/YI$V2#OG.OGZ2O$QY(88737 M:/.SQ*DK^.RG,&!Z_8%Q#*"-D2P)XL ?>J;T8(,(3O\JV=47Q[K(OMH;R(JN MB7+WUD-*C-)N +Z[41!)SK/P!?,K(@\T=A%PJ1LP34.KAEY_-,G6(=Y=#'P8 MQ9_=BY0?(UQ M^=#V@VR[[+-;-(T';#BV;$&"M4^_?S"Q0H@ZOU4,U_DLSY^BZC(3#KH"PY%U M4Q K_W1"IZ'N??4*H(*7(C2N^QV]!"N?S V3<3]F=J!A=X# M?O?BO4)5>:4@)I96,M"]4<-80/5D1Y3ZL">>1"QL*)4,YEB-#KYEI0@?HHGS MC[4?(XP$,R)](]',*3X.;_WK]*G /@9P'%N5!#$JCA!=[53HP892(>$/=1-= MP\,A- E JF:Y@FB0H:=/#S:4RAE_H.WHQ@]AZ RS'36,!J M9*LN[X2ITPF_!R=*Y6?.\?! X)+_DT/U"PQ0=@=<)&N3/^ #]_X'I9:;5,Y# M&W#ZZ@1K-WO(TWF"X2.ZQV?LJ>>AMBCG]Z,#6#)R/-ZATJ>;QYRX6:K3$F?\"?X,N YJFKP=B^>;E:?DF7%U.7JCD.'[# M2R]+FF_6H:W=22TG1^)=P.BTJH^="878.WNB1:I[]"[3!JJ29/+.5N ];0HF M%-.F<^BL0&FCZ^?G(,O0@D&1_3'=?,"2=L?0&XP10@9O+\'IIDPG'A0SIE^X M+,4=E-DJT,\+JSP\H>;U*V[$@,77I4)#%O%(,,#35$,OO5?C\*QFPD/>-I=!HT^V*&_"2BZ MCB#OL]M)ID.M#CD9_PX3S=]3 OU&[C %71Y&H9FG<&WIH3 MU&D%]QP0*!"J5D6#\5G,/:58N[*/Y0?/17X[G2QK3[*RJTU%J[ NAJPM3-H'"^=M&P(^.^!Q+OM)^] M75N[^:GUF]_5XMNWV4/V=CV_-5,BG=RJ1"&)OD38U"YK)(;:=UV& 8:M:3W3 MB2@.=IH8#CSJA\V )DNZ+H@+O1\/J[YT*DB>Z^1J,7^8S;].YU?U?A%9.UPD M^SW^6@M$TBRD<37EF.AEV)^ZC0-<0ZIY9?8J6[/ZX9J=3N[G>,TN1W=X?UO^.KF?\ENXAP#:URBM!\#'<,6J.!EX@F%8 M>=0NP-8LW>4=&,[*\]KUU(Z-Y]+)2+)I!>_*"\@X7$#9FKG$9M0U.1[>3>=+ MSG>.]97I&.).&OL!.!Y#J3(%WQ/8CNU9=,F6Q'N4/7A)"BHF.Q#;7,?V=7?D MP,"QD2-*02-&*=:NT:'XP',E-P83W$6![U#\G>..006CGXK1.!9V/XOX L.Q M%9?S8\]9%9U[Y$2/H;^="6\,NJ&U*] 4UX&"9/P.*[!:)<'.D*-JQY]T,UP\ MYSR9A0Y&[K]L7L?; .FZ0S8.!E0-8BG^96;',2SJ^TZN0*6M-O%US,J%U@,8 MGC2NIC=_V%G3R@<1*MC/T8_\5HB\M!A'(?ZGLT&Y(9M9[%U' IJMCD4IC_P. MTZ$W?PX+WPMS\'P@EXBUQ\ZNL:RCGS9C_?]#9_,$@V,30:Y'#RQ5^/@8DS(X M&;7YP2D3'YM1VMX=>);G&A]JHR@$1[-0.S"%:TSIKC8T??$W198*L- '#S&5 M/5TV^;YLX3PA=QV@A;>E,P\285V7K", 1?>@)$AD.(M0ZL_S7='NUMSQAWA1 M0EBI"UCI',@JP*H^:42K,38\@VNJ%Y7&8^)82WN+Y+IC08[B[.*H7=L=T'*/ MUZE&W]$7)7ODJ@"KD5,(JR0;JL4UA'6WLU!DVVDO;AL#R)KBC 7QTO:45X8]6U#UK(I%P6?IW:Q3S-1O?NBOUJM[(M"@N!"^B>)M MI>J2C#JMQR.&![HNZ8H@U_$4";8LPB'0G^+EYG+)B$L8D$(?RR=$'C'VHGA5 MCA5XB!@E3\8]=EA\3$6&(\B##TP2'Q0U3QU<">NB:N-*2'TU\E S3Q@"**$ M3$FN9''PT=:'1%["Q'?P.>':#]9D@G76SYT&!+9NJ[(@KK!6>;7HYG[(Q0MN MI*_42EP_)<11@.5ZHEA'QY75GN6D!E^Z90))!!X^ %1B\";DL/Z87Z0$&5W9 M]4@]S"R.[S)S^W1?^.](#E"A,>9><[/;C&E1'CRX)T08UI8#%#YNBC_W,-R[ MC W1IY(>U1J-DP_&]P:A")7* ]*9;@LH M?8!E>9RCM;VA^8WZ_'8!0-UQQ?+-M_*U?CO60M@]&963PN=FF52A;%^D&50P29R6A()_.Q0(_@CD?OI%O$3QB^^@ MR:M?)P[1\IVMA,$TH#'B&>;;J* N)*C6% 62AYP_UVP!Q;FGN&.HL"HXB/%D04U'52 M05%,*5E73&%J#=2RN$4J#3 *?@\[&U8Y*4_B H9BD:L+'.@.<=*"V!ZIL M:L*X[5G%Q :)YU4[BT]K3L*V2'YMG7.K4KJ$U;DUV@[[<=Q&(TB" (7/K&ZN @I'-]>6JJ\H>HSA\Y/O M4$UXW)[:'*AC8RQ*-A:36)C09TCL#3T&.*LB)[7BA,@ 5(2QK2^^-'_K) M$W*_1I';6:KTSL!%AEI];/!! X$[W*-ISM)(B$E$5?/=2!AW;_2RZ:K]$J"@F1A&/;+Z==_])[ /)$O2W(C6-?>;!B%.&@0L78 MLJ2:^P&D(2@)4B7OR&7%B/2P$B:G&[OU:IUE,%\CS&S'SZ\JGP.4EP6/O 3 MZX0RSER,QKF9/93R7PT63Z6J9D/]+_ZF3A4:EF &NOQ1C_I?#<, V3$]@VOT MPWX1DVV9H;R$$1UGP(;(/ M L;(=AU!X@V&W!U[L$ $J^98T3-"5EU'KNV(_F/:/SN3<&< J96JY.T& MT$C^JYE GB5#M>)J/\.3,G0T2ZE$]YS#\BY$T.6D7*#MFSZ##2D_I' 1"9]O@L]X(>DZ6%!R(86Q3"\Z(ZG86> M]P.FJD-'D N/TXOY$/7.KF+4#=9&-X3D7:&\K7B3(O\5,VN6)&O4$&;,UA]( MR%+DL[0&>DP2*OK.X4!G,5EZ^-L,SQ7DIOOTIX@"[+ X \$ZXH1;-'V'1-X$$%3D*C--J'5KMF2)4CXY^DEOP=9A,BU M+M3?1.MCU7]I).!Y4+<%J8IU3OI[PP'-MB[2QWQY\'QH@>JKFCPKR#M M+=)?JX:/@[APC"1P+&CKO6BO'S(,V8+FD+>X.N=IK>>I[E"+"U/TON_<>G=.%]3] $*Q'FR.*#;D"S=<,5)%V@C?4,:X<&3P3GV8E"P\>> MK58++9^M!*GX=IZP\SPR46 RQ4*V=06FIFA(\*-0GTE0 Y'G^SM[FV%345*U M\BSHX:8H0NW1P39'Q_6@>HY51W79Y[Z*?(S29)\T,OU8; MCU4?11>I,J[A2+99W,+G(+/PKQF M2V!T>$Z+SE4Q2G1$7*QTT;5#DF$>+5)C.#"NX5A0P;AK@V0-'FL M"Y)1T'4)U,#8!93Q# K#TV/Z^NSG;_=A4#)=%G6ML;5G:]*92J41T"Y8BZ/G M+ ]$Q"; ?>,)[: A0(8DG;YZ^1^ M*D*2^2&B=A5*ZP&0:IO5*['W!#-'Z>:]O=O&,OA[S8#M.+HKR*MHK;RM73OU M>/J6?DI1+$!XXX%K:[XF%PT++^-*7IOD$B:^0Y8_("Q2_-N-/8!*K3AF/18>!4D+7G1@PP/+$VW#-$WZ4*6]1<>@_*!YU/NQ<:$ M7$(Q"I.-ZX3NEJB\ZKY9TI>3Y?2:>'_OIO/EY&&VF(O@G*A'U[["F_L!155U MC>N!NV=ZD6;K5O6%>DX7)VP\KK]SKX?U(;*,)%5R'4'\LQ0^-\ND"N4T64:= M!;/Q<>WH)%]%V-F8/='0"2 =&KH@_H4NHF+!M)69@!)K2[5H[ 9,V]1T05)@ M6"31180'$(40(@F)6GC9T[C4N/;M?=!!4Z!IDBG*4SIL/*\5%QU8(2*N9@-Y M.0NSXFD2NM?H!051]JSE])5LRZA-: R=@0%5 PEBXQ\AQBY0"\%RC9)>H@ / M^O@5A2B& 7$>NRL_]#>O4[^@G/+6==EI&""/'6$>G3M"V/U %V+G:Q[4GJV[ MVCM M37+$L5659/K#MO3 M8+<="UJB)!.Q\9C%8"]@?0B#W904VQ,D_H/"9U:#O8 BB,&^I? J@$F"S\_D M(KS97*=V 9IIPNHI^XS$1$4D1"V*,G5M]GFU+9!DQY0$J;'=SO%Z&X^.ZC@) M4>)EL#&2QKZ3U0H@!)*PD,;$<7H'(.$3B"Y(+E #'_?YSHBI8#[?_;]^\R3/ M)3UF<^WR;=S4/^O KH'=4E<.Z#8M3K8 4-P0]AK MN]VM20"&DE)T.Y M>0 VRVC+/B+M&C(MWY<.X*F28@A2+D_UU_'GKP%#QIN5?&]Q]/AIXWOCH]?7EY^?B][Y@? M;>?IM%(J5T\-RS0L]OM/CU].IH][\<_/'CWU'&JY ]L940]F@6\Z*Y8JQ4H] M\I*BR[2Y%\'O'Y_LYU??M30V_19,_-OJ ?"O MX:-+3T;(7JJ>XI_[U)V]&?YJK'E^:2;P5]V;ITKP\-FI^./ [ME5<^)[#!BOI M4C^%OTXAY]JU2OE\'1'%$^$7?+?HV":;(69 W3Y_.OP+7W.Q5(X"TO8MSUF% M1_''*!RO?,]9.:7+4_AK^*#K>$4D0LQ\IG^*F1#0;N%K\:2%;Y;PF[.9P5MC MAXH9! CR1.DXEE+XA[AY4<.>/J]3#W[]J-DC?+)2JL)SH*,8U:\_>X9GLFM\ M_,]RZ>^/(*6?3\5GG_^_8O'6U@ /ED=N'$8]II/^A*#JN*>NQYQB\?KSB'F4 MX#A%]K=O//]X^>Z="!YQ>?SX5@_=M?4)<;V(R M\4"1FL:3=?67[WK&8/)I %^^*I?&'O&,$7.)Q5Z(8X^H!;/7C>?@F^]TPQV; M=((89Y\V>+G*C+JN@3_ M5ST#W77Q^71NB-4C-H 7.O+CSJ1/B4 )FX:IO@VA1:T!-4'_7_)_$ MP]]PA>_=&:Y&S3\8=9J6?@NP2+[F8K%<@1\2CQCB3PSY '^U]3OXS$T^Y"_; MCH8+W' L_'G%:'<.U=#*!L,%DGOU "J4 57UKF=KW[I#ZC"WX7M#VS'^8?K\ MR VW,^"2SFEX0GS+$'\07SLA.M.,$7#TQY/2R?59B?]?.)UP_/3G,X59%O.Y ML4 MC:>AUQE\=5G#=9G7Z8.YL9C>LIK?M2&UGMB=[73&S $WTWKZPL#Q^F+0OF&" M]DRNQ*83_]J]79QU^6P+I-,)RKH+S*3W"]^!57B"ZC1?JZ,'TKA]J?R13@MM-('Z MTWD3RA4+A O,O?Z,_O>5R[U\>#7AKOL5^DD_OG.-T=AD[X+/ANA_OL-I%4// MY>-W5P=3?3K_#C%<= S^JVO[#O^->_A7P7+0ZJ]=3O XXP8^_,W0\?>!P1S" MAV6QX=5-Z[_SIGWQR]?A1_-O'W/;%OX&LNQX:%JO9U,,OS?[VW2:>N31*K>O M\W\)?P\'.9TCQV;4>1UMV5(O( )[0ND5O^HPV/>Q:6B&)^9 ='#T+!&BA_+> M]8 2^)T;D[J@%,6\OQON"?=^KU:OZ/-I["!3,D[G<@B,G;=.BIEO8:9("WC7 M,WI.UQC\96O^*&%+ES\+\K,]?]8HQF#Q?W:9"<;IZ6=F@,76^-)0L'#*9LW6>E1J=$ !N4(#,H*!GN% M03DY#,H[<)-"&("J U=:&P)9;MDS,^TQ+B^@R1$P/\'Z\B;YBN6YD_(;V_7 MS:'F42CTI=7D38(5.X]".N-R=9(R\L&D5IN.6"1(FI_X,8K@2I[=# V+'A[' MHM/.%;^^6@:/Y>'MDG+-=;Q95N)G9C\Y=#PT- A79NQ;7L51,3$NM:24XQ*? MLL@:Q9%>Z;B]D%VIJOWP(M;K%EODDNVW;>3$SJ7],S&P05G;GU^[!P;48.)7 M7[M'94;7A(]S;DKIR,E4]>9>1H0Z=C(,[A"NCR M HZ1?QM:T,-EY_[T[1ZMZ4KN*NF4FW\+07.X)=+0-'_DH]71.]Z0.3?V:.RP M(=+LF8EM"#FYN523U/S;QW,;,'_;@E_=^!>P<=')JJSF]2Q#.M) M4A'/6N5_CTDA@9&M"1-A6/$(I52#CQ* M*O6R%Y\\:SXJ8R([AY1-V#-?5MMM"52^+$9P,6'8A1UW2*Q$29? M(3;"##\<,>KZ#KL..H!?P=_"KX=_"G_'[R^]*VA5NOBZ0"CY'S=Z'XS_L/!. MW7@&BD6?Y'TLJ6<[6ZYBZ?OXX2VS[)%AQ;TVZ6KF7G$Z/_MUBWZ %ZT@X1A^ MW(B [M\#;^E=ON=-@^'?^"+GAX^_U/G\;;Y6/RIT^MU[J_(V?@[<6W3 MT#_!%TX]1"U_?MUW*O'?.0W&.^7SN_X\#K]^UVGWBMW6_S6O"/88_T3X!W>- M^]:7/ZZ6.HZ3^\;CSZWV%2G!>DA,L_*3Z__YH5PO??I\.DY_$ U4 '-P8:[G MV-;3]==VJ]>\)=U>H]?L?CX-/MW-V-WFS=?'5J_5[))&^Y8T?[_Y3Z/]>;17([<>;CZ12.JM=[HA"Z2(@^:(_ MNV-JQ8C>Q1BD_:[S>$\6N@8G[=V\W&*=WPYP72X5?UGN&XRSN,Z6U+'2-J=Y M^K8#2JD(<]$ !U>E3Q%ZX, 1740T9IICJHL[8$I1W12^;+RQY1Y\FPKA9X M?W+]_IXZWTC'8A_X>J,*<>5$@\_%5/,[#ND0B#,OWQM M//::CU_^((_-A\YCCSQ\?>Q^;;1[I-? M)HG8BJF=:-ST\,_ERVIM7EDD D!$ '>/OLVE/PWU__$2OQAG .YLAWA#1OX. M,4:$ET^8I3.=3.U#6E@6%WE,;P^)WD^B8P /+Q[J=#)AX P#>NZQV2"IE@ND M$G?!AF+^&VQ_QSD0LAV>QN[A]6H&MN/;1&77TE#9&2!FYC*%ZJ#WV&AW6UQE M;Z;-9Q*[' KD4[VG -M0AWM3U(5*? !?)'\N_!_Q[*7/%E:XEY!W(R<\YF6" M/$63#;PKZGMV^('#><0_$;YL/3W/7;SP_/+?G_:HR''OS' Q'4X&!I#0\C%W M?25(&Q X+3O>Y)G$.QBF[8OM@%*Q7*I>U@[=-L>GA'X0ET61\C0UM)[C*]:P M]Q ^);X_LB?>V]WRL#7D\@AEH]'CJ)D%4OZTRE4+>WC>_ M4\WCQ"'V@#A3HA#J$G?,-$R^Z\2PB.&Y1!MRSWHQ\#YN%7MQMIV*W4P*:V=[ MQ4'*2A7KAASP%GD;9[Z=>2/:J-W8.EOV(%U\8NS8S_@>C)5FB>)6L8__/LJ2WM!UA[EN\,\7PV+ED^MZO79&RA=GWI T MGAEI-Q>%O?#V?995PX-#VO4-$,KR[%+*K(:]@1\[3L]^ ;/TR/21;>E9#\D5 M3L=Y (-H\/O:WV OTY[;@PV#F_]GC+DEO[Z\*)V]DLO<7^3 ']29%NCF*]\" M96 "?E(((A 6#8=1089:Y6R1",4W#X'78)@/0]N:QJ<7%^5BO5:+"U SV6U, MH/L#6* A'#N 5F-,3<*^,\W'2[/@8S #S"V@E31]U*WD'V,,Q- WV;Z;ZMGJ M+O7LNFWM76]N=X&@CN$9\ H1HS$'PK*Q[[@^!FN>3> );FW+E??]#\@.3*,U M-.^*[,3VDLV-;_!W$7 M^\S!G_NVY]FCF+^_T7;/N^Z]SD._=#/LG0 M#E(Z'!0LN,*<@()X&1KPR4R+;)M7W)(X^W2+WVJ1 RT\*5?Z7.A$OAIHRLNO MD^QXY9=V@5@*J<1T:ZNS2+",Q?*0J1@$19+:[\L?R)"Z?&]))]0T MX8^XJ8U>U=^^@3X5N%)]%CP [YRZ555,[8@-X,"YBOAD(5O0X<(_XWXOT>&O M8(?PT;'#-,:M4KE">&&(2][#^X"!Q/5!';M#&S/KX6:G-Z3>XMQ?Z/PL^?X8 M_W*PA@\%0BV=O*^(-?8!!O#W_E^P GR>/PI?PED$[\']?9=/@D^2NAZY+!&= M3MR/:86--[[CP"BB=@#E'T)7WSVY_@/KP^>Q28)B+]*VR;2(8&= VI%'ORUR MD:/ S)'A>+)6.D/L/K(G/ Z,H.\6>^0]$N;\4Z5:^1@\X T-OA6$[:,_9(UR,=\I>)G[ M(35H1NB%Y J0JJ"Y*30!#9288 48H1I$8GA@!)B'W')0)<5^2H"ZQ=@_N"/ M-(SBA"H#&#R"Z']20 T,KP.UA1;GB3PY]HLW#/_\,3 ^7<;X#'4V,"Q>0L*S M$__SPT6E4OJT8I[\K^5/!1+\\,H#I4\K9QD\R%5Q\.R*"8=/&I:0/_ JBY70 MN$0MRLZY*DN,27%SE?PD^\:%G/=MY>8OQ(6OWW97^)U4MI;ATOP>?M+FZLT6_IG M(U+"1CCCG_F$;\1\WU[3^BI&TBM6% P;#BI,7,<6\ MX,GA6.8$!W\Q8&@T,+@:&RW/L^%RG.(50P8U43=B_1 ^C.>X=>KH+L$-4$-? MM0U2?4\_K'6F]N/%RYL;X6Z\.P3W:FKPWP-SN1LM2@#7>ZD0F$'DE%9PUL6) MO%$]3Z.U^@'S><5^(#]ACVR(9J +(()D3!WR3$V?0;SD>UQ<4&XH?[HQ=@R3 M5$OB$-)\7;4@WAT/B>&-43GD;3B]:QDBG3<>[%]Q2'^;9@"+ M5NOU@(R;RB7"O+4@"C M&Y'R2CVSZ^G,)'_:F-(E[[]:U-<-C^D?MIQGEA)=W1)0 _Y_2JR56*F>N;'G^D,V;BH(4KH48HGRF5(-<[GL7YP@7]H'UATJ8OFLM8OO M$=VK)1 'YGP*8'. M0(#. GD^DT.>SU8FLI4@'XW0*4'.0'+J@2#7Y1!DF$[S^]#H&YZ4AKBFY%>N M=VXKO_NYLVH&].[/)]==&(5Z<3[G'K5+IN*S6%DIZ74P MEDL'8F-9D&C(M,_(LE$$^OSH98\S@1]*AYE9H;;'!_<,C]V<$]_RV"H_6]9X M[)$6*9*[5KO1OFDUOI!6&P]9KCZZ>E2$VXA@>"IETX[_TUJ !4K.W_*3\&5Q M1V*6>13\OBM6K5>!BUW7LE.)H0V^E.G,Z;I3X5L?Z;WJ!)7& A MU.1EQL>]=[=B1>)L5YQ'L8D/2CMK!;+'"ZY6="&9 M\?JA<7O;:O\<)?:G_"B1HP+<+=,87OR%F N7'OPI^^YG<<@KRXJ\?>I6$2W] M>X="%F!^,-BWX=S]TA71=[WT="[H32/-'JB>1K<;'U4J>"B9S ?1I9')FZ^/ MC\UVCPB9O)*!-CF&A2*Z5++XRE[UCH14Q#2&A7>R\W> U%)WR(\S:/@#7K;T M3$W>U4L&@L:,'!^LQ<_G7ZL0N8C"5R- ?O\,KG"A,3;N0 T,_<_*R8H>V=&. MYKY;?*)T?(4T;U@Z_M.<$;SAW5#'P2;XOV+'[H2MLHO52*?LK]U;6!NL@^'U MR-?E2J%R65_JEBTA4Q6 M9(%WW&D,V-8W60'>QB^-Q/L,7JBE,62;I**S-W_BJ'V(G(Z<)Q8?H)L8O8\@ MR7^);OM];^";,RT'6NU?J^S=V642_TFGALWOCF:-X*6/4\W99EYGT BU9@K6 M[KRZ?,T(^LDKUU O)3':.UW#Q>72&@I@;=PQXS>=FA,9I$%FM?-F1^XL75S? MV8"11LMZAE]LAY]C MEP+?QRM9YYOD@$+&3$"<4A"8>J%>D4]@.M?A:@A7J.W6LG14J,:GO?=-=QBXN M"O5'NC^7TY'SQ&+9';^3ZP?''L,@DP(9FQ0S!);.R_/&V&" \&OZRI^P7$0& MR%4XKU4.(EVF@"L+5\;\[@*^J[ $K/8TV8RM:9ZJ>&VX5.1IH]H-(4II"%"]4+O8 M7(*J2O4?#? VJN5(#WB7A=+9YEMT^P">3%V8]R\"TC@YQYD6S.G(>6*Q[*[@ MK+G)EU;CI]:75J_5[))&^Y9T>YV;__ZG\P6,4I?G?\\_D>8O7UN]/V1K@**0 M?/2$5BQ6RBK:]26BK&1I_:(@>O2$5BR63@O)45T?GD4C8SK!0VLRD/%@NH]4 M-JMV#$C]("B=7BE:N5"KJ\WN0\3/9A6,V>&G>NB5C/O>BI@J4\=G>$'!:,PL ME]^ (FM[,&D\@+=+T49E1\W1V+0GC#TRDWI,_V+0OF'R^ZO3%*BSBGQ5(#D= M.7/X;51]M OX50HU";O9':!S?,L&#)BB$X<],\N7U3D^(EG:J,XH9,^CX$ZZ M#K5\ I33D3/'W$8E0AEB[JST^D:SU$I;#B<\*"4-7'%S9F EP?,12])&Q4&B MV$ZP*2,OO%9=[NLF 1_R.'+FV-NH/F@7V"L?>$I%#A>\96GVB!&/?F>2YJA5 MG36*WT;M7P+)$[SM(6O3:(5W$ 76"K&2(+:Z4?.7UQ#[#W-LG;K#I& M'@18 M#\K[C^OZ$BFVD$L$I9&T% 5JH\W03+RNL\+%I7PQ=$Y'SAQO&VV>9H*W>N$\ MIG/XOFFO6L#(C?QC6VX>1\X3BV7W D^N.V/F4,^PGHC)J,M4TG>79CA1]07O MDS]ETQ?D4L0BMVTKE6WOT';@ MG7J!K JGZVMK+/X,XN@_NPROKV],M5P7E=P]&_69LWP)2O29[I Z\,7I3!+N ML90BD;=X!9;@EDHE_-]2Z$U<_DB!&)9F^CJ$^#(@1HEF'@BM6*RT;ZSV7:5Q MS^-K)(($IE0:M[)>WQ)[0,0T28/\+WS;=L@#14(;8UX5)0-RE(CF@="*Q4H+ MQVKAENMBKPZ\N=/V/=>#'T Q%8!(EF2'O>7#[IOWZFH;WMH9-6._4M-GQ[9' ME].1,\?9AK=T'CW.Y,^7XL8\<) G2PN$>O 3-BTDS\@.E3W-E5N1TY'SQ.(# M]!P394_C*\_7%+_95MI!>K7T6EY4!@ H24ZQB MN#"LY0!%3*+W]NS M:/$G*UZWN3$IM.W:'90+Y0MU:EN2D3.'V[;:*#6XE0H7%_+=Q2!_[K:A:?[( MYY?,$$8="PR"2][K;&!HAO=!$O@>ON"\7R4Y9_']95C/@5(1[ MMX)EV\L23!<^GVN57+BHEI/+U":7YWV0@+?'C*KX)JLK]/%N454IE,K9HDIV M?W]>ZXJV1G@7H,.&S'*-9X:UK_9(LIH&U0XWWS6@SP\#T+)[^BM[ MX!_*P5LEK2BM\<51*\P/C["'MJDSQVW^[1O>)(VN:!>%2GUY>UI&F52PE06V M:X])[ :VEX6+L\.X^T?V\&6E*8E1PY3RS>.EL!'\'DK!]/+J<4>L7=O.NT>\5NZ_^:X$SC ME G_X*YQW_KRQQ59G#2Y;SS^W&I?H:_YB42LBP;.)G/PS6QTW64,B./!-ST; M;0J/5W@R?6!8U-(,:A)^!H4WB_Q\"E]96/NIU[?U"?Z+EPFD/]V_?-;OO6*K?=ML]P0EXOA6333DC!/O MQO2)%?L.H]^*= #ON"+4?*$3]]TB+]>]#3E/R=!!\_\#A",0JG FV ."#40% M/.AU !&9X1'YMLD&7H9PV:&(SX65\>+N>HYM/5W?-GH-0:O6:8?<=!X?.H^- M7JO3_GP:/)$8%9*N\*;3[G:^M&"A30R=X1_>])IT[DCGH2D6VSV:U;XW+.(- M;=^EENX6"/NN,8#RF#FBIJGHLI''>+P 32]!'FJ#&6_KN]8_/7""&+D'X@Q=TK1T<);G M]=!.9Q,Y:[.D"Q6V#QS;E5UC&S/;:X$4NZV3&X-R;+PNR\KK?2J2O2?,7G%; MCFKIBNA29RSW4M/;9AYQJ;PWDZ:Y7YC>KN#YPD;U':Q-;%27X?\]>]U9B&=F M^8MW_VRU$U@K7-;/I#L\)-7(DJ+G/!8]Y0AZRIFCIUXHE>5#C^P%J=@VS/4P M$?]DV[J+KJ@N%_95Z1Y*V,6V^AG9VQG\C,S%"@[F/!L:<[O YE1N4Z_7*P=1 MS:>0+ N2+[>U%5DC^7SS(B15E_I*76J%UZ7^[-BN2\3C,M)TXA$54NJ\X0D(V<.NO*V6CU=T%4+U>KKY1PY3RP^0+_QD;F,[U!C"S:=/3/3'F,MJ0SD ME!FW;S?GU>W3P8)E$*'=SAC6%$8EC0.$A7I9O@93.1TYP%G<$1+E MJ\:4W4#GH'Z*[?V0[, MTB*:[SC,TB;$1^/WN< ^U:U%95".'9HKD;GU0?H,D!FYS>/XS,=>RDA:4 M,K3Y'6)/V]$-BSJ3EL=&+@@JCN[8O+HXS!*G79KR>CWQH=N+X\3FUD?N#P2; MU5+>[R=O3=4]>1\4HZ,IL-C D.P,;*X\LC4R^8;-Z$#6 E?L)\'E-+HJ)MBC M4$'"\4+R#;O264&R^L8C3%DK^[TX_-BX]G#209&[*7?8AGP*]W^MQOO6&\7 M@*SJOR\JRYG_6/[*<,NE0ML&:-MZ5S@SM%6KRW4^TF)M6Q_\.%$OC6=RG-7$ M.1TY3RR6W46 E)@1_8\ M:8Q.O35,'^^A5EIU \G8NM)A43("ZBN]FB?T;%V-L /T'(5FE<-;_8W/D>E% M"H/3)T;ZW'WE2E6=@LGZ$$*YO'5!0LBXAN!;VQ_UF=,9"&GI^)[K40OOI]_$ MK2E%1"\0N^N+0KVR045!'E!QS'CK MC=>$U<10]S8%A M44LSJ E3@0_P2@?W\RE\98$.IU[?UB?X+^V;+)6ISTWW+]_UC,'DTQP;^%CA M0'W;T9G#V0[6ZZK$^$G.AQ$*I3=\$N$1J$4FO^7NOV&K?-ML]08DXOM42#3GCQ+LQ&/UB MWV'T6Y$.X!U7A)HO=.*^6^3ENKYP)]H!@5;N ![T. M("([/"):X*V8"&6ZOJ#UZI557M_.!-SU'-MZNKYM]!J".JW3#KGI/#YT'AN] M5J?]^31X(C$.#F&Y-YUVM_.E!:MNWI)N#_ZY!WGJDLX=K/W^X;'YGV:[V_JU M25IM^+U)WG_I=+L?R'$2X[UA$6]H^R[X]ECF>I1K_-IN?+UM ;O?M,#SQ066 MN=^R6I>M5S.1&9MLX&5FE3+UK';M/P[UM*OV0[1$@;QC?/; :C)R#\09NJ1I MZ>!=S>-TI[.YY[?\5<3.S$*VXFPG?7N]!*:, ^Z%DBQATMV'A K M7J?#Z[*LO,ZC(HD@(2[ALK=I*KIDOPL9XVKO[%R5XSM\>SZ**++OM6V[]JM\IHNQR:5N\OQ_C&]=<7,ZGX< MY>UO+D5M?!-5QI%&3BM[Q#8LO3=C=D/'S2G<.-VT9^QJNWJ>[55D"HE9(7'[ M*T@E16+Y0J);\?;BL=VL]M4DP75\]E':!A_E[2\572,DJ8"]<'&INLH<)>@J MVU\[FC'HSLK'VEQ&U=CNW(0\L?@@:FSW4E?[)@(353Y[ILIGWU0^ MNZNZMHB76):B7#Y234M2+*25:W7QQ;-8.]L%U/[W/YTO(('==Z3YR]=6[X_C M6?=&^KGI5LM6^IF,W=WN^1['8K$BL2'_Z*%8D5 MB0]\Q\83F3WAT<.8P:**S+.X/!*/9>"MH:F^2/?Q"RBK%3> M_PR4].TZF#\ &ASY^=(;>S2R+=+U;.V;K/3?_PR.P (\,H\:EE+_1\UD:NF$ MEY;(2N/]S^ (N-RS/6I*25_E,"A'4MH9**[(.(,CT,?AS0BRDGC_,S@")L\5 MZ\I*Y_W/X @XS6/AH6WJS''?24EGY6;M.B^S\WXYW>"B%CDZYB@\[!L/#5Y' MIO"@\!!4X=VR@:$97EP-GH)$+B'1"DZ1?A&G2!4L%"QX=/JW;W@36?!P:$TZ M9G3\B9K4TABA'KEE&L-[4+ 3*JF4L!O6.EQ+>(Y6FA-HKTTQE>MO*@NWGS7< MS@#95BQ7BM7RG\&AW#_%7B@/_^XY?Q=/[0JGO.6Z?N)[+U?<=%.N%ZK5LU>; M(,AP.O= @+Q)FXA_20'*2DJ@C*0KA*Y/",UB=>GX."P(WEP]N:Z4"J7SY;M\ M%3X/O&%!-1'FPEJ!,+&=/?""O@41!)8+M;/ZX?0PD!N%!ZPE:XD0&ZEO7-5: M8X?:LUPH59:OLE:PS1%LS];!=C<@O"S4JY<'@4+Y^W5Q#A'Z0AW=)08/ KP M-0_/X'OT.WDQO"$R$*RE7,(E3:"7IG#5D[9=VM"+%I'=K>\ &Q^88]C!!:>/ M#,)[0\,+3_&Q!L*@S;S.X,YV!LSP? SKMH\'*X72Q>N"FBL,'3YZ5_=SK,1W M%LT"OK]2TV1Y_ZZYZ/:C$JH5!-W&=TF3$P-FO\PQ]:I.TSJ!1657I5C MY.P!'-\!=!V WQ8U*DS+@:S#Q_1J7Z&Z=8?1_'@$\F\A(AOXWB%$BRZ/)+TA MS.II>$6:W8<'2=!\^'*T6HS*.XX8FZ.Q:4\8XP\]^(XVI"Y[,*GUECBQ6BB? MO[YGF"OD'#-F*[L-$U="-HU>L;')5O<$C[D1@2%/O !9W?^PA:A]_6) G,#U_ BA*L M)8\C9Z\@L]@\1FG\"87Q)B*+:91AGE](IQQS.G+VP-Q\6SAAX)0 G3)?B7K LJ.BFL/FWTK=5TM< M)Y \J@$QG%U*JHSP48R0>Z,/%>^-$H._FW3KC@\TV3J>3+'&V\TH1& HE)H4W.RO@D MMC--GI14'E&P6I]N7J7Q:I2SR@] Q]8&7Z%)PX'F&A2T!;03[^?G$:CR[T+%]'V\ MIXXV#)L^EE731ZF;/M8N8EOP;%?=MLJ@Y6,MP7$J&5 H_SYA@K[_*@24.P0\BV]W7=Y;W_\ZA("ETOE! M2.B! /GP[$1\1^O-09E1"'AQ<1@61&Y\2A8"QK>C7L2<#"%@I5 J+^<@5 B8 M-RU93X18N4+ RP3'?11HCQBTY^M NZL0\.+L]1)/&5 H_Q:@ZOJOCJCE9>3, MCVNRH/>7Q?[JE:]1;4Y'SAZU\0=-MP\' M5>]O6;!SS*B-/SB::HBH@"P+G(X9R/&G0M>$C/(V>O' M^*/%;PNJ,NN!>_GZD;)

.8@;GY'J_J82\).(X9EIOO[JH>]O+BY8B1>IYX MES?7]EO^S3+5PUY%-<1L^_;?+[Y1ON>>]B7"Q>5UYMX M'7IGN0,&VVJL;;Y!KKK82P>3PP?H&FV8>#/\B-2=_-LGJH]]RC*C^M@K%.RF MP_?YYH4:JH^]0OFAH3QQ%8?J8Z^@?@A07^,C;[XC?S!][,]5&_L\(SOQEGX. M<2K_/M1K7>PKJH6AU"T,S^,;AF]7WI5."\-*H5I77>SSW.?H(KZC^'8'N5)O M85@NE"\.HP.2W/B4JX7A17Q/\#<%H> M/7PR,"QJ:08U82KPP0B^Y7X^A:\L$.+4Z]OZ!/^EX.&E,O6YZ?[ENYXQF'R: MXP,?*QRH;SO@UG$?"@+IJQ)G+&?QTBB!VU4J_1N<1T#-[G_(W9?.;]VC6>U[PR+> MT/9=:NE83'DLR_K:;GR];0$+MUA3IGF<76_G#7617HEDN9?*I[/-7.T\5:9( M?#1YH+WS-+TBE%!'S6!2W[56O+,=4/:,], 38^0>B#1T2=/2P6.?UY([G=6T M4F-]D8;"^"%B/.L]U24TO5KM$UL=E1L;=6R\7G\Y[1YYG4=%,JDIG83^Y>^S$LFIUN>)ZGQB3_6!.C%YNZ+CIQC>$<=?88&]8 M'X@]9@[U#.N)H,I\-CR#N50N*7WXIF%*./@9Y/A#PU+;T3XET;<5=N@05D>(''$ M8+R,[]J])A#;,1@K)?G >% >G=#Y>,1IC!$:\1QJN0/F..#)\1)?U\.2S2?; MUEW<+]0E@?XQ"]UV=TM/>=B;L;!GWP #.X.?D7U=X%X:^K]R)IW(Y73D[*$8 MWR_ZM43^^Y0/T^-5]=7N3K\0]LG-]*TI.1\X>?O$-L!.X]]G![_SU M-@U2JW0Y''K<"]>&U'K"UMFR9%ZEE:1C6VX>1\X3BP_*QZQRA021@,X(U328 MFN?B)C SGO'8I0STE!FX*5CYK2\=;UF:P\#(WS+Q;\MJ! Q\G/(OC=9,Y=>[ MVN4*$H-RM[N+V@:P/,*;6&*T>,MZAE]LQV"N)( ] M:E'9ND/ULJA$.)>FC%3.S]7E;/)B:S6TXG>9M]+"J4!KBJA:3>5T4]#4P25: MON/@KAZ@B7E*96>NLBNEK:^Y7I8KT315<+#!&9BFYK[<(,^F%+5&M)+ _?(%; MH](3WYFBC!TR\SEJ8:PE8WJ-506EXBT,5O#+\I2[(KT%W6Y$F; MR.&,W[*@HLYA$"KY*N>=O9NT]=7.R_(3BAYS1LI!WZVOE.+^)N=DV[:"Q%E&'E+E+-N= M)06UK*"6XN;E;J!6+F4; 1ZD-SZV7<-S>4[%7E#=,F;*T-^^D(9 MT-T%TF;.S09)?1F5?B3T.#*$2BL;Q[;P4I9>[!ZGLGFU,C^&;U2E1PWIFKDJ)[CPENO'5#Z\DJEHA'[-) MB2:Q!H>N^8\2:-6M2^;V [0$"GT?%19'ACMI$7]LR\WCR'EBL>S.X.HTYUVK MW6C?J#2G G%>1\X3BP\PS8FU/!"S@L[473* +Q/#=7UJ:0SSGIH]&H&?ZWJV M]JU 3.;RT[T\\2 #O16P\T!HQ6+I=->^$VY"=ZTL4(1 F;C8[MNM;B':!YO(;]W-D-$G[=J=?W0,:&!;P4N8]("6Z7'0WOLOHE5S^7Z\&!.RQ#$.>VL'R-_X U;,] M>I7/V<4N<67KFC24/_Q?<\:O1^9ZCJ%Y3,<_-"Q]_H/(DP_,,6Q]\?AE\[MF M^CJ(+_S ;UUYI!YK#@9,>T/%4-PIKXN::MMYF'#=NCCM<.%ZMD$K4%48<7@C MYRFCF].1\\1B^=U0H:+Y(0H6:&[B@.H.KGJ#/PB?5 9JR@S;-.SYUM6P@HF= M0=3V=JPW6?DTC78M6Z.M )D5(..[X"5P,&4'Y&5)2C=R=VK_9E6:@5"/]!E\ MQ\),.!ZMX^Z^))A7&<.H>"YT#FRXG0$7R7)E1V=B%NE4+G/(^>)Q?+[E>')OJX_'IL,C[Y0D^B&JYFVZSOB ME QZG /3?B&&)8P!J&]URB^7@,[IR'EB\8%D7\?4T(GN.YAG]88L"'[16[V2 M@8H*KGD@M&*Q=!I)DKL$2,O2[!'#XWBRG8/()+^19A9CZSI20?,>DOP!S$.; MI=$=KE9[/7640J_X;'>==J_8;?U?\XKP*1/^P5WCOO7ECRNR.&ERWWC\N=6^0H?M$XD8 M$8V!?7#PS6QTW64,B./!-WDS!8MOTU./Z>'95FK"\/!!T" &OK*P]E.O;^L3 M_!>O=4]_NG_YKF<,)I_F2,_'"@?JVX[.',YJ"(RO2IR7G*M+HP3H*)7^#782 MP#FF.AY ^/&DA$P1"XEEYDD4V,-Q?^C,YK,>!G->^<*.6-\$B$3*(TBO^7NO MV&K?-ML]08DXOITG&G+&B7=C^L2*?8?1;T4Z@'=<$6J^T(G[;I&7Z]Z&G*=D MZ*"9_Z'7N3FY[G$FV -R@QX'AP>]#B"R7WBD,,C-7H.T3COD MIO/XT'EL]%J=]GRB>*?3:7=ZS2[IX73:W1LVK6M\(=T>?' / .ON M<9+OO[8;7V];,+,/J<\B?N0(.H1'VO9'S#&TF>]-\\=,N9AU=DMO'W49\Z,QD-@1I\Q M"T)BQWA&QPD[[N&;0S+$LQ"7&0#TPWH!2L.Z(OM2N+G,04;/"#@PA>,/;;X[[[% M>3 &JFO&&-'SQ"SF\)?#W]G8$]_%!7^U^'JY;N.H:G 52^=QZ/H 48!1/!A# MZD_O#UQBF <^"",C4(-#%ZL F;XD"0YW:J=0,#@A=)B)!QP*X1Z^E[-A1"? M1<*^CYG&>18,-F'4P4%P(HN\KT20XJZ05'=H^Z:.KP;WBQ,*F/N7;XF\#:G/ M&%B%(_$G=*8%VOH*PC'FF(;%3JX?V3,#LTH>X:]/@%WX,U@N^.X.[=8J9^1\ M6V("NDU6B"B>8I^Z M7#:>(:SWV!A4@,Y,U"@@770\-@W&6P*B*<%E8,91- LD&HQE X6GVJ7E1=38 M=-106)P9[5!9. %,4$/"_X]0)PJM <&0R8]"XK>XQ=)9X!3 1%Z&AB;$^T8( M;*!>W&#.(-6&9S*] *3S<""8C?V"ZE=,!6\+&/%8W&&>[UAN@>MX'-Y%R^!2 M4\@^ONB9P9_!%+TPM*2NV(/!)(,9*#2T2E,ZP-R8):ADFT3T4$1;" \92.0G M&TTBCL&<9P,GA#H52&JY ^8X@M!\T<$;/\;L!AV;6OE-V M3.UX^(N!'16"^B4^>O2-'*'L.W:>F[XZQ/^MJ"&8^HUH!@J=(#39' M@!\:N%A'B,9 3_W#IBK*'Z/J"<14='L.1'PP+^#P@^YKWKR,8PIPJB$VTG8O MH>N$[X!I,?2SX W3\^%"M=HNBQTY A#N .L,(0PV6A358+EH2 M%\'$&_UYX05/G@C% %"V@_;"P-6 )SL,9B%'. C992#"8#TI# M:+!@\>!XX[%Y\'2Y2\\;=/>!S?RK\\ZE.P&3-Q)J&%YOZ=2),)%+_=B'[[K# M&7.)"QPQ!MSMQ3"/JPZ'LVY@//D.3]_QKT[?:(_GG' ,@1C:1IQ:N,#(;+30 MN=49B)^.=F<:$Z *$!:;@Q+XBJ0,1P+0ZA&"\OD&6@:)A1N*H!ZFKC^*>I]Z M2$ 162!KPFL<^5JC1 0*<\1,"3)/B +Y&YQMQ .P"D$[IA&( F"S(_,]<^E*BI_SZ$L#98];2E)$XW&!P_P!Y?L[6Y@H(S=P*# M8(0=F&UN5F!:#A/$/CI?OC><:3>'F=P=XH%]0!H'=0$W9G/,XV U7 X+C+:0 MX(8[TYAZ$E7)N1M5BH6 "3/?T7!#[8#KQ.^&2F'J:L9-*]2>**S1&8HX#L$X MB5_/-$ 56B1 ?0 B;B1!J6 *IR"4'6 5?$;/,?H^C "?BH> GKKXU9D#*5=5 M(Y>9SRRB!"(3#I7_"#SR[P;>GNI^0P^%@]L)_ +7 ZA#4)YF0J!F'^@D"#L MIR(M$%WKT4'X-^[J,Y1P#$\;1'X_!GYP]( P%>&(#[P7MQ0C8ZC%+ M&,GPH8C)QK!%0T,6ZWGQ-C%@H D3I?:!48 _;^&@BOT-TFNKV"..%+[P+ SY&&4R&&(BOX44!WQW?%>H7S&@P;AF?D M">;-8\"H\('RL,-W!H9T2DXW.L%8RK\VF1?D_@MOPN,$#E>058I]'1@0]D)- MP GN" 8T@3@&GNBP!50W+5-?<:7(!R>4Z#S+&03B&$RO,#>W>1$0WRT6[@#^G,!$R% M!F,9"%P3A%.33\N]J*S_KK?P+M97_>GXT2%#2::EC M= LT)GW9IV=G%]K)FN_N.,'Y&R;;7H2IFNFC,/XS)UR'KPKFAVR=EQJ^+?1, MC>C^#']!Z(\69@&'B*DML3T$-@1<:$PA@NI?Y8$X#%45ZG(>6-%0M_I]M+3< M2D=-'8;"_&.\$MB-4!6#=)B,@78QR,^((3!#$O )S8\@ M39 7#NS&E(UB5P] NISA094SL^:/ M@2WE683DN NV)B/DB.!0C!GI%=R+?H!N#? _3TQ?9\W_:]<)=UF7@\N18N(YH=QE0=YFP@ M_$#WQWD6CJQ(I >[(#._4F12..D\\&=UGK0,APB?QN6%.REB!2CE!N:OPI$? MQ/UW0=X<)7"F0ZLEX,,D2$$MQO9'J,:FMB:L-YCE:WT.VM#/#M/O!H]KF6,! M%S .$7[M-QX=C0A]IH;)G8N0C]':\5[)T-@+8>X$*G&:= MIS4*'/RSJ0O9G"6G@\ I3/")*H?PW:@4+&;R8AY^H4SD>Q9J"-N9S.> 0V3S M6<+:/53[UK-M/J.8#7RG#Y+#J8!*-S)?\L*3#IBMB>2 \5TB2Q-N)/)9!J4V M?-<%DS-820-!K2-2DGW?!9*Y).9]^VOX6;/D%. ME.N(J$4QW+#Z)"C&X'E^85=Y1RC;Y6@4&Y4\/#TV8>S-(5N$29&P4""*4\1% MA(WH7[BW"%KNR<8L^=7>:QCJ\=>3)*AAN#5<^O2$Z4%1-AFD''B4LJJ.X;5( M,K(($\QN9I%EIH<;=GV$8ZBGW=]I->2* M,NPWDA75]EJVQC:WW!^KSN:7V48MV61;13G[04>N(3GW_J MU+#_[ :;;0U+OY_MW-_STS0KCF&D<7]JI5 OO=Y27@(V[VSD'7E=JZ^Y.4]\ M/"[-_U;%D_E M0'3#>?R5X3&=E/:J&ZJ%:DT^W2!_.\V&3L<@Y)+*A#0N; HV-O$-=4*. L9T M,8F8N?24"_7*ZY>3YPD0^[>LJ>'EC?9TX0HX-*SELX_+#>VD-:Q'I$3.XW<2 M5QKC'2N1R](&UZ'+:(+W$K2&'E/0N&3J,TD"ZF1Y8PGD;!>7K=53B7=V(X_G MU](C]4/ MXTI4^8/]GNU14VIQ/(J;^.H7;^Q9E(;4U J7];.#N'=/;AA*X #$][)? Z<, M(O[SC\M@DMRT'X,NJ9831_P9ZI)ZH50^#%T2>SXS[GAO]#SD457+)^WYUQV" M.U?\B1\APK9LS'*I5(W_MC:B?&5\8=%U=<9!(^)6V"?NP:26*WH"+I70[X97 M#3P&Z]G:MZ"EGQ:9+Z'@;^OB%%;0V$N?G?B:M<3#CJ[B$(D;]A[ 5JK\3 B> M=0E.T<\:"KCSPX2=W,*^!=B\!'12$5&"1P.']K3A00>/(''8Q$R7=Q#0?2TX MIA*9H.T,F.'Q=JP++6*B$WSF[;BH&^E;:UC\K)XXE3OM3XL'&C4/^SE$WZP; M SQY$QS&POY:T[-NJ\_X[T$)Y/J4_Z4ZY;_M*?_I67ZYK$APT5F/?I?&;ER^ M^0*Q]7UB=\6"Z!URX6GXL<]/*GK3SF?,HJ(+%OV.75NPW17OF(F_:Z"/\8 D MGE04)Z-!!S"A;TTC; 4XK^*G?5MFPXH.XVA\\-P]ZG9^9CCHVATY+,W'#+LH M:$'#RL&TL=;(#]H8,=#4HK,F=O<29\+YJ>GT:>=LAV&;77"XZ_&%$5D[#MCH*@;''Y=H'W0PBGP/<(&O(0O M@)_#('\W%DQ=".8(V\$WVU@IPJD5-"KO$#^M3+0OXPOM8K+]/,3 MP<[DSZ_=5^ZO2QC]E1:"O^M:K5(HE983KQ%$(M&QN27V;ALR4_2X0+K$.UPY MC+$>F29T24.W>2_0QNPB@0?'MN!G+;Q02@[K>988@HNX:[.7V>KF%R?LJ1Q6 MM6.1_Z7@78&,AA=71!N3TY!1W:_PQ_)EL5PI"*K-/!T8_KUHU7Y>*WVX(EUC M-#;A[:%*B3 9-7/TBQ_#([>@X7 (<,L=[%4CK(@K7L1_G7^'$?4%0![%YNI1-)\)NM2$=UB$?0>$%V";]I/HCZ914^/V MFO>DG(J[L,ZB(S)O=F&,@KBL@%H7S1=OJ^F/=1YY\;8(G*93LQ"L7#?TF>= M2=@A>]IV6_1@B+O_0:IP;H485;>^0JD5MKQX_3JDO5QZ5.'W])3+GTBK_2L$ M>YW'5C/]"[1D4?0A-PP6='[ECO!2MY59]\K]-YLXV[K91!>;A_LFZPRF(+P1 MWK#J-W&,_2:.\-"N.H^O3HB'MU%&;G=2A\0E.21.)-DPSNL)7D5T58$>(Z2/ M]&4:@@;6MM'?&"*R7Y/,%Y'>([PQ+;#WSMLJ2 M(%@=8(I*V_E6^CYD[,_(U[2E[;*D#EPJ%&^$XOI6-B-;%)^_?HA?!A3+'P1$ M=@^E%KYC."A3N;S.8P#,@I^&<'O8BM-GA;\JF>O9VED@%_B M\UD[KQQ<5">J XCL\ MO 6XJ@)(50"I"B %)2F@I.I[)*SOD23.R&NEB2+Z\>UF9.I&?F'494.\FM,8 M\2N9@\-(^Z?JP51M5$OE31)//_F&B2ZMBYTH(C3_V;'=5-H^5>4KUY!J9%E1 M5-HD?Y0]BEYON2>UGMT\WY^IGI7]7II][[6E*4@;563>4VUH6,R91/,<:4G1 M6:%\J;2Q)"-G#[R-JCO&#O BZ(*'=>ZABJOJOEC?9^5PI; M.E7@EV?5@Z@!5V#,"(P;;2%G#<;:YJI?'4A0-T4$59[E4J(QHJ:YOA,_S+K;B_IV97:].Q*I_>?YB-IW-P\?FW>DB^MQD^M M+ZW>,?>H[?".RU2P:NXF@D/I6+OQ_7;+'6N7D:IZUJIC!NK$BH*2/%!2)U;4 MB15U>$*BD?-*=/G[;_%S*9%+RHK$'=H.>%_,&='@-1!J;UY77G4@J OO>U$U3;.)+AU;O#R%_?@O8PW,:*!-'>9PKIR-G#[GXPO?5 MNT!902YW-6HI:&AQS,1AGN]8>.\H]G24!+C'+#+QU<4K1.;7\,+:1GA?+9[" M#1MP_D1-_"B-ZGOY7)RU2H+>(Y:;2GS% M2]PA/\Z7X%9LOKV=1G=]"7VG.2V5^%X)J[+2R,;E"H\@G0B^3]NVM-1RB^6+S165[9:--S-W)5J%6W5RZU)&+(P+F1MNB MNP1F^3#. B4Z?G%$Q=J](2/:D%I/\!+#(K;OD/'"KFRD[ 6 P.NVO:'#&!D! MC8U+VP.36M(U"EW:H>5Y5V*RC) M R55VJU*NU65L40CYY7H\N?DIUY<@?09/&&A,]L7F]8R4/!P:G(KJM)+/@$\ M(/C$UZ:6=@R?JBHSV4*+MIE'V/><%0)%)_Q2IEWK]4W\S0\2S9<6+YD2C97Q55KU/)ENFHY^-5@;LMU?::GH9[?5F)U MH H[5_A&KZ6KX#.!9?SW#I]7RR=Q=3:OH!P[('P. MH)R77@ZH)NHP3-'TIMKLBL*$8$"\DXR"8YX.90.PB]C<+7P@O",:E+C;PG2_XE*#"L_[V"L\[3HY[ MPS)&_N@1:#'+<-S9SGP;J5UU]!7ZK(A/75'?L\,/N&T0GP@U>G&F"D./LIIO MBKML2OE$<\,;>S0RO)%H*:_J^M;&76)B\]5]1!)G5U6:R1JM\W,1[QTVH@86 MFJ$QC#[WZ^BUG4DO/OBS/F208/F;IV:BIX";2'+3S[ M,CUU22!\S,*ST0WC&PF/\9Q.[T'Y+E*0W_+TALQA_'I(28"L2FDB0E?;:(\_ MJ= UD-TI2E[M0E73I".,MD=-N>10]J1<;:/[QI-*2!JG^ KEL@J%MMW9$/\E MR"_2&HU]O++5P$TIYGIR"4BN#-7JFN3:1OU+U\KA5TLW7'[Q,M.;WS5XM#'" MW](0RK/-[V!_:V'R@9B=Q2(+U<]QEU5TM?BV>9M=2I=&W7[AO'X8]9QYZY-W M0]TA&5-#Y[51:X1U98\\,*&++?(L'7\HDQLW?>\56^[;9[@E* MQ)4VE?*0')!+#\ MT.O<@/7E7+ 'Y ;ARHN?*+P('URMZ'95YAB4Y-*I<.VC+'=M#:GKC\! Q"?G'N#C,I!A&>'=202E NNG$/#:ZNNI$%!U<;=7&YK=EJ M'\5B>_9.RT15=]#C+@(-P$:HEWHIO&I1JO"<3SRK/JE2U%.K/JER;6/8X.K]4)4%;]/28RRA/BN[0=B#:1QW[?N65 M7[)JW'UOOJ8I71L5?Z_8([I)[4JE>D4^XAW[*X1J??5VHE+LV4O71J75*Z0KU>OR*H5R]?6BSERAX)CQ%W\N9C/M MGC+^*N?RA8!Y*SEI> L%(P5>5_+"31NX_Q2@1Y\8F384"*P'MRF&2U9L?%;/ MXEL O[;Q^5LP;D,,^QB.RG'8@S'G@%=TF7:E^\X$3]1?5S_6SQ=9Q2M(8A<4 MUA\2 #KO<*1'EK,L/V=O*-Y:6-1M,/(C#/S '(V+TTQF6NV[B- \^ Z;2DVQ M, MLKK4Z*RV;=NG>2C#IS-O ^=TK> BAP+V@CC%\, MO E[I2-1C[_P)4:T_T0/XL^O &VF=Y&G[CW?=H_M6=G\/C9$ \-;>+(\+SHZ M?,0MBDXGZ%LPB*S_EUJPEDEH5NJ+GD98ZMF;+LH09;IT/';L[R!['HC1&@=C M[<'UI&MK *0[@R^@?2!>O2!]2HT!N0(8HNC:V_S1<+1J)?6P!'_[65(6BHWEV4-A"1'>8 M54(!PK"55*Q-F[R^K%3DH7Q9J,59]J@\')L@=*;*GA]%\)UEQ%H G(/M-*& M!?(S."+4FD T94UQ>\?Z#M>9E8N(*PY %PXZ_P0DC)=+B;-_=HR(RY]G0&$]XP&9$;0*]T8'Q'9])- MQI@S-C&D<=$# =5\62)@OF=4C<_^30FJS626C[+,=0_/E;*U$6[\EO:JRP." MH3O3,9*FFL]6I)KKX-!^C+'>(\,T<:+ EY>A@=@%9/2!RFN6LE$2?7DIMSYK M65V&?=0W: *Z%*^?7:Y*-3@B/Z8%IV 0JWB:$/Q3$:99,'/B@0P_ARFSF961 MY3*"Q6X/R7,Y$0O3L/0;;C6?F*6!Y+Y^,\%>C-#YU C=P!"M]L_-]DWKB*\A M:,3T].=1%C^<"HH+%2IUP,E$5]!"S?4$I@1TJ<88:F<7%3-]0:##B_ );*T[ M$CJ1"^LL-R&N$!4:C>H@ F@A? ]T&IL)/7BCL XJ%"]GQODG&&0,NM^VT"SH MQK.A^UR-<@,I7O<$HX!,@Y9]L7U3%V:5$M3WC@$S#L<302)!-,;?_)5 /)O4P:T<]X$Y$.EN=$=(]6)P=G:Q M'QF]F,IHL_'8!AGMD@?P%[O_:3PVCU90?Z(N,)T%' -7PP'G J7.0 ?/U'QQ MTK*/7A"B.W:+#2Q:7^02T8^ I_@K\$H0S_6HR 'J(@7)*,CBF-_%'"+_UC!Y M2YB-)@$BYP+HEN<2,_38]$5>)A32 4@?GLY%.0R>-US7YRZ8/T;= K^-<$K? MF:,9+EUI..TWDEV83CPG?G M=#* \?GS(8\#+TU?#0BP%F( G /^:#@A5X5^[J-;[AE%_@[CF>W1[V@)5I#@>/[6 MEY_/;G-:=&NXZ83X([!?ZF#^,1YDKN_Z(+-8+N_@3NY%L4N3[\JN/?:;$>WG M)Q4S@\3J/;,9[)\&1WZR/D=-&A38CA]L1]8^(>!BEAT4,&!C8R\2A>G4H_%' M2?;E NSO9']NVL4<.XEEDC\>OU /$\;POZ5P2^%"B=XQD5@FT9MF,MZ;MNM^ M6$QH*$@HJ3L2$J=\R#D;<8S>(+#JOZ3-^X/R_5XAM0>#H\0Q6;9QV*M7 M06 MJRF3)U#;V,T4>?,%.+/]<5*8)GP^=T=4X2+F=L\]\UZ!+3G85M9?U584O"GPIXB^AZ7+WQ;FEEGVR+#F4P5@<(RP7KCR/2UME>U^M8% M7@M->]J\EKDSX"5>;LMU?:;S2J\M#O&(=YQ<7Q3J6.0@60>LG(Z<.10O+K=- M7NP$BK68I-F^V:*2&7(+Q;$M-X\CYXG%\GN3S='8M"<,*\+GSL?@D?(7ZNB2 MN8RYNAA[I66_W/A().^*$?*ZBZSN"$XW++W!^3QOR_]ACJU3=[CV6'CQ;==> MYT'9*=A&8;MQ8\@A%8NETR=2[!FN*S)6*#U.E.9TY#RQ6.V( M'BKG<@;4G(Z<)Q;+[Q0EVNUMZ-B#@NG3+D0+V[[D?^AH+ 7!%;+S0&C%8NF4 MUUXW_;[)I$WG+DTQE7SNBJMD MMJUU"?H7B0J!SJQOGK!NH^27P&U?^K*8^*VJ_8I<(_PR_K39MB4T&2,\246- M# C?UNL^3EF31J*.TTO*Z)SYS.G*>6"Q_(E%M:BB@ MYG?D/+%8?G1TS_QE@U^[ MMP]!1F+:O>2Z]!';G29J6I(KI201=B[C+\%*D.G*'#NEFIS8D=_G2Z1GEZZ] M6=2T2F96';!,[6:J@ =*X^8(/9=;]Q;; 7JDUKF+M^3LY5:E+-$3N15['-YZ M.KLC=;4^.M]6'S4LSPAOJNHRS7?X[;/-X((L?,_-[.:=Y1MH&B,P=6_9NRI7 M"F>Q]XM:^IKEUK<5H'TOMW(6?YUJ4*T%_\,K56%RYD1<5!F]18[&7&G)"87K M+? +9?EW8JXWF[\]:1\0L!;_"NZM#W9?H#G? K83>X;I)= M#DKU:L8V:<5UDY?3ZR;Y#9/%GQK=YBW>3O[0;'<;O5:G?;273M[9 >"+XAI% M<>*9/#F 9;QL^R6XOMQAFOUD@?'2N0R%[!"4F#EP2#)QW3=[DR #HY%)V-HFE8\)*1#4'%/^)1,1*\ M2?_%".6,TIJ_>ASO@U':X>HWB(4KX LR# M7]D9(5QAJB@]?D^6N.$Z4)0K-'2@+-W@JCOW:H<7THB-R(WS#5B\%MC7V8.+;W%_FCR8U%)7VJDK[397!.I*NS?.8/\TV"T@ MC_"6,76EG0*;NM)NNWM],DC(S]UG]X'(D%'+<:]7172U:Q8CI!AX8*#W9&/J M"S2]K-6:\58G?C[_2EH*\^9#$]6+^*WDF'#RSR"._!-)#G$@-9E[S_"DQ%*@ M&1LB;G^ORNSRGC/IFI!*-;*<&*N=)=X\DP%CQ]/H=G=:^)&YC'NLO&J>/3/3 M'F/F2%(YD::4,07]G;BL82I;(;,:EGX[8U53I*IW+&WUY:UK";B6QY&SMP+Q M2%UG!61"ZOERBJ4@.IA3BN%TB:28)=]/6H;G]2)CN[7QP$)!,5A>^E2'Q]95)6E4C3;>QQ?^C,YK/!3N@" MXOLFF,V(PAPZCWXIT "^Y(M1\ MH1/WW29E,6QT_9F2H8. _J'7N0%KR[E@#\@-RI?EN9]/*;P('UR-GUT5Y$7K MH[DVV$=!GP7KXWJ&^.5; .K](%RJD!1%2BJ M D55H*AJQE2!H@*;M& [U +%(XOB\UKZIHA^?#N:F89ECPS4E:%A+,8O/R1? M+<.3K!GZ_J&<>EW!66DA%]=P.X/(!B7>2OGGC#><-?PVRDWV8R*'X7Z:+!^5 MP]<%A_\CC:)%&^FWG#POG*F*1UE&SA['E5@8]]!BJE3X_=KR[_L?SI _$F8\2X.2'/#,ON ?3B M%#UU3 -^QI/:%B,3^)T$9ZTMF JAEN53DXP8\S!'B1>&(#2&MJDS1]Q?CK/[ M!1XR!@9#2$3O-X\.AMD6?+_X%C]\3XEK?"_R0=EWYFB&&_;"",_M3^]-Q]7$ MKF* !\YG[YW2:=VT%M[SMT\=B)'@5_[&V@;3/,:S_ X;40-;E8 ^"!H=8/N2 M[]@L!3L:^'@HGS"1RXYMFH"4F[UEKEF"H!O>1F-K!N^0\&)X0Q@).8'='3B+ M1&[<+6 G@1#C@H5![ER,L/ W5%_3![RES'G8@WK+AC>_DO#FUSCG%B6,AQ"R2M?!YEX6 M?>A:;?M>[%D)YP,'P9WM!!_A<^4YB2VZ3+O2?0A4 ;OJ3R<=4; I(E?,\] MM:A(*;QS"?9I]5V\0ICG81H6-2>NP1L\WAD6M32#F@@,G>L^_LSCK"-D9]H1 M_'E5-+2N/@&-+14D$P^:[S^%OC\;;XI=/Y+P3NI-MK])KWH/6Z1]O_ MMC<$X?AEFF1^9&/P&;%7*C@)(QBO^ LH"]Y%&LMY'70UBJ9M?^-]4CWJB5:> M/%%JB.:W(T:M(!^/OSXXQC.VOYTUV29?X)\GX96"8X3C-#3>;J=\>7D69M?Y MQ/#SL6,_&S@\)<'N@4L'V"'7 0L;;"+P)JQKIN?9A%F:[7.W&"-/F"(3+=7% MV_'?L.,V+%@X1%Q!]&W?PX6,7&8^XRQ<8MJB!S=\.@$5"B, +8,6OI%!Z3+% M4-V$(P9T&O@FT:B/@U%G$OU^^&;\HC%"OF OX0$5.RS>D'JP%-_4B>C _C M=DC8WQ;6IAN# >Y".$'S;QCY+Y$G#QX*:=TPS>C -CR,NR)<,\P^'1!@"8R- M3C&?!AE1':D%C[X*HJ"E>)0:X>@M"$XH^MJ^29U"=$B8!H/7.^R)BLZ\H)LL M>P1.-C %WU*8-O<%:]_YM75;+%]^(N O6T]#:DP_XNMUG@ "C&!&6;=?K/"; MR!*0(7C[)UB*#H(!7 C1()+YGL,LW?TTVV;H8^=EYKJ\9S#$"9/H5V$IH"O= MH3&&KP0YCQ5-AX$W4YLTMEUNDJ;?@0GPC=)/A+M([)DA)>"_/G#2-BPO,B'P ME[\Q#\-K5-<%(H(5' BU!=O^"E\@FH:&P..-.X@X?84: Y@&;S.L46/:/B2 M/WYR*!8=C_F''I^J*X(16!1BR?4' T,S@*23\$T:=8<(NP'8C7 1D=4B)34Z M-CP.TK]]PQ%<_A1M[5*8SF1JGI&2^"<(BZ04O^K]\7QK./JV8'1.[$ +KS$%E(LC=4'=@N//&[QKU+)L M#RA$^:D7MB"UA0 2R!T:G/8H(/&XE8!Y%^#C(4Z0CU! 3 B:AQG/YR@=[P&@ MJ#2PF[C!'[L%)YVT3CL0-#O(,=SMAO'P"(WKCX+;(&"E1M\P,74:=AP'80:+ MI@EHH54S&<0[J)>$[5U+B' ZOS%.$N[KP02([L,((,7^F'>MYP!Z_6V$!W!\ M5OQK_"LQ1F%FW1E\0G5^W00W8L@!D"J-3\5'XIM&B->D:\&WZM, P$7C_2QV M? /?Q&5!TM0B/(0I-SX6R*/A?B-W@5D-7(R;F44._](;\GW;"6F 506PWPGF M!M%#Z(@8HLM\0]0F.$N6\+]3[HD]>WZVXY9IO-PFW!"&_X+#HSE&'Z9LCYBX MT@,I1$VS$'I6*ST!02YA_='FN1]W> #K_V_O6YO:1M*%_XIJ-G-.4B4\V 82 M,KM3Y0&3]9X$.-A)SGYZJRVUL099\N@"\?[Z][ETMUJ^$,@8+&Q-356,+?7E MZ>=^Z^?5V"^^=*^^]+I?MU@_AX,.DB(3!$^?<@;N!.:P),@Z\Q20S:A3&5)& MPJD'"!.\00;S&,@?Q)V"IPQG& O=>F4T!4& QX M @LU_ 32"=18G,*63B2N2S()M2$CDW 6X+D3A;)C@5?)@%:#ETX%H$V@>JN$ M=$&O,66ZA".U[Z9-ZVH56CLP:IFG[?N4H#1$(X.OJ[F6\30&)DHZK)HK!4XP M(=5!*\JXR[TS.4QR9 #W26E2)M#H"?P]#C(%*E*%&+-HJS)8?0GC*\= MK9#PKO"CVIF&PGFL"8_WAC(M#-7>[K0J@UL"9D^>2R(T%/P6JT @5R-)8G(/H8?W$= M*(S&XI:,LHCT-&1T9&CSAKPX#*5GKBZ+45=9M8&O!1@8"51NFP]F C(/-P(1$YHAX PI.Y#[$2K$,>,Q4C)QNG@!O<&ERBR.R363LH?05@[WS3Q@"Q \,Z ,V(?'#II,&3Z#%;QJ= WDQBU46DG51D3:>!KZPS=8*D=M J&7;"6N$H]A!(,>=7 B]1 M%^7A(AF2BCD FF2Z/O4,B!1(28!CZ()WD;A[<\HO+9 MRN@V "9%E#DO-1;L&V"[7AR5+9M4V1*-TK7:7\O,2PL",RWY+/$*N:7.8Y>@ MFTEO',6@:0;XH.$UL-5KV,]XAD)PA$XGX$NHOA.74WRL9&&XQ=?I&.0KREWX M4G[C50!T0-$"R "P0W)PK7*:+H >OKG/$4G:-7K<$.0>WNC&<,1&AO(:$V86 MA;'9)YT&22-MG/B@DD2;Y1CK04+-F#4 MF30KXXB7DNAH,R6WZAI D%$9ZIQ*PIBZ#NSCYZ()#4^GC&&C4+7UT:#BI;'' M+LUH?4D<-IQ/RM-F#YB6EG\7)S=HD<1DTY#9,X;S)#L,:6,\&R8!ZAMI@!J+ MAAPL16E0T[)C'?[T"&PP+MHGZ&',J&\/X;9>BWF],/:V3DU63E!2(_2I)BNZ MSSMR!&AA*8X&D3G6HA4.EY*Z$+=6JT.]>*!C&D#.[(4H4SPI#[+,AD#BY8JF M:6Q2JNTAM/FJG H!^AG'R'N8R+2&!X#*T8G(/9YL)D@$&H\RT*=D0[N(%2[2 M&F,-D6*YI(KR0BAF,Q(+-.RN45J6]]]WFTWU*[T3H[W#B-' M)[0]8<:(RU./?@H\0&,FHA!5M^6DSPHB91IGEH'LB:D@/5JM#,]S%2!5\,=H MBUI1Q8A;Z0EC?<.F@<++O!' A@$K>].WP%?CG&A]%%SGUI6DYYWS4^<,-*GJ4,?DX9,10N ZC(>J'WA! MEF-0Q_9 LJ$_HT!YA!G0THV<:5LKE=?*V1* /;6<:ETD62.P [(!Z R4?0$' MARF(94(O[ (;MU@IW;XC,H&[LA%9A-0U :UBG);W!N]?6TEO8MZY578&LY%HF9E""E.FL1XQ_0LXPF,Y/ M@EO6#P#AR)@0OIBB=TS6/DCB+*P=:C]M&:46\,AHQP:3T'((S=@X M-.J24NEHW"1Q#[C7G;AE,<1#-M EPD&%UK$J%$5O313%:-PH'RANQCC4@+6Q M5XC#'L1FPCBE1HZT7N45AIU>(T18VFLWG"4[R5>=1]H?S2X>G7A!7A,?7=^O MFI]<$[HPD[/7/%53&_W!$H]SWGL*64A_ E+2=;Z"N(-G,@#(YWZG&)75,!&2 MTQH!1^X__ NS76I@LGJ9WE MGQO]1B%QL-YCBE9)&);0X$;*:2FS9RHC[>R&35B 91^V3@0!#(TCULD0#APD MLA)%X* STIIHV12G3]D_;PDR5M/_S%6:C DV:2ZP K@:L!0_2*6]&'3ULYN5 MHB\!*K&W(@C9:0'$DP__4,3@RU#,E NTK$^J\0,F,X.BG'%+RV$*&\L0G;BY M9H/:^*!H&8R >RJIOQA-L+UUC U81&Q;.*AG(KLT6(L3,^K3&:AHR00Y! T? M6-KC"E_(@&@9BG")V MPIY:GOT:$9DYFH7X(M(CX@N@=T'] _$>AR (TEF5E2L2-44L[(35J7F9<^XPFV>' M+OYMXHSLQP'=Y2Y5+$$YFZX%,AE 165136+?\$-CW5I,#2-%**H<:H\04C 8 M Q)%)N=@/L)>..%F173]OGB2%AW"MC9)&=)S]"7&*5,693Z&)7"31=:/#J#H MR)2EQFD;J?#81[Z1RD5*T%Q&D *$6)G1,TI%"U-#Y12JCU^","NJZ2J-VT47F:F?/*,@T-995 MF[+&/,3\MX37!,9J2D[0(1XURD84!:R?V5G26&!!U"VWK^V(3C4ZN>H->B>= MCT[GY.3B\_D "P0N+S[V3O[M_.OSZ08HP@LB?S>'+7S2*E!&I@"[_&"*;(Y=9$7(AQ:!6R%.@WV+O M.B8]5GEN,6,45&S*HR0/K-J3[30"&SN59@$D[3D\GA25G:X2(HG$0#Z&#P2J MT,.,1N)LED -B\([$]_PKSN!35J 2\3#4-5IZ&XWN5;N5 JS6^S50PTDS1'( MZ$$Q%1[*+9*A"'70$V"ROX %33#J#QB _I*)40<*Y1CCW*3:J*Y(&BMT'KFM M];)4LU1M],:7 8@\TJIAP,-, LK0*J:EG%O=BTFAEC8>RKG#*F>6UA,D7CXA M<6@I:>6"#%2CYBHR4AMA>32=M9F5%H)A")/3]OPQXV=SPA=6FE1V,2%;HM0) MFWF CD$H9Y'T!/4V.\W#T#_3;@'JM& PZ/9:,4_!O;L'.T?V=5ZZ!W%"HM"SJN+SD9@/N^EF9RBR0&6 MC')_D@WN*S/#R(QYF\M*19) 5J*9CE^(8,I@Y<5CL(+ MB=B//H62M4OB6.#TS<5-&'HFDB0&)".CNZSDLU4B2] *11RFW9 MM#M0CUC*7=A>$:-;#1F=1'B@1*CD-4H+((P%LQ#=7GQ H(H 4%-6A$8LC&WD M9+5FKD]EJ"U,]A:RQA+\AW4-W16)JJ/#H0 M-T@*Y B"I[ 5)>-PH5VEP20( 3[\O7$)3$"IRA.3R$]YN8BIJL<1G(!'&B QLFX\'DE"L/(P,&^\LJ M@,%ZD!I,O"YEU5':Q8"6U62YQ3 U5^<2)%0E'ODBL0Z1J'Z:P[OIN#A<].AX MEE-.>VM,J@"J*!P,T2/&\W%&M":QE-PKZB>MU7@ZU.I+(#]L?EJ8X!1$(HE- M2*G2_?5,W-/- -1VO".PL+L7FXUD_1"I#T6629T%@D=#'_1>;2 JGW@!D#(@ M7,QE)WR HYK:Z?^EHRN6JA*W[%"\2 L<,EY.Y&2!KRA"9U 91ZV.=+$-:=0. MPK28RAMH^L<:-RW5WLGC,/"@(8].9PN M9QT>(6N0$EKD$:-9D!8C0G84S#S @L*D\#D85 $;EH6D?LBN \Q,IK)Y9H7596!@-9>.B44XDA5 M']Y*BLPIGZZE#%PM_1F)P(S Y6#VKXIXF7>'J/8R<*P^!(M"VHZ3V1!9<1[D M9%6ETDIY5=-J\\RY#K#A1A:7B ^81ZS'5(*T"&7:"UP*^>\MYDZY&]FY2@J7 MBCHM'0X$B+P3H5U['Z#)"\^3#4)09+P"B*=QZ!?GHLSA$CO5I\&O$&Z:8S*Y M%F28N&7@)TN'LU=E/:PX.K$\5_6Q3WS:W+(#M#-1YW:_;%*0XJ 3S0I[F'+/ MU-F*ZT1*[C)2=-E?L*M4UW++9Z#(42W/+:VM3%G:>.+@@"JT394^I&HIE/0!W(: MH;[@6G'9BW6J6@L442,\"2K 4YJ1LH' DLRT,LE' MXI8?HPZM5H*H;JD52,XJ+:9 (U2=$U"X8@5%:3%IA>4@."#IHA$=4(KOD#O+ M+)>E)EW9LI!)6BL1[%N^O%7RXIX?K1#A(_!.A]4*<%AXR/-9? IVB=EA5IB3 MA(#69BS5FU\=YC.9F(Y UD!WIO/+4*IJ*!.7H:8Y:K@1TN5XEG)AL@I$JA8$ MOIA@48]R9B[.R_X]HW)IFP!9J5HRGHAI+&:0 / 0"9CLUMQD=*;#DFW2\OTX@#U#6H_I+;<<>#JAE+9A.^#0&X)F,:?(82HIS5D*]A:B MVPIX0C]=CH_A:)3B@2X"/;.ZET.Y)I$""Q[:WH=SF"DK?]Y\VD(V M9F2-3A,M7&)YQB4NK,IH#V>0Z$3CD%0]5AVX;'MB)5?J<[3=-V9LVWE?5@PX MG7[>IT2RR&!5$4\5&,-^;]88QB(BRSAAOS#JUUBX0AZ<7\'PN08FQ6GI]O<& MXWPY ;3/% LTCKTBR<$KQ1V8-JW(/>NFVH<"%B6V$=">=V *$?;>$BIJ:T?\ M53^.LIM-8S:M$O:>428NEGPBF8WR9!A0"JQJCV8-J/,>7-O-AF.Q(6PRQJG, MAMI*L&,;[5_L$X/])=GK,U_=/;#5$^6/#=(2K>-R#8O$8-(PCF^T7UVYG8A' MV!(E2'5('%UQ:"ZD1JZ:"D-8#\>"R *HH]C/$\5^6T>Q*\&L=12[HP.S1">G M<3[,L/-JA\DG78AHZ_PALAM+[_KZ745ZJ8J6,*!5LBCV!4GM<);2)748 T6$ M\FA;[F4]H"9X<:VRU)=,99R3HT)[)I4RB(ML%@%"YH^XR)4OVC("(PXR3(_& MOKW4,C#1'61].1+DLT<6B,5SNAGLTM0I=S[%:F0"\'@-1;%?G6>G*E%R*_90 M%&5Q-H_TMU5WT.C8T\++X-U[IU>DY.D@4<9E-ERUB MPJ2>^3AET?"2&O5BN$OK"#B(U>%-]\I*-0[P)%C'0*V#]H+(59]0P:%$Q;)& M2J_#>E04*-7=6KAC%@>9@8$"@KI.BO5.D_B6,I4QO*T"Y5$<[8&,H^T4[PYG ME(.I1[&\HN3DD9L.H1ABF9ZY5PSW7/Z)HT^MRCNV,BX+H M>Y\/66W*!NH6."8AES,V M2KYSJP6T:N-'N<9@6NHF%]21.1QAB ICK]#0 CTJ?'\XXTTYW.L:J2/8'+R^ZHAJ[97F JR8@@Z]( M+N9NWWK?^)QN;Y863G^A'%7X\ZTYQB(!T.JV9A\!(H^U=)>%!8HO5^?H("&( MT*A2*R;@O+(,G0C<-YE@RWT<5=DN_0B$!31+C6]T9@9>ZT'7"N#0A#BF9;7( M.-C%IJX'!#_3C9=5I#E(R(,!9Z*<7.H@D>'8:?"J6(SK.E5[/A4S*R99:B&C MHU1;Z#I=3[$SNN*9?1A6#%:8IJ'?V+F!7F7XSJK_T*%T535&GM="34XFZ1[V MG\("%6M@5V<46565IE45H661KH^@_ /D=>JKFKQM9U]T*YG*Z+7O'2O8EQ)C MY.X@QY;UAKH*62NFBX6VYBYQN^K%=%JR[\Q^Z+W+F*NHWPU_?&J(Y9M,SIS]H1 M998$L!K)@%O0PQ=%U/:^.Z43J>OR2_J!O@M0T3Z*:54)?:?C[?Q@T;9=*I@\ M=%UGICWBM&"1UD%HZ&M2G@L3I\NO M71:$Q)N1YG>Z3\E@P/<_\ZWS!_F2= MF_#F90BKUC?-=_N7E^:F>4) E6M%1:6^JKHQW8I4V%6Y^96>:W@8&0*4!;[Z M#M/:P_9,'K9WM8>M4O+@JMO__''0=R[.G(O+[E5GT+LX[[__^S!Q?M&+HL_G MW8'3[WR<+X^M+W5_D9>Z-_>?^U9WWN\ 2% ZGP!&X]3ITBT:]][%_D3 G[NQ M<'$%/\82B[-9?B1KOD-8[^(]LX_V&!\JBM^'W+4-;(]);*=4/)-C0\U/CP7\VE6!=GF M]:<'2NRY4\SB-2RF+)5Y8:_)S1CG*5C5Z1MG*0T\\PWL!>Z/1HS[%J*6%P7H M_C0+V-S6:Z#70-\!H*]F@[_BW5?7U&-O#\ 1)^__YGE2CD;/S!\[]_4^KP(( ME\R\7/8O7\^K53@XCW??52@H#QY&;+OOWAY5$"K/2,W/KE&];C4;S9_?5&3_ MU9EYLY1PX!XW]S<-E4>QV!']]\PL]CR.]NZ]8J):R/4=VVN3>L/ZK$.-PDUW M_]WQ@^RFS1-[=3!A$T;UZV;C8+D$J(]K)PFWN7]814RHOLH_B#/N>ORBY% ; MEH]5 Z'\]4G4G^]-]TC%Z.B[R-FNV=0W&$>.3N-RM) MB#]JM6PGAE5&0=E.+V25 +TSKM\=G7F7Z*IFXH_U%C2;54YT^ZNNQ+^0?_8$ MH* 4SQ5I:=0E)XBC^[-"'HI*:TJ_77%V]ZZQ4BZJA^9]/!6\?BP;[06<\DM8 MXV.)_P7FJ;V 4W@):ZQY5IEG_4 2VPM1])[/IUOE-+?:&-DU0-=&_G;/O$MT M5?UX7NEVQRJ K'*)2JUW[RH(DUV8>5TGV&P-U3SYI5-T94YCV[:[BS.O+5N[\7:=!/>C>O&6G4YE M\6+;MKN+,]='O/4S[](15U_/[_'U$A@:KZRJO^F:KZ.WJ_6(G:#8#>0HOUM5 M^[)3D*\6)1RZ;]O-34.E^M[IVG6R=LP[/FBT:M])K7K5,S\;Q1TVVAMSGFQ] MYG#U$&/;MKN+,]='O/4S[](1UR*C+C9YF<4FV6SZG=['==+VBTO:K@M-*H>) M=:%)C2DUSZH+3>I"D]H0V59 UT>\]8"NC[ARDF8C@B;M6]J"M'"6VW?;!Q2JB^^M[QQ130N-(LM3("_Q'-:(]: MJS,R=@*2&TB*.VSLUVQX*ZCG>'_C];G5UX?[\2B[HXOI(]^9B #OR<4[XBN" M#=_S.58&0=?8A/QM>^$BF"IX$2N-!QMI\MQNM.J[ VJRU61[M'!K317PH/K6 M0WUS0'US0"7/M;XYX(4=6.4)L=HW!_R2#6-_AO\*V-[ZH^=_Y&D6C&:_EJ9_ M2JHJ)BQ2QRC&+)U1D*29\VMN<:SASA)#+-)U,L+\6G3BZ^]$[WFL?P=4AWPZ7C/ .4O8MH MY#YFSXQ%H*<9@&+:S_W,GCS M5D:YA 6+# "5ASY@*Q$R>^3%)G+&ZE,Y0RPTZ$!Q.SBS&0,\&\C)NTB28 M E+ ^2G QR"J BA#2(/#B=1)VP.!O&5.0] JO&,Y/'L]'@!/-&YEFB>3,>! MYPP!P5*7CT!7]2LL3^040(*ZG#_'1[&ZLBA:A<5H>03X? ^W+U,V%HS]O)*D M&PY;4K(<)T%:C6,C%V $0C(9L=#( MI\X(EN2\:EMZT/PT<#S(=(9J%4'D)5( .\3) 7%!%04-U?%1<8CI3 SO,MQ5 MLSI+ X&C+#00K7EHM2%E'810%-@M*-RX5*TY >E47$'L)HPQP**0^>R_T5[ M&^S7 1JAS)@*8.'^#)=).HUS*C+A]'ZY &4&U]9X:PM07XZ +4O?+ Y&Q.D1 M=DC[*REC\0B:C;8-W0>,TMP00I.UH"<=$JV1P0)RX?T^621DFRS,J&R<_?V? MP= &97"*RD%T_8^?]M$!Q:;(4L?53[:U-IX.QTFQGOM=7O?5N@Q#0%;+ ^@, MNO\WV.N=GW;/!ZP?+K/7F\BFNY-P2LNMD3(QCDO2/".S%+__M! M93QJ-#GY[>_"&2=R](^?_C:X./GIMP&= NK_,<9PLO3OOP@8"!_<"0M/9V1_ MN+KH]]6[3YL,_@/$,%_;]%3$\13NEZ?TRH_]^UPN?]NG_Y:'>]X]1UG$PXKO MG@)&#^8K3^#A>^[8S/U8\".Q&7V0%:Y,^4$H_K6BN:51RK?D[EAR1.4X=_K0+$ M*E=6T7+;^ZL[G^T KWJV#,5FA;/9-U[:TWY9^>$;2]HB^Z@VC$-K+* ?GBWZ MB>]TP:9S&X?Y1%4 !=\X1\6A*=Q +-N:]Z7]OM<=?O=SM7)/YW.^:ESVOW2_7AQ^:E[/EA[-.L1 M:UKFXMO>4-=61T":^\_M)WU, \O-.ZV?/.)6ATFVWW%?Q^1J9/N+[2IK?-A. M?*BCAG74L([H5&;F&N@UT*OI[]]([/)*II($%'J#?'DKPYA\/56 7N5B2$WW MJ+G0JZ4"4-F%F==UAON-U2?XTN(OE:.._8U31QUAW74";[?6&^.JCZ..[6[G MS&M+[SIJK&Z:6T>5%R9,*'U0 MIY!R:-6$EN=BS_,A9QB7BWB_2H[34F=(;*;@4Z>!(+J5::8;-N WNA^(O7RJ M(<^GTSBA;@KX&,C;.^P3$059(+!T.UU;T6I53E,[XOK=CQ][YQ].Z*[!A;VF$L@ZH%O'5.J82AW0?1'(5KT@ M[C9#>ZM)NPZ7UN'2%V:I5P;HVP[H7<6QRK">/L =3$?7N9:13$3HD"ND"B#: M8>RH$M"W'="[BF/53Y40_B2( E =R9%9!9A5+@3<R8"E990#\\!^:@L;K?2AV17YC0 M6)T?E-6)H>Q.2=\SP?G^!S)).XO1^34$X*T&_DLJMNUK.^R?8>1)D.(U"*GK MC.$'.&)U'P&N20T:CT8I\/GAS!D#FL 3@(PWDD+UW/]7MUZ7>=:2V3AVHP&'4J0-U?+%.'=@R9*M3!VK2KE,' MZM2!'0RJ5 GHVP[H7<6QZ@?N>B@G9(JU"UX\J2-W2XLW*PB1K8O:'1W58;M5 M'NM-0^1%N[A73#+'^*A%Z K_]+V590]S7BLO\@COYDR5?YH+Q[ -J0CQ"NB4 MKQU.0$A$3IH/T\ /\#I?X7D@)K+GK [;Z6L,6_N/='C5UQ@^=23@Y.)3UQET M_J_;KZ,!3^-\W;$RP;O!?T]2%C[YK?67;II?_PV'V7=!;4F[:TF[>7^ M^!_1JFO/>.VDW>ZM5P;HFP'T0VWMZCBMR663B6_.4$9R%&3.:Y5I6!$/XG-Y M35\='+ZKR):K2T0/=_2WV\WU)@?O! ZV6_>CX!+VLL5>J_N8$[IWE_N2 9G& M12XPJF^N=6-5(D.ATH*U@Y@:BF7P+!Q^ %\A]& $8S*\0 XICR+ MDUGQ4'&T/MX$QB#CP? ;D68,S1%&,9W%!UP,=1P!PP._]584#I[W:!.+'N? MSO5=HV7N)!-T99FQ0SB;7(W4F?L-T789AF(;.U_"=BGZ 9L#/BRSE)Y8M@9: MWE#*"%#&SSV^@FWNUK3V\3'A'H[QJOVVB7^XF-X_94B',X1$&GL!D03A(D(O MD7_F02*+R]@X;()HC/ ]VYCH-$@Y+OCBMDP:S^>!!X,D(5Q?$.+X;Z!/J 2QG?@ M>4],@TR$#FPR\JG:XDY!*PPF 9$^;=&+KR-:N*Y,6P;](/+"W-=M!O&I>"JQ M4@.^P2U(/B#8G _,R1-),H-%W8G$5S_HR@/ 2]WL< 52&7Z6(R F"'!<&7ZU M?'4ZV+6]%]K-,PB"2/_UV!CPX\O ZP),83AQ_!GL= MWEU;8*,Z$&$OQ,?>_W[NG?8&_Z;FCR>=R]Z@\]&YZO8O/E^=U(&=.K#S,IVY MF_;1UY[B+?<4USGSFR+M4^G)R1!LISIMO@X.U-[R"LQ<"6]YC6-UVOS7.+E! M^*9[^*ZR<: -8^$[]^#=P:;!LNU!CTXV MYTEVU4TH0>0%4W1LPI^8XAZ/G##X,P_\ -VK<90&E (/7\MO\)%Y:CI63E'X M@%[=6Q&B5]?T7L'O?8G.V13>!>Q_=WQ /F-RN=MJ.R??%]YV>F J9N0<'8V< MF12)@R$,X7E)+D+RK,/D$7Q&/RI,B\Y]#&'(*!7:\_KJ[7'3.*G5TP?[S= M^F@MCD5 *QOED:^C0647\+:Z7R\ Z>[*LKF,*< G"7BJ)0^CZM)H#+Z#)Z== MW)[".O3?ZI(0+O*P.Q,9^(>Q=^/'=Q&\$HJ987D%=*W2$, "^S,Q#XXH@+4'B !,(\4J&!@:(SJ32>Q3 MT',30$4?@:.FR=T-'!07IY@;!9C:7<::4I-I_"S2"3&=6: S<,2U-4%5\3ZAWD*A)+:P4F<&A\#WD8$J<)@O%@D/KXO2W*_+1&ZB"M IR I M@ QN VSB19C)G;U\.0&:7\\P?,R;RB&]J4R+0BOKJB#D(:G6V')WD:"\N%#=GW^.F [1%W/DZ%O04 M[&\4<-2HF,B)$R8:?(7$@:8+'CZU4SM.+K[T3O>:Q_.K"R;3D.+:J"@EZKOB MUC@B*?T((%Y\#4KL./"0E8\H'#RW>]#-IB@U_D-"#O">\TCR%&C;59%YQ/@8 MF]II<0@S"$Y.8*KP9CKBC?1)U XW4]M8[-NM:Q$OS4TH*RL<@,DTOS$?#/@/*H4 &-%_5;<2N"D,!' M^04VL<-36N@NX8*ES)-2^DPV3EC5HSR.;QF9*60KL<;+5#N4,]#D+&Z%NJ(: MQT%JP%E(#4&#+N.TL$:_X8RE\)7^A_P<>-48R#X/<34Y\@VC_I8RRY#WX% $ MH""%84)?<[>%NNF@E!=52'(_)G66@,NZ$&SEEY@5D#2*D!? MX&'/R%"8AYX0AH&(:!3BH] ,%X'CA75!O2[()).QD_AEX<39%&0L; MX52O M6.B\)?.N+59L>5CD/PD/D%%E>I4134DYDO/&'Z&MH9"N;)*5E1P#"Y MG3%R<++"T>)63BY2-]C2,;A("B5S.GCK'%YWCEQ'-8F^(&YX@GV9Z=KD5'6+ M=FU[-AZ-]K0RGHZEA'4D"29"T!M;BVKG%^=[ZH[DC_]V.B?VAT[E\XYSUS@$U>YV/SJ=NI__Y"G[97IP4";H M4N=W9KVZBXOK#%CDGTN?O7N6WX<@[@0RJQ>)-NU@[J18[WS*?J M,-B7/W] Z9B$L?* 4L#"I^Q^P1(>A&1&:= D:].<].,$ .X67>$!N):8E@D\ M/2'&-D7=+F'6BFPU\>EKV%_F2_P"Z664A^1A81\! M:22T",*R1%Z+Q,0)3IBY(VTTW_Z:&O6!X@E@%8,:P_Y7Y7E-@I15<_6@077* M5H_P!6$GK*O !F#D:K #/#'#/'V_;>BX5C;O7'5/+N";C[W.H'=Q7B=0UPG4 M:\BR/'KN+,OO]L2I0CKW9D[^R=OZ[!AN/WL&<96R]^NS?O*SWK)<;@7F#:1S M;PHA-Y=ANS,TO^T@7G/N\M/0X#D88JI/P6MTR2]/':TBBE2D2DMGEZ+7Z%UK M?\/PJP_L$0?6;K5S5O_Z65ZS<.*9-]FMVW%0UR;PR-4@/3DQ_O?I:@<=D MS+^I $BVX##6T_7IS4NI7RK1.(5.*G*@+Q^5#@[?56 WNSCSVN[;6'T[>:TD M+&,@I: KW0"-O8!,V+4BZ/$P;U,%,'8-_C!3_7:P_R WU"ZQB9W$@^/C*N)! M]14E%9"6.N_D'G?)!M#FN9S=MKNCU5IA/^\2#]D$Y/10C0?/C0=O%XSD*N!!]?61QV605AK#V[ G/\Z'H7S.N'TA M4(]7]"V?1\1VS9#FCNM)6KM\;[I'F3MO%_RY53C5;2]B-.FMW:_E7-:+<_A\ MLN7U,A>1\R\1Y=BL0C>>L1*J'>''4V3A!/ M \]Y>[#_YKW3Q[IN&%TG9W?*/]6 8S M7%< OV%# VPX'G$=H.EA3I5 @>Z&$D09$ C?;TLECF$8>^S\4PU_0C4MKGDB MLW'L@\B\GM';0+]>'O($Q>34%I^JA43$?12"25%L.HFQPPG5#>53+#92O3\( MIBJY/-,[]P._*/&T"NA6%J#Q<@7: M/@YK3[A[!;.\RR3VI(](NB,HJ6'6_=+Y^)DJ49R+,^>TUS_Y>$%E*B7$"2^P)X3JWL6_%==)J-^XKQ-?V:&:CYF[:JC27'7C M\F6J;Q,RU>%Z0;YAN+I!"Z/XU*"X\UI@&3[(4BYBN\I#Z33;8J]Y^%J^H8?Y MJT-??94;X'2_>=39')2:[(VZC6:N59C2,;SXEDKN0#LA(9](:A7T&A_1!9W% MY22GL&%=V=EP?J?&;_F4FJ6)3(-$]VKX$= B,/!T"*PB#FJ%G/*(J+"R7!:KV M2MSR2NU"FHX;? J@$08A0GCIN3IT6EC8*'V7UY*F^#'-)]AQ[S]2M1+AP507 MB\ TMM,HD&+?)0_U5U.&WN^>%#6*N58XJ#+6!$9#>G$]R M;M;$/8LFDSP"0:RZ-ZTF8<*S[@7CU-D%(0QU_YMB6P^JA:0;=6C'U ?-(YZ1 M6J69YC0*;&IL7?=&<^7!/[&[0M_IG>>CD2);*S8&U#F&.$$4.TQ# MV +&EYKB='NY@L+]XK:W^WDE83491-H<0HPGAH,DB+U-$FE30QC<("I2)YRY M%]REBW%P8LNJXHFI4QJU78&UP$[#T.(4W (BD]3WJ3_%5A*TG8OD6D0J=\2P MU@$LSK\3,WXK3>UR_I.+_H4IY@=@]?3:%/&3E&@V.9OUFMORG25B(K%WC?,: MK/'VF[KCV#-U'&O5'<AS1L\34)5!ILH;J,WS'[10L17'.FS3CZ!!A&R42F06NV*5GF$S;-VI M&/\E@TCU)@NBVSB\95TR#++@6FN\RBV)S6]#$4Q0:01-C*PPT^;4:J*E5-$( MU404A#GVY\++7.=ZW\Y?I\G=6>Z,M,\<02;A3/>%,SY+W6TTI&.<%L>XC M,1.%T3Q=9Q;GNHM.T5%:-]+A5D0,0C)M\E29F)= #T[/- W3)^?80% MY=1E6S?#H2@%\) ;,K^])!@6!O0]RQ6*+1"L([P FH88D8[(+B%UJ;+3*3KQ M\4.EZV;4G5AW&[4Z9$H -1O]P:1H/XBF,_)/&S#< MDO Q(%+=!(O^I'-M@]@*XOT7;%!;0PK];!SX#EQ?EHM\3:RQ]:-:1VM-G/%S ME,AKO-D#3=$^=6L' :A2\?K MQY%T[+S%%[;/]40??Q1MVVM"VU,Y$M3L[#/ZB_LRPE9N!;JNF&3K$7-W,?+@ M1S'R8$T8^0DOF^F+D02^:<6_=Q,3,Z=C0M^[BY.'/XB2AVM"26[?VRMT_]U$ MQHW)Z]WV'K=K[_&+X51'/\BICM;$J;K?QL$PR+9*6BZ=Y+5X4X:0M?.2%?4H M-F(E//\P[WA8V00/?_ LMQ@?+*21SU=IK.EXJ*WM3[\U]Y<7#K8-\3Q%T8C= MT%3Y4"@6*KP,NRHO="G\T:*^ISBOIRW8;%>I;&AYU;^E\DKY(AB*" M,2^^A7)&R6IT"<)^:YW\\?DPNO740-;ZKR^"^/_);^UFLS'.)GCJC28KOX]& MOW4O954R9PDQRFNM/NM^_H-MF8-M;?I@6_;!+F;BKNM@-T2Q+T-[JN5:J^IR M[7C_J)9K:^(Y+2W76AN7:ZU:KJT3FBUSL)N6:ZU:KM5R;>-RK;F_88.-\O0% MUSR=BDP )6"JR*4EX:A\[&#_$(78E;RFPG&,S>\-5DFSE4[WOW183AU[:1W4 ML9=GS)0]:!SBB_==.?/(@$S_PT^_]7L?SCL#57_[])GZ&\PGMKD(5U-:%YQK M9;E(12N5+<+/S>/V@:M>Q%2V!(<:8[EKCOFK@N^WMDNL*&-2E19BR2!,,Y1C M$8ZX&$M=S\X/J(O"\PC>H@%%GHUC*HA\61F+#SB(T\Z@>_J^U)3ODY@YS18G MPF_;=C5QPK8[3N^7"^?DXNKRXFIC=S2^ONI^Z/4'5YWSP9LJ92E8HGA>-?F+ MXK(4[VNO):KX^^S] UID_6V?_EOHC-<^7,LB?DE_Z43 )B(PZR?#)$[E0E1W M \KR$U@7<[M\3J&12*Q+ %9?- !8L+N?DW@ON:$2V(;+>Q2A=@0TQ0WLD,UL/"_M7+$.GWW#^*;)01EMTK$LV]CQ,X@M0O+.,#,Q,2YH=&WM6VUOV[86_BM159P+V)6.*DGK'_SIG=W MRYT7MMF\ZIZ6G8U-/&?.SY5X>70]?#N\:[-OS\*?#AOU?Q\U>V\';]ZUV7\* MYV4R[[#7PW>C-FN=Y9Z-9"8<>R=F[,YD7!]==?-%5U2K^=O@7_VR:MFL^;IW M.WC[1YOYT%"CH:6&'7;;NWLS@)6S_+[#O+CW3:[D1+>MG*2^@XZ=MT9/KOJ_ M_SQX-1BQB]:+5O>T>OF]'KN\TSW-K]AG=V Q[*//;67U5^I'+%[W[T:#UX/K MWF@P?+=/P_N9T$&#];1/C9ZS7C:VQHD&BX2E4N93[MO[_**>CY586!H;&P,D M+N<1@-,^ZZPU5R+QG<1HWPX0V#0[D[%/473VW1$&HU3.XQA]O#PZ.R(K=F$B M%;2RVZW+_#X4Q(N"*)\;ZYG1[+6Q&6PV?V4F83?<VET9SD _+"[S7/YH7[X[@O/[FJ-K2;XX![LT][N7V3O*__\4"O_%7=8 M[UC9V9R]UV:F1#P!^04 5,L^-M2IP1X.JN%2,PZ:++2W!;$4=O6PP0,/&7ZW MDBN6\ @O+#.9!"V9LA;C&Q6TB(1SW,ZI2L;?"UA=Z]'A70Q78%#19R(+5"&2 M%IH"U32:PP_0(YNE,DJ9*^C'JOU,6%%U0NYGTBGH#-(?,^E3#,_E(@H.4K\Y M7#,T\?CXF)+Q?#L+/&4Y?@;OTM.+VH%7L$1J (2PM@)$ \A%=13;M7*I M$VQJ8?/"[Y$J8O0)T&U=_0U 5])C#O00[(D.E%HANP*5VW "U!%+,M&@&H5" M!<#9 '/!L N>1=RE+%%FYA98MV(BH:PY#'%Z68X _C;6(.L6SGS$[V?4/J-V MP],?#H7:T8.%_?VW/YVW?NRX"I=5U$&;E$D2B<>PY >,6Q' !;!(B@\ B8< MQ0K2I52=JF78GFF+IN=8ND@95Z =;=P6HPMU.U8\< 52R TA(Y_?LH MY7HB6 ^[XEVA4*-UP9NMRV-Q$IJV+N/RJ7R$+6%UB6[JG]'6N0;Z$GKDR\Z& MD@>&DI.31ACH)A>@"@GV]C.J:XKJ0P4R>V<1OLDBAW+D1CB\ +Z""OYK\#=( MH$>\<+LW(:4\%@!R9:G4WJ; ,BBP%4^E"QL\:@D=^J'4R4H:K L-*Q0/S%") M[Q6X&Y4(H4()F0!?G%$R#ME#5XR=C"6WD@8@RQ A2!]-/16.9'L@4A6%S4%'+H1-461L'!P(Z8B) MT(B&%+@&)2(GNJ,JA?8EWX 690ZI5&<,?,WVZC?;!P-Z5!?&Z4^Y*H(R(#B* M)!&1EU, R6U)(2PCK1V43OGX5UF%0#7H GK%E5F,L2G\X[[LHLKXLK:@9$WR ME-PD&R\20H%'13D[="I!9FJ\DK]F>_6;[8/!-:X+;]R40/P8M.F0H\I2A#I; MF>0)2H5"(1-%A24 K\4=6WK-C/-X'U%^-8&GZ*ARCQT_TB0!$T%#;-2N'(_ M"L0DG(YN=+'TZZ3T*N5N&:21^@C,)>(@R\(I4"69YDS)]T)5QS4;]1N?/$7/ M'%5GCCH85"__66G:<(\@7M!+8[4CDU18!_9JH,LLD]X+\1%)-#:(@*@\EO O='(,^$-W.-(U^)=R-PO.$G\6$NX'?BIT M%$YP3IZ3L77%[O^-OJA-,K:G%*.E)% M"8U2E4L]-6HJ2)IK/JGN6-E*?H@L5V8N4#I+3:DY^ /" 4%\EKCEQ!/ MOO'[:GAWT[]KOAJ.1L/;Y>U[UL+LA4.XRL+%Y<9-T0V_PF/",ZGF[GFO>M'R?)OFO@D2OR;-C>&M->E?)U*D;#^O8@*RCZR816=[-.' MXU_*PPH0R0>.G.SC W]6FGK2?U((_X?EZG]02P,$% @ U;;7,:-Q#^*RJ9=.P9L ''TPX0 M9K#!"9W8M(0/:;]TQ)V.4ZV3+I(.3'Y]=W7'J[&#'=M<73(3.Z>3M"N=GD?/ MKI1&:"/1;(2,^LV&Y5:PID^Y^IO=G%2J1_"R<9R6-GXJE=K*2R(F+?$THY;Y M)#%Y]Z_1IY4W9_ZF30^3(H MM3YU/US5B&"!K9.+WM6@1BKEV)(!CY@A5VQ"^BJBLM!LQ+-^L%;I<_>O3EHU M;5:Z:%UV/_U9(]8UE-!08\,ZN6SU/W3!1#F^J1/+;FR)"CZ2-6>RT/Q9#DU< M)XWCN$F>PL;B+YL.R$GEJ-HXS@J?S(V[A_K\ M(\W,G7?Z@^Y%][PUZ/:N7M/ ND7RFV*"?#XB'RG 0A:)Q[3EP938D-K:BSFR M/&Y+AX+-3 Z5]@&')J8>8+-6KJ^W#92T-0>T=?L3[ML07I7?%F!40L34]Z&/ M]X5R :WHF8F0X7JN54[C&_?"G[T8XU1X5&3FK(KKA>7I0-,EP[\Q9]]Y4@IH MQ,6TMNY+1/6(RUH9350.'4:!B?S4G*<$C$^^+U0+S["R_DD,?E#\VB2D8T8T M&W,V ;JS(3?D:T(U,)V80GFLM"5*D@NE([!9^H.H@+2II:1[W"/G2D,%:KF2 M]?D X(?>;C;3S_'N;?UY![E828L)WKD'+VEO^R_RO?7]Y)Y6=[7RSZB!]0XK M.YJ2:ZDF@ODC5DP!D"U[7V&G"L0 P)AR2:B V22QWQA< M4SCU\/EA4H;3S3SPD 7UFN&TA^_1@$L "&)M 8@B8!>JPVN]])[+ M +8UMWW!OSV1^- G@&[CZB\"=#D^QH >!#X2@A +9&>@,FM. 'GX'$T4L48B MH + 60'FG&'C//.H"4D@U,3,L*[9B(-NIF"(8F$Z O"WN 19,W/F'K_WJ-VC M=LW3=[M"[6!E8?_\YM=JY9>ZR7"9A1FX2:D@X/#HEGR74,T%AT UWG JB"DKVV1W5.4;VK4.;%682NL\BN'&DS P6 +Z>"OP_^ M(@ITCR9F^R:HE(<,@)Q92K6W2F 9)+ 5C[EQ&SS48M+U@[F2A318%AJ:">J8 M(1/?"W 7,Q&"+SG(!/#%*,%]EX@TR=!PGU/-<0 \#1&<])'84V)0MCLB-4[C M.SF@# .'+,@/;!13_#")H"@.8%C.B87\AQ9I,+$Y"0!E0X9-0') 3\S/,RA> ML[W\S?;.D#_,)P5MK0YN,='VNF)K0@(2&W,?>88:)5TBE1K@*$PB(/E0[<^( M *B)TR$7W$XQ#-ED%FG1<88C@9315JHN)2&<3KO)!A0G.@8Z,BYL\CRE?>> M2T>,F(1H2 #7P!L6(]UAE43:E&^ %GD,4BG/&'C-]O(WVSL#NI<7QNF,J4B< M,D XLB!@GN5C )+9D$*81UI;*)WT\7M9!4P>2314$ 'A>Y^#?ZZ3 X _Z Z#N@9^8^YFQEGL:\+! M?<=/B?3<"<[A/AF;5^S^;_1%;I*Q+2$(YB0X4 ,>6.#9A\<98#F++>9)T0FC MUQ@BI#D!%R2X;(:[/C$['GT00V3YR_2\:,/637UH:-A\Y[Z33;(<"#0!2E : MR,S%*0:"%)-$$=7\&W.#R133QB/E_:Z^9X8< #(W.=(6A!6!AHVY"#AE3DL MTMWUI(P2BJDJYW*LQ)BA-)=TE-VRTIG\8%$LU)3!VTFH4LU!5P@'".))XI:C MU<4$/S!W^@PS]-)WM3-[[=:@TZZE5C/;EW1**M4BJ9:KU1>[TWS_W=ZU"[7K M7?WPA=ZS7K_=Z9?.>H-![W)^?Y]48-[1T[8KH(R_Z'IOCM>O5*Q_@ M3KY\I+D?8L5'VEP=WMHR>E2?RRNYT#P/.0O(Q1RPO30(>7I#![^G!P]@XY:U MPY?X4C/*#,R,2YH=&W=5VUOVS80_BLW%RTX-[L:W]R%PFID(;J;W\Q "OS0P M9P75<$\?828+(AIQO]SZL;N\A_%OHWIK?5/1C!9#"[ M'2.$7ZXB,'1E/,+94H0.LA&_$@M=1M#OE#&< F/_P\1G>(HM[W),JQ@$0*L0G_D9GK%V^Z73\:RJ(D8NW^"J(+0/.- M5 52]GZ&3"KGN:2*R12H2#'7$Z*2''I!"^^UVP6B(6,8C2TV.)O]E R^-\Y*D*?IXU_ ;%D5M(7)JIT 8 M7)8K9TBWAMK!ZY=1XS!P"^AI]B=UJ [?RTC!^#H\9E 0M60B]*WC9G#A.@F. M[?0SE$\VGPGAFZ",+!%OCAFI10-9Q;$"$DP_MPKHBLR!U+_%!?OJD3W,L^\[N;.;W7 MLT32['YKAIG AE34/0P;H"%,8*&RNI=LTT^8[8"EHMIFNF7-A'/ 8]C$"$<= MZ!)3KUON5,8$$8E=1X?DT'RO&%9>B:7W-R(71T3^TQ4?6>A P M;0X X !D86EO7V5X,S(R+FAT;=U788_:1A#]*U.B1)R$P3:Y*K$)$L=Q M%ZKC2(%*:;]4B[W&6ZUWG=UU#_KK.[O&0*C2-NJ)JD5@@6=WYLW,F[=FD)N" M#PEP8)CA=)@2)G^FVWX8=M$XZ-5W!]]XWJU,JH(* XFBQ- 4*LW$!B:W M]Z/%C&A#E><-![W:V5JF.]!FQ^F[UGC^,%]$\,)WKQA6DX\K;_0PO7^,X)=* M&Y;M8KB;/ZXB"/S2P(H55,,C?8*%+(AH#0=EX\JN\I;3GR;UTGJ;=S>:31]^ MC,"XC0(W*KLQAMEH<3_%*'ZYC<'0K?$(9QL1*;;)38R.M5%2;(:3C^^G-],5 M],-N"(/>_NZ@5P[AV6,W&;>&K\1:E_&S13E^F/A"Q#%5^(TEQ# I8+V#<H96J2V+Z4"E=$:25D1"\@1^ZR^ZX"TN:.(Q!_]J_))J1AE$J M2TOO4V"7A-"D_M;_%F0&)J>P)&I-!-7>?,OI#D:)L9;0]\/_'T>G A(IQ+X( M3\SDK@2?*J)08O@.%"VE<@6X)8; M#>'L51XKV9UVZY^]>)-&/KQ6!8E$3OW M*XBO ,UW4A6(VOL>,JF#;KDQ1)"&GBB+24U +A[_!U(%I![Z3E,.R M"^\)BJWH?&DL&SKLT^I XN89OY1_.40=FPO94_MT^5?1K8-V8J)+LLZ0-:=- MI+54*9XSNB0)GCV1'Y]LYS0S<2:%B=PI.[Z!Q!0=2& MB*OJI M8HK: UK;;AU[WR9(? 7!=3N].G3XR.(#@_=M#M[V7SNN%&XB8DMSAQ(OZL\K M]0QU.7;^4)GG]WJ13-KAUW:8"92DHE8QE$!#F,!99;6:-.TGS&I@J:BVG>Y8 M,^$<ZX7=E!0M!ARIQK*UNXJN(U423JGXNIS^2E>ZP57NP4 M7F#FX>\,_5E'SC7@'T_ZS7QQ.UEX-_/5:CX[/+A"@.>6EIRE^PC]Z^?1@I[N MG9T =2U.*O)?'X;/T[OH(^^__X3;_J 8!B\Q^A]P7%T2R(SL( CK1YM+L*J1 M#?=O'-D4$L! A0#% @ * 9&%I;RTR,#(R,#,S,5]L86(N>&UL M4$L! A0#% @ #,Q M,2YH=&U02P$"% ,4 " !S:ZQ4T7HS'54' #(,@ #@ M@ $_- $ 9&%I;U]E>#,Q,BYH=&U02P$"% ,4 " !S:ZQ4\3KT.+T# #? M#P #@ @ ' .P$ 9&%I;U]E>#,R,2YH=&U02P$"% ,4 M" !S:ZQ4$*-Y9Z$# !M#@ #@ @ &I/P$ 9&%I;U]E>#,R ;,BYH=&U02P4& H "@!U @ =D,! end