0001410578-24-000337.txt : 20240328 0001410578-24-000337.hdr.sgml : 20240328 20240328145204 ACCESSION NUMBER: 0001410578-24-000337 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 78 CONFORMED PERIOD OF REPORT: 20231231 FILED AS OF DATE: 20240328 DATE AS OF CHANGE: 20240328 FILER: COMPANY DATA: COMPANY CONFORMED NAME: Inrad Optics, Inc. CENTRAL INDEX KEY: 0000719494 STANDARD INDUSTRIAL CLASSIFICATION: ELECTRONIC COMPONENTS, NEC [3679] ORGANIZATION NAME: 04 Manufacturing IRS NUMBER: 222003247 STATE OF INCORPORATION: NJ FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 000-11668 FILM NUMBER: 24797987 BUSINESS ADDRESS: STREET 1: 181 LEGRAND AVE CITY: NORTHVALE STATE: NJ ZIP: 07647 BUSINESS PHONE: 2017671910 MAIL ADDRESS: STREET 1: 181 LEGRAND AVE CITY: NORTHVALE STATE: NJ ZIP: 07647 FORMER COMPANY: FORMER CONFORMED NAME: PHOTONIC PRODUCTS GROUP INC DATE OF NAME CHANGE: 20040421 FORMER COMPANY: FORMER CONFORMED NAME: INRAD INC DATE OF NAME CHANGE: 19920703 FORMER COMPANY: FORMER CONFORMED NAME: INTERACTIVE RADIATION INC DATE OF NAME CHANGE: 19880804 10-K 1 inrd-20231231x10k.htm 10-K
http://fasb.org/us-gaap/2023#RelatedPartyMemberhttp://fasb.org/us-gaap/2023#RelatedPartyMember15967537P5YP10Y0000719494--12-312023FYfalsetruehttp://fasb.org/us-gaap/2023#RelatedPartyMember0000719494us-gaap:CommonStockMember2023-01-012023-12-310000719494us-gaap:CommonStockMember2022-01-012022-12-310000719494us-gaap:TreasuryStockCommonMember2023-12-310000719494us-gaap:RetainedEarningsMember2023-12-310000719494inrd:CapitalInExcessOfParValueMember2023-12-310000719494us-gaap:TreasuryStockCommonMember2022-12-310000719494us-gaap:RetainedEarningsMember2022-12-310000719494inrd:CapitalInExcessOfParValueMember2022-12-310000719494us-gaap:TreasuryStockCommonMember2021-12-310000719494us-gaap:RetainedEarningsMember2021-12-310000719494inrd:CapitalInExcessOfParValueMember2021-12-310000719494us-gaap:CommonStockMember2023-12-310000719494us-gaap:CommonStockMember2022-12-310000719494us-gaap:CommonStockMember2021-12-310000719494inrd:ExercisePriceRangeTwoMember2023-01-012023-12-310000719494inrd:ExercisePriceRangeThreeMember2023-01-012023-12-310000719494inrd:ExercisePriceRangeOneMember2023-01-012023-12-310000719494inrd:ExercisePriceRangeTwoMember2023-12-310000719494inrd:ExercisePriceRangeThreeMember2023-12-310000719494inrd:ExercisePriceRangeOneMember2023-12-310000719494us-gaap:EmployeeStockOptionMember2021-01-012021-12-310000719494us-gaap:EmployeeStockOptionMember2022-12-310000719494us-gaap:EmployeeStockOptionMember2021-12-310000719494us-gaap:EmployeeStockOptionMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMember2023-01-012023-12-310000719494us-gaap:EmployeeStockOptionMember2023-12-310000719494inrd:EquityCompensation2010ProgramMember2023-12-310000719494srt:MinimumMemberinrd:PropertyAndEquipmentExcludingLeaseholdImprovementsMember2023-12-310000719494srt:MaximumMemberus-gaap:LeaseholdImprovementsMember2023-12-310000719494srt:MaximumMemberinrd:PropertyAndEquipmentExcludingLeaseholdImprovementsMember2023-12-310000719494us-gaap:MachineryAndEquipmentMember2023-12-310000719494us-gaap:LeaseholdImprovementsMember2023-12-310000719494inrd:OfficeAndComputerEquipmentMember2023-12-310000719494us-gaap:MachineryAndEquipmentMember2022-12-310000719494us-gaap:LeaseholdImprovementsMember2022-12-310000719494inrd:OfficeAndComputerEquipmentMember2022-12-310000719494us-gaap:StateAndLocalJurisdictionMember2023-12-310000719494us-gaap:DomesticCountryMember2023-12-310000719494us-gaap:StateAndLocalJurisdictionMember2022-12-310000719494us-gaap:DomesticCountryMember2022-12-3100007194942019-07-0800007194942023-10-120000719494us-gaap:RetainedEarningsMember2023-01-012023-12-310000719494us-gaap:RetainedEarningsMember2022-01-012022-12-310000719494inrd:AffiliateOfClarexMemberus-gaap:ConvertibleSubordinatedDebtMember2023-12-310000719494inrd:AffiliateOfClarexMemberus-gaap:ConvertibleSubordinatedDebtMember2022-12-310000719494inrd:AffiliateOfClarexMemberus-gaap:ConvertibleSubordinatedDebtMember2023-01-012023-12-310000719494inrd:AffiliateOfClarexMemberus-gaap:ConvertibleSubordinatedDebtMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMemberus-gaap:CommonStockMember2023-01-012023-12-310000719494us-gaap:EmployeeStockOptionMemberus-gaap:ConvertibleNotesPayableMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMember2023-12-310000719494us-gaap:EmployeeStockOptionMember2022-12-310000719494inrd:EquipmentFinancingMember2023-01-012023-12-310000719494inrd:EquipmentFinancingMember2022-01-012022-12-310000719494inrd:UsSmallBusinessAdministrationNotePayableMember2023-12-310000719494inrd:EquipmentFinancingMember2023-12-310000719494inrd:AffiliateOfClarexMemberus-gaap:ConvertibleSubordinatedDebtMember2023-10-120000719494inrd:UsSmallBusinessAdministrationNotePayableMember2022-12-310000719494inrd:EquipmentFinancingMember2022-12-310000719494inrd:AffiliateOfClarexMemberinrd:ConvertibleSubordinatedDebt1500000Member2023-10-122023-10-120000719494inrd:AffiliateOfClarexMemberinrd:ConvertibleSubordinatedDebt1000000Member2023-10-122023-10-120000719494inrd:AffiliateOfClarexMemberinrd:ConvertibleSubordinatedDebt1500000Member2023-10-120000719494inrd:AffiliateOfClarexMemberinrd:ConvertibleSubordinatedDebt1000000Member2023-10-120000719494inrd:MajorCustomersTwoMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:MajorCustomersThreeMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:MajorCustomersOneMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:CustomerTwoMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:CustomerThreeMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:CustomerOneMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:MajorCustomersTwoMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:MajorCustomersThreeMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:MajorCustomersOneMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:CustomerTwoMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:CustomerThreeMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:CustomerOneMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494us-gaap:ConvertibleSubordinatedDebtMember2023-12-310000719494inrd:WarrantsIssuableOnConversionOfSubordinatedConvertibleNotesMember2023-12-310000719494inrd:EquityCompensationPlan2010Member2023-12-310000719494inrd:EquityCompensationPlan2000Member2023-12-310000719494us-gaap:ConvertibleSubordinatedDebtMemberus-gaap:CommonStockMember2023-10-1200007194942021-12-310000719494us-gaap:WarrantMemberus-gaap:ConvertibleNotesPayableMember2023-01-012023-12-310000719494us-gaap:ConvertibleNotesPayableMember2023-01-012023-12-310000719494us-gaap:ConvertibleNotesPayableMemberus-gaap:CommonStockMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-12-310000719494us-gaap:EmployeeStockOptionMemberus-gaap:CostOfSalesMember2023-01-012023-12-310000719494us-gaap:EmployeeStockOptionMember2023-01-012023-12-310000719494us-gaap:EmployeeStockOptionMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMemberus-gaap:CostOfSalesMember2022-01-012022-12-310000719494us-gaap:EmployeeStockOptionMember2022-01-012022-12-310000719494inrd:CapitalInExcessOfParValueMember2023-01-012023-12-310000719494inrd:CapitalInExcessOfParValueMember2022-01-012022-12-310000719494us-gaap:TransferredAtPointInTimeMember2023-01-012023-12-310000719494inrd:ScientificRdMember2023-01-012023-12-310000719494inrd:ProcessControlMetrologyMember2023-01-012023-12-310000719494inrd:LaserSystemsMember2023-01-012023-12-310000719494inrd:AerospaceDefenseMember2023-01-012023-12-310000719494us-gaap:TransferredAtPointInTimeMember2022-01-012022-12-310000719494inrd:ScientificRdMember2022-01-012022-12-310000719494inrd:ProcessControlMetrologyMember2022-01-012022-12-310000719494inrd:LaserSystemsMember2022-01-012022-12-310000719494inrd:AerospaceDefenseMember2022-01-012022-12-310000719494us-gaap:ConvertibleSubordinatedDebtMemberus-gaap:WarrantMember2023-10-122023-10-120000719494us-gaap:ConvertibleSubordinatedDebtMemberus-gaap:CommonStockMember2023-10-122023-10-120000719494inrd:EquityCompensation2010ProgramMember2023-01-012023-12-310000719494inrd:TopThreeMajorCustomersMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:TopFiveCustomersMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000719494inrd:TopThreeMajorCustomersMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000719494inrd:TopFiveCustomersMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-3100007194942022-01-012022-12-3100007194942023-12-3100007194942022-12-310000719494inrd:UsSmallBusinessAdministrationNotePayableMember2023-01-012023-12-310000719494inrd:UsSmallBusinessAdministrationNotePayableMember2022-01-012022-12-3100007194942023-10-012023-12-3100007194942023-06-3000007194942024-03-2800007194942023-01-012023-12-31xbrli:sharesiso4217:USDinrd:customerinrd:itemxbrli:pureiso4217:USDxbrli:shares

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D. C. 20549

FORM 10-K

(Mark One)

 

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

For the fiscal year ended: December 31, 2023

 

OR

 

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

 

 

For the transition period from                 to

 

Commission file number: 0-11668

Inrad Optics, Inc.

(Exact name of registrant as specified in its charter)

New Jersey

 

22-2003247

State or other jurisdiction of incorporation or organization

 

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

 

 

 

181 Legrand Avenue, Northvale, NJ

 

07647

(Address of principal executive offices)

 

(Zip Code)

Registrant’s telephone number, including area code 201-767-1910

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

Title of each class

    

Trading Symbol

     

Name of each exchange on which registered    

 

N/A

N/A

N/A

Securities registered pursuant to section 12(g) of the Act:

Common stock, par value $.01 Per Share

Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Yes . No .

Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. Yes  . No .

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 file, or a smaller reporting company. See definition of large accelerated filer, accelerated filer and smaller reporting company in Rule 12b2 of the Exchange Act. (Check one):

Large accelerated filer  

Accelerated filer  

Non-accelerated filer  

Smaller reporting company   

Emerging growth company  

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

Indicate by check mark whether the registrant has filed a report on and attestation to its management’s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.

If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements.

Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant’s executive officers during the relevant recovery period pursuant to §240.10D-1(b).

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

 

Yes

No

State the aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant’s most recently completed second fiscal quarter. $5,762,963. (For purposes of determining this amount, only directors, executive officers, and shareholders with voting power of 10% or more of our stock have been deemed affiliates.)

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

Common Shares outstanding as of March 28, 2024 –14,250,975 shares

DOCUMENTS INCORPORATED BY REFERENCE

None.

Inrad Optics, Inc.

INDEX

Part I

Page

Item 1.

Business

3

Item 1A.

Risk Factors

8

Item 1B.

Unresolved Staff Comments

11

Item 1C.

Cybersecurity

11

Item 2.

Properties

12

Item 3.

Legal Proceedings

12

Item 4.

Mine Safety Disclosures

12

Part II

Item 5.

Market for Registrants Common Equity and Related Stockholder Matters and Issuer Purchases of Equity Securities

12

Item 6.

[Reserved]

12

Item 7.

Managements Discussion and Analysis of Financial Condition and Results of Operations

13

Item 7A.

Quantitative and Qualitative Disclosures about Market Risk

17

Item 8.

Financial Statements and Supplementary Data

17

Item 9.

Changes in and Disagreements with Accountants on Accounting and Financial Disclosure

17

Item 9A.

Controls and Procedures

17

Item 9B.

Other Information

18

Item 9C.

Disclosure Regarding Foreign Jurisdictions that Prevent Inspections.

18

Part III

Item 10.

Directors, Executive Officers, and Corporate Governance

18

Item 11.

Executive Compensation

20

Item 12.

Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters

22

Item 13.

Certain Relationships and Related Transactions, and Director Independence

24

Item 14.

Principal Accountant Fees and Services

25

Part IV

Item 15.

Exhibits and Financial Statement Schedules

25

Item 16.

Form 10-K Summary

27

Signatures

28

2

PART 1

Caution Regarding Forward Looking Statements

This Annual Report contains forward-looking statements as that term is defined in the federal securities laws. The Company wishes to ensure that any forward-looking statements are accompanied by meaningful cautionary statements in order to comply with the terms of the safe harbor provided by the Private Securities Litigation Reform Act of 1995. The events described in the forward-looking statements contained in this Annual Report may not occur. Generally, these statements relate to business plans or strategies, projected or anticipated benefits or other consequences of the Company’s plans or strategies, or projections involving anticipated revenues, earnings, or other aspects of the Company’s operating results. The words “may,” “will,” “expect,” “believe,” “anticipate,” “project,” “plan,” “intend,” “estimate,” and “continue,” and their opposites and similar expressions are intended to identify forward-looking statements. The Company cautions you that these statements are not guarantees of future performance or events and are subject to a number of uncertainties, risks, and other influences, many of which are beyond the Company’s control, which may influence the accuracy of the statements and the projections upon which the statements are based. Factors that may cause or contribute to such differences include, but are not limited to, those discussed in more detail in Item 1 (Business) and Item 1A (Risk Factors) of Part I and Item 7 (Management’s Discussion and Analysis of Financial Condition and Results of Operations) of Part II of this Annual Report on Form 10-K. Any one or more of these uncertainties, risks, and other influences could materially affect the Company’s results of operations and whether forward-looking statements made by the Company ultimately prove to be accurate. Readers are further cautioned that the Company’s financial results can vary from quarter to quarter, and the financial results for any period may not necessarily be indicative of future results. The foregoing is not intended to be an exhaustive list of all factors that could cause actual results to differ materially from those expressed in forward-looking statements made by the Company. The Company’s actual results, performance and achievements could differ materially from those expressed or implied in these forward-looking statements. The Company undertakes no obligation to publicly update or revise any forward-looking statements, whether from new information, future events, or otherwise, except as otherwise required by law.

Item 1.       Business

Inrad Optics, Inc. (the “Company,” “Inrad,” or “we”), was incorporated in New Jersey in 1973. The Company develops, manufactures, and markets products and services for use in photonics enabled industry sectors.

The Company is a vertically integrated manufacturer specializing in glass, crystal, and metal based optical components, and sub-assemblies. Manufacturing capabilities include super-precision optical surfacing, precision diamond turning, the ability to handle large substrates, proprietary optical contacting processes, thin film coatings, and high resolution in-process metrology.

Inrad Optics’ customers include leading corporations in the semiconductor equipment, process control and metrology, defense, aerospace, and laser systems sectors of the broad set of photonics enabled industries, as well as the U.S. Government, National Laboratories and universities and institutions worldwide.

Administrative, engineering and manufacturing operations are in a 42,000 square foot building located in Northvale, New Jersey.

Products Manufactured by the Company

The Company built its reputation on its ability to grow and fabricate crystalline materials. As original equipment manufacturers (OEM) demand waned for such crystals the Company transitioned to a vertically integrated photonics manufacturer focused in three main categories: Ultraviolet (UV) to Infrared (IR) Optical Components, X-ray Imaging Optics, and Metal Substrate Optics.

The Company offers thin-film coating services, opto-mechanical design for manufacturability, and complex assembly services as part of its deliverables, and supports prototyping through production requirements across all three product areas.

3

UV-IR Optics and Assemblies

The Company specializes in high-end precision components and sub-assemblies. It develops, manufactures, and delivers precision custom optics and thin film optical coatings. Glass and single crystal substrates are processed to specific customer requirements using complex and often proprietary techniques to manufacture components, deposit optical thin films, and assemble sub-components used in advanced photonic systems. Planar, prismatic, and spherical components are fabricated from glass and synthetic crystals, including fused silica, germanium, quartz, silicon, zinc selenide, zinc sulfide, and other optical glasses.

Components consist of large form factor transmission flats, optical windows for airborne applications, multi-element optical assemblies, lenses, mirrors, polarizing optics, prisms, and wave plates. The Company specializes in super-precision interferometer and transmission flats up to 480mm diameter across a variety of optical materials, as well as multi-element optical assemblies utilizing adhesive free optical contacting and other bonding processes.

Most optical components and sub-assemblies in the UV-IR range require thin film coatings on their surfaces. Depending on the design, optical coatings can refract, reflect, and transmit specific wavelengths. Optical coating specialties include anti-reflective high laser damage resistance, highly reflective, infra-red, polarizing, and coating to complex multi- wavelength requirements on a wide range of substrate materials. Coating deposition process technologies employed include electron beam, ion and plasma assisted deposition, and thermal deposition of multi-layer coating designs.

X-Ray Imaging Optics

Using proprietary optical polishing and proprietary adhesive free bonding techniques, the Company fabricates high-performance bent x-ray monochromators from a large selection of crystal materials and orientations. The Company’s implementation of exacting metrology and specialized processing techniques enable it to develop flat and bent x-ray crystals curved to different shapes with arcsecond precision, verified quality, and high orientation accuracy. This technology is used in OEM and research and development (R&D) high-impact applications, including x-ray photoelectron spectroscopy (XPS) for elemental surface analysis applications in semiconductor wafer inspection, life science and micro-probe chemical analysis.  The Company’s bent x-ray crystal assemblies have wide deployment in government R&D facilities for synchrotron beamline focusing and plasma diagnostics in nuclear fusion energy research. Overall, the Company’s products in this area have substantial market impact and the Company has continuously driven innovation to better serve the changing needs of x-ray optics customers.

Metal Substrate Optics and Assemblies

The Company manufactures precision aspheres, large and small metal mirrors, low RMS surface finish polished mirrors, reflective Porro prisms, and thermally stable optical mirrors. Plating specialties include void-free gold and electroless nickel. Metal substrate optics are produced to customer specifications utilizing high precision diamond machining, polishing, and plating of aluminum, AlBeMet™, beryllium, and stainless steel. Leveraging its unique metal substrate expertise, the Company minimizes assembly distortion of the finished optic and ensures quality through in-house testing. The Company’s design optimization results in lower costs and shortened cycle time while improving repeatability for configured components. This product area has served the defense markets for many years and has evolved to include space-based applications in communications and docking systems.

The following table summarizes the Company’s net sales by product categories during the past two years.

    

Years Ended December 31,

2023

   

2022

Category (In thousands)

Net Sales

   

%  

Net Sales

   

%

UV-IR Optics

$

4,960

38.4

$

4,877

45.9

X-ray Optics

6,235

48.3

4,379

41.2

Metal Substrate Optics

 

1,715

 

13.3

1,375

 

12.9

Total

$

12,910

 

100.0

$

10,631

 

100.0

4

Sales by Market

The photonics industry serves a broad, fragmented, and expanding set of markets. As technologies are discovered, developed, and commercialized, the applications for photonic systems and devices, and the components embedded within those devices, expand across traditional market boundaries. While a significant part of the Company’s business remains firmly in the process control and metrology and defense and aerospace markets, other markets served include OEM manufacturers in the medical and industrial laser market, university research institutes and national labs worldwide. Scanning, detection and imaging technologies for homeland security and surface inspection also provide opportunities for the Company and these sectors are expected to continue to account for potential future growth and demand for our products and capabilities.

In 2023 and 2022, the Company’s product sales were made to customers in the following market areas:

    

Years Ended December 31,

 

2023

2022

 

Market (In thousands)

    

Net Sales

    

%  

    

Net Sales

    

%

Aerospace & Defense

$

2,540

19.7

$

3,008

28.3

 

Process Control & Metrology

 

9,325

72.1

6,981

65.7

Laser Systems

 

53

0.4

188

1.8

Scientific / R&D

 

992

7.7

454

4.3

Total

$

12,910

100.0

$

10,631

100.0

Aerospace & Defense

This market consists of sales to OEM defense electro-optical systems and subsystems manufacturers, U.S. based prime aerospace and defense contractors, and system integrators where the products have the same end-use.

End-use applications for the Company’s products in the aerospace and defense sector include military laser systems, military electro-optical systems, satellite-based systems, and missile warning sensors and systems that protect aircraft. The dollar volume of shipments of product within this sector depends in large measure on the U.S. Defense Department budget and its priorities, that of foreign governments, the timing of their release of contracts to their prime equipment and systems contractors, and the timing of competitive awards from this customer community to the Company.

Sales in the aerospace and defense market represented approximately 19.7% and 28.3%  of sales in 2023 and 2022, respectively. Sales of $2.5 million in 2023 decreased by approximately $0.5 million, or 15.6% from sales of $3.0 million in 2022. The decrease is attributable to the timing of contracts and internal capacity constraints. The Company believes that the aerospace and defense sector continues to represent a significant opportunity for growth given the Company’s capabilities in glass, single crystal and metal precision optics, all widely deployed throughout this sector, despite the decline in revenues from 2022 to 2023.

Process Control and Metrology

This market consists of capital equipment manufacturers whose products are used in the areas of manufacturing process and control, optics-based metrology, quality assurance, and inventory and product control. Examples of applications for such equipment include semiconductor wafer inspection, nanoscale surface defect analysis, and optical sensing systems.

Sales in the Process Control and Metrology (PC&M) market increased by approximately $2.3 million, or 33.6% to $9.3 million in 2023, compared to sales of $7.0 million in 2022. Sales in the PC&M market represented 72.2% and 65.6%  of total sales in 2023 and 2022, respectively. Increased sales in 2023 were a result of the continuing demand for our products, especially products installed in semiconductor capital equipment.

The Company believes that the optical and x-ray inspection segment of the semiconductor industry offers continued growth opportunities which match its capabilities in precision optics, crystal products, and monochromators.

5

Laser Systems

This market consists principally of customers who are OEM manufacturers of industrial, medical, and R&D lasers. The Company also serves a number of smaller customers in other niche markets and international distributors.

Sales in this market were 0.4% of total sales in 2023 compared to 1.8% of total sales in 2022. Sales in the laser systems market decreased $0.1 million, due to last time orders placed in 2022 for legacy products.

Scientific / R&D

These sales consist of product sales directly to researchers at various educational and research institutions domestically and internationally. A portion of the international sales to this market are through distributors. Sales to customers within the Scientific/R&D market consist primarily of x-ray monochromators for use in plasma physics applications for defense and fusion energy research. Sales of $1.0 million in 2023 increased approximately $0.5 million, or 118.5% from sales of $0.5 million in 2022 due to increased research and development activities coupled with timing of orders.

Major Customers

The Company’s sales have historically been concentrated within a small number of customers, although the top customers have varied from year to year.

In 2023, the Company’s sales to its top three customers accounted for 54.4% of sales. These customers included three OEM manufacturers of process control and metrology equipment. These customers represented 27.5%, 14.8%, and 12.1% of total sales during the year.

Sales to the Company’s top five customers represented approximately 69.6%  and 68.6% of sales, in 2023 and 2022, respectively. All of these customers are OEM manufacturers either within the process control and metrology or aerospace and defense sectors.

Export Sales

The Company’s export sales are primarily to customers in Canada, the Czeck Republic, Germany, Israel, and Singapore, amounted to approximately 44.4% and 39.0% of product sales in 2023 and 2022, respectively.

Long-Term Contracts

Certain of the Company’s agreements with customers provide for periodic deliveries at fixed prices over a long period of time. In such cases, the Company negotiates to obtain firm price commitments, as well as cash advances from its customers for the purchase of the materials necessary to fulfill the order.

Marketing and Business Development

The Company markets its products domestically, through the coordinated efforts of the sales, marketing, and customer service team.

The Company has moved towards a strategy of utilizing these combined sales and marketing resources for cross selling all products across all business lines. This strategy is well suited to the diverse and fragmented photonics enabled applications.

Non-exclusive independent sales agents are occasionally used in major non-U.S. markets, including the United Kingdom, the European Union, Israel, and Japan.

Sales and marketing efforts are coordinated by the Vice President, Sales and Marketing, to promote our product lines through various means including, participation in trade shows, internet-based marketing, media and non-media advertising and promotions, customer visits, and management of international sales representatives and distributors.

6

Backlog

The Company’s order backlog as of December 31, 2023, was $15.6 million. The Company’s order backlog at December 31, 2022, was $20.5 million. The decrease in order backlog is due to customers placing contracts with multi-year delivery schedules in 2022, particularly from customers across the process control and metrology sector.

We anticipate shipping a majority of the present backlog during fiscal year 2024. However, our current backlog consists of orders with delivery schedules that extend beyond 12 months into the future.

Competition

Within each product category in which the Company’s business units are active, there are varying degrees of competition.

Our optical components manufacturing capabilities offer unique solutions designed for highly specialized applications. We are an industry leader in supplying bent crystal analyzers used in x-ray photoelectron spectroscopy, synchrotron beamline focusing, and plasma diagnostics in controlled nuclear fusion research facilities. We are a leading supplier of large precision flats produced in volume for semiconductor defect inspection tools and metrology systems. We have a broad range of materials expertise to produce products across the spectrum from the ultraviolet to the far infrared. Specialized custom optical and opto-mechanical components that we produce are used in military imaging platforms and early warning missile sensing systems. By utilizing a team of scientists, engineers, and manufacturing experts, we believe we have a competitive advantage over traditional optical component manufacturers.

Although price is a principal factor in many product categories, competition is also based on product design, performance, customer confidence, quality, delivery, and customer service. Based on its performance to date, the Company believes that it can continue to compete successfully, although no assurances can be given in this regard.

Competitors for our custom optical components used in military and process control applications include several large publicly traded, broad capability, photonics companies. There is also competition from a range of smaller niche businesses catering to a limited set of product offerings. In metal optics, we have similar competition for mirrors used in aerospace telescopes and EO/IR modules from large and well-capitalized public companies as well as several smaller niche companies. There is limited competition in the x-ray optics product segment, where the Company possesses proprietary intellectual property and expertise.

Human Capital

We believe that each employee contributes to the culture of integrity, respect, and commitment to our customers through innovation and teamwork. Our workplace health and safety programs include robust policies, procedures, training programs, and self-audits. Our manufacturing facility is in Northvale, NJ, where we maintain high standards of workplace safety and employee protection. We have also been demonstrating a focus on health and safety in our response to COVID-19. Measures adopted onsite include multiple COVID-19 safety protocols, such as the use of personal protective equipment, enhanced cleaning practices, and regular internal communication regarding impacts of COVID-19 outbreaks.

We offer a variety of benefits such as health insurance, paid and unpaid leave, retirement, and life and disability/accident coverage as applicable.

Inrad Optics recognizes the significance and value of diversity, equity, and inclusion (DE&I). DE&I serves as a fundamental component in promoting innovation, fostering a positive work culture, and driving long-term business success and has enabled us to position ourselves as an employer of choice, attracting talent in our workforce from diverse backgrounds. We recognize the significance and value of the DE&I efforts in our organization.

For our manufacturing activities, the speed at which we can recruit, train, and deploy quality new and replacement personnel is an important part of our ability to increase and strengthen our production capacity. We rely upon both employees and resources from staffing firms to meet our needs for direct labor. We face strong competition from companies in the photonics and optics industry as well as a variety of other technology fields to secure the engineering and fabrication talent that we require.

As of the close of business on March 28, 2024, the Company had 61 full-time employees.

7

Intellectual Property

The Company relies on its manufacturing and technological expertise, know-how, and trade secrets to maintain its competitive position in the industry. The Company takes precautionary and protective measures to safeguard its technical design and manufacturing processes. The Company executes nondisclosure agreements with its employees and, where appropriate, with its customers, suppliers, and other associates.

Regulation

Foreign sales of certain of the Company’s products to certain countries may require export licenses from the United States Department of Commerce and/or Department of State. Such licenses are obtained when required. All requested export licenses of Inrad Optics products have been granted or deemed not required.

International Traffic in Arms Regulations (“ITAR”) governs much of the Company’s domestic defense sector business, and the Company is capable of handling its customers’ technical information under these regulations. Inrad Optics, Inc. is registered with the United States Department of State Directorate of Defense Trade Controls and utilizes a supplier base of similarly registered companies.

There are no other federal regulations or any unusual state regulations that directly affect the sale of the Company’s products other than those environmental compliance regulations that generally affect companies engaged in manufacturing operations in New Jersey.

Availability of Reports

Our principal executive offices are located at 181 Legrand Avenue, Northvale, N.J. 07647, which also houses our manufacturing operations. Our telephone number is 201-767-1910, and our corporate website address is www.inradoptics.com. We include our website address in this annual report on Form 10-K only as an inactive textual reference and do not intend it to be an active link to our website. The information on our website is not incorporated by reference in this annual report on Form 10-K.

Our annual reports on Form 10-K, quarterly reports on Form 10-Q, current reports on Form 8-K, and any amendments to such reports, as well as other documents we file with the Securities and Exchange Commission, are available free of charge on our web site at www.inradoptics.com as soon as reasonably practicable after such reports are electronically filed with or furnished to the Securities and Exchange Commission (“SEC”) (www.sec.gov). We will also provide electronic or paper copies of such reports free of charge upon request made to our Corporate Secretary.

Item 1A.      Risk Factors

The Company cautions investors that its performance (and, therefore, any forward-looking statement) is subject to risks and uncertainties. The risks described below are those we currently consider to be material. However, there may be other risks, which we now consider immaterial, or which are unknown or unpredictable, with respect to our business, the markets in which we operate, our competition, the regulatory environment or otherwise that could have a material adverse effect on our business, financial condition, or results of operations.

a.

The Company has a history of losses

While we were profitable in 2023, 2022, and 2021, we recorded a net loss for each of the years ended December 31, 2020, and 2019. Our previous history of losses has had an adverse effect on our working capital, total assets, and shareholders’ equity. We are unable to predict, with certainty, whether we will continue to be profitable after 2023, and our inability to achieve and sustain profitability may negatively affect our business, financial condition, results of operations, and cash flows.

b.

The Company may need to raise additional capital to repay indebtedness and to fund our operations

We may need to raise additional financing to repay our outstanding indebtedness of approximately $2.8 million and to fund our current level of operations. Additional financing, which is not in place at this time, may be from the sale of equity or convertible or

8

other debt securities in a public or private offering, or from an additional credit facility. We may be unable to raise sufficient additional capital on favorable terms, if at all, to supply the working capital needs of our existing operations or to expand our business.

c.

The Company has exposure to government markets

Sales to customers in the defense industry represent a significant part of our business. These customers in turn generally contract with government agencies. Most governmental programs are subject to funding approval through congressional appropriations which can be modified or terminated without warning upon the determination of a legislative or administrative body. Appropriations can also be affected by legislation that addresses larger budgetary issues of the U.S. Government which could reduce available funding for most federal agencies, including the Department of Defense. It is difficult to assess how this may impact our defense industry customers and the business we do with them in the future. The loss or failure to obtain certain contracts or a loss of a major government customer could have a material adverse effect on our business, results of operations, or financial condition.

d.

The Company’s revenues are concentrated in its largest customer accounts

For the year ended December 31, 2023, three customers each accounted for more than 10% of revenues representing 54.4% of total revenues. We are a supplier of custom manufactured components of OEM customers and have a number of large customers in both the commercial and defense markets. The relative size and identity of our largest customers may change from year to year, but in the short term, the loss of any of these large customer accounts or a decline in demand in the markets which they represent could have a material adverse effect on our business, results of operations, or financial condition. The Company depends on, but may not succeed in, developing and acquiring new products and processes

To meet the Company’s strategic objectives, the Company needs to continue to develop new processes, improve existing processes, and manufacture and market new products. As a result, the Company may continue to make investments in process development and additions to its product portfolio. There can be no assurance that the Company will be able to develop and introduce new products or enhancements to its existing products and processes in a way that achieves market acceptance or other pertinent targeted results. The Company also cannot be sure that it will have the human or financial resources to pursue or succeed in such activities.

e.

The Company’s stock price may fluctuate widely

The Company’s stock is thinly traded. Many factors, including, but not limited to, future announcements concerning the Company, its competitors or customers, as well as quarterly variations in operating results, announcements of technological innovations, seasonal or other variations in anticipated or actual results of operations, changes in earnings estimates by analysts or reports regarding the Company’s industries in the financial press or investment advisory publications, could cause the market price of the Company’s stock to fluctuate substantially. In addition, the Company’s stock price may fluctuate widely for reasons which may be unrelated to operating results. Also, any information concerning the Company, including projections of future operating results, appearing in investment advisory publications or on-line bulletin boards, or otherwise emanating from a source other than the Company could in the future contribute to volatility in the market price of the Company’s common stock.

f.

The Company’s business success depends on its ability to recruit and retain key personnel

The Company depends on the expertise, experience, and continuing services of certain scientists, engineers, production, and management personnel, and on the Company’s ability to recruit additional personnel. There is competition for the services of these personnel, and there is no assurance that the Company will be able to retain or attract the personnel necessary for its success, despite the Company’s efforts to do so. The loss of services of the Company’s key personnel could have a material adverse effect on its business, results of operations, or financial condition.

g.

Many of the Company’s customers are in cyclical industries

The Company’s business is significantly dependent on the demand its customers experience for their products. Many of their end users are in industries that historically have experienced a cyclical demand for their products. The industries include, but are not limited to, the defense electro-optics industry and the manufacturers of process control capital equipment for the semiconductor tools industry. As a result, demand for the Company’s products is subject to cyclical fluctuations, and this could have a material effect on our business, results of operations, or financial condition.

9

h.

The Company’s manufacturing processes require products from limited sources of supply

The Company utilizes many relatively uncommon materials and compounds to manufacture its products. Many of the materials have long lead times and the Company’s suppliers could fail to deliver sufficient quantities of these necessary materials on a timely basis, or deliver contaminated or inferior quality materials, or markedly increase their prices. Any such actions could have an adverse effect on the Company’s business, despite the Company’s efforts to secure long term commitments from its suppliers. Adverse results might include reducing the Company’s ability to meet commitments to its customers, compromising the Company’s relationship with its customers, adversely affecting the Company’s ability to meet expanding demand for its products, or causing the Company’s financial results to deteriorate.

i.

The Company faces competition

The Company encounters substantial competition from other companies positioned to serve the same market sectors. Some competitors may have financial, technical, capacity, marketing, or other resources more extensive than ours, or may be able to respond more quickly than the Company to new or emerging technologies and other competitive pressures. Some competitors have manufacturing operations in low-cost labor regions such as the Far East and Eastern Europe and can offer products at lower prices than the Company. The Company may not be successful in winning orders against the Company’s present or future competitors, and competition may have a material adverse effect on our business, results of operations, or financial condition.

j.

The Company may not be able to fully protect its intellectual property

The Company does not in general rely on patents to protect its products or manufacturing processes. The Company generally relies on a combination of trade secrets and employee non-compete and nondisclosure agreements to protect its intellectual property rights. There can be no assurance that the steps the Company takes will be adequate to prevent misappropriation of the Company’s technology. In addition, there can be no assurance that, in the future, third parties will not assert infringement claims against the Company. Asserting the Company’s rights or defending against third-party claims could involve substantial expense, thus materially and adversely affecting the Company’s business, results of operations, or financial condition.

k.

Data breach and breakdown of information and communication technologies

In the course of our business, we collect and store sensitive data, including intellectual property. We could be subject to service outages or breaches of security systems which may result in disruption, unauthorized access, misappropriation, or corruption of this information. We rely on our information technology systems to effectively manage our operational and financial functions. We increasingly rely on information technology systems to process, transmit, and store electronic information. In addition, a significant portion of internal communications, as well as communication with customers and suppliers, depends on information technology. We are exposed to the risk of cyber incidents in the normal course of business. Cyber incidents may be deliberate attacks for the theft of intellectual property, other sensitive information or cash or may be the result of unintentional events. Like most companies, our information technology systems may be vulnerable to interruption due to a variety of events beyond our control, including, but not limited to, physical or electronic break-ins, vendor service outages, terrorist attacks, telecommunications failures, computer viruses, hackers, foreign governments, and other security issues. We have technology security initiatives and data recovery plans in place to mitigate our risk to these vulnerabilities, but these measures may not be adequate, or implemented properly, or executed timely to ensure that our operations are not disrupted. We have insurance coverage for cyber liability, but there can be no assurances that the amount of coverage will be adequate or that insurance proceeds will be available for a particular claim.

Although we have not experienced an incident, potential consequences of a material cyber incident include damage to our reputation, litigation, system disruptions, shutdowns, unauthorized disclosure of confidential information, and increased cyber security protection and remediation costs. Such consequences could materially and adversely affect our results of operations.

l.

The Company may be impacted by global political and economic conditions, including acts of war

Terrorism, armed conflict, and acts of war (or the expectation of such events), both in the US and abroad, could also have a significant impact on Inrad Optics’ business and the worldwide economy. For instance, the Russia-Ukraine conflict has had an adverse impact, among other things, on certain of our suppliers or customers. Ongoing economic sanctions may further disrupt the supply chain and increase costs where there are limited sources of certain raw materials.

10

m.

A pandemic, epidemic or outbreak of an infectious disease in the United States and globally may adversely affect our business

A pandemic, epidemic or outbreak of an infectious disease occurring in the United States and/or worldwide, may adversely affect production. The spread of an infectious disease, including the COVID-19 virus, which was declared a pandemic by the World Health Organization on March 11, 2020, may also result in the inability of our suppliers to deliver on a timely basis or at all. In addition federal, state, and local governments may curtail and restrict business activities, as well as the ability for our employees to work. Such events may result in a period of business disruption, and in reduced operations, which could materially affect our business, financial condition and results of operations. Any significant infectious disease outbreak, including the COVID-19 pandemic, could result in a widespread health crisis that could adversely affect the economies and financial markets worldwide, resulting in an economic downturn that could impact our business, financial condition and results of operations, including our ability to obtain additional funding, if needed.

The spread of COVID-19 has negatively impacted the global economy and has impacted our operations, including the curtailment of certain of our production activities from a human resource perspective and minor disruptions in our supply chain. The extent to which the global coronavirus pandemic continues to impact our business will depend on future developments, which are highly uncertain and cannot be predicted, including new information that may emerge concerning the severity of COVID-19, and the actions to contain or treat its impact, among others. The Company continues to monitor safety protocols and enhance its business continuity plans for potential exposure in the event of infection in our offices and production facility, or in response to potential mandatory quarantines.

Item 1B.      Unresolved Staff Comments

None

Item 1C.      Cybersecurity

Cybersecurity Risk Management

We, like other companies in our industry, face cybersecurity risks in connection with our business. Our business strategy, results of operations, and financial condition have not, to date, been affected by risks from cybersecurity threats. During the reporting period, we have not experienced any material cyber incidents, nor have we experienced a series of immaterial incidents, which would require disclosure.

In the ordinary course of our business, we collect and store sensitive data. To effectively prevent, detect, and respond to cybersecurity threats, we maintain a cyber risk management program, which is comprised of policies, standards, architecture, and processes. The cyber risk management program falls under the purview of our Controller, who serves as our head of the Information Technology (“IT”) systems and processes, and has cross-functional expertise in IT, cyber security, and more than 10 years of experience. Under the guidance of our Controller and Chief Financial Officer, we work with various third party consultants to help develop, maintain, and evidence the policies, standards, and processes in a manner consistent with applicable legal requirements and to evaluate/adopt cybersecurity software from reputable vendors in cybersecurity.

We have implemented and maintain a cybersecurity risk management program that is designed to identify, assess, and mitigate risks from cybersecurity threats to this data and our systems and ensure the effectiveness of our security controls. Our cybersecurity risk management program is intended to address applicable NIST 800-171 and CMMC requirements. Our cybersecurity risk management program incorporates several components, including information security program assessments, continuous monitoring of critical risks from cybersecurity threats using automated tools, backup testing, and employee training. We deploy a wide range of security tools, require multifactor authentication across all systems, and utilize access control policies to further limit access to data within the systems.

We periodically engage third parties, which are subject to our standards, policies, and procedure, to conduct risk assessments.  As a result of these assessments and testing, we have responded to all known risks and are constantly strengthening our environment as applicable. Additionally, our program includes role-based privacy and cybersecurity training for all employees. Training occurs prior to accessing the system or performing assigned duties, when required by system changes, and annually thereafter.

11

Governance

Our Board of Directors (“Board") is responsible for the oversight of cybersecurity risk management. Annually, and on an as needed basis, the Chief Financial Officer (“CFO”) provides updates to the Board on our cybersecurity risk management program, including any critical cybersecurity risks, ongoing cybersecurity initiatives and strategies, and applicable regulatory requirements and industry standards. The CFO also notifies the Board of any cybersecurity incidents (suspected or actual) and provides updates on the incidents as well as cybersecurity risk mitigation activities as appropriate.

Item 2.      Properties

Administrative, engineering, and manufacturing operations are housed in a 42,000 square foot building located in Northvale, New Jersey. The lease for the Northvale facility was renewed for a term of three years from June 1, 2022 to May 31, 2025, along with an option to renew the lease for three additional one-year terms running through May 31, 2028, at substantially the same terms. We believe that our existing facility is adequate to meet current and future projected production needs.

Item 3.      Legal Proceedings

We are not party to any legal proceedings as of the date hereof.

Item 4.      Mine Safety Disclosures

Not Applicable

PART II

Item 5.      Market for Registrant’s Common Equity and Related Stockholder Matters

a.Market Information

The Company’s Common Stock, with a par value of $0.01 per share, is traded on the OTC Pink Sheets under the symbol “INRD.”

b.Shareholders

As of March 28, 2024, there were approximately 124 shareholders of record of our Common Stock based on the `Shareholders’ Listing provided by the Company’s transfer agent. As of the same date, the Company estimates there are an additional 240 beneficial shareholders.

c.Dividends

The Company has not historically paid cash dividends. Payment of cash dividends is at the discretion of the Company’s Board of Directors (the “Board”) and depends, among other factors, upon the earnings, capital requirements, operations, and financial condition of the Company. The Company does not anticipate paying cash dividends in the foreseeable future.

d.Recent Sales of Unregistered Securities

There have been no sales of unregistered securities during the past year.

Item 6.      Reserved

12

Item 7.      Management’s Discussion and Analysis of Financial Condition and Results of Operation

The following discussion and analysis should be read in conjunction with the Company’s consolidated financial statements and the notes thereto presented elsewhere herein. The discussion of results should not be construed to imply any conclusion that such results will necessarily continue in the future.

Critical Accounting Policies

The Company’s significant accounting policies are described in Note 1 of the Consolidated Financial Statements. The Company’s consolidated financial statements were prepared in accordance with accounting principles generally accepted in the United States of America. In preparing the Company’s financial statements, the Company made certain estimates and judgments that affect the results of operations and the value of assets and liabilities the Company reports. We base these significant judgments and estimates on historical experience and other applicable assumptions we believe to be reasonable based upon information presently available. These estimates may change as new events occur, as additional information is obtained, and as our operating environment changes. These changes have historically been minor and have been included in the financial statements as soon as they became known. Actual results could materially differ from our estimates under different assumptions, judgments, or conditions.

Management has discussed the development and selection of these critical accounting policies and estimates with the Audit Committee of the Board of Directors and the Audit Committee has reviewed the related disclosure. The Company believes that the following summarizes critical accounting policies that require significant judgments and estimates in the preparation of the Company’s consolidated financial statements:

Revenue Recognition

Revenue from the Company’s sales continue to generally be recognized either when products are shipped (i.e., point in time) or under certain long-term government contracts, as the Company transfers control of the product or service to its customers (i.e., over time), which approximates the previously used percentage-of-completion method of accounting.

Inventory

Inventories are stated at the lower of cost (first-in, first-out method) or net realizable value. Cost of manufactured goods includes material, labor and overhead.

The Company records a reserve for slow moving inventory as a charge against earnings for all products identified as surplus, slow moving, or discontinued. Excess work-in-process costs are charged against earnings whenever estimated costs-of-completion exceed unbilled revenues.

Stock-based compensation

Stock based compensation expense is estimated at the grant date based on the fair value of the award. The Company estimates the fair value of stock options granted using the Black-Scholes option pricing model. The fair value of restricted stock units granted is estimated based on the closing market price of the Company’s common stock on the date of the grant. The fair value of these awards, adjusted for estimated forfeitures, is amortized over the requisite service period of the award, which is generally the vesting period.

Income Taxes

Deferred income taxes are provided on the asset and liability method whereby deferred tax assets are recognized for deductible temporary differences and operating loss and tax credit carry forwards and deferred tax liabilities are recognized for taxable temporary differences. Temporary differences are the differences between the amounts of assets and liabilities recorded for income tax and financial reporting purposes. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will not be realized. Deferred tax assets and liabilities are adjusted for the effects of changes in tax laws and rates on the date of enactment.

13

The Company recognizes the financial statement benefit of an uncertain tax position only after determining that the relevant tax authority would more likely than not sustain the position. For tax positions meeting the more likely than not threshold, the amount recognized in the financial statements is the largest benefit that has a greater than 50 percent likelihood of being realized upon ultimate settlement with the relevant tax authority.

The Company classifies interest and penalties related to income taxes as income tax expense in its Consolidated Financial Statements.

Leases

The Company entered into an amendment and extension of its building lease on July 25, 2022, retroactive to June 1, 2022. Under the guidance of ASU 2016-02, Leases (Topic 842), the Company must determine if such an arrangement contains a lease and whether that lease meets the classification criteria of a finance or operating lease at inception of the arrangement. The Company determined that this lease is an operating lease and presented as a right-of-use lease asset, short term lease liability and long-term lease liability on the consolidated balance sheet. These assets and liabilities are recognized at the commencement date based on the present value of remaining lease payments over the lease term using the Company’s incremental borrowing rate.

Results of Operations

The following table sets forth, for the past two years, the percentage relationship of statement of operations categories to total revenues.

    

Years ended December 31,

 

    

2023

    

2022

 

%

%

Revenues:

 

 

Product sales

 

100.0

%

100.0

%

Costs and expenses:

 

Cost of goods sold

 

61.8

70.8

Gross profit margin

 

38.2

29.2

Selling, general and administrative expenses

 

23.2

26.2

Operating income (loss)

 

15.0

3.0

Net income (loss)

 

13.9

1.4

Revenues

Sales were $12.9 million in 2023, an increase of 21.4% or $2.3 million, compared to $10.6 million in 2022. The increase in sales from 2022 to 2023 was due to stronger sales in the process control and metrology and scientific/R&D as applications and components for the semiconductor capital equipment market are developed.

Sales to the defense and aerospace market in 2023 decreased 15.6% or $0.5 million to $2.5 million from $3.0 million in 2022. Sales in the defense and aerospace market represented 19.7% and 28.3% of total sales in 2023 and 2022, respectively. The decrease in revenue in this market was due to a decrease in the demand for our products.

Sales in the process control and metrology market increased $2.3 million, or 33.4% to $9.3 million in 2023 from $7.0 million in 2022. Sales in the process control and metrology market represented 72.1% and 65.7% of total sales in 2023 and 2022, respectively. Increased demand for process control and metrology components, including critical components in the semiconductor capital equipment market positively impacted sales in 2023 and 2022.

In 2023 and 2022, the Company served as an OEM supplier of custom optical components within the non-military laser industry. Sales to this and related markets in 2023 were $0.1 million, a decrease of $0.1 million or 71.9% compared to $0.2 million in 2022. Overall, sales of laser devices and related products represented 0.4% and 1.8% of revenues in 2023 and 2022, respectively.

14

Sales to customers within the Scientific / R&D market were $1.0 million and $0.5 million for the years ended December 31, 2023 and 2022, respectively. As a percentage of total sales, this market represented 7.8% and 4.3% sales in 2023 and 2022, respectively. The increase in sales in this market is due to timing of research and development activities.

Bookings

The Company booked new orders totaling approximately $8.0 million in 2023. The Company’s backlog as of December 31, 2023, was $15.6 million, compared to $20.5 million as of December 31, 2022. The significant decrease in year over year bookings is due to extraordinary demand from customers to secure capacity for optical and x-ray components in the process control and metrology sector in 2022.

Cost of Goods Sold and Gross Profit Margin

Cost of goods sold as a percentage of sales was 61.8% and 70.8% for the years ended December 31, 2023 and 2022, respectively. The cost of goods sold in 2023 was $8.0 million compared to $7.5 million in 2022, an increase of $0.5 million mainly attributable to the increase in sales. Materials, direct labor, and overhead offset by inventory adjustments impacted gross profit margin in 2023.

Selling, General and Administrative Expenses

Selling, general and administrative expenses (“SG&A”) were $3.1 million and $2.8 million for the years ended December 31, 2023 and 2022, respectively. SG&A expenses increased due to an increase in corporate insurance costs, legal and professional fees, and trade show and travel expenses. As a percentage of sales, SG&A was 24.1% of sales in 2023 compared to 26.2% of sales in 2022.

Operating Income

The Company had operating income of $1.7 million in 2023, compared to operating income of $0.2 million in 2022.

Other Income and Expenses

Net interest expense was $0.1 million and $0.2 million in the years ended December 31, 2023 and 2022, respectively.

Income Taxes

For the year ended December 31, 2023, the Company recorded a net valuation allowance release of $1.0 million on the basis of management’s reassessment of the amount of its deferred tax assets that are more likely than not to be realized. As of each reporting date, management considers new evidence, both positive and negative, that could affect its view of the future realization of deferred tax assets. As of December 31, 2023, management determined there is sufficient positive evidence that it is more likely than not that the net deferred tax asset (other than foreign net operation losses) is realizable.

The Company did not record a current provision for income taxes in 2022, due to the availability of net operating loss carryforwards to offset taxable income for both federal and state tax purposes.

Net Income (Loss)

As a result of the foregoing, the Company recorded net income of $2.7 million in 2023 compared to $0.2 million in 2022.

Liquidity and Capital Resources

The Company’s primary source of liquidity is cash and cash equivalents and on-going collection of our accounts receivable. The Company’s major uses of cash in the past three years have been for operating expenses, capital expenditures, and for repayment and servicing of outstanding debt and accrued interest.

As of December 31, 2023, and December 31, 2022, cash and cash equivalents were $3.0 million and $2.0 million, respectively.

15

On October 12, 2023, the maturity dates of a $1,500,000 Subordinated Convertible Promissory Note to Clarex Limited (“Clarex”) and a $1,000,000 Subordinated Convertible Promissory Note to an affiliate of Clarex were each extended to January 15, 2025, from August 15, 2024. The notes bear interest at 6%. Interest accrues yearly and is payable on maturity. Unpaid interest, along with principal, may be converted into securities of the Company as follows: the notes are convertible in the aggregate into 1,500,000 units and 1,000,000 units, respectively, with each unit consisting of one share of common stock and one warrant. Each warrant allows the holder to acquire 0.75 shares of common stock for $1.35 per share. The warrants expire on August 15, 2027.

The Company paid $0.2 million for interest on the subordinated convertible promissory notes in each of the years ended December 31, 2023, and 2022. Accrued interest of $37,500 is included in accounts payable and accrued liabilities as of December 31, 2023, and 2022.

In total, the Company paid $0.2 million of interest in each of the years ended December 31, 2023 and 2022, on its outstanding debt, including interest paid on the subordinated convertible promissory notes.

Capital expenditures were $0.4 million in 2023 and $0.8 million in 2022. The Company continues to invest in new manufacturing equipment and upgrades to existing equipment.

The Company had a net increase in cash of $1.0 million for the year ended December 31, 2023, compared to a net increase in cash of $0.2 million for the year ended December 31, 2022.

Cash flows pertaining to our source and use of cash are presented below (in thousands):

    

Years Ended

December 31,

    

2023

    

2022

(in thousands)

Net cash provided by operating activities

$

1,361

$

776

Capital expenditures

(363)

(539)

Net cash used in financing activities

 

(28)

 

(35)

Overview of Financial Condition

The Company recorded net income of $2.7 million and $0.2 million for the twelve months ended December 31, 2023 and 2022, respectively. The Company’s cash and cash equivalents increased to $3.0 million at December 31, 2023, from $2.0 million at December 31, 2022.

The Company’s order backlog extends beyond 2024. The Company’s management expects that future cash flows from operations and its existing cash reserves will provide adequate liquidity for the Company’s operations and working capital requirements through at least March 31, 2025.

Contractual Obligations

Subordinated Convertible Promissory Notes

As of December 31, 2023 and 2022, the outstanding principal on the Subordinated Convertible Promissory Notes was $2.5 million. Interest accrues at 6% annually. For the years ended December 31, 2023 and 2022, the Company recorded interest expense on these notes of $0.2 million in each year.

Notes Payable Other

At December 31, 2023 and 2022, the Company had $0.3 million and $0.4 million outstanding in Notes Payable Other in each year, respectively. Interest accrues annually at a weighted average interest rate of 4.9%. For the years ended December 31, 2023 and 2022, the Company recorded interest expense on Notes Payable Other of $18,000 and $20,000 respectively.

16

Item 7A.    Quantitative and Qualitative Disclosures about Market Risk

Not Applicable

Item 8.       Financial Statements and Supplementary Data

The financial statements and supplementary financial information required to be filed under this Item are presented commencing on page 21 of the Annual Report on Form 10-K and are incorporated herein by reference.

Item 9.       Changes in and Disagreements with Accountants on Accounting and Financial Disclosure

None.

Item 9A.    Controls and Procedures

a.Evaluation of Disclosure Controls and Procedures

The Company’s management, including the Chief Executive Officer and the Chief Financial Officer, has evaluated the effectiveness of the design and operation of the Company’s disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) as of the end of the period covered by this Annual Report on Form 10-K. Based upon that evaluation, the Company’s Chief Executive Officer and Chief Financial Officer have concluded that the disclosure controls and procedures as of December 31, 2023, are effective to ensure that information required to be disclosed in the reports the Company files or submits under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the SEC’s rules and forms and that such information is accumulated and communicated to the Company’s management, including the Chief Executive Officer and the Chief Financial Officer, to allow timely decisions regarding disclosure.

b.Management’s Annual Report on Internal Control over Financial Reporting

Our management is responsible for establishing and maintaining an adequate system of internal control over financial reporting. Our internal control over financial reporting includes those policies and procedures that:

pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of our assets;
provide reasonable assurance that transactions are recorded as necessary to permit preparation of our financial statements in accordance with generally accepted accounting principles in the United States, and that our receipts and expenditures are being made only in accordance with authorizations of our management and directors; and
provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of our assets that could have a material effect on the financial statements.

Due to its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate. All internal control systems, no matter how well designed, have inherent limitations. Therefore, even those systems determined to be effective can provide only reasonable assurance with respect to financial statement preparation and presentation. Because of the inherent limitations of internal control, there is a risk that material misstatements may not be prevented or detected on a timely basis by internal control over financial reporting. However, these inherent limitations are known features of the financial reporting process. Therefore, it is possible to design into the process safeguards to reduce, though not eliminate, this risk.

Management assessed the effectiveness of the Company’s system of internal control over financial reporting as of December 31, 2023. In making this assessment, management used the framework in Internal Control — Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”). Based on our assessment and the criteria set forth

17

by COSO, management has concluded that the Company maintained effective internal control over financial reporting as of December 31, 2023.

c.Changes in Internal Control over Financial Reporting

There have been no changes in the Company’s internal control over financial reporting identified in connection with the evaluation that occurred during the Company’s last fiscal quarter that have materially affected, or that are reasonably likely to materially affect, the Company’s internal controls over financial reporting.

Item 9B.     Other Information

None

Item 9C.     Disclosure Regarding Foreign Jurisdictions that Prevent Inspections

None

PART III

Item 10.     Directors, Executive Officers, and Corporate Governance

Executive Officers and Directors

The following table sets forth the name and age of each executive officer and director of the Company, the period during which each such person has served as an executive officer or director and the current position with the Company held by each such person:

Name

Age

Since

Position with the Company

Amy Eskilson

 

63

 

2012

 

President, Chief Executive Officer and Director

Theresa A. Balog

 

62

 

2019

 

Chief Financial Officer, Corporate Secretary and Treasurer

George Murray

 

60

 

2013

 

Vice President of Sales and Marketing

Jan M. Winston

 

87

 

2000

 

Chairman of the Board

William J. Foote

 

73

 

2017

 

Director of the Company

Luke P. LaValle, Jr.,

 

81

 

2005

 

Director of the Company

Dennis G. Romano

 

81

 

2009

 

Director of the Company

N.E. Rick Strandlund

 

80

 

2009

 

Director of the Company

Amy Eskilson has served as President and Chief Executive Officer of Inrad Optics since October 2012 and served as Inrad Optics’ Vice President of Sales and Marketing from February 2011 through October 2012. Prior to joining the Inrad Optics team, Ms. Eskilson spent 18 years with Thorlabs, Inc., a photonic tools catalogue company, where she served as Director of Business Development from 2001 to 2011. In this role, Ms. Eskilson coordinated a team responsible for a total of eight acquisitions and fostered the development of multiple partner companies, technology transfers and IP license agreements. Ms. Eskilson was also involved in photonic start-ups Nova Phase, Inc., Menlo Systems, Inc. and Idesta Quantum Electronics. Honored in 2021 as an Optica Fellow for her contributions to the photonics industry, as well as a long history of advocacy for the optics & photonics community, Ms. Eskilson continues to be an active Optica volunteer. She is a member of the Steering Committee of the National Photonics Initiative and serves as a Trustee of the New Jersey Manufacturing Extension Partnership. She received her BA in Communications from Montclair State University.

Theresa Balog has served as the Chief Financial Officer, Secretary, and Treasurer since joining Inrad Optics in May 2019. As CFO, Ms. Balog oversees the accounting, business support, financial planning and analysis, treasury, and human resources functions at Inrad Optics. Ms. Balog has previously served as chief financial officer for Clear Align, LLC and MakerBot Industries, Vice President and Global Controller and Chief Accounting Officer for VWR International, Executive Director for MSCI, Inc., and Vice President and Controller for KeySpan Energy. Ms. Balog holds a BBA in Accounting from St. Mary’s College, a Master’s Degree in Accounting from the University of Delaware, a Master’s Degree in Human Resource Management from Wilmington University, and DBA in Industrial and Organizational Psychology from Northcentral University. Ms. Balog serves on the Advisory Board of the Accounting and MIS

18

Department at the University of Delaware and mentors undergraduate business students in the University’s Lerner Executive Mentoring Program. She is a licensed CPA in the state of Delaware.

George Murray has served as Vice President, Sales & Marketing at Inrad Optics since 2013. Mr. Murray joined the Company as Sales Manager, West Region in 2010. Previously, Mr. Murray managed the sales and marketing activities at Axsys Technologies Imaging Systems (now part of General Dynamics), a premier supplier of optical components. He also held increasingly responsible roles in applications engineering, product marketing, and sales management which included international sales territories at Photon Dynamics, now a division of KLA Corporation, and Gerber Scientific. Mr. Murray holds a Bachelor of Science degree in Mechanical Engineering from the University of Connecticut and an MBA from Rensselaer Polytechnic Institute in Hartford, CT.

Jan M. Winston has served as Chairman of the Board since 2009 and has been a member of Board since 2000. Mr. Winston has also served as a Management Consultant of Winston Consulting since 1997. From 1981 through 1997, Mr. Winston served as a Division Director/General Manager at IBM Corporation. Mr. Winston has an AB degree from Princeton University and attended the Columbia Graduate School of Business Administration.

William J. Foote has been a director since 2017. Mr. Foote served as the Company’s VP and Chief Accounting Officer from 2018-2019 and as its Chief Financial Officer from 2006-2018. Mr. Foote also gained extensive experience in finance and accounting through a number of senior financial roles with small and mid-cap private and public manufacturing companies, Mr. Foote is a CPA and a certified professional accountant in Canada and is a member of the Illinois Society of CPAs and the AICPA. Mr. Foote holds a BA from Carleton University in Ottawa and a Master’s Degree in Accounting from the University of British Columbia.

Luke P. LaValle, Jr. has been a director since 2005. Currently, Mr. LaValle serves as the Chairman, Chief Executive Officer and co-Chief Investment Officer of American Capital Management Inc., a boutique investment management firm, since 1980. He has a BS from Boston College and an MBA from the University of Massachusetts. Mr. LaValle is a retired Lieutenant Colonel, Military Intelligence, U.S. Army Reserve and served with the 101st Airborne Division and on the Army Staff, The Pentagon.

Dennis G. Romano has been a director since 2009. From 2002-2007, Mr. Romano served as the Senior Vice President of Business Development, Defense Business Unit, Washington Group International, a provider of engineering construction and technical services. Mr. Romano holds a Bachelor of Science degree and Master of Science degree in Physics from Adelphi University.

N.E. Rick Strandlund has been a director since 2009. From 2005-2008, he served as the Chairman, President and CEO of Nanoproducts Corporation, a producer and developer of nanoproduct materials and technologies. Mr. Strandlund has served on the Board of Directors for Research Electro-Optics (a private company) and served as the Chairman of the Board for NanoProducts Corporation (a private company). Mr. Strandlund holds an MBA in management from Golden Gate University and a Bachelor of Science degree in Aerospace Engineering from San Diego State University.

Family Relationships

There are no family relationships among any of our directors or executive officers.

Code of Ethics

The Company has adopted a Code of Ethics that applies to the Company’s principal executive officer, principal financial officer, principal accounting officer or controller (or persons performing similar functions). A copy of such Code of Ethics is available on the Company website at www.inradoptics.com and will be made available without charge and upon written request addressed to the attention of the Secretary of the Company and mailed to the Company’s principal executive offices, 181 Legrand Avenue, Northvale, NJ 07647. If the Company makes any substantive amendments to the Code of Ethics or grants any waiver, including any implicit waiver from a provision of the Code of Ethics to its directors or executive officers, the Company will disclose the nature of such amendments or waiver in its website or in a current report on Form 8-K.

Composition of the Board

The Board currently consists of six members. The Company’s directors hold office until their successors have been elected and qualified or until the earlier of their resignation or removal.

19

The Board is divided into three classes (Class I, Class II and Class III) with directors of the Board (collectively, “Directors”) in each class serving staggered three-year terms. At each annual meeting of shareholders, the terms of Directors in one of these three classes expire. At that annual meeting of shareholders, Directors are elected to a Class to succeed the Directors whose terms are then expiring, with the terms of that Class of Directors so elected to expire at the third annual meeting of shareholders, thereafter. Our directors are divided among the three classes as follows:

The Class I directors are Dennis G. Romano and N.E. Rick Strandlund; their terms will expire at the annual meeting of stockholders to be held in 2026.
The Class II directors are William J. Foote and Luke P. LaValle, Jr.; their terms will expire at the annual meeting of stockholders to be held in 2024.
The Class III directors are Amy Eskilson and Jan M. Winston; their terms will expire at the annual meeting of stockholders to be held in 2025.

The by-laws of the Company provide for a range of no less than four and no more than six directors.

Audit Committee

The Company has a separately designated standing Audit Committee. Luke P. LaValle, Jr. has served as the Audit Committee Chairman since assuming the role in December 2006. The three other members of the Audit Committee are Messrs. Romano, Strandlund, and Winston. The Board has determined that the members of the Audit Committee each satisfy the requirements for independence under applicable SEC rules, as well as the independence standards of the NASDAQ Stock Market.

The Board of Directors has determined that Mr. LaValle is an “audit committee financial expert” as such term is defined under applicable SEC rules.

Item 11.​ ​     Executive Compensation

The following tables and accompanying disclosure set forth information about the compensation earned by our named executive officers during 2023. Our named executive officers include our principal executive officer and the two most highly compensated executive officers (other than our principal executive officer) serving as executive officers as of December 31, 2023, as set forth below:

Amy Eskilson, President and CEO;
Theresa Balog, CFO; and
George Murray Vice President, Sales & Marketing.

Summary Compensation Table

The following Summary Compensation Table sets forth, for the years ended December 31, 2023 and 2022, the compensation paid by the Company and its Subsidiaries, with respect to the Company’s named executive officers.

Option

All Other

Salary

Bonus

Awards

Compensation

Total

Name & Principal Position

    

Year

    

$

    

$

    

$ (1)(2)

    

$ (3)

    

$

Amy Eskilson

2023

212,000

9,540

221,540

President & CEO

 

2022

212,000

25,000

28,250

10,665

275,915

Theresa Balog

 

2023

182,000

10,000

8,342

200,342

Chief Financial Officer

 

2022

182,000

20,000

16,950

8,490

227,440

George Murray

 

2023

158,000

7,110

165,110

Vice President, Sales & Marketing

 

2022

158,000

22,500

11,300

8,123

199,923

20

(1)The aggregate grant date fair value of option awards and stock awards are computed in accordance with FASB ASC Topic 718, in accordance with SEC rules. The valuation is based on the assumptions set forth in Note 10 to our Consolidated Financial Statements in this annual report.

(2)On February 24, 2022, 50,000, 30,000, and 30,000 stock options were awarded to Ms. Eskilson, Ms. Balog, and Mr. Murray respectively. The options have an exercise price of $1.20 and a fair value of $1.03 per share. There were no stock options granted in 2023. All stock options granted in 2022 have a ten-year term and vest over three years, one-third each year upon the anniversary of the grant. The amounts reflect the aggregate grant date fair value of each award.

(3)All Other Compensation includes the fair value of Company stock and cash contributed in 2023 and 2022, as a match to the Company’s Section 401(k) Plan for individual executive contributions to the Plan in the 2023 and 2022 Plan years, respectively.

Employment Agreements

The Company has not entered into any employment agreement with any of Ms. Eskilson, Ms. Balog, or Mr. Murray.

Outstanding Equity-Based Awards at Fiscal Year-End

The following table provides information pertaining to vested and non-vested stock options held by each of the executive officers named in the Summary Compensation Table as of December 31, 2023.

Option Awards (1)

Number of 

Number of 

Securities 

Securities 

Underlying 

Underlying 

Option 

Unexercised 

Unexercised 

Exercise 

Option 

Options (#) 

Options (#) 

Price 

Expiration 

Name & Principal Position

    

Exercisable

    

Unexercisable

    

$

    

Date

Amy Eskilson

    

16,667

33,333

1.20

02/24/32

President & CEO

 

33,333

16,667

0.62

02/24/31

 

40,000

0.71

02/27/29

 

40,000

1.00

07/03/28

 

40,000

0.57

01/18/27

 

40,000

0.35

02/22/26

 

25,000

0.19

01/13/25

Total

 

235,000

50,000

 

Theresa Balog

10,000

20,000

1.20

02/24/32

Chief Financial Officer

 

20,000

10,000

0.62

02/24/31

 

15,000

1.48

02/12/30

 

15,000

1.80

05/16/29

Total

 

60,000

30,000

 

George Murray

10,000

20,000

1.20

02/24/32

Vice President, Sales & Marketing

 

13,333

6,667

0.62

02/24/31

 

20,000

0.71

02/27/29

 

20,000

1.00

07/03/28

 

15,000

0.57

01/18/27

 

15,000

0.35

02/22/26

 

20,000

0.19

01/13/25

Total

 

113,333

 

26,667

  

  

(1)Options have a 10-year term and vest over three years, one third each year upon each anniversary of the grant.

21

Director Compensation

Fees earned or 

Option  

paid in cash 

Awards (1)(2)

Total 

Name

    

$

    

$

    

$

William Foote

20,500

20,500

Luke P. LaValle, Jr.

20,500

20,500

N.E. Rick Strandlund

20,500

20,500

Dennis Romano

20,500

20,500

Jan M. Winston

25,500

 

 

25,500

(1)

The value of stock option awards is computed in accordance with FASB ASC Topic 718. The Option Awards reflect the aggregate grand date fair value of the awards. The Company granted 10,000 stock options with an exercise price of $1.20 to each of the directors on March 24, 2022. No stock options were granted to the any of the directors in 2023.

(2)

The number of stock options which vested in 2023 to each non-employee director was as follows: William J. Foote, 6,666; Luke P. LaValle, Jr., 6,666; Dennis G. Romano, 6,666; N.E. Rick Strandlund, 6,666; and Jan M. Winston, 6,666. As of December 31, 2023, the aggregate number of option awards outstanding for each non-employee director then serving as a director was as follows: William J. Foote, 115,000; Luke P. LaValle, Jr., 70,000; Dennis G. Romano, 75,000; N.E. Rick Strandlund, 75,000; and Jan M. Winston, 70,000.

Item 12.     Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters

The following table gives the information about the Company’s Common Stock that may be issued upon the exercise of options, warrants, and rights under the Company’s 2010 Equity Compensation Program and the 2020 Equity Compensation Plan, as of December 31, 2023. These Plans were the Company’s only equity compensation Plans in existence as of December 31, 2023.

    

(a)

    

(b)

    

(c)

Number of Securities 

Remaining Available for 

Future Issance Under 

Number of Securities to 

Weighted-Average 

Equity Compensation 

be Issued Upon Exercise 

Exercise Price of 

Plans (Excluding 

of Outstanding Options, 

Outstanding Options, 

Securities Reflected in 

Plan Category

Warrants, and Rights

Warrants, and Rights

Column (a)

Equity Compensation Plans Approved by Shareholders (1)

1,112,667

$

0.85

3,580,000

Equity Compensation Plans Not Approved by Shareholders

 

$

 

Total

 

1,112,667

$

0.85

 

3,580,000

(1)

The 2020 Equity Compensation Program was adopted by the Company’s shareholders at the Annual Meeting held on June 23, 2020. Under this Program, an aggregate of up to 4,000,000 shares of common stock may be granted. The 2010 Equity Compensation Program expired on June 2, 2020, and each outstanding option, warrant and right granted under the Program expired on the date determined under the terms of the original award, which in no event, exceeded 10 years. As of December 31, 2023, there was a total of 778,667 options outstanding under the 2010 Plan. In 2023, 109,333 stock options expired and 64,667 stock options were forfeited under the 2010 Plan. Under the 2020 Equity Compensation Plan, a total of 20,000 stock options were awarded to employees during 2023 and 20,000 shares were forfeited under the 2020 Equity Compensation Plan. No stock options were exercised under the 2020 Equity Compensation Plan in 2023 or 2022.

The following table presents certain information available to the Company at the date hereof with respect to the security ownership of the Company’s Common Stock by (i) each of the Company’s directors and nominees, (ii) each named executive officer of the Company, (iii) all executive officers and directors as group, and (iv) each person known by the Company to beneficially own more than five percent (5%) of the Company’s common stock outstanding as of December 31, 2023. Percentages that include ownership of options or convertible securities are calculated assuming exercise or conversion by each individual or entity of the options (including “out-of-the-money options”), or convertible securities owned by each individual or entity separately without considering the dilutive effect of option exercises and security conversions by any other individual or entity. Accordingly, the percentages may add to more than

22

100%. The address of each principal shareholder, unless otherwise indicated, is c/o Inrad Optics, Inc., 181 Legrand Avenue, Northvale, NJ 07647.

    Beneficial Ownership of Common Stock

 

Amount and 

 

Nature of 

Percent of 

 

Beneficial 

Common 

 

Name and Address of Beneficial Owner

    

Ownership

    

Stock

 

William J. Foote

 

159,327

(1)

0.8

%

Luke P. LaValle, Jr.

 

80,000

(2)

0.4

%

Dennis G. Romano

 

80,000

(3)

0.4

%

N.E. Rick Strandlund

 

80,000

(4)

0.4

%

Jan M. Winston

 

80,000

(5)

0.4

%

Amy Eskilson

 

467,025

(6)(12)

2.4

%

George Murray

 

265,305

(7)

1.3

%

Theresa Balog

 

104,888

(8)(12)

0.5

%

All Directors and Executive Officers as a group (8 persons)

 

1,316,545

(9)

6.7

%

Clarex Ltd. & Welland Ltd.

 

7,782,839

(10)

39.3

%

Bay Street and Rawson Square

P.O. Box N 3016

Nassau, Bahamas

Emancipation Management LLC

 

3,558,702

(11)

18.0

%

825 Third Avenue

New York, NY 10022

Minerva Advisors LLC

 

999,435

(12)

5.1

%

50 Monument Road, Suite 201

Bala Cynwyd, PA 19004

Inrad Optics, Inc. Employees 401(k) Plan

988,742

(13)

5.0

%

Amy Eskilson, as Trustee

181 Legrand Avenue

Northvale, NJ 07647

(1)Including 101,166 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, 22,162 shares owned, and 32,165 shares allocated to Mr. Foote in the Inrad Optics, Inc. 401(k) Plan over which he has voting and dispositive power.
(2)Including 66,666 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, and 10,000 shares owned.
(3)Including 66,666 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, and 10,000 shares owned.
(4)Including 66,666 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, and 10,000 shares owned.
(5)Including 66,666 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, and 10,000 shares owned.
(6)Including 268,333 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, 65,000 shares owned, and 114,391 shares allocated to Ms. Eskison in the Inrad Optics, Inc. 401(k) Plan over which she has voting and dispositive power.
(7)Including 130,000 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, 21,000 shares owned, and 102,292 shares allocated to Mr. Murray in the Inrad Optics, Inc. 401(k) Plan over which he has voting and dispositive power.
(8)Including 80,000 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024, and 12,817 shares allocated to Ms. Balog in the Inrad Optics, Inc. 401K Plan over which she has voting and dispositive power.
(9)Including 846,163 shares issuable upon exercise of options exercisable within 60 days of March 29, 2024.
(10)Including 2,500,000 shares and warrants to purchase an additional 1,875,000 shares at $1.35 per share which are issuable upon conversion of convertible promissory notes and 50,000 shares issuable upon conversion of accrued interest as of March 29, 2023, on convertible promissory notes.
(11)These figures are based upon information set forth in Schedule 13G filed January 31, 2024, on behalf of the following reporting persons:

23

Emancipation Management LLC (a)

Circle N Advisors, LLC (a)

Charles Frumberg (a)

(a) Each of these reporting persons is deemed a beneficial owner of 3,558,702 shares of Inrad Optics, Inc. held by Emancipation with shared investment power but no voting power with respect to these 3,558,702 shares.

(12)These figures are based upon information set forth in Schedule 13G filed February 14, 2023, on behalf of the following reporting persons:

Minerva Advisors LLC (a)

Minerva Group, LP (a)

Minerva GP, LP

Minerva GP, Inc. (a)

David P. Cohen (a)

(a) Each of these reporting persons is deemed a beneficial owner of 998,742 shares of Inrad Optics, Inc. held by Minvera Group, L.P. with both investment power and voting power with respect to these 998,742 shares.

(13)These figures are based upon information provided by Amy Eskilson and Theresa Balog, Trustees of the 401(k) Plan. Ms. Eskilson and Ms. Balog, as trustees of the 401(k) Plan, share voting power with respect to the shares held by the 401(k) Plan, but do not have dispositive power over such shares. Ms. Eskilson and Ms. Balog disclaim beneficial ownership of the shares held by the 401(k) Plan, except to the extent of the shares allocated to them in the 401(k) Plan in their individual capacities, and such shares are not refelcted in the amounts of shares listed as being beneficially held in them in individual capacities in this table.

Item 13.​ ​     Certain Relationships and Related Transactions, and Director Independence

The documented ethics policies of the Company restrict certain types of related party transactions between the Company and its directors, officers, and employees of the Company. Specifically, compensation for services provided by directors, officers, and employees to the Company may not be through any source but the Company. The Company’s policies do permit related parties to participate in financial transactions, limited to financing via debt or equity. In such instances, the Company has an informal policy of requiring that the terms of such financing, including but not limited to interest rates and fees, are at least equal to or better than the terms obtainable via financing from other sources. The Audit Committee is responsible for the review and approval of all related party transactions.

On October 12, 2023, the maturity dates of a $1,500,000 Subordinated Convertible Promissory Note to Clarex Limited (“Clarex”) and a $1,000,000 Subordinated Convertible Promissory Note to an affiliate of Clarex were each extended to January 15, 2025, from August 15, 2024. The notes bear interest at 6%. Interest accrues yearly and is payable on maturity. Unpaid interest, along with principal, may be converted into securities of the Company as follows: the notes are convertible in the aggregate into 1,500,000 units and 1,000,000 units, respectively, with each unit consisting of one share of common stock and one warrant. Each warrant allows the holder to acquire 0.75 shares of common stock at a price of $1.35 per share. The warrants expire on August 15, 2027.

No payments against the total principal of $2,500,000 have been made. In 2023, the Company paid a total of $150,000 in interest on the outstanding Subordinated Convertible Notes described above. Accrued interest on the notes amounted to $37,500 as of December 31, 2023.

Director Independence

The Board has determined that each of Mr. William J. Foote, Mr. Luke P. LaValle, Jr., Mr. Dennis G. Romano, Mr. N.E. Rick Strandlund, and Mr. Jan M. Winston has no material relationship with the Company (other than as director) and is therefore “independent” within the meaning of the current listing standards of the Nasdaq Stock Market and applicable SEC rules. Ms. Eskilson is not an independent director due to her position as President and CEO of the Company. The Company has established an Audit Committee, a Compensation Committee and a Nominating and Corporate Governance Committee, each of which are comprised of independent directors.

24

Item 14.​ ​     Principal Accountant Fees and Services

In accordance with the requirements of the Sarbanes-Oxley Act of 2002 and the Audit Committee’s charter, all audit and audit-related work and all non-audit work performed by the Company’s independent accountants is approved in advance by the Audit Committee, including the proposed fees for such work. The Audit Committee is informed of each service actually rendered.

Audit Fees.

Audit fees billed or expected to be billed by the Company’s principal accountant, PKF O’Connor Davies, LLP (PKF) for the audit of the financial statements included in the Company’s Annual Reports on Form 10-K for the year ended December 31, 2023, were $134,000. Audit fees billed or expected to be billed by PKF for the audit of the financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022, were $126,000.

Audit-Related Fees

The Company was billed $7,000 and $0 by the Company’s principal accountants for each of the fiscal years ended December 31, 2023 and 2022, for assurance and related services that are reasonably related to the performance of the audit or review of the Company’s financial statements and are not reported under the caption “Audit Fees” above.

Tax Fees

The Company was billed or is expected to be billed an aggregate of $17,000 by the Company’s principal accountants for the fiscal year ended December 31, 2023, for tax services, principally the preparation of income tax returns. The Company was billed or is expected to be billed an aggregate of $17,000 for tax services, principally the preparation of income tax returns for the fiscal year ended December 31, 2022.

All Other Fees

The Applicable law and regulations provide an exemption that permits certain services to be provided by the Company’s outside auditors even if they are not pre-approved. The Company has not relied on this exemption at any time since the Sarbanes-Oxley Act was enacted. The Company did not have any other fees in 2023 and 2022.

PART IV

Item 15.​ ​     Exhibits and Financial Statement Schedules

(a) (1)Financial Statements.

Reference is made to the Index to Financial Statements commencing on Page 28.

(a) (2)Financial Statement Schedule.

Reference is made to the Index to Financial Statements on Page 28. All other schedules have been omitted because the required information is not present or is not present in amounts sufficient to require submission of the schedule, or because the information required is included in the Financial Statements or Notes thereto.

25

(a) (3)    Exhibits.

Exhibit No.

    

Description of Exhibit

 

3.1

Restated Certificate of Incorporation of Photonics Products Group, Inc. (incorporated by reference to Exhibit 3.1 to the Company’s Registration Statement on Form S-1 filed with the Securities and Exchange Commission on August 25, 2004)

3.2

By-Laws of Photonic Products Group, Inc. (incorporated by reference to Exhibit 3.2 to the Company’s Registration Statement on Form S-1 filed with the Securities and Exchange Commission on August 25, 2004)

3.3

Certificate of Amendment to Restated Certificate of Incorporation of Photonics Products Group, Inc., dated June 2, 2010 (incorporated by reference to Exhibit 3.1 to the Company’s Current Report on Form 8-K filed with the Securities and Exchange Commission on June 7, 2010)

3.4

Certificate of Amendment to Restated Certificate of Incorporation of Photonics Products Group, Inc., dated January 23, 2012 (incorporated by reference to Exhibit 3.1 to the Company’s Current Report on Form 8-K filed with the Securities and Exchange Commission on January 23, 2012)

4.1

Specimen Common Stock Certificate (incorporated by reference to Exhibit 4.1 to the Company’s Registration Statement on Form S-1 filed with the Securities and Exchange Commission on August 25, 2004)

4.2

Note dated October 12, 2023, held by Clarex, Ltd (incorporated by reference to Exhibit 4.1 to the Company’s Quarterly Report on Form 10-Q filed with the Commission on November 15, 2023)

4.3

Note dated October 12, 2023, held by Welland, Ltd. (incorporated by reference to Exhibit 4.2 to the Company’s Quarterly Report on Form 10-Q filed with the Commission on November 15, 2023)

4.4

Description of Securities (incorporated by reference to Exhibit 4.4 to the Company’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 30, 2020)

10.2

2020 Equity Compensation Program (incorporated by reference to Exhibit 10.2 to the Company’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 30, 2020)

10.3

Amendment and Extension of Lease, dated July 8, 2019, by and between V&R Costa Management, LLC, and Inrad Optics, Inc. (incorporated by reference to Exhibit 10.1 to the Company’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on August 14, 2019)

10.4

Amendment and Extension of Lease dated July 29, 2022, by and between V&R. Costa Management LLC, and Inrad Optics, Inc. (incorporated by reference to Exhibit 10.1 to the Company’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on August 12, 2022)

14.1

Code of Ethics (incorporated by reference to Exhibit 14.1 to the Company’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 31, 2006)

21.1

List of Subsidiaries (incorporated by reference to Exhibit 21.1 to the Company’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 31, 2006)

23.1*

Consent of PKF O’Connor Davies, LLP Independent Registered Public Accounting Firm

31.1*

Certification of Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

31.2*

Certification of Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

32.1**

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

32.2**

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

101.INS*

Inline XBRL Instance Document – the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL Document

101.SCH*

Inline XBRL Taxonomy Extension Schema Document

101.CAL*

Inline XBRL Taxonomy Extension Calculation Linkbase Document

101.DEF*

Inline XBRL Taxonomy Extension Definition Linkbase Document

101.LAB*

Inline XBRL Taxonomy Extension Label Linkbase Document

101.PRE*

Inline XBRL Taxonomy Extension Presentation Linkbase Document

104*

The cover page from the Company’s Annual Report on Form 10-K for the year ended December 31, 2023, has been formatted Inline XBRL

* Filed herewith

** Furnished herewith

26

Item 16.     Form 10-K Summary.

None.

27

SIGNATURES

Pursuant to the requirements of Section 13 or 15(d) 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.

INRAD OPTICS, INC.

By:

/s/ Amy Eskilson

Amy Eskilson

Chief Executive Officer

Dated: March 28, 2024

Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.

Signature

    

Title

    

Date

/s/ Jan M. Winston

Chairman of the Board

March 28, 2024

Jan M. Winston

/s/ William J. Foote

Director

March 28, 2024

William J. Foote

/s/ Luke P. LaValle, Jr.

Director

March 28, 2024

Luke P. LaValle, Jr.

/s/ Dennis G. Romano

Director

March 28, 2024

Dennis G. Romao

/s/ N.E. Rick Strandlund

Director

March 28, 2024

N.E. Rick Strandlund

/s/ Amy Eskilson

President, Chief Executive Officer

March 28, 2024

Amy Eskilson

and Director (Principal Executive Officer)

/s/ Theresa A. Balog

Chief Financial Officer, Secretary, and Treasurer

March 28, 2024

Theresa A. Balog

(Principal Financial and Accounting Officer)

28

Report of Independent Registered Public Accounting Firm

To the Shareholders and Board of Directors

Inrad Optics, Inc., and Subsidiaries

Northvale, New Jersey

Opinion on the Consolidated Financial Statements

We have audited the accompanying consolidated balance sheets of Inrad Optics, Inc. and Subsidiaries (the “Company”) as of December 31, 2023 and 2022, and the related consolidated statements of operations, shareholders’ equity and cash flows for each of the two years in the period ended December 31, 2023, and the related notes (collectively referred to as the “consolidated financial statements”). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2023 and 2022, and the results of its operations and its cash flows for each of the two years in the period ended December 31, 2023, in conformity with accounting principles generally accepted in the United States of America.

Basis for Opinion

These consolidated financial statements are the responsibility of the Company’s management. Our responsibility is to express an opinion on the Company’s consolidated financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.

We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audit, we are required to obtain an understanding of internal control over financial reporting, but not for the purpose of expressing an opinion on the effectiveness of the Company’s internal control over financial reporting. Accordingly, we express no such opinion.

Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the consolidated financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements. We believe that our audits provide a reasonable basis for our opinion.

Critical Audit Matters

The critical audit matters communicated below are matters arising from the current period audit of the consolidated financial statements that were communicated or required to be communicated to the audit committee and that (1) relates to accounts or disclosures that are material to the consolidated financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of  critical audit matters does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing a separate opinion on the critical audit matters or on the accounts or disclosures to which they relate.

Valuation of Inventory

As discussed in Note 1 to the consolidated financial statements, the Company values inventories at the lower of cost, determined using the first-in, first-out method, or net realizable value. The Company reviews the components of its inventory on a quarterly basis for products identified as surplus, slow-moving, or discontinued and adjusts inventory to its net realizable value as necessary. The Company’s inventory reserves are primarily based on historical, as well as projected, usage of its various inventory products. The inventory reserve at December 31, 2023, totaled $2.1 million. Net inventories at December 31, 2023, totaled $3.1 million.

30

The valuation of inventory was identified as a critical audit matter because of the significant assumptions management makes with regards to its valuation of inventory and the increased extent of audit effort required performing audit procedures to evaluate the reasonableness of management’s assumptions and estimates.

The primary procedures we performed to address this critical audit matter included:

Performed an observation of the Company’s physical inventory count, including independent test counts thereon.
We performed price testing on a sample of raw material inventory by comparing the carrying value of on-hand inventories to the latest purchases that occurred.
In order to assess the appropriateness of the valuation of work-in-progress and finished goods inventories, we performed testing on a sample of capitalized labor costs.
Evaluated management’s assumptions used to determine inventory absorption costs and performed a sensitivity analysis to evaluate the changes in inventory valuation that would result from changes in the assumptions.
Evaluated the appropriateness and consistency of management’s methods used, as well as the significant assumptions and inputs, in developing their assessment of net realizable value and their estimated reserve for slow-moving, excess or unsellable inventory by comparing significant assumptions and inputs used by management to historical information, independent calculations, current selling prices and current costs, and evidence obtained in other areas of the audit. We performed analytical testing by performing a year over year comparison of inventory obsolescence reserve by product.

Valuation Allowance on Net Operating Loss Carryforwards

As described in Note 8 to the consolidated financial statements, as of December 31, 2023, the Company has $1.0 million of total net deferred tax assets. The deferred tax assets for net operating loss carryforwards is partially offset by a valuation allowance of $1.0 million. As disclosed by management, the Company periodically evaluates the realizability of its net deferred tax assets based on all available evidence, both positive and negative, including the Company’s recent operating results, the existence of cumulative income or losses and near-term forecasts of future taxable income that is consistent with the plans and estimates management is using to manage the underlying business. After evaluating the Company’s 2023 operating results and  expectation of future earnings the Company determined that it was appropriate to release a $1.0 million portion of the valuation allowance on the Company’s U.S. federal and other state deferred tax assets.

The principal considerations for our determination that performing procedures relating to the valuation allowance on net operating loss carryforwards as a critical audit matter include the significant subjective judgments by management when assessing factors related to expected future earnings, which in turn led to a high degree of auditor judgment, subjectivity, and audit effort in performing procedures and evaluating management’s significant assumptions related to the realization of its net deferred tax assets.

The primary procedures performed in addressing the critical audit matter included the evaluation of management’s assessment of the realizability of the deferred tax assets, included (i) testing the underlying data used by the Company in its analysis and (ii) evaluating the reasonableness of expected future earnings during the applicable periods. Evaluating the reasonableness of management’s estimates and assumptions related to expected future earnings involved our assessment of whether the estimates and assumptions used by management were reasonable considering (i) the current and past performance of the Company as filed in historical income tax returns, (ii) expected future events that could impact taxable income in future periods and (iii) whether these assumptions were consistent with evidence obtained in other areas of the audit.

We have served as the Company’s auditor since 2017.

/s/ PKF O’Connor Davies, LLP

New York, New York

March 28, 2024

PCAOB ID No. 127

* * * * *

31

INRAD OPTICS, INC. AND SUBSIDIARIES

CONSOLIDATED BALANCE SHEETS

December 31, 

    

2023

    

2022

Assets

 

  

 

  

Current assets:

 

  

 

  

Cash and cash equivalents

$

2,973,384

$

2,003,485

Accounts receivable, net of allowance for credit losses of $46,000 in 2023 and 2022)

 

1,591,996

 

1,389,867

Inventories, net

 

3,148,708

 

2,825,987

Other current assets

 

665,262

 

309,287

Total current assets

 

8,379,350

 

6,528,626

Plant and equipment:

 

 

Plant and equipment, at cost

 

16,330,559

 

15,967,537

Less: Accumulated depreciation and amortization

 

(15,034,667)

 

(14,723,869)

Total plant and equipment

 

1,295,892

 

1,243,668

Precious metals

 

561,909

 

561,909

Lease right-of-use, net

443,532

737,743

Deferred tax asset

1,000,000

Other assets

 

26,993

 

26,993

Total Assets

$

11,707,676

$

9,098,939

Liabilities and Shareholders’ Equity

 

  

 

  

Current liabilities:

 

  

 

  

Current portion of other long term notes

$

71,362

$

67,513

Accounts payable and accrued liabilities

 

832,149

 

741,281

Contract liabilities

1,067,183

1,065,173

Current portion of lease obligation

 

309,618

 

295,978

Total current liabilities

 

2,280,312

 

2,169,945

Related party convertible notes payable

 

2,500,000

 

2,500,000

Other long term notes, net of current portion

245,379

316,740

Lease obligation, net of current portion

 

133,915

 

444,462

Total liabilities

 

5,159,606

 

5,431,147

Shareholders’ equity:

 

  

 

  

Common stock: $.01 par value; 60,000,000 authorized shares; 14,235,575 shares issued at December 31, 2023, and 14,092,920 shares issued at December 31, 2022

 

142,357

 

140,931

Capital in excess of par value

 

20,135,722

 

19,925,292

Accumulated deficit

 

(13,715,059)

 

(16,383,481)

 

6,563,020

 

3,682,742

Less - Common stock in treasury, at cost (4,600 shares)

 

(14,950)

 

(14,950)

Total shareholders’ equity

 

6,548,070

 

3,667,792

Total Liabilities and shareholders’ equity

$

11,707,676

$

9,098,939

See Notes to Consolidated Financial Statements

32

INRAD OPTICS, INC. AND SUBSIDIARIES

CONSOLIDATED STATEMENTS OF OPERATIONS

Years Ended December 31, 

    

2023

    

2022

Total revenue

$

12,909,657

$

10,631,032

Cost and expenses:

 

 

Cost of goods sold

 

7,984,129

 

7,529,893

Selling, general and administrative expenses

 

3,111,773

 

2,782,082

 

11,095,902

 

10,311,975

Income from operations

 

1,813,756

 

319,057

Other expense:

 

 

Interest expense-net

 

(145,333)

 

(166,482)

 

(145,333)

 

(166,482)

Income before income taxes

 

1,668,422

 

152,575

Income tax (provision) benefit

 

1,000,000

 

Net income

$

2,668,422

$

152,575

Net income per common share - basic

$

0.19

$

0.01

Net income per common share - diluted

$

0.16

$

0.01

Weighted average shares outstanding – basic

 

14,196,490

 

14,018,227

Weighted average shares outstanding – diluted

 

17,231,568

 

14,724,895

See Notes to Consolidated Financial Statements

33

INRAD OPTICS, INC. AND SUBSIDIARIES

CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY

Capital in

Total

Common Stock

excess of

Accumulated

Treasury

Shareholders’

    

Shares

    

Amount

    

par value

    

Deficit

    

Stock

    

Equity

Balance - January 1, 2022

 

13,967,257

$

139,674

$

19,733,996

$

(16,536,056)

$

(14,950)

$

3,322,664

401K contribution

 

59,663

597

 

50,158

 

 

 

50,755

Stock-based compensation expense

 

 

116,478

 

 

 

116,478

Common stock options exercised

 

66,000

660

 

24,660

 

 

 

25,320

Net income December 31, 2022

 

 

152,575

 

 

152,575

Balance - December 31, 2022

 

14,092,920

$

140,931

$

19,925,292

$

(16,383,481)

$

(14,950)

$

3,667,792

401K contribution

 

33,322

333

54,388

54,721

Stock-based compensation expense

 

117,249

117,249

Common stock options exercised

 

109,333

1,093

38,793

39,886

Net income December 31, 2023

 

2,668,422

2,668,422

Balance - December 31, 2023

 

14,235,575

$

142,357

$

20,135,722

$

(13,715,059)

$

(14,950)

$

6,548,070

See Notes to Consolidated Financial Statements

34

INRAD OPTICS, INC. AND SUBSIDIARIES

CONSOLIDATED STATEMENTS OF CASH FLOWS

Years Ended December 31, 

    

2023

    

2022

Cash flows from operating activities:

 

  

 

  

Net income

$

2,668,422

$

152,575

Adjustments to reconcile net income to net cash provided by (used in) operating activities

 

  

 

  

Depreciation and amortization

 

310,798

 

249,265

401(k) common stock contribution - non cash item

 

54,721

 

50,755

Stock based compensation

 

117,249

 

116,478

Income tax benefit

(1,000,000)

Change in inventory reserve

 

(246,888)

 

(99,662)

Changes in operating assets and liabilities:

 

  

 

  

Accounts receivable

 

(202,129)

 

(102,214)

Inventories

 

(75,833)

 

(201,454)

Other current and non-current assets

 

(61,765)

 

(661,190)

Change in lease obligations

(296,906)

596,212

Accounts payable and accrued liabilities

 

90,867

 

186,677

Contract liabilities

 

2,010

 

488,699

Total adjustments and changes

 

(1,307,876)

 

623,566

Net cash provided by operating activities

 

1,360,546

 

776,141

Cash flows from investing activities:

 

  

 

  

Capital expenditures

 

(363,022)

 

(539,116)

Net cash (used in) investing activities

 

(363,022)

 

(539,116)

Cash flows from financing activities:

 

  

 

  

Proceeds from issuance of common stock

 

39,886

 

25,320

Principal payments on notes payable-other

 

(67,512)

 

(60,048)

Net cash (used in) financing activities

 

(27,626)

 

(34,728)

Net increase in cash and cash equivalents

 

969,898

 

202,297

Cash and cash equivalents at beginning of year

 

2,003,485

 

1,801,188

Cash and cash equivalents at end of year

$

2,973,383

$

2,003,485

Supplemental disclosure of cash flow information:

 

  

 

  

Interest paid

$

168,397

$

161,948

Income taxes paid

$

$

Significant non-cash activities:

 

 

Lease right-of-use asset

$

879,300

$

Supplemental disclosure of non-cash investing and financing activities

Acquisition of equipment by issuing a note payable

$

270,320

$

See Notes to Consolidated Financial Statements

35

INRAD OPTICS, INC. AND SUBSIDIARIES

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

TWO YEARS ENDED DECEMBER 31, 2023

1.            Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates

a.            Nature of Business and Operations

Inrad Optics, Inc. and Subsidiaries (the “Company”) was incorporated in the state of New Jersey and is a manufacturer of products and services for use in the photonics industry enabling key applications for the semiconductor metrology, life sciences, and aerospace and defense industries. The company’s products include custom glass, single crystal, metal optical components and assemblies, and x-ray imaging crystals and assemblies. Company’s principal customers include commercial instrumentation companies and OEM laser systems manufacturers, research laboratories, government agencies, and defense contractors. The Company’s administrative offices and manufacturing operations are in Northvale, New Jersey.

b.            Principles of consolidation

The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiaries. Upon consolidation, all inter-company accounts and transactions are eliminated.

c.            Use of estimates

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make certain estimates and assumptions. These estimates and assumptions affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates include, but are not limited to, determining our allowance for doubtful accounts, our allowance for inventory obsolescence, the fair value and depreciable lives of long-lived tangible and intangible assets, and deferred taxes and any associated valuation allowance. Actual results could differ from these estimates.

d.            Cash and cash equivalents

The Company considers cash-on-hand and highly liquid investments with original maturity dates of three months or less at the date of purchase to be cash and cash equivalents.

e.            Accounts receivable

Beginning in 2023, the Company adopted Accounting Standards Update (ASU) No. 2016-13, Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. ASU 2016-13 requires entities to use a forward-looking approach based on expected losses to estimate credit losses on certain types of financial instruments, including trade receivables.

The Company extends credit to its customers that satisfy pre-defined credit criteria. Accounts receivable are recorded net of an allowance for credit losses. The Company estimates the allowance for credit losses based on an analysis of the aging of accounts receivable, assessment of collectability, including any known or anticipated bankruptcies, customer-specific circumstances, and an evaluation of current economic conditions. Actual write-off of receivables may differ from estimates due to changes in customer and economic circumstances. During 2023 there was no change in allowances related to customer receivables and in 2022 a net reduction of $46,000 in allowances related to customer receivables was recorded due to a change in customers’ financial condition, actual and anticipated bankruptcies and other associated claims.

f.            Inventories

Inventories are stated at the lower of cost (first-in, first-out method) or net-realizable value. Cost of manufactured goods includes material, labor and overhead.

36

The Company records a reserve for slow moving inventory as a charge against earnings for all products identified as surplus, slow moving, or discontinued. Excess work-in-process costs are charged against earnings whenever estimated costs-of-completion exceed unbilled revenues.

g.            Plant and Equipment

Plant and equipment are depreciated using the straight-line method over the estimated useful lives of the related assets which range between five and seven years. Amortization of leasehold improvements is computed using the straight-line method over the lesser of 10 years or the remaining term of the lease including optional renewal periods, as appropriate, when failure to renew the lease imposes an economic penalty on the Company in such an amount that renewal appears to be probable. In determining the amount of the economic penalty, management considers such factors as (i) the costs associated with the physical relocation of the offices, manufacturing facility and equipment, (ii) the economic risks associated with business interruption and potential customer loss during relocation and transition to new premises, (iii) the significant costs of leasehold improvements required at any new location to custom fit our specific manufacturing requirements, and (iv) the economic loss associated with abandonment of existing leasehold improvements or other assets whose value would be impaired by vacating the facility.

Maintenance and repairs of property and equipment are charged to operations and major improvements are capitalized. Upon retirement, sale or other disposition of property and equipment, the cost and accumulated depreciation are eliminated from the accounts and a gain or loss is recorded.

h.            Income taxes

Deferred taxes are provided on the asset and liability method whereby deferred tax assets are recognized for deductible temporary differences and operating loss and tax credit carry forwards and deferred tax liabilities are recognized for taxable temporary differences. Temporary differences are the differences between the amounts of assets and liabilities recorded for income tax and financial reporting purposes. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion of the deferred tax assets will not be realized. Deferred tax assets and liabilities are adjusted for the effects of changes in tax laws and rates on the date of enactment.

The Company recognizes the financial statement benefit of an uncertain tax position only after determining that the relevant tax authority would more likely than not sustain the position. For tax positions meeting the more likely than not threshold, the amount recognized in the financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.

The Company classifies interest and penalties related to income taxes as income tax expense in its Consolidated Financial Statements.

The Company had no unrecognized tax benefits or liabilities, and no adjustment to its financial position, results of operations, or cash flows relating to uncertain tax positions taken on all open tax years. The Company is no longer subject to federal income tax examinations by tax authorities for the years before 2020 and state or local income tax examinations by tax authorities for the years before 2020.

i.            Impairment of long-lived assets

Long-lived assets, such as plant and equipment and purchased intangibles with finite lives, which are subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated future cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the assets. Long-lived assets held for sale would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated.

37

j.            Stock-based compensation

Stock based compensation expense is estimated at the grant date based on the fair value of the award. The Company estimates the fair value of stock options granted using the Black-Scholes option pricing model. The fair value of restricted stock units granted is estimated based on the closing market price of the Company’s common stock on the date of the grant. The fair value of these awards, adjusted for estimated forfeitures, is amortized over the requisite service period of the award, which is generally the vesting period.

k.            Revenue recognition

The Company’s revenues are comprised of product sales as well as products and services provided under long-term government contracts with its customers. All revenue is recognized when the Company satisfies its performance obligation(s) under the contract (either implicit or explicit) by transferring the promised product or service to its customer either when (or as) its customer obtains control of the product or service. A performance obligation is a promise in a contract to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. The majority of the Company’s contracts have a single performance obligation, as the promise to transfer products or services is not separately identifiable from other promises in the contract and, therefore, not distinct. For contracts with multiple performance obligations, the Company allocates the contract’s transaction price to each performance obligation using the Company’s best estimate of standalone selling price for each distinct product or service in the contract, which is generally based on an observable price.

Revenue is measured as the amount of consideration the Company expects to receive in exchange for transferring products or providing services. As such, revenue is recorded net of returns, allowances, customer discounts, and incentives. Sales, value added, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are included in cost of goods sold.

l.            Internal research and development costs

Internal research and development costs are charged to expense as incurred.

m.          Precious metals

Precious metals, particularly platinum crucibles, are used in industrial applications for melting and fusing materials at high temperatures, especially in industries such as metallurgy, ceramics, glass and crystal manufacturing. The Company maintains certain platinum crucibles as a production tool. The Company’s precious metals are stated at cost. From time to time the quoted market values of these precious metals may be below cost. Management evaluates these market adjustments on a recurring basis and if it is determined that they are other than temporary the carrying value will be adjusted.

n.            Advertising costs

Advertising costs included in selling, general and administrative expenses were $16,000 and $25,000 for the years ended December 31, 2023 and 2022, respectively. Advertising costs are charged to expense when the related services are incurred or related events take place.

p.            Concentrations and credit risk

The concentration of credit risk in the Company’s accounts receivable is mitigated by the Company’s credit evaluation process, familiarity with its small base of recurring customers and reasonably short collection terms and the geographical dispersion of revenue. The Company generally does not require collateral but, in some cases, the Company negotiates cash advances prior to the undertaking of the work. These cash advances are recorded as current liabilities on the balance sheet until corresponding revenues are realized.

The Company is subject to credit risk for cash accounts in a financial institution, which at times may exceed the Federal Deposit Insurance Corporation coverage limit of $250,000. In May 2023, the Company entered into an Insured Cash Sweep (“ICS”) agreement with Valley National Bank, where funds are placed at destination institutions through the service of the Promontory Interfinancial Network, LLC. Such funds placed into the deposit account will not exceed the Federal Deposit Insurance Corporation (“FDIC”) standard maximum deposit insurance amount, currently $250,000, at any one destination institution thereby eliminating credit risk on cash balances over $250,000.

38

The Company utilizes many relatively uncommon materials and compounds to manufacture its products and relies on outside vendors for certain manufacturing services. Therefore, any failure by its suppliers to deliver materials of an adequate quality and quantity could have an adverse effect on the Company’s ability to meet the commitments of its customers.

For the year ended December 31, 2023, the Company had three customers who had sales representing 27.5%, 14.8% and 12.1% of total revenues. For the year ended December 31, 2022, the Company had three customers who had sales representing 19.7%, 15.3% and 15.1% of total revenues. Since the Company is a supplier of custom manufactured components to OEM customers, the relative size and identity of the largest customer accounts changes somewhat from year to year. In the short term, the loss of any one of these large customer accounts could have a material adverse effect on business, results of operations, and financial condition.

q.            Fair value measurements

The Company follows U.S. GAAP accounting guidance which establishes a framework for measuring fair value and expanded related disclosures. The framework requires fair value to be determined based on the exchange price that would be received for an asset or paid to transfer a liability (an exit price), in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants.

The valuation techniques required are based upon observable and unobservable inputs. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company’s market assumptions. The accounting guidance requires the following fair value hierarchy:

      Level 1 - Quoted prices (unadjusted) for identical assets and liabilities in active markets that the Company has the ability to access at the measurement date.

      Level 2 - Quoted prices for similar assets and liabilities in active markets; quoted prices for identical or similar assets and liabilities in markets that are not active; and inputs other than quoted prices that are observable for the asset or liability, including interest rates, yield curves and credit risks, or inputs that are derived principally from or corroborated by observable market data through correlation.

      Level 3 - Values determined by models, significant inputs to which are unobservable and are primarily based on internally derived assumptions regarding the timing and amount of expected cash flows.

Long-lived assets may be measured at fair value if such assets are held for sale or if there is a determination that the asset is impaired. Management’s determination of fair value, although highly subjective, is based on the best information available, including internal projections of future earnings and cash flows discounted at an appropriate interest rate, quoted market prices when available, market prices for similar assets, broker quotes and independent appraisals, as appropriate.

r.            Recent Accounting Pronouncements

In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses: Measurement of Credit Losses on Financial Instruments" (“ASU 2016-13”) which amended guidance on the accounting for credit losses on financial instruments within its scope. The guidance introduces an expected loss model for estimating credit losses, replacing the incurred loss model. The new guidance also changes the impairment model for available-for-sale debt securities, requiring the use of an allowance to record estimated credit losses (and subsequent recoveries). The new guidance is effective for interim and annual periods beginning in 2023, with earlier application permitted. The adoption of this guidance did not have a material impact on the Company’s consolidated financial statements.

In August 2020, the FASB issued ASU 2020-06, Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity. This ASU update is intended to simplify the complexity associated with applying generally accepted accounting principles (GAAP) for certain financial instruments with characteristics of liabilities and equity. This guidance is effective for the Company for fiscal years beginning after December 15, 2023, including interim periods within those fiscal years. The Company does not expect the adoption of this guidance will have a material impact on the Company’s consolidated financial statements.

39

s.            Subsequent events

Management has performed an evaluation of subsequent events through the date that the financial statements were issued and has determined that it does not have any additional material subsequent events to disclose in these financial statements.

2.            Revenue

Years Ended December 31, 

    

2023

    

2022

Market (In thousands)

Net Sales

%

Net Sales

%

Aerospace & Defense

$

2,540

19.7

$

3,008

28.3

Process Control & Metrology

9,325

72.1

 

6,981

65.7

Laser Systems

53

0.4

 

188

1.8

Scientific / R&D

992

7.7

 

454

4.3

Total

$

12,910

100.0

$

10,631

100.0

The majority of the Company’s revenue is from products and services transferred to customers at a point in time and were 100% of revenue for 2023 and 2022, respectively. The Company recognizes revenue at the point in time in which the customer obtains control of the product or service, which is generally when product title passes to the customer upon shipment. In limited cases, title does not transfer, and revenue is not recognized until the customer has received the products at its physical location.

3.            Inventories, net

Inventories are comprised of the following and are shown net of inventory reserves of approximately $2.1 million and $2.4 million at December 31, 2023 and 2022, respectively:

December 31, 

    

2023

    

2022

 

(in thousands)

Raw materials

$

718

$

1,065

Work in process, including manufactured parts and components

 

1,915

 

1,282

Finished goods

 

516

 

479

$

3,149

$

2,826

4.            Plant and Equipment

Plant and equipment are comprised of the following:

December 31, 

    

2023

    

2022

 

(In thousands)

Office and computer equipment

$

1,487

$

1,487

Machinery and equipment

 

12,458

 

12,126

Leasehold improvements

 

2,386

 

2,354

 

16,331

 

15,967

Less accumulated depreciation and amortization

 

(15,035)

 

(14,724)

$

1,296

$

1,244

Depreciation and amortization expense recorded by the Company totaled approximately $311,000 and $249,000 and for 2023 and 2022, respectively. There were no fully depreciated assets written off in 2023. Fully depreciated assets of $235,000 were written off in 2022.

The Company evaluates its property and equipment for impairment when events or circumstances indicate an impairment may exist. Based on this evaluation, the Company concluded that, at December 31, 2023 and 2022, its long-lived assets were not impaired.

40

5.            Related Party Transactions

On October 12, 2023, the maturity dates of a $1,500,000 Subordinated Convertible Promissory Note to Clarex Limited (“Clarex”) and a $1,000,000 Subordinated Convertible Promissory Note to an affiliate of Clarex were each extended to January 15, 2025, from August 15, 2024. The notes bear interest at 6%. Interest accrues yearly and is payable on maturity. Unpaid interest, along with principal, may be converted into securities of the Company as follows: the notes are convertible in the aggregate into 1,500,000 units and 1,000,000 units, respectively, with each unit consisting of one share of common stock and one warrant. Each warrant allows the holder to acquire 0.75 shares of common stock at a price of $1.35 per share. The warrants expire on August 15, 2027.

The Company paid $0.2 million for interest on the subordinated convertible promissory notes for each of the years 2023 and 2022, respectively. Accrued interest of $37,500 is included in Accounts payable and accrued liabilities as of December 31, 2023 and 2022, respectively.

6.            Other Long-Term Notes

Other Long-Term Notes consist of the following:

December 31, 

    

2023

    

2022

(in thousands)

U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029.

$

140

$

160

Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 (1)

 

176

 

225

Less current portion

 

(71)

 

(68)

Long-term debt, excluding current portion

$

245

$

317

(1)The Company purchased certain equipment in the 12 months ended December 31, 2022, financing approximately $282,000 at a fixed annual interest rate of 6.1% for five years payable in equal monthly installments.

Other Long-Term Notes mature as follows:

Year ending December 31:

(In thousands)

2024

 

$

71

2025

 

75

2026

 

80

2027

25

2028

 

21

Thereafter

 

44

$

317

7.            Accounts Payable and Accrued Liabilities

Accounts payable and accrued expenses are comprised of the following:

December 31, 

    

2023

    

2022

Trade accounts payable and accrued purchases

$

412

$

446

Accrued payroll

 

9

 

25

Accrued 401K company matching contribution

 

141

 

137

Accrued expenses – other

 

270

 

133

$

832

$

741

41

8.            Income Taxes

The Company did not record a current provision for either state tax or federal tax due to loss carry forwards incurred for both income tax and financial reporting purposes.

A reconciliation of the income tax provision computed at the statutory federal income tax rate to our effective income tax rate follows (in percent):

Years Ended

 

December 31, 

 

    

2023

    

2022

 

Federal statutory rate

 

21

%  

21

%

Reduction in state rate due to tax rate change

 

9

 

9

Change in valuation allowance

 

(87)

 

(106)

Permanent differences

 

(1)

 

33

Return to provision adjustment

(2)

43

Effective income tax rate

 

(60)

%  

%

At December 31, 2023 and 2022, the Company had estimated Federal net operating loss carry forwards of approximately $6.0 million and $7.8 million, respectively, and state net operating loss carry forwards of approximately $3.0 million and $5.0 million, respectively. Approximately $4.0 million net operating loss carryforwards expire during various years through 2037, and approximately $2.0 million may be carried forward indefinitely, subject to the 80% of taxable income limitation rule.

Internal Revenue Code Section 382 places a limitation on the utilization of Federal net operating loss and other credit carry forwards when an ownership change, as defined by the tax law, occurs. Generally, this occurs when a greater than 50 percentage point change in ownership occurs. Accordingly, the actual utilization of the net operating loss and carryforwards for tax purposes may be limited annually to a percentage (based on the risk-free interest rate) of the fair market value of the Company at the time of any such ownership change. The Company has not prepared an analysis of ownership changes but does not believe that a greater than 50% change of ownership has occurred and such limitations would not apply to the Company.

Deferred tax assets (liabilities) are comprised of the following:

    

December 31, 

2023

    

2022

Account receivable reserves

$

13

$

13

Inventory reserves

 

597

 

667

Inventory capitalization

 

68

 

92

Depreciation

 

 

Loss carry forwards

 

1,458

 

2,562

Gross deferred tax assets

 

2,136

 

3,334

Deferred tax liability- depreciation

(110)

(110)

Valuation allowance

 

(1,026)

 

(3,224)

Net deferred tax asset

$

1,000

$

In evaluating the Company’s ability to recover deferred tax assets in future periods, management considers the available positive and negative factors. The Company periodically evaluates the realizability of its net deferred tax assets based on all available evidence, both positive and negative, including the Company’s recent operating results, the existence of cumulative income or losses and near-term forecasts of future taxable income that is consistent with the plans and estimates management is using to manage the underlying business. During 2023, the Company reached a cumulative income position over the previous three years. The cumulative three-year income is considered objective, verifiable and positive evidence and thus received significant weighting. Additional positive evidence considered by the Company in its assessment included recent utilization of tax attribute carryforwards and future forecasts of continued profitability. The realizability of the Company’s net deferred tax assets is dependent on its ability to generate sufficient future taxable income during periods prior to the expiration of tax attributes to fully utilize these assets. Therefore, during the fourth quarter of 2023, based on all available positive and negative evidence, the Company determined that it was appropriate to release a portion of the

42

valuation allowance on the Company’s U.S. federal and other state deferred tax assets.The Company recognized a $1.0 million discrete tax benefit during year ended December 31, 2023, as a result of the valuation allowance release.

The Company files income tax returns in the United States, which typically provides for a three-year statute of limitations on assessments. The Company is no longer subject to federal, state, or local income tax examinations by tax authorities for the years before 2020.

The guidance for accounting for uncertainties in income taxes requires that we recognize the financial statement effects of a tax position when it is more likely than not, based on the technical merits, that the position will be sustained upon examination. There were no unrecognized tax benefits that impacted our effective tax rate and accordingly, there was no material effect to our financial position, results of operations or cash flows.

Our policy is to recognize interest and penalties related to the underpayment of income taxes as a component of income tax expense. To date, there have been no interest or penalties charged to us in relation to the underpayment of income taxes.

We do not anticipate that our unrecognized tax benefits will significantly increase in the next 12 months.

9.          Equity Compensation Program and Stock-based Compensation

a.            2020 Equity Compensation Program

On February 12, 2020, the Inrad Optics Board of Directors adopted the Inrad Optics, Inc. 2020 Equity Compensation Program (the “2020 Program”) and received shareholder approval on June 23, 2020. The 2020 Program provides for grants of options, stock appreciation rights and restricted stock awards to employees, officers, directors, and others who render services to the Company. The 2020 Program is comprised of four parts including: (i) the Incentive Stock Option Plan which provides for grants of “incentive stock options,” (ii) the Supplemental Stock Option Plan which provides for grants of stock options that shall not be “incentive stock options,” (iii) the Stock Appreciation Rights Plan which allows the granting of stock appreciation rights and, (iv) the Restricted Stock Award Plan which provides for the granting of restrictive shares of Common Stock and restricted stock units. The 2020 Program is administered by the Compensation Committee of the Board of Directors. Under the 2020 Program, an aggregate of up to 4,000,000 shares of common stock may be granted.

b.            2010 Equity Compensation Program

The Company’s 2010 Equity Compensation Program (the “2010 Program”) provided for grants of options, stock appreciation rights and restricted stock awards to employees, officers, directors, and others who render services to the Company.  The 2010 Program expired on March 23, 2020. All outstanding grants of options, stock appreciation rights and performance shares issued under the 2010 Program will remain outstanding and shall expire on the date determined by the terms of the original grant.  The latest date of expiration for outstanding grants under the 2010 Program is March 23, 2030.

c.            Stock Option Expense

The Company’s results include stock-based compensation expense for stock option grants totaling $117,000 and $116,000 for the years ended December 31, 2023 and 2022, respectively. Such amounts have been included in the Consolidated Statements of Operations within cost of goods sold ($13,000 for each of the years 2023 and 2022, respectively), and selling, general and administrative expenses ($104,000 and $103,000 for 2023 and 2022, respectively).

As of December 31, 2023 and 2022, there were $122,000 and $222,000 of unrecognized compensation costs, net of estimated forfeitures, related to non-vested stock options, which are expected to be recognized over a weighted average period of approximately 1.30 and 1.54 years, respectively.

The weighted average estimated fair value of stock options granted in the two years ended December 31, 2023 and 2022, was $1.72 and $1.20, respectively. The Company uses the Black-Scholes option pricing model to calculate the grant-date fair value of an option award. The Company assumes a dividend yield of zero, as the Company has not paid dividends in the past and does not expect to in the foreseeable future. The expected volatility is based upon the historical volatility of our common stock which the Company believes results in the best estimate of the grant-date fair value of employee stock options because it reflects the market’s current

43

expectations of future volatility. The risk-free rate is based on the U.S. Treasury yield curve in effect at the time of the grant with maturity dates approximately equal to the expected life at the grant date. The expected life is based upon the period of expected benefit based on the Company’s evaluation of historical and expected future employee exercise behavior.

The following range of weighted-average assumptions were used for to determine the fair value of stock option grants during the years ended December 31, 2023 and 2022:

Years Ended

 

December 31, 

 

    

2023

    

2022

 

Expected dividend yield

 

%  

%

Expected volatility

 

92.00

%  

104.62

%

Risk-free interest rate

 

0.86

%  

1.54

%

Expected term

 

10 years

 

10 years

d.            Stock Option Activity

A summary of the Company’s outstanding stock options as of and for the years ended December 31, 2023 and 2022, is presented below:

Weighted

Weighted

Average

Average

Exercise

Remaining

Aggregate

Number of

Price per

Contractual

Intrinsic

Stock Options

    

Options

    

Option

    

Term (years)

    

Value(a)

Outstanding January 1, 2022

 

1,152,667

$

0.60

 

7.4

$

662,465

Granted

 

200,000

1.20

 

Exercised

 

(66,000)

0.38

 

Expired/Forfeited

 

 

Outstanding December 31, 2022 (b)

 

1,286,667

$

0.71

 

7.52

$

1,214,875

Granted

 

20,000

1.72

 

Exercised

 

(109,333)

0.36

 

Expired/Forfeited

 

(84,667)

0.74

 

Outstanding December 31, 2023 (b)

 

1,112,667

$

0.75

 

6.88

$

1,214,875

Exercisable at December 31, 2023

 

905,992

$

0.68

 

6.13

$

1,085,699

(a)   Intrinsic value for purposes of this table represents the amount by which the fair value of the underlying stock, based on the respective market prices as of December 31, 2023, exceeds the exercise prices of the respective options.

(b)   Based on the Company’s historical forfeiture rate, the number of options expected to vest is the same as the total outstanding at December 31, 2023.

44

The following table represents non-vested stock options granted, vested, and forfeited for the year ended December 31, 2023 and 2022:

Weighted-average 

Grant-date Fair Value

    

Options

    

  ($)

Non-Vested - January 1, 2022

276,670

 

0.66

Granted

 

200,000

 

1.09

Vested

 

(135,836)

 

0.70

Forfeited

 

 

Non-Vested - January 1, 2023

340,835

0.89

Granted

20,000

1.72

Vested

(109,333)

0.36

Forfeited

(84,667)

0.74

Non-Vested – December 31, 2023

 

166,835

 

0.98

The total weighted average grant date fair value of options vested during the years ended December 31, 2023 and 2022, was $30,000 and $218,000, respectively.

The following table summarizes information about stock options outstanding at December 31, 2023:

Options Outstanding

Options Exercisable

Weighted

Average

Weighted

Weighted

Remaining

Average

Average

Range of

Number

Contractual

Exercise

Number

Exercise

Exercise Price

    

Outstanding

    

Life in Years

    

Price

    

Outstanding

    

Price

$0.18 - $0.35

247,667

2.65

$

0.29

247,667

$

0.29

$0.50 - $1.00

 

617,500

6.09

$

0.72

557,497

$

0.73

$1.20 - $1.80

 

247,500

8.87

$

1.55

100,830

$

1.35

10.          Net (Loss) Income per Share

Basic income (loss) per common share is computed by dividing net income (loss) by the weighted average number of common shares outstanding. Diluted income (loss) per common share is computed by dividing net income (loss) by the weighted average number of common shares and common stock equivalents outstanding, calculated on the treasury stock method for options, stock grants and warrants using the average market prices during the period, including potential common shares issuable upon conversion of outstanding convertible notes, except if the effect on the per share amounts is anti-dilutive.

For the year ended December 31, 2023, a total of 2,500,000 common shares issuable upon conversion of outstanding convertible notes have been included in the diluted computation of net income per share. 1,875,000 common shares underlying warrants issuable upon conversion of outstanding related party convertible notes have been excluded from the diluted computation of net income per share because their effect is anti-dilutive. A total of 535,078 common stock equivalents related to outstanding options have been included in the computation of diluted earnings per share because their effect is dilutive.

For the year ended December 31, 2022, a total of 2,500,000 common shares issuable upon conversion of outstanding convertible notes have been included in the diluted calculation. 1,875,000 common shares underlying warrants issuable upon conversion of outstanding related party convertible notes have been excluded from the diluted computation of net income per share because their effect is anti-dilutive. A total of 706,678 common stock equivalents related to outstanding options have been included in the computation of diluted earnings per share because their effect is dilutive. 30,000 common stock equivalents related to outstanding stock options have been included the computation of diluted earnings per share.

45

11.          Commitments and Contingencies

a.            Lease commitments

Lease expense is recognized on a straight-line basis over the lease term and is included in cost of sales and general and administrative expenses on the consolidated statement of operations.

An initial right-of-use asset of approximately $0.9 million was recognized as a non-cash asset addition with the signing of the July 25, 2022, lease amendment. Cash paid for amounts included in the present value of the operating lease liability was $0.2 million during each of the years ended December 31, 2023 and 2022, and is included in operating cash flows.

The following table presents information about the amount and timing of cash flows arising from the Company’s operating and capital leases as of December 31, 2023:

Maturity of Lease Liability

    

(in thousands)

 

2024

325

2025

135

Total undiscounted operating and capital lease payments

 

460

Less: imputed interest

 

(17)

Present value of lease liabilities

$

443

Other Information

 

Remaining lease term (in months) - operating lease

 

17

Discount rate for operating lease

 

5.80

%

The Company’s total rent expense for the years ended December 31, 2023 and 2022, was $0.3 million in each year.

The Company also paid real estate taxes and insurance premiums under the terms of the lease that totaled approximately $0.1 million in both 2023 and 2022.

b.            Retirement plans

The Company maintains a 401(k) savings plan (the “Plan”) for all eligible employees (as defined in the plan). The 401(k) Plan allows employees to contribute up to 70% of their compensation on a salary reduction, pre-tax basis up to the statutory limitation. The 401(k) Plan also provides that the Company, at the discretion of the Board of Directors, may match employee contributions based on a pre-determined formula.

In 2023, the Company’s 401(k) matching contribution for employees was $141,000 and funded in cash in February 2024. In 2022, the Company’s 401(k) matching contribution for employees was $137,000. The 2022 matching contributions were funded by way of a contribution of cash of $82,000 and 33,322 shares of the Company’s common stock, which were issued to the Plan in February 2023. The Company records the distribution of the common shares in the Consolidated Statement of Shareholders’ Equity as of the date of distribution to the 401(k) Plan administrator.

12.          Product Sales, Foreign Sales, and Sales to Major Customers

The Company’s export sales, which are primarily to customers in countries within Canada, the Czeck Republic, Germany, Israel, and Singapore, amounted to approximately 44.4% and 37.7% of product sales in 2023 and 2022 respectively.

The Company had sales to three major customers which accounting for approximately 54.4% in 2023. One customer, a capital equipment company supplies process and control and yield management systems for the semiconductor industry, accounted for 27.5% of sales in 2023. The two other customers included a foreign-based manufacturer of process control and metrology equipment and a U.S.-based customer in the aerospace defense industry whose sales represented 14.8% and 12.1% of sales, respectively. For 2022, the top three customers represented 19.7%, 15.3% and 15.1% of sales.

46

During 2023 and 2022, sales to the Company’s top five customers represented approximately 69.6% and 68.6%, respectively. Given the concentration of sales within a small number of customers, the loss of any of these customers would have a significant negative impact on the Company and its business units.

13.          Shareholders’ Equity

a.            Common shares reserved for future issuances at December 31, 2023, are as follows:

2020 Equity compensation plan

    

3,600,000

2010 Equity compensation plan

 

886,667

Subordinated convertible notes

 

2,500,000

Warrants issuable on conversion of Subordinated convertible notes

 

1,875,000

 

8,861,667

b.            Warrants

The Company had no outstanding warrants as of December 31, 2023 and 2022.

14.          Fair Value of Financial Instruments

The methods and assumptions used to estimate the fair value of the following classes of financial instruments were:

Current Assets and Current Liabilities: The carrying amount of cash, current receivables and payables and certain other short-term financial instruments approximate their fair value as of December 31, 2023, due to their short-term maturities.

Long-Term Debt: The fair value of the Company’s long-term debt, including the current portion, for notes payable and subordinated convertible debentures, was estimated using a discounted cash flow analysis, based on the Company’s assumed incremental borrowing rates for similar types of borrowing arrangements. The fair value of long-term debt is estimated to be $2.4 million compared to its carrying amount of $2.8 million as of December 31, 2023.

47

EX-23.1 2 inrd-20231231xex23d1.htm EX-23.1

Exhibit 23.1

Consent of Independent Registered Public Accounting Firm

We hereby consent to the incorporation by reference in the Registration Statement on Form S-8 (See File No. 333-167679, effective June 22, 2010) of our report dated March 30, 2023, with respect to the consolidated financial statements of Inrad Optics, Inc. and Subsidiaries included in this Annual Report on Form 10-K for the year ended December 31, 2023.

/s/ PKF O’Connor Davies, LLP

March 28, 2024

New York, NY


EX-31.1 3 inrd-20231231xex31d1.htm EX-31.1

Exhibit 31.1

CERTIFICATION PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

I, Amy Eskilson, certify that:

1. I have reviewed this Annual Report on Form 10-K for the year ended December 31, 2023, of Inrad Optics, Inc.;

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

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

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

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

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

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

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

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

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

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

Date: March 28, 2024

/s/ Amy Eskilson

Amy Eskilson

Chief Executive Officer

A signed original of this written statement required by Sections 302 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission, or its staff, upon request.


EX-31.2 4 inrd-20231231xex31d2.htm EX-31.2

Exhibit 31.2

CERTIFICATION PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

I, Theresa A. Balog, certify that:

1. I have reviewed this Annual Report on Form 10-K for the year ended December 31, 2023, of Inrad Optics, Inc.;

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

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

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

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

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

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

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

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

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

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

Date: March 28, 2024

/s/ Theresa A. Balog

Theresa A. Balog

Chief Financial Officer, Secretary and Treasurer

A signed original of this written statement required by Sections 302 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission, or its staff, upon request.


EX-32.1 5 inrd-20231231xex32d1.htm EX-32.1

Exhibit 32.1

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the annual report of Inrad Optics, Inc. (the “Company”) on Form 10-K for the year ended December 31, 2023, filed with the Securities and Exchange Commission (the “Report”), I, Amy Eskilson, 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) of the Securities Exchange Act of 1934; and

(2) The information contained in the Report fairly presents, in all material respects, the consolidated financial condition of the Company as of the dates presented and consolidated results of operations of the Company for the periods presented.

Dated: March 28, 2024

/s/ Amy Eskilson

Amy Eskilson

Chief Executive Officer

This certification has been furnished solely pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.

A signed original of this written statement required by Sections 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission, or its staff, upon request.


EX-32.2 6 inrd-20231231xex32d2.htm EX-32.2

Exhibit 32.2

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the annual report of Inrad Optics, Inc. (the “Company”) on Form 10-K for the year ended December 31, 2023, filed with the Securities and Exchange Commission (the “Report”), I, Theresa A. Balog, 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) of the Securities Exchange Act of 1934; and

(2) The information contained in the Report fairly presents, in all material respects, the consolidated financial condition of the Company as of the dates presented and consolidated results of operations of the Company for the periods presented.

Dated: March 28, 2024

/s/ Theresa A. Balog

Theresa A. Balog

Chief Financial Officer, Secretary and Treasurer

This certification has been furnished solely pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.

A signed original of this written statement required by Sections 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission, or its staff, upon request.


EX-101.SCH 7 inrd-20231231.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 00100 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - Inventories, net - Schedule of inventory (Details) link:presentationLink link:calculationLink link:definitionLink 40603 - Disclosure - Other Long-Term Notes - Schedule of other long-term note maturities (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - Accounts Payable and Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - Income Taxes - Reconciliation of income tax provision (Details) link:presentationLink link:calculationLink link:definitionLink 40802 - Disclosure - Income Taxes - Deferred tax assets (liabilities) (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - Commitments and Contingencies - Maturity of Lease Liability (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - Commitments and Contingencies - Maturity of Lease Liability (Details) Calc 2 link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Details) link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - Revenue - Company's sales by market area (Details) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - Revenue - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40302 - Disclosure - Inventories, net (Details) link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - Plant and Equipment - Schedule of plant and equipment (Details) link:presentationLink link:calculationLink link:definitionLink 40402 - Disclosure - Plant and Equipment (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - Related Party Transactions (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - Other Long-Term Notes (Details) link:presentationLink link:calculationLink link:definitionLink 40602 - Disclosure - Other Long-Term Notes - Additional information (Details) link:presentationLink link:calculationLink link:definitionLink 40803 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - Equity Compensation Program and Stock-based Compensation (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - Disclosure - Equity Compensation Program and Stock-based Compensation - Weighted-average assumptions (Details) link:presentationLink link:calculationLink link:definitionLink 40903 - Disclosure - Equity Compensation Program and Stock-based Compensation- Stock Option Activity (Details) link:presentationLink link:calculationLink link:definitionLink 40904 - Disclosure - Equity Compensation Program and Stock-based Compensation - Non-vested stock option activity (Details) link:presentationLink link:calculationLink link:definitionLink 40905 - Disclosure - Equity Compensation Program and Stock-based Compensation- Option exercise prices (Details) link:presentationLink link:calculationLink link:definitionLink 40906 - Disclosure - Equity Compensation Program and Stock-based Compensation - Additional information (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - Net (Loss) Income per Share (Details) link:presentationLink link:calculationLink link:definitionLink 41102 - Disclosure - Commitments and Contingencies (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - Product Sales, Foreign Sales and Sales to Major Customers (Details) link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - Shareholders' Equity (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - Revenue link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - Inventories, net link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - Plant and Equipment link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - Related Party Transactions link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - Other Long-Term Notes link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - Accounts Payable and Accrued Liabilities link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - Equity Compensation Program and Stock-based Compensation link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - Net (Loss) Income per Share link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - Product Sales, Foreign Sales and Sales to Major Customers link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - Shareholders' Equity link:presentationLink link:calculationLink link:definitionLink 11401 - Disclosure - Fair Value of Financial Instruments link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Policies) link:presentationLink link:calculationLink link:definitionLink 30203 - Disclosure - Revenue (Tables) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - Inventories, net (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - Plant and Equipment (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - Other Long-Term Notes (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - Accounts Payable and Accrued Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 30803 - Disclosure - Income Taxes (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - Equity Compensation Program and Stock-based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - Commitments and Contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 31303 - Disclosure - Shareholders' Equity (Tables) link:presentationLink link:calculationLink link:definitionLink 41401 - Disclosure - Fair Value of Financial Instruments (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 8 inrd-20231231_cal.xml EX-101.CAL EX-101.DEF 9 inrd-20231231_def.xml EX-101.DEF EX-101.LAB 10 inrd-20231231_lab.xml EX-101.LAB Document and Entity Information Document Type Document Annual Report Document Period End Date Current Fiscal Year End Date Document Transition Report Entity File Number Entity Registrant Name Entity Incorporation, State or Country Code Entity Tax Identification Number Entity Address, Address Line One Entity Address, City or Town Entity Address, State or Province Entity Address, Postal Zip Code City Area Code Local Phone Number Title of 12(g) Security Entity Well-known Seasoned Issuer Entity Voluntary Filers No Trading Symbol Flag Entity Current Reporting Status Entity Interactive Data Current Entity Filer Category Entity Small Business Entity Emerging Growth Company ICFR Auditor Attestation Flag Document Financial Statement Error Correction [Flag] Entity Shell Company Entity Public Float Entity Common Stock, Shares Outstanding Document Fiscal Year Focus Document Fiscal Period Focus Entity Central Index Key Amendment Flag Auditor Name Auditor Location Auditor Firm ID CONSOLIDATED BALANCE SHEETS Statement [Table] Statement [Table] Statement [Line Items] Accounts Payable and Accrued Liabilities Statement Assets [Abstract] Assets Assets, Current [Abstract] Current assets: Cash and Cash Equivalents, at Carrying Value Cash and cash equivalents Accounts Receivable, Net, Current Accounts receivable, net of allowance for credit losses of $46,000 in 2023 and 2022) Inventory, Net Inventories, net Inventories, net Other Assets, Current Other current assets Assets, Current Total current assets Property, Plant and Equipment, Net [Abstract] Plant and equipment: Property, Plant and Equipment, Gross Plant and equipment, at cost Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Less: Accumulated depreciation and amortization Less accumulated depreciation and amortization Property, Plant and Equipment, Net Total plant and equipment Inventory, Noncurrent Precious metals Operating Lease, Right-of-Use Asset Lease right-of-use, net Deferred Income Tax Assets, Net Deferred tax asset Other Assets, Noncurrent Other assets Assets Total Assets Liabilities and Equity [Abstract] Liabilities and Shareholders' Equity Liabilities, Current [Abstract] Current liabilities: Other Notes Payable, Current Less current portion Current portion of other long term notes Accounts Payable and Accrued Liabilities, Current Accounts payable and accrued liabilities Accounts payable and accrued liabilities Contract with Customer, Liability, Current Contract liabilities Operating Lease, Liability, Current Current portion of lease obligation Liabilities, Current Total current liabilities Convertible Notes Payable Related party convertible notes payable Notes Payable, Noncurrent, Related Party, Type [Extensible Enumeration] Other Notes Payable, Noncurrent Other long term notes, net of current portion Operating Lease, Liability, Noncurrent Lease obligation, net of current portion Liabilities Total liabilities Stockholders' Equity Attributable to Parent [Abstract] Shareholders' equity: Common Stock, Value, Issued Common stock: $.01 par value; 60,000,000 authorized shares; 14,235,575 shares issued at December 31, 2023, and 14,092,920 shares issued at December 31, 2022 Additional Paid in Capital, Common Stock Capital in excess of par value Retained Earnings (Accumulated Deficit) Accumulated deficit Stockholders' Equity before Treasury Stock Stockholders' equity before treasury stock Treasury Stock, Value. Less - Common stock in treasury, at cost (4,600 shares) Stockholders' Equity Attributable to Parent Ending balance Beginning balance Total shareholders' equity Liabilities and Equity Total Liabilities and shareholders' equity Accounts Receivable, Allowance for Credit Loss, Current Net reduction of allowances related to customers Allowance for credit losses Common Stock, Par or Stated Value Per Share Common stock, par value (in dollars per share) Common Stock, Shares Authorized Common stock, shares authorized Common Stock, Shares, Issued Common stock, shares issued Treasury Stock, Shares Treasury stock, shares CONSOLIDATED STATEMENTS OF OPERATIONS Revenues Revenue Total revenue Costs and Expenses [Abstract] Cost and expenses: Cost of Goods and Services Sold Cost of goods sold Selling, General and Administrative Expense Selling, general and administrative expenses Costs and Expenses Cost and expenses, Total Operating Income (Loss) Income from operations Nonoperating Income (Expense) [Abstract] Other expense: Interest Income (Expense), Nonoperating, Net Interest expense-net Nonoperating Income (Expense) Nonoperating Income (Expense) Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Income before income taxes Income Tax Expense (Benefit) Income tax (provision) benefit Income tax benefit Net income Net income Earnings Per Share, Basic Net income per common share - basic Earnings Per Share, Diluted Net income per common share - diluted Weighted Average Number of Shares Outstanding, Basic Weighted average shares outstanding - basic Weighted Average Number of Shares Outstanding, Diluted Weighted average shares outstanding - diluted CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY Equity Components [Axis] Equity Component [Domain] Common Stock [Member] Common stock This member represents capital in excess of par value. Capital In Excess Of Par Value [Member] Capital in excess of par value Retained Earnings [Member] Accumulated Deficit Treasury Stock, Common [Member] Treasury Stock Shares, Outstanding Ending balance (in shares) Beginning balance (in shares) Stock Issued During Period, Value, New Issues 401K contribution Stock Issued During Period, Shares, New Issues 401K contribution (in shares) Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition Stock-based compensation expense Stock Issued During Period, Value, Stock Options Exercised Common stock options exercised Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Options, Exercised Common stock options exercised (in shares) CONSOLIDATED STATEMENTS OF CASH FLOWS Net Cash Provided by (Used in) Operating Activities [Abstract] Cash flows from operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Adjustments to reconcile net income to net cash provided by (used in) operating activities Depreciation, Depletion and Amortization Depreciation and amortization Pension and Other Postretirement Benefits Cost (Reversal of Cost) 401(k) common stock contribution - non cash item Share-based Compensation Stock based compensation Inventory Write-down Change in inventory reserve Increase (Decrease) in Operating Capital [Abstract] Changes in operating assets and liabilities: Increase (Decrease) in Accounts Receivable Accounts receivable Increase (Decrease) in Inventories Inventories Increase (Decrease) in Other Operating Assets Other current and non-current assets Increase (Decrease) in Operating Lease Liability Change in lease obligations Increase (Decrease) in Accounts Payable and Accrued Liabilities Accounts payable and accrued liabilities Increase (Decrease) in Contract with Customer, Liability Contract liabilities Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities Total adjustments and changes Net Cash Provided by (Used in) Operating Activities Net cash provided by operating activities Net Cash Provided by (Used in) Investing Activities [Abstract] Cash flows from investing activities: Payments to Acquire Property, Plant, and Equipment Capital expenditures Net Cash Provided by (Used in) Investing Activities Net cash (used in) investing activities Net Cash Provided by (Used in) Financing Activities [Abstract] Cash flows from financing activities: Proceeds from Issuance of Common Stock Proceeds from issuance of common stock Proceeds from (Repayments of) Other Long-term Debt Principal payments on notes payable-other Net Cash Provided by (Used in) Financing Activities Net cash (used in) financing activities Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Net increase in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents Cash and cash equivalents at end of year Cash and cash equivalents at beginning of year Supplemental Cash Flow Information [Abstract] Supplemental disclosure of cash flow information: Interest Paid, Net Interest paid Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract] Significant non-cash activities: Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Lease right-of-use asset Noncash Investing and Financing Items [Abstract] Supplemental disclosure of non-cash investing and financing activities The amount relates to acquisition of assets by issuing a note payable. Acquisition Of Assets By Issuing Notes Payable Acquisition of equipment by issuing a note payable No definition available. Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates Organization, Consolidation, Basis of Presentation, Business Description and Accounting Policies [Text Block] Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates Revenue Revenue from Contract with Customer [Text Block] Revenue Inventories, net Inventory Disclosure [Text Block] Inventories, net Plant and Equipment Property, Plant and Equipment Disclosure [Text Block] Plant and Equipment Related Party Transactions Related Party Transactions Disclosure [Text Block] Related Party Transactions Other Long-Term Notes Other Liabilities Disclosure [Text Block] Other Long-Term Notes Accounts Payable and Accrued Liabilities Accounts Payable and Accrued Liabilities Disclosure [Text Block] Accounts Payable and Accrued Liabilities Income Taxes Income Tax Disclosure [Text Block] Income Taxes Equity Compensation Program and Stock-based Compensation Disclosure of Compensation Related Costs, Share-based Payments [Text Block] Equity Compensation Program and Stock-based Compensation Net (Loss) Income per Share Earnings Per Share [Text Block] Net (Loss) Income per Share Commitments and Contingencies Commitments Disclosure [Text Block] Commitments and Contingencies Product Sales, Foreign Sales and Sales to Major Customers Segment Reporting Disclosure [Text Block] Product Sales, Foreign Sales and Sales to Major Customers Shareholders' Equity Stockholders' Equity Note Disclosure [Text Block] Shareholders' Equity Fair Value of Financial Instruments Financial Instruments Disclosure [Text Block] Fair Value of Financial Instruments Basis of Accounting, Policy [Policy Text Block] Nature of Business and Operations Consolidation, Policy [Policy Text Block] Principles of consolidation Use of Estimates, Policy [Policy Text Block] Use of estimates Cash and Cash Equivalents, Policy [Policy Text Block] Cash and cash equivalents Trade and Other Accounts Receivable, Policy [Policy Text Block] Accounts receivable Inventory, Policy [Policy Text Block] Inventories Property, Plant and Equipment, Policy [Policy Text Block] Plant and Equipment Income Tax, Policy [Policy Text Block] Income taxes Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block] Impairment of long-lived assets Share-based Compensation, Option and Incentive Plans Policy [Policy Text Block] Stock-based compensation Revenue Recognition, Policy [Policy Text Block] Revenue recognition Research and Development Expense, Policy [Policy Text Block] Internal research and development costs Disclosure of accounting policy for precious metals. Precious Metals, Policy [Policy Text Block] Precious metals Advertising Costs, Policy [Policy Text Block] Advertising costs Concentration Risk, Credit Risk, Policy [Policy Text Block] Concentrations and credit risk Fair Value Measurement, Policy [Policy Text Block] Fair value measurements New Accounting Pronouncements, Policy [Policy Text Block] Recent Accounting Pronouncements Subsequent Events, Policy [Policy Text Block] Subsequent events Disaggregation of Revenue [Table Text Block] Schedule of company's sales by market area Schedule of Inventory, Current [Table Text Block] Schedule of inventory reserves Property, Plant and Equipment [Table Text Block] Schedule of plant and equipment Schedule of Debt [Table Text Block] Schedule of other long-term notes Schedule of Maturities of Long-Term Debt [Table Text Block] Schedule of maturities of long-term notes Schedule of Accounts Payable and Accrued Liabilities [Table Text Block] Schedule of accounts payable and accrued expenses Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] Schedule of effective income tax rate reconciliation Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Schedule of deferred tax assets (liabilities) Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Schedule of fair value of stock option grants Share-based Compensation, Stock Options, Activity [Table Text Block] Schedule of company's outstanding stock options Tabular disclosure of the total compensation cost related to non-vested stock options granted, vested and forfeited during the period. Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested [Table Text Block] Schedule of non-vested stock options granted, vested, and forfeited Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table Text Block] Schedule of information about stock options outstanding The tabular disclosure of other information regarding lessee, operating lease. Lessee Operating Lease Other Information [Table Text Block] Schedule of other information Schedule of Stock by Class [Table Text Block] Schedule of Common shares reserved Disclosure of information about the nature of business and operations and summary of significant accounting policies and estimates. Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates [Table] Range [Axis] Range [Domain] Minimum [Member] Minimum Maximum [Member] Maximum Long-Lived Tangible Asset [Axis] Property, Plant and Equipment, Type [Domain] This member stands for property and equipment, excluding leasehold improvements. Property And Equipment Excluding Leasehold Improvements [Member] Property and equipment excluding leasehold improvements Leasehold Improvements [Member] Leasehold improvements Customer [Axis] Customer [Domain] This member represents the top three major customers. Top Three Major Customers [Member] Top three major customers This member stands for customer one. Customer One [Member] Customer one This member stands for customer two. Customer Two [Member] Customer two This member stands for customer three. Customer Three [Member] Customer three Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Sales Revenue, Net [Member] Sales revenue Concentration Risk Type [Axis] Concentration Risk Type [Domain] Customer Concentration Risk [Member] Customer concentration risk 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. Nature of Business and Operations and Summary of Significant Accounting Policies and Estimate [Line Items] Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates Property, Plant and Equipment, Useful Life Plant and equipment useful life Unrecognized Tax Benefits Unrecognized tax benefits Advertising Expense Advertising expense Represents the number of major customers. Number Of Major Customers Number of major customers Concentration Risk, Percentage Concentration risk percentage Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease) Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease) Disaggregation of Revenue [Table] Segments [Axis] Segments [Domain] Represents the member information pertaining to aerospace & defense. Aerospace & Defense [Member] Aerospace & Defense Represents the member information pertaining to process control & metrology. Process Control & Metrology [Member] Process Control & Metrology Represents the member information pertaining to laser systems. Laser Systems [Member] Laser Systems Represents the member information pertaining to scientific member. Scientific / R&D [Member] Scientific / R&D Disaggregation of Revenue [Line Items] REVENUE The percentage of revenue from sale of products or rendering of services. Percentage of Revenue from Products or Services Percentage of revenue from products or services Concentration Risk [Table] Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Domain] Transferred at Point in Time [Member] Transfer at point in time Concentration Risk REVENUE Inventory [Line Items] Inventories, net Inventory, Raw Materials, Gross Raw materials Inventory, Work in Process, Gross Work in process, including manufactured parts and components Inventory, Finished Goods, Gross Finished goods Inventory Valuation Reserves Inventory reserves Property, Plant and Equipment [Table] This member stands for office and computer equipment. Office and Computer Equipment [Member] Office and computer equipment Machinery and Equipment [Member] Machinery and equipment Property, Plant and Equipment [Line Items] Plant and Equipment Depreciation Depreciation and amortization expense The amount represents written off of fully depreciated fixed assets. Write Off Of Fixed Assets Depreciated assets were written off Schedule of Related Party Transactions, by Related Party [Table] Long-term Debt, Type [Axis] Long-term Debt, Type [Domain] Convertible Subordinated Debt [Member] Subordinated convertible note Debt of $1,500,000 that places a lender in a lien position behind debt having a higher priority of repayment in liquidation of the entity's assets which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder. Convertible Subordinated Debt, $1,500,000 [Member] Convertible subordinated debt, $1,500,000 Debt with original amount of $1,000,000 that places a lender in a lien position behind debt having a higher priority of repayment in liquidation of the entity's assets which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder. Convertible Subordinated Debt, $1,000,000 [Member] Convertible subordinated debt, $1,000,000 Counterparty Name [Axis] Counterparty Name [Domain] Represents the member information pertaining to affiliate of clarex. Affiliate Of Clarex [Member] Affiliate of Clarex Warrant [Member] Warrant Related Party Transaction [Line Items] Related Party Transactions Convertible Subordinated Debt Convertible subordinated debt Debt Instrument, Interest Rate, Stated Percentage Fixed interest rate Debt Instrument, Convertible, Number of Equity Instruments Debt instrument, convertible, number of equity instruments Number of shares and warrants comprised in one common unit. Number Of Shares And Warrants Comprised In Unit Number of shares/warrants comprised in a unit (in shares) Class of Warrant or Right, Number of Securities Called by Each Warrant or Right Number of shares of common stock to be purchased by each warrant Class of Warrant or Right, Exercise Price of Warrants or Rights Common stock at a price Interest Paid, Including Capitalized Interest, Operating and Investing Activities Interest paid Interest Payable, Current Interest payable Disclosure of information about other long term notes. Other Long-Term Notes. [Table] Represents the member information pertaining to U.S. small business administration note payable. U.S. Small Business Administration Note Payable [Member] U.S. small business administration note payable Represents information pertaining to equipment financing. Long-term Equipment Financing [Member] Long-term equipment financing 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. Other Long-Term Notes. Other Long-Term Notes Other Notes Payable U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029. Total Loans Payable Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 (1) Amount of long-term notes payable other. Long Term Notes Payable, Other Long-term debt, excluding current portion Schedule of Long-term Debt Instruments [Table] Debt Instrument [Line Items] Other Long-Term Notes Amount of monthly installment payment. Debt Instrument, Monthly Payment Monthly installment payment Debt Instrument, Periodic Payment Equal installment Debt Instrument, Face Amount Debt, face amount Debt Instrument, Term Debt term Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months 2024 Long-term Debt, Maturities, Repayments of Principal in Year Two 2025 Long-term Debt, Maturities, Repayments of Principal in Year Three 2026 Long-term Debt, Maturities, Repayments of Principal in Year Four 2027 Long-term Debt, Maturities, Repayments of Principal in Year Five 2028 Long-term Debt, Maturities, Repayments of Principal after Year Five Thereafter Accounts Payable, Trade Trade accounts payable and accrued purchases Accrued Salaries, Current Accrued payroll Liability, Retirement and Postemployment Benefits Accrued 401K company matching contribution Other Accrued Liabilities, Current Accrued expenses - other A table or schedule providing information pertaining to income taxes. Income Tax Disclosure [Table] This member stands for income taxes. Income Tax Disclosure [Line Items] Income Taxes Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent Federal statutory rate Effective Income Tax Rate Reconciliation, Change in Enacted Tax Rate, Percent Reduction in state rate due to tax rate change Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent Change in valuation allowance Effective Income Tax Rate Reconciliation, Prior Year Income Taxes, Percent Permanent differences Effective Income Tax Rate Reconciliation, Other Adjustments, Percent Return to provision adjustment Effective Income Tax Rate Reconciliation, Percent Effective income tax rate Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Allowance for Doubtful Accounts Account receivable reserves Deferred tax assets tax deferred expense reserves and accruals inventory. Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Inventory Inventory reserves Deferred Tax Assets, Inventory Inventory capitalization Deferred Tax Assets, Property, Plant and Equipment Depreciation Deferred Tax Assets, Operating Loss Carryforwards Loss carry forwards Deferred Tax Assets, Gross Gross deferred tax assets Deferred Tax Liabilities, Property, Plant and Equipment Deferred tax liability- depreciation Deferred Tax Assets, Valuation Allowance Valuation allowance Deferred Tax Assets, Net of Valuation Allowance Net deferred tax asset Income Tax Authority [Axis] Income Tax Authority [Domain] Domestic Tax Authority [Member] Federal State and Local Jurisdiction [Member] State and local jurisdiction Operating Loss Carryforwards Operating loss carryforwards Amount of Net operating loss carryforward subject to expiration. Net Operating Loss Carryforward Subject To Expiration Net operating loss carryforward subject to expiration Amount of Net operating loss carryforward not subject to expiration. Net Operating Loss Carryforward Not Subject To Expiration Net operating loss carryforward not subject to expiration Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount Effective income tax rate reconciliation, change in deferred tax assets valuation allowance, amount Unrecognized Tax Benefits that Would Impact Effective Tax Rate Unrecognized tax benefits that would impact effective tax rate Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense Unrecognized tax benefits, income tax penalties and interest expense Significant Change in Unrecognized Tax Benefits is Reasonably Possible, Amount of Unrecorded Benefit Significant change in unrecognized tax benefits is reasonably possible, amount of unrecorded benefit Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Income Statement Location [Axis] Income Statement Location [Domain] Cost of Sales [Member] Cost of goods sold Selling, General and Administrative [Member] Selling, general and administrative expenses Share-based Compensation Arrangement by Share-based Payment Award Equity Compensation Program and Stock-based Compensation Allocated Share-based Compensation Expense Allocated share-based compensation expense Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate Expected dividend yield Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate Expected volatility Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate Risk-free interest rate Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term Expected term Option Indexed to Issuer's Equity, Type [Axis] Option Indexed to Issuer's Equity, Type [Domain] Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number Options Outstanding at ending Options Outstanding at Beginning Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures, Total Options, granted Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period Option, Expired/Forfeited Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number Options, Exercisable at Ending Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price Weighted Average Exercise Price Options Outstanding at Ending (in dollars per share) Weighted Average Exercise Price Per Options Outstanding at Beginning (in dollars per share) Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price Weighted Average Exercise Price per Option, Granted Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Weighted Average Exercise Price per Option, Exercised Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price Weighted Average Exercise Price per Option, Expired/Forfeited Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price Weighted Average Exercise Price per Option, Exercisable at ending Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term Weighted Average Remaining Contractual Term, Options Outstanding at Ending Weighted Average Remaining Contractual Term, Options Outstanding at Beginning Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term Weighted Average Remaining Contractual Term, Exercisable at Ending Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value Aggregate Intrinsic Value, Options Outstanding at Ending (in dollars) Aggregate Intrinsic Value, Options Outstanding at Beginning (in dollars) Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value Aggregate Intrinsic Value, Options Exercisable at Ending Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares Options - Non-vested Options - Non-vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross Granted Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares Vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Number of Shares Forfeited Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value Weighted-average Grant-date Fair Value - Non-vested at ending balance (in dollars per share) Weighted-average Grant-date Fair Value - Non-vested at beginning balance (in dollars per share) Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Granted (in dollars per share) Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value Vested (in dollars per share) Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value Forfeited (in dollars per share) Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table] Exercise Price Range [Axis] Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain] Exercise Price Range One Exercise Price Range One [Member] Exercise price range one Exercise Price Range Two Exercise Price Range Two [Member] Exercise price range two Exercise Price Range Three Exercise Price Range Three [Member] Exercise price range three Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] Equity Compensation Program and Stock-based Compensation Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Lower Range Limit Exercise Price, Lower Range Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Upper Range Limit Exercise Price, Upper Range Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Outstanding Options Options Outstanding, Number Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Remaining Contractual Term Outstanding Options, Weighted Average Remaining Contractual Life in Years Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Exercise Price Outstanding Options, Weighted Average Exercise Price Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Exercisable Options Options Exercisable, Number Outstanding Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price Options Exercisable, Weighted Average Exercise Price Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Axis] Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Domain] This member stands for equity compensation 2010 program. Equity Compensation 2010 Program [Member] The number of parts of the equity compensation program. Number Of Parts Of Equity Compensation Program Number of parts of the 2010 Equity Compensation Program Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant Aggregate shares of common stock Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized Employee service share-based compensation, unrecognized compensation costs, net of estimated forfeitures Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition Employee service share-based compensation, expected to be recognized over a weighted average period (in years) The weighted average fair value at grant date for options issued during the period. Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Options Grants In Period Weighted Average Grant Date Fair Value Weighted average estimated fair value of stock options granted Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value Total weighted average grant date fair value of options Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Convertible Notes Payable [Member] Convertible Notes Payable Antidilutive Securities [Axis] Antidilutive Securities, Name [Domain] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Net (Loss) Income per Share Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Shares excluded from computation of net income per share because their effect is anti-dilutive Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements Shares included in computation of net income per share because their effect is dilutive Lessee, Operating Lease, Liability, Payments, Due Year Two 2024 Lessee, Operating Lease, Liability, Payments, Due Year Three 2025 Lessee, Operating Lease, Liability, Payments, Due Total undiscounted operating and capital lease payments Lessee, Operating Lease, Liability, Undiscounted Excess Amount Less: imputed interest Operating Lease, Liability Present value of lease liabilities Lease, Cost Operating Lease, Weighted Average Remaining Lease Term Operating lease Remaining lease term (in months) - operating lease Operating Lease, Weighted Average Discount Rate, Percent Discount rate for operating lease Other Commitments [Table] Other Commitments Operating Lease, Expense Rent expense Operating Lease, Payments Operating lease payments Real Estate Taxes and Insurance Real estate taxes and insurance premiums Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent Maximum annual contributions per employee, percent Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount Maximum annual contributions per employee, amount It represents employee contributions of shares during the period. Defined Contribution Plan Employer Matching Contribution In Shares Defined contribution employer matching contribution (in Shares) It represents employee contributions of cash during the period. Defined Contribution Plan Employer Matching Contribution In Cash Employer matching contribution in cash Customers In Canada, the Czeck Republic, Germany, Israel, and Singapore. Customers In Canada, the Czeck Republic, Germany, Israel, and Singapore [Member] Customers in Canada, the Czeck Republic, Germany, Israel, and Singapore Major Customers Three Major Customers Three [Member] Major customers three Represents the member information pertaining to Top Five Customers. Top Five Customers [Member] Top five customers Major Customers One Major Customers One [Member] Major customers one Major Customers Two Major Customers Two [Member] Major customers two Equity Compensation Plan 2010 2020 Equity compensation plan 2010 Equity compensation plan Warrants Issuable On Conversion Of Subordinated Convertible Notes Warrants Issuable On Conversion Of Subordinated Convertible Notes [Member] Warrants issuable on conversion of Subordinated convertible notes Common Stock, Capital Shares Reserved for Future Issuance Common shares reserved for future issuances Warrants and Rights Outstanding Outstanding warrants Long-term Debt, Fair Value Fair value of long-term debt Long-term Debt, Gross Carrying amount EX-101.PRE 11 inrd-20231231_pre.xml EX-101.PRE XML 13 R1.htm IDEA: XBRL DOCUMENT v3.24.1
Document and Entity Information - USD ($)
12 Months Ended
Dec. 31, 2023
Mar. 28, 2024
Jun. 30, 2023
Document and Entity Information      
Document Type 10-K    
Document Annual Report true    
Document Period End Date Dec. 31, 2023    
Current Fiscal Year End Date --12-31    
Document Transition Report false    
Entity File Number 0-11668    
Entity Registrant Name Inrad Optics, Inc.    
Entity Incorporation, State or Country Code NJ    
Entity Tax Identification Number 22-2003247    
Entity Address, Address Line One 181 Legrand Avenue    
Entity Address, City or Town Northvale    
Entity Address, State or Province NJ    
Entity Address, Postal Zip Code 07647    
City Area Code 201    
Local Phone Number 767-1910    
Title of 12(g) Security Common stock, par value $.01 Per Share    
Entity Well-known Seasoned Issuer No    
Entity Voluntary Filers No    
No Trading Symbol Flag true    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Non-accelerated Filer    
Entity Small Business true    
Entity Emerging Growth Company false    
ICFR Auditor Attestation Flag false    
Document Financial Statement Error Correction [Flag] false    
Entity Shell Company false    
Entity Public Float     $ 5,762,963
Entity Common Stock, Shares Outstanding   14,250,975  
Document Fiscal Year Focus 2023    
Document Fiscal Period Focus FY    
Entity Central Index Key 0000719494    
Amendment Flag false    
Auditor Name PKF O’Connor Davies, LLP    
Auditor Location New York    
Auditor Firm ID 127    
XML 14 R2.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED BALANCE SHEETS - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 2,973,384 $ 2,003,485
Accounts receivable, net of allowance for credit losses of $46,000 in 2023 and 2022) 1,591,996 1,389,867
Inventories, net 3,148,708 2,825,987
Other current assets 665,262 309,287
Total current assets 8,379,350 6,528,626
Plant and equipment:    
Plant and equipment, at cost 16,330,559 15,967,537
Less: Accumulated depreciation and amortization (15,034,667) (14,723,869)
Total plant and equipment 1,295,892 1,243,668
Precious metals 561,909 561,909
Lease right-of-use, net 443,532 737,743
Deferred tax asset 1,000,000  
Other assets 26,993 26,993
Total Assets 11,707,676 9,098,939
Current liabilities:    
Current portion of other long term notes 71,362 67,513
Accounts payable and accrued liabilities 832,149 741,281
Contract liabilities 1,067,183 1,065,173
Current portion of lease obligation 309,618 295,978
Total current liabilities 2,280,312 2,169,945
Related party convertible notes payable $ 2,500,000 $ 2,500,000
Notes Payable, Noncurrent, Related Party, Type [Extensible Enumeration] us-gaap:RelatedPartyMember us-gaap:RelatedPartyMember
Other long term notes, net of current portion $ 245,379 $ 316,740
Lease obligation, net of current portion 133,915 444,462
Total liabilities 5,159,606 5,431,147
Shareholders' equity:    
Common stock: $.01 par value; 60,000,000 authorized shares; 14,235,575 shares issued at December 31, 2023, and 14,092,920 shares issued at December 31, 2022 142,357 140,931
Capital in excess of par value 20,135,722 19,925,292
Accumulated deficit (13,715,059) (16,383,481)
Stockholders' equity before treasury stock 6,563,020 3,682,742
Less - Common stock in treasury, at cost (4,600 shares) (14,950) (14,950)
Total shareholders' equity 6,548,070 3,667,792
Total Liabilities and shareholders' equity $ 11,707,676 $ 9,098,939
XML 15 R3.htm IDEA: XBRL DOCUMENT v3.24.1
CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
CONSOLIDATED BALANCE SHEETS    
Allowance for credit losses $ 46,000 $ 46,000
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, shares authorized 60,000,000 60,000,000
Common stock, shares issued 14,235,575 14,092,920
Treasury stock, shares 4,600 4,600
XML 16 R4.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
CONSOLIDATED STATEMENTS OF OPERATIONS    
Total revenue $ 12,909,657 $ 10,631,032
Cost and expenses:    
Cost of goods sold 7,984,129 7,529,893
Selling, general and administrative expenses 3,111,773 2,782,082
Cost and expenses, Total 11,095,902 10,311,975
Income from operations 1,813,756 319,057
Other expense:    
Interest expense-net (145,333) (166,482)
Nonoperating Income (Expense) (145,333) (166,482)
Income before income taxes 1,668,422 152,575
Income tax (provision) benefit 1,000,000 0
Net income $ 2,668,422 $ 152,575
Net income per common share - basic $ 0.19 $ 0.01
Net income per common share - diluted $ 0.16 $ 0.01
Weighted average shares outstanding - basic 14,196,490 14,018,227
Weighted average shares outstanding - diluted 17,231,568 14,724,895
XML 17 R5.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY - USD ($)
Common stock
Capital in excess of par value
Accumulated Deficit
Treasury Stock
Total
Beginning balance at Dec. 31, 2021 $ 139,674 $ 19,733,996 $ (16,536,056) $ (14,950) $ 3,322,664
Beginning balance (in shares) at Dec. 31, 2021 13,967,257        
401K contribution $ 597 50,158     50,755
401K contribution (in shares) 59,663        
Stock-based compensation expense   116,478     116,478
Common stock options exercised $ 660 24,660     25,320
Common stock options exercised (in shares) 66,000        
Net Income (Loss)     152,575   152,575
Ending balance at Dec. 31, 2022 $ 140,931 19,925,292 (16,383,481) (14,950) 3,667,792
Ending balance (in shares) at Dec. 31, 2022 14,092,920        
401K contribution $ 333 54,388     54,721
401K contribution (in shares) 33,322        
Stock-based compensation expense   117,249     117,249
Common stock options exercised $ 1,093 38,793     39,886
Common stock options exercised (in shares) 109,333        
Net Income (Loss)     2,668,422   2,668,422
Ending balance at Dec. 31, 2023 $ 142,357 $ 20,135,722 $ (13,715,059) $ (14,950) $ 6,548,070
Ending balance (in shares) at Dec. 31, 2023 14,235,575        
XML 18 R6.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cash flows from operating activities:    
Net income $ 2,668,422 $ 152,575
Adjustments to reconcile net income to net cash provided by (used in) operating activities    
Depreciation and amortization 310,798 249,265
401(k) common stock contribution - non cash item 54,721 50,755
Stock based compensation 117,249 116,478
Income tax benefit (1,000,000) 0
Change in inventory reserve (246,888) (99,662)
Changes in operating assets and liabilities:    
Accounts receivable (202,129) (102,214)
Inventories (75,833) (201,454)
Other current and non-current assets (61,765) (661,190)
Change in lease obligations (296,906) 596,212
Accounts payable and accrued liabilities 90,867 186,677
Contract liabilities 2,010 488,699
Total adjustments and changes (1,307,876) 623,566
Net cash provided by operating activities 1,360,546 776,141
Cash flows from investing activities:    
Capital expenditures (363,022) (539,116)
Net cash (used in) investing activities (363,022) (539,116)
Cash flows from financing activities:    
Proceeds from issuance of common stock 39,886 25,320
Principal payments on notes payable-other (67,512) (60,048)
Net cash (used in) financing activities (27,626) (34,728)
Net increase in cash and cash equivalents 969,898 202,297
Cash and cash equivalents at beginning of year 2,003,485 1,801,188
Cash and cash equivalents at end of year 2,973,383 2,003,485
Supplemental disclosure of cash flow information:    
Interest paid 168,397 $ 161,948
Significant non-cash activities:    
Lease right-of-use asset 879,300  
Supplemental disclosure of non-cash investing and financing activities    
Acquisition of equipment by issuing a note payable $ 270,320  
XML 19 R7.htm IDEA: XBRL DOCUMENT v3.24.1
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates
12 Months Ended
Dec. 31, 2023
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates  
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates

1.            Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates

a.            Nature of Business and Operations

Inrad Optics, Inc. and Subsidiaries (the “Company”) was incorporated in the state of New Jersey and is a manufacturer of products and services for use in the photonics industry enabling key applications for the semiconductor metrology, life sciences, and aerospace and defense industries. The company’s products include custom glass, single crystal, metal optical components and assemblies, and x-ray imaging crystals and assemblies. Company’s principal customers include commercial instrumentation companies and OEM laser systems manufacturers, research laboratories, government agencies, and defense contractors. The Company’s administrative offices and manufacturing operations are in Northvale, New Jersey.

b.            Principles of consolidation

The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiaries. Upon consolidation, all inter-company accounts and transactions are eliminated.

c.            Use of estimates

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make certain estimates and assumptions. These estimates and assumptions affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates include, but are not limited to, determining our allowance for doubtful accounts, our allowance for inventory obsolescence, the fair value and depreciable lives of long-lived tangible and intangible assets, and deferred taxes and any associated valuation allowance. Actual results could differ from these estimates.

d.            Cash and cash equivalents

The Company considers cash-on-hand and highly liquid investments with original maturity dates of three months or less at the date of purchase to be cash and cash equivalents.

e.            Accounts receivable

Beginning in 2023, the Company adopted Accounting Standards Update (ASU) No. 2016-13, Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. ASU 2016-13 requires entities to use a forward-looking approach based on expected losses to estimate credit losses on certain types of financial instruments, including trade receivables.

The Company extends credit to its customers that satisfy pre-defined credit criteria. Accounts receivable are recorded net of an allowance for credit losses. The Company estimates the allowance for credit losses based on an analysis of the aging of accounts receivable, assessment of collectability, including any known or anticipated bankruptcies, customer-specific circumstances, and an evaluation of current economic conditions. Actual write-off of receivables may differ from estimates due to changes in customer and economic circumstances. During 2023 there was no change in allowances related to customer receivables and in 2022 a net reduction of $46,000 in allowances related to customer receivables was recorded due to a change in customers’ financial condition, actual and anticipated bankruptcies and other associated claims.

f.            Inventories

Inventories are stated at the lower of cost (first-in, first-out method) or net-realizable value. Cost of manufactured goods includes material, labor and overhead.

The Company records a reserve for slow moving inventory as a charge against earnings for all products identified as surplus, slow moving, or discontinued. Excess work-in-process costs are charged against earnings whenever estimated costs-of-completion exceed unbilled revenues.

g.            Plant and Equipment

Plant and equipment are depreciated using the straight-line method over the estimated useful lives of the related assets which range between five and seven years. Amortization of leasehold improvements is computed using the straight-line method over the lesser of 10 years or the remaining term of the lease including optional renewal periods, as appropriate, when failure to renew the lease imposes an economic penalty on the Company in such an amount that renewal appears to be probable. In determining the amount of the economic penalty, management considers such factors as (i) the costs associated with the physical relocation of the offices, manufacturing facility and equipment, (ii) the economic risks associated with business interruption and potential customer loss during relocation and transition to new premises, (iii) the significant costs of leasehold improvements required at any new location to custom fit our specific manufacturing requirements, and (iv) the economic loss associated with abandonment of existing leasehold improvements or other assets whose value would be impaired by vacating the facility.

Maintenance and repairs of property and equipment are charged to operations and major improvements are capitalized. Upon retirement, sale or other disposition of property and equipment, the cost and accumulated depreciation are eliminated from the accounts and a gain or loss is recorded.

h.            Income taxes

Deferred taxes are provided on the asset and liability method whereby deferred tax assets are recognized for deductible temporary differences and operating loss and tax credit carry forwards and deferred tax liabilities are recognized for taxable temporary differences. Temporary differences are the differences between the amounts of assets and liabilities recorded for income tax and financial reporting purposes. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion of the deferred tax assets will not be realized. Deferred tax assets and liabilities are adjusted for the effects of changes in tax laws and rates on the date of enactment.

The Company recognizes the financial statement benefit of an uncertain tax position only after determining that the relevant tax authority would more likely than not sustain the position. For tax positions meeting the more likely than not threshold, the amount recognized in the financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.

The Company classifies interest and penalties related to income taxes as income tax expense in its Consolidated Financial Statements.

The Company had no unrecognized tax benefits or liabilities, and no adjustment to its financial position, results of operations, or cash flows relating to uncertain tax positions taken on all open tax years. The Company is no longer subject to federal income tax examinations by tax authorities for the years before 2020 and state or local income tax examinations by tax authorities for the years before 2020.

i.            Impairment of long-lived assets

Long-lived assets, such as plant and equipment and purchased intangibles with finite lives, which are subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated future cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the assets. Long-lived assets held for sale would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated.

j.            Stock-based compensation

Stock based compensation expense is estimated at the grant date based on the fair value of the award. The Company estimates the fair value of stock options granted using the Black-Scholes option pricing model. The fair value of restricted stock units granted is estimated based on the closing market price of the Company’s common stock on the date of the grant. The fair value of these awards, adjusted for estimated forfeitures, is amortized over the requisite service period of the award, which is generally the vesting period.

k.            Revenue recognition

The Company’s revenues are comprised of product sales as well as products and services provided under long-term government contracts with its customers. All revenue is recognized when the Company satisfies its performance obligation(s) under the contract (either implicit or explicit) by transferring the promised product or service to its customer either when (or as) its customer obtains control of the product or service. A performance obligation is a promise in a contract to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. The majority of the Company’s contracts have a single performance obligation, as the promise to transfer products or services is not separately identifiable from other promises in the contract and, therefore, not distinct. For contracts with multiple performance obligations, the Company allocates the contract’s transaction price to each performance obligation using the Company’s best estimate of standalone selling price for each distinct product or service in the contract, which is generally based on an observable price.

Revenue is measured as the amount of consideration the Company expects to receive in exchange for transferring products or providing services. As such, revenue is recorded net of returns, allowances, customer discounts, and incentives. Sales, value added, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are included in cost of goods sold.

l.            Internal research and development costs

Internal research and development costs are charged to expense as incurred.

m.          Precious metals

Precious metals, particularly platinum crucibles, are used in industrial applications for melting and fusing materials at high temperatures, especially in industries such as metallurgy, ceramics, glass and crystal manufacturing. The Company maintains certain platinum crucibles as a production tool. The Company’s precious metals are stated at cost. From time to time the quoted market values of these precious metals may be below cost. Management evaluates these market adjustments on a recurring basis and if it is determined that they are other than temporary the carrying value will be adjusted.

n.            Advertising costs

Advertising costs included in selling, general and administrative expenses were $16,000 and $25,000 for the years ended December 31, 2023 and 2022, respectively. Advertising costs are charged to expense when the related services are incurred or related events take place.

p.            Concentrations and credit risk

The concentration of credit risk in the Company’s accounts receivable is mitigated by the Company’s credit evaluation process, familiarity with its small base of recurring customers and reasonably short collection terms and the geographical dispersion of revenue. The Company generally does not require collateral but, in some cases, the Company negotiates cash advances prior to the undertaking of the work. These cash advances are recorded as current liabilities on the balance sheet until corresponding revenues are realized.

The Company is subject to credit risk for cash accounts in a financial institution, which at times may exceed the Federal Deposit Insurance Corporation coverage limit of $250,000. In May 2023, the Company entered into an Insured Cash Sweep (“ICS”) agreement with Valley National Bank, where funds are placed at destination institutions through the service of the Promontory Interfinancial Network, LLC. Such funds placed into the deposit account will not exceed the Federal Deposit Insurance Corporation (“FDIC”) standard maximum deposit insurance amount, currently $250,000, at any one destination institution thereby eliminating credit risk on cash balances over $250,000.

The Company utilizes many relatively uncommon materials and compounds to manufacture its products and relies on outside vendors for certain manufacturing services. Therefore, any failure by its suppliers to deliver materials of an adequate quality and quantity could have an adverse effect on the Company’s ability to meet the commitments of its customers.

For the year ended December 31, 2023, the Company had three customers who had sales representing 27.5%, 14.8% and 12.1% of total revenues. For the year ended December 31, 2022, the Company had three customers who had sales representing 19.7%, 15.3% and 15.1% of total revenues. Since the Company is a supplier of custom manufactured components to OEM customers, the relative size and identity of the largest customer accounts changes somewhat from year to year. In the short term, the loss of any one of these large customer accounts could have a material adverse effect on business, results of operations, and financial condition.

q.            Fair value measurements

The Company follows U.S. GAAP accounting guidance which establishes a framework for measuring fair value and expanded related disclosures. The framework requires fair value to be determined based on the exchange price that would be received for an asset or paid to transfer a liability (an exit price), in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants.

The valuation techniques required are based upon observable and unobservable inputs. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company’s market assumptions. The accounting guidance requires the following fair value hierarchy:

      Level 1 - Quoted prices (unadjusted) for identical assets and liabilities in active markets that the Company has the ability to access at the measurement date.

      Level 2 - Quoted prices for similar assets and liabilities in active markets; quoted prices for identical or similar assets and liabilities in markets that are not active; and inputs other than quoted prices that are observable for the asset or liability, including interest rates, yield curves and credit risks, or inputs that are derived principally from or corroborated by observable market data through correlation.

      Level 3 - Values determined by models, significant inputs to which are unobservable and are primarily based on internally derived assumptions regarding the timing and amount of expected cash flows.

Long-lived assets may be measured at fair value if such assets are held for sale or if there is a determination that the asset is impaired. Management’s determination of fair value, although highly subjective, is based on the best information available, including internal projections of future earnings and cash flows discounted at an appropriate interest rate, quoted market prices when available, market prices for similar assets, broker quotes and independent appraisals, as appropriate.

r.            Recent Accounting Pronouncements

In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses: Measurement of Credit Losses on Financial Instruments" (“ASU 2016-13”) which amended guidance on the accounting for credit losses on financial instruments within its scope. The guidance introduces an expected loss model for estimating credit losses, replacing the incurred loss model. The new guidance also changes the impairment model for available-for-sale debt securities, requiring the use of an allowance to record estimated credit losses (and subsequent recoveries). The new guidance is effective for interim and annual periods beginning in 2023, with earlier application permitted. The adoption of this guidance did not have a material impact on the Company’s consolidated financial statements.

In August 2020, the FASB issued ASU 2020-06, Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity. This ASU update is intended to simplify the complexity associated with applying generally accepted accounting principles (GAAP) for certain financial instruments with characteristics of liabilities and equity. This guidance is effective for the Company for fiscal years beginning after December 15, 2023, including interim periods within those fiscal years. The Company does not expect the adoption of this guidance will have a material impact on the Company’s consolidated financial statements.

s.            Subsequent events

Management has performed an evaluation of subsequent events through the date that the financial statements were issued and has determined that it does not have any additional material subsequent events to disclose in these financial statements.

XML 20 R8.htm IDEA: XBRL DOCUMENT v3.24.1
Revenue
12 Months Ended
Dec. 31, 2023
Revenue  
Revenue

2.            Revenue

Years Ended December 31, 

    

2023

    

2022

Market (In thousands)

Net Sales

%

Net Sales

%

Aerospace & Defense

$

2,540

19.7

$

3,008

28.3

Process Control & Metrology

9,325

72.1

 

6,981

65.7

Laser Systems

53

0.4

 

188

1.8

Scientific / R&D

992

7.7

 

454

4.3

Total

$

12,910

100.0

$

10,631

100.0

The majority of the Company’s revenue is from products and services transferred to customers at a point in time and were 100% of revenue for 2023 and 2022, respectively. The Company recognizes revenue at the point in time in which the customer obtains control of the product or service, which is generally when product title passes to the customer upon shipment. In limited cases, title does not transfer, and revenue is not recognized until the customer has received the products at its physical location.

XML 21 R9.htm IDEA: XBRL DOCUMENT v3.24.1
Inventories, net
12 Months Ended
Dec. 31, 2023
Inventories, net  
Inventories, net

3.            Inventories, net

Inventories are comprised of the following and are shown net of inventory reserves of approximately $2.1 million and $2.4 million at December 31, 2023 and 2022, respectively:

December 31, 

    

2023

    

2022

 

(in thousands)

Raw materials

$

718

$

1,065

Work in process, including manufactured parts and components

 

1,915

 

1,282

Finished goods

 

516

 

479

$

3,149

$

2,826

XML 22 R10.htm IDEA: XBRL DOCUMENT v3.24.1
Plant and Equipment
12 Months Ended
Dec. 31, 2023
Plant and Equipment  
Plant and Equipment

4.            Plant and Equipment

Plant and equipment are comprised of the following:

December 31, 

    

2023

    

2022

 

(In thousands)

Office and computer equipment

$

1,487

$

1,487

Machinery and equipment

 

12,458

 

12,126

Leasehold improvements

 

2,386

 

2,354

 

16,331

 

15,967

Less accumulated depreciation and amortization

 

(15,035)

 

(14,724)

$

1,296

$

1,244

Depreciation and amortization expense recorded by the Company totaled approximately $311,000 and $249,000 and for 2023 and 2022, respectively. There were no fully depreciated assets written off in 2023. Fully depreciated assets of $235,000 were written off in 2022.

The Company evaluates its property and equipment for impairment when events or circumstances indicate an impairment may exist. Based on this evaluation, the Company concluded that, at December 31, 2023 and 2022, its long-lived assets were not impaired.

XML 23 R11.htm IDEA: XBRL DOCUMENT v3.24.1
Related Party Transactions
12 Months Ended
Dec. 31, 2023
Related Party Transactions  
Related Party Transactions

5.            Related Party Transactions

On October 12, 2023, the maturity dates of a $1,500,000 Subordinated Convertible Promissory Note to Clarex Limited (“Clarex”) and a $1,000,000 Subordinated Convertible Promissory Note to an affiliate of Clarex were each extended to January 15, 2025, from August 15, 2024. The notes bear interest at 6%. Interest accrues yearly and is payable on maturity. Unpaid interest, along with principal, may be converted into securities of the Company as follows: the notes are convertible in the aggregate into 1,500,000 units and 1,000,000 units, respectively, with each unit consisting of one share of common stock and one warrant. Each warrant allows the holder to acquire 0.75 shares of common stock at a price of $1.35 per share. The warrants expire on August 15, 2027.

The Company paid $0.2 million for interest on the subordinated convertible promissory notes for each of the years 2023 and 2022, respectively. Accrued interest of $37,500 is included in Accounts payable and accrued liabilities as of December 31, 2023 and 2022, respectively.

XML 24 R12.htm IDEA: XBRL DOCUMENT v3.24.1
Other Long-Term Notes
12 Months Ended
Dec. 31, 2023
Other Long-Term Notes  
Other Long-Term Notes

6.            Other Long-Term Notes

Other Long-Term Notes consist of the following:

December 31, 

    

2023

    

2022

(in thousands)

U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029.

$

140

$

160

Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 (1)

 

176

 

225

Less current portion

 

(71)

 

(68)

Long-term debt, excluding current portion

$

245

$

317

(1)The Company purchased certain equipment in the 12 months ended December 31, 2022, financing approximately $282,000 at a fixed annual interest rate of 6.1% for five years payable in equal monthly installments.

Other Long-Term Notes mature as follows:

Year ending December 31:

(In thousands)

2024

 

$

71

2025

 

75

2026

 

80

2027

25

2028

 

21

Thereafter

 

44

$

317

XML 25 R13.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts Payable and Accrued Liabilities
12 Months Ended
Dec. 31, 2023
Accounts Payable and Accrued Liabilities  
Accounts Payable and Accrued Liabilities

7.            Accounts Payable and Accrued Liabilities

Accounts payable and accrued expenses are comprised of the following:

December 31, 

    

2023

    

2022

Trade accounts payable and accrued purchases

$

412

$

446

Accrued payroll

 

9

 

25

Accrued 401K company matching contribution

 

141

 

137

Accrued expenses – other

 

270

 

133

$

832

$

741

XML 26 R14.htm IDEA: XBRL DOCUMENT v3.24.1
Income Taxes
12 Months Ended
Dec. 31, 2023
Income Taxes  
Income Taxes

8.            Income Taxes

The Company did not record a current provision for either state tax or federal tax due to loss carry forwards incurred for both income tax and financial reporting purposes.

A reconciliation of the income tax provision computed at the statutory federal income tax rate to our effective income tax rate follows (in percent):

Years Ended

 

December 31, 

 

    

2023

    

2022

 

Federal statutory rate

 

21

%  

21

%

Reduction in state rate due to tax rate change

 

9

 

9

Change in valuation allowance

 

(87)

 

(106)

Permanent differences

 

(1)

 

33

Return to provision adjustment

(2)

43

Effective income tax rate

 

(60)

%  

%

At December 31, 2023 and 2022, the Company had estimated Federal net operating loss carry forwards of approximately $6.0 million and $7.8 million, respectively, and state net operating loss carry forwards of approximately $3.0 million and $5.0 million, respectively. Approximately $4.0 million net operating loss carryforwards expire during various years through 2037, and approximately $2.0 million may be carried forward indefinitely, subject to the 80% of taxable income limitation rule.

Internal Revenue Code Section 382 places a limitation on the utilization of Federal net operating loss and other credit carry forwards when an ownership change, as defined by the tax law, occurs. Generally, this occurs when a greater than 50 percentage point change in ownership occurs. Accordingly, the actual utilization of the net operating loss and carryforwards for tax purposes may be limited annually to a percentage (based on the risk-free interest rate) of the fair market value of the Company at the time of any such ownership change. The Company has not prepared an analysis of ownership changes but does not believe that a greater than 50% change of ownership has occurred and such limitations would not apply to the Company.

Deferred tax assets (liabilities) are comprised of the following:

    

December 31, 

2023

    

2022

Account receivable reserves

$

13

$

13

Inventory reserves

 

597

 

667

Inventory capitalization

 

68

 

92

Depreciation

 

 

Loss carry forwards

 

1,458

 

2,562

Gross deferred tax assets

 

2,136

 

3,334

Deferred tax liability- depreciation

(110)

(110)

Valuation allowance

 

(1,026)

 

(3,224)

Net deferred tax asset

$

1,000

$

In evaluating the Company’s ability to recover deferred tax assets in future periods, management considers the available positive and negative factors. The Company periodically evaluates the realizability of its net deferred tax assets based on all available evidence, both positive and negative, including the Company’s recent operating results, the existence of cumulative income or losses and near-term forecasts of future taxable income that is consistent with the plans and estimates management is using to manage the underlying business. During 2023, the Company reached a cumulative income position over the previous three years. The cumulative three-year income is considered objective, verifiable and positive evidence and thus received significant weighting. Additional positive evidence considered by the Company in its assessment included recent utilization of tax attribute carryforwards and future forecasts of continued profitability. The realizability of the Company’s net deferred tax assets is dependent on its ability to generate sufficient future taxable income during periods prior to the expiration of tax attributes to fully utilize these assets. Therefore, during the fourth quarter of 2023, based on all available positive and negative evidence, the Company determined that it was appropriate to release a portion of the

valuation allowance on the Company’s U.S. federal and other state deferred tax assets.The Company recognized a $1.0 million discrete tax benefit during year ended December 31, 2023, as a result of the valuation allowance release.

The Company files income tax returns in the United States, which typically provides for a three-year statute of limitations on assessments. The Company is no longer subject to federal, state, or local income tax examinations by tax authorities for the years before 2020.

The guidance for accounting for uncertainties in income taxes requires that we recognize the financial statement effects of a tax position when it is more likely than not, based on the technical merits, that the position will be sustained upon examination. There were no unrecognized tax benefits that impacted our effective tax rate and accordingly, there was no material effect to our financial position, results of operations or cash flows.

Our policy is to recognize interest and penalties related to the underpayment of income taxes as a component of income tax expense. To date, there have been no interest or penalties charged to us in relation to the underpayment of income taxes.

We do not anticipate that our unrecognized tax benefits will significantly increase in the next 12 months.

XML 27 R15.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation
12 Months Ended
Dec. 31, 2023
Equity Compensation Program and Stock-based Compensation  
Equity Compensation Program and Stock-based Compensation

9.          Equity Compensation Program and Stock-based Compensation

a.            2020 Equity Compensation Program

On February 12, 2020, the Inrad Optics Board of Directors adopted the Inrad Optics, Inc. 2020 Equity Compensation Program (the “2020 Program”) and received shareholder approval on June 23, 2020. The 2020 Program provides for grants of options, stock appreciation rights and restricted stock awards to employees, officers, directors, and others who render services to the Company. The 2020 Program is comprised of four parts including: (i) the Incentive Stock Option Plan which provides for grants of “incentive stock options,” (ii) the Supplemental Stock Option Plan which provides for grants of stock options that shall not be “incentive stock options,” (iii) the Stock Appreciation Rights Plan which allows the granting of stock appreciation rights and, (iv) the Restricted Stock Award Plan which provides for the granting of restrictive shares of Common Stock and restricted stock units. The 2020 Program is administered by the Compensation Committee of the Board of Directors. Under the 2020 Program, an aggregate of up to 4,000,000 shares of common stock may be granted.

b.            2010 Equity Compensation Program

The Company’s 2010 Equity Compensation Program (the “2010 Program”) provided for grants of options, stock appreciation rights and restricted stock awards to employees, officers, directors, and others who render services to the Company.  The 2010 Program expired on March 23, 2020. All outstanding grants of options, stock appreciation rights and performance shares issued under the 2010 Program will remain outstanding and shall expire on the date determined by the terms of the original grant.  The latest date of expiration for outstanding grants under the 2010 Program is March 23, 2030.

c.            Stock Option Expense

The Company’s results include stock-based compensation expense for stock option grants totaling $117,000 and $116,000 for the years ended December 31, 2023 and 2022, respectively. Such amounts have been included in the Consolidated Statements of Operations within cost of goods sold ($13,000 for each of the years 2023 and 2022, respectively), and selling, general and administrative expenses ($104,000 and $103,000 for 2023 and 2022, respectively).

As of December 31, 2023 and 2022, there were $122,000 and $222,000 of unrecognized compensation costs, net of estimated forfeitures, related to non-vested stock options, which are expected to be recognized over a weighted average period of approximately 1.30 and 1.54 years, respectively.

The weighted average estimated fair value of stock options granted in the two years ended December 31, 2023 and 2022, was $1.72 and $1.20, respectively. The Company uses the Black-Scholes option pricing model to calculate the grant-date fair value of an option award. The Company assumes a dividend yield of zero, as the Company has not paid dividends in the past and does not expect to in the foreseeable future. The expected volatility is based upon the historical volatility of our common stock which the Company believes results in the best estimate of the grant-date fair value of employee stock options because it reflects the market’s current

expectations of future volatility. The risk-free rate is based on the U.S. Treasury yield curve in effect at the time of the grant with maturity dates approximately equal to the expected life at the grant date. The expected life is based upon the period of expected benefit based on the Company’s evaluation of historical and expected future employee exercise behavior.

The following range of weighted-average assumptions were used for to determine the fair value of stock option grants during the years ended December 31, 2023 and 2022:

Years Ended

 

December 31, 

 

    

2023

    

2022

 

Expected dividend yield

 

%  

%

Expected volatility

 

92.00

%  

104.62

%

Risk-free interest rate

 

0.86

%  

1.54

%

Expected term

 

10 years

 

10 years

d.            Stock Option Activity

A summary of the Company’s outstanding stock options as of and for the years ended December 31, 2023 and 2022, is presented below:

Weighted

Weighted

Average

Average

Exercise

Remaining

Aggregate

Number of

Price per

Contractual

Intrinsic

Stock Options

    

Options

    

Option

    

Term (years)

    

Value(a)

Outstanding January 1, 2022

 

1,152,667

$

0.60

 

7.4

$

662,465

Granted

 

200,000

1.20

 

Exercised

 

(66,000)

0.38

 

Expired/Forfeited

 

 

Outstanding December 31, 2022 (b)

 

1,286,667

$

0.71

 

7.52

$

1,214,875

Granted

 

20,000

1.72

 

Exercised

 

(109,333)

0.36

 

Expired/Forfeited

 

(84,667)

0.74

 

Outstanding December 31, 2023 (b)

 

1,112,667

$

0.75

 

6.88

$

1,214,875

Exercisable at December 31, 2023

 

905,992

$

0.68

 

6.13

$

1,085,699

(a)   Intrinsic value for purposes of this table represents the amount by which the fair value of the underlying stock, based on the respective market prices as of December 31, 2023, exceeds the exercise prices of the respective options.

(b)   Based on the Company’s historical forfeiture rate, the number of options expected to vest is the same as the total outstanding at December 31, 2023.

The following table represents non-vested stock options granted, vested, and forfeited for the year ended December 31, 2023 and 2022:

Weighted-average 

Grant-date Fair Value

    

Options

    

  ($)

Non-Vested - January 1, 2022

276,670

 

0.66

Granted

 

200,000

 

1.09

Vested

 

(135,836)

 

0.70

Forfeited

 

 

Non-Vested - January 1, 2023

340,835

0.89

Granted

20,000

1.72

Vested

(109,333)

0.36

Forfeited

(84,667)

0.74

Non-Vested – December 31, 2023

 

166,835

 

0.98

The total weighted average grant date fair value of options vested during the years ended December 31, 2023 and 2022, was $30,000 and $218,000, respectively.

The following table summarizes information about stock options outstanding at December 31, 2023:

Options Outstanding

Options Exercisable

Weighted

Average

Weighted

Weighted

Remaining

Average

Average

Range of

Number

Contractual

Exercise

Number

Exercise

Exercise Price

    

Outstanding

    

Life in Years

    

Price

    

Outstanding

    

Price

$0.18 - $0.35

247,667

2.65

$

0.29

247,667

$

0.29

$0.50 - $1.00

 

617,500

6.09

$

0.72

557,497

$

0.73

$1.20 - $1.80

 

247,500

8.87

$

1.55

100,830

$

1.35

XML 28 R16.htm IDEA: XBRL DOCUMENT v3.24.1
Net (Loss) Income per Share
12 Months Ended
Dec. 31, 2023
Net (Loss) Income per Share  
Net (Loss) Income per Share

10.          Net (Loss) Income per Share

Basic income (loss) per common share is computed by dividing net income (loss) by the weighted average number of common shares outstanding. Diluted income (loss) per common share is computed by dividing net income (loss) by the weighted average number of common shares and common stock equivalents outstanding, calculated on the treasury stock method for options, stock grants and warrants using the average market prices during the period, including potential common shares issuable upon conversion of outstanding convertible notes, except if the effect on the per share amounts is anti-dilutive.

For the year ended December 31, 2023, a total of 2,500,000 common shares issuable upon conversion of outstanding convertible notes have been included in the diluted computation of net income per share. 1,875,000 common shares underlying warrants issuable upon conversion of outstanding related party convertible notes have been excluded from the diluted computation of net income per share because their effect is anti-dilutive. A total of 535,078 common stock equivalents related to outstanding options have been included in the computation of diluted earnings per share because their effect is dilutive.

For the year ended December 31, 2022, a total of 2,500,000 common shares issuable upon conversion of outstanding convertible notes have been included in the diluted calculation. 1,875,000 common shares underlying warrants issuable upon conversion of outstanding related party convertible notes have been excluded from the diluted computation of net income per share because their effect is anti-dilutive. A total of 706,678 common stock equivalents related to outstanding options have been included in the computation of diluted earnings per share because their effect is dilutive. 30,000 common stock equivalents related to outstanding stock options have been included the computation of diluted earnings per share.

XML 29 R17.htm IDEA: XBRL DOCUMENT v3.24.1
Commitments and Contingencies
12 Months Ended
Dec. 31, 2023
Commitments and Contingencies  
Commitments and Contingencies

11.          Commitments and Contingencies

a.            Lease commitments

Lease expense is recognized on a straight-line basis over the lease term and is included in cost of sales and general and administrative expenses on the consolidated statement of operations.

An initial right-of-use asset of approximately $0.9 million was recognized as a non-cash asset addition with the signing of the July 25, 2022, lease amendment. Cash paid for amounts included in the present value of the operating lease liability was $0.2 million during each of the years ended December 31, 2023 and 2022, and is included in operating cash flows.

The following table presents information about the amount and timing of cash flows arising from the Company’s operating and capital leases as of December 31, 2023:

Maturity of Lease Liability

    

(in thousands)

 

2024

325

2025

135

Total undiscounted operating and capital lease payments

 

460

Less: imputed interest

 

(17)

Present value of lease liabilities

$

443

Other Information

 

Remaining lease term (in months) - operating lease

 

17

Discount rate for operating lease

 

5.80

%

The Company’s total rent expense for the years ended December 31, 2023 and 2022, was $0.3 million in each year.

The Company also paid real estate taxes and insurance premiums under the terms of the lease that totaled approximately $0.1 million in both 2023 and 2022.

b.            Retirement plans

The Company maintains a 401(k) savings plan (the “Plan”) for all eligible employees (as defined in the plan). The 401(k) Plan allows employees to contribute up to 70% of their compensation on a salary reduction, pre-tax basis up to the statutory limitation. The 401(k) Plan also provides that the Company, at the discretion of the Board of Directors, may match employee contributions based on a pre-determined formula.

In 2023, the Company’s 401(k) matching contribution for employees was $141,000 and funded in cash in February 2024. In 2022, the Company’s 401(k) matching contribution for employees was $137,000. The 2022 matching contributions were funded by way of a contribution of cash of $82,000 and 33,322 shares of the Company’s common stock, which were issued to the Plan in February 2023. The Company records the distribution of the common shares in the Consolidated Statement of Shareholders’ Equity as of the date of distribution to the 401(k) Plan administrator.

XML 30 R18.htm IDEA: XBRL DOCUMENT v3.24.1
Product Sales, Foreign Sales and Sales to Major Customers
12 Months Ended
Dec. 31, 2023
Product Sales, Foreign Sales and Sales to Major Customers  
Product Sales, Foreign Sales and Sales to Major Customers

12.          Product Sales, Foreign Sales, and Sales to Major Customers

The Company’s export sales, which are primarily to customers in countries within Canada, the Czeck Republic, Germany, Israel, and Singapore, amounted to approximately 44.4% and 37.7% of product sales in 2023 and 2022 respectively.

The Company had sales to three major customers which accounting for approximately 54.4% in 2023. One customer, a capital equipment company supplies process and control and yield management systems for the semiconductor industry, accounted for 27.5% of sales in 2023. The two other customers included a foreign-based manufacturer of process control and metrology equipment and a U.S.-based customer in the aerospace defense industry whose sales represented 14.8% and 12.1% of sales, respectively. For 2022, the top three customers represented 19.7%, 15.3% and 15.1% of sales.

During 2023 and 2022, sales to the Company’s top five customers represented approximately 69.6% and 68.6%, respectively. Given the concentration of sales within a small number of customers, the loss of any of these customers would have a significant negative impact on the Company and its business units.

XML 31 R19.htm IDEA: XBRL DOCUMENT v3.24.1
Shareholders' Equity
12 Months Ended
Dec. 31, 2023
Shareholders' Equity  
Shareholders' Equity

13.          Shareholders’ Equity

a.            Common shares reserved for future issuances at December 31, 2023, are as follows:

2020 Equity compensation plan

    

3,600,000

2010 Equity compensation plan

 

886,667

Subordinated convertible notes

 

2,500,000

Warrants issuable on conversion of Subordinated convertible notes

 

1,875,000

 

8,861,667

b.            Warrants

The Company had no outstanding warrants as of December 31, 2023 and 2022.

XML 32 R20.htm IDEA: XBRL DOCUMENT v3.24.1
Fair Value of Financial Instruments
12 Months Ended
Dec. 31, 2023
Fair Value of Financial Instruments  
Fair Value of Financial Instruments

14.          Fair Value of Financial Instruments

The methods and assumptions used to estimate the fair value of the following classes of financial instruments were:

Current Assets and Current Liabilities: The carrying amount of cash, current receivables and payables and certain other short-term financial instruments approximate their fair value as of December 31, 2023, due to their short-term maturities.

Long-Term Debt: The fair value of the Company’s long-term debt, including the current portion, for notes payable and subordinated convertible debentures, was estimated using a discounted cash flow analysis, based on the Company’s assumed incremental borrowing rates for similar types of borrowing arrangements. The fair value of long-term debt is estimated to be $2.4 million compared to its carrying amount of $2.8 million as of December 31, 2023.

XML 33 R21.htm IDEA: XBRL DOCUMENT v3.24.1
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Policies)
12 Months Ended
Dec. 31, 2023
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates  
Nature of Business and Operations

a.            Nature of Business and Operations

Inrad Optics, Inc. and Subsidiaries (the “Company”) was incorporated in the state of New Jersey and is a manufacturer of products and services for use in the photonics industry enabling key applications for the semiconductor metrology, life sciences, and aerospace and defense industries. The company’s products include custom glass, single crystal, metal optical components and assemblies, and x-ray imaging crystals and assemblies. Company’s principal customers include commercial instrumentation companies and OEM laser systems manufacturers, research laboratories, government agencies, and defense contractors. The Company’s administrative offices and manufacturing operations are in Northvale, New Jersey.

Principles of consolidation

b.            Principles of consolidation

The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiaries. Upon consolidation, all inter-company accounts and transactions are eliminated.

Use of estimates

c.            Use of estimates

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make certain estimates and assumptions. These estimates and assumptions affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates include, but are not limited to, determining our allowance for doubtful accounts, our allowance for inventory obsolescence, the fair value and depreciable lives of long-lived tangible and intangible assets, and deferred taxes and any associated valuation allowance. Actual results could differ from these estimates.

Cash and cash equivalents

d.            Cash and cash equivalents

The Company considers cash-on-hand and highly liquid investments with original maturity dates of three months or less at the date of purchase to be cash and cash equivalents.

Accounts receivable

e.            Accounts receivable

Beginning in 2023, the Company adopted Accounting Standards Update (ASU) No. 2016-13, Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. ASU 2016-13 requires entities to use a forward-looking approach based on expected losses to estimate credit losses on certain types of financial instruments, including trade receivables.

The Company extends credit to its customers that satisfy pre-defined credit criteria. Accounts receivable are recorded net of an allowance for credit losses. The Company estimates the allowance for credit losses based on an analysis of the aging of accounts receivable, assessment of collectability, including any known or anticipated bankruptcies, customer-specific circumstances, and an evaluation of current economic conditions. Actual write-off of receivables may differ from estimates due to changes in customer and economic circumstances. During 2023 there was no change in allowances related to customer receivables and in 2022 a net reduction of $46,000 in allowances related to customer receivables was recorded due to a change in customers’ financial condition, actual and anticipated bankruptcies and other associated claims.

Inventories

f.            Inventories

Inventories are stated at the lower of cost (first-in, first-out method) or net-realizable value. Cost of manufactured goods includes material, labor and overhead.

The Company records a reserve for slow moving inventory as a charge against earnings for all products identified as surplus, slow moving, or discontinued. Excess work-in-process costs are charged against earnings whenever estimated costs-of-completion exceed unbilled revenues.

Plant and Equipment

g.            Plant and Equipment

Plant and equipment are depreciated using the straight-line method over the estimated useful lives of the related assets which range between five and seven years. Amortization of leasehold improvements is computed using the straight-line method over the lesser of 10 years or the remaining term of the lease including optional renewal periods, as appropriate, when failure to renew the lease imposes an economic penalty on the Company in such an amount that renewal appears to be probable. In determining the amount of the economic penalty, management considers such factors as (i) the costs associated with the physical relocation of the offices, manufacturing facility and equipment, (ii) the economic risks associated with business interruption and potential customer loss during relocation and transition to new premises, (iii) the significant costs of leasehold improvements required at any new location to custom fit our specific manufacturing requirements, and (iv) the economic loss associated with abandonment of existing leasehold improvements or other assets whose value would be impaired by vacating the facility.

Maintenance and repairs of property and equipment are charged to operations and major improvements are capitalized. Upon retirement, sale or other disposition of property and equipment, the cost and accumulated depreciation are eliminated from the accounts and a gain or loss is recorded.

Income taxes

h.            Income taxes

Deferred taxes are provided on the asset and liability method whereby deferred tax assets are recognized for deductible temporary differences and operating loss and tax credit carry forwards and deferred tax liabilities are recognized for taxable temporary differences. Temporary differences are the differences between the amounts of assets and liabilities recorded for income tax and financial reporting purposes. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion of the deferred tax assets will not be realized. Deferred tax assets and liabilities are adjusted for the effects of changes in tax laws and rates on the date of enactment.

The Company recognizes the financial statement benefit of an uncertain tax position only after determining that the relevant tax authority would more likely than not sustain the position. For tax positions meeting the more likely than not threshold, the amount recognized in the financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.

The Company classifies interest and penalties related to income taxes as income tax expense in its Consolidated Financial Statements.

The Company had no unrecognized tax benefits or liabilities, and no adjustment to its financial position, results of operations, or cash flows relating to uncertain tax positions taken on all open tax years. The Company is no longer subject to federal income tax examinations by tax authorities for the years before 2020 and state or local income tax examinations by tax authorities for the years before 2020.

Impairment of long-lived assets

i.            Impairment of long-lived assets

Long-lived assets, such as plant and equipment and purchased intangibles with finite lives, which are subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated future cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the assets. Long-lived assets held for sale would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated.

Stock-based compensation

j.            Stock-based compensation

Stock based compensation expense is estimated at the grant date based on the fair value of the award. The Company estimates the fair value of stock options granted using the Black-Scholes option pricing model. The fair value of restricted stock units granted is estimated based on the closing market price of the Company’s common stock on the date of the grant. The fair value of these awards, adjusted for estimated forfeitures, is amortized over the requisite service period of the award, which is generally the vesting period.

Revenue recognition

k.            Revenue recognition

The Company’s revenues are comprised of product sales as well as products and services provided under long-term government contracts with its customers. All revenue is recognized when the Company satisfies its performance obligation(s) under the contract (either implicit or explicit) by transferring the promised product or service to its customer either when (or as) its customer obtains control of the product or service. A performance obligation is a promise in a contract to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. The majority of the Company’s contracts have a single performance obligation, as the promise to transfer products or services is not separately identifiable from other promises in the contract and, therefore, not distinct. For contracts with multiple performance obligations, the Company allocates the contract’s transaction price to each performance obligation using the Company’s best estimate of standalone selling price for each distinct product or service in the contract, which is generally based on an observable price.

Revenue is measured as the amount of consideration the Company expects to receive in exchange for transferring products or providing services. As such, revenue is recorded net of returns, allowances, customer discounts, and incentives. Sales, value added, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are included in cost of goods sold.

Internal research and development costs

l.            Internal research and development costs

Internal research and development costs are charged to expense as incurred.

Precious metals

m.          Precious metals

Precious metals, particularly platinum crucibles, are used in industrial applications for melting and fusing materials at high temperatures, especially in industries such as metallurgy, ceramics, glass and crystal manufacturing. The Company maintains certain platinum crucibles as a production tool. The Company’s precious metals are stated at cost. From time to time the quoted market values of these precious metals may be below cost. Management evaluates these market adjustments on a recurring basis and if it is determined that they are other than temporary the carrying value will be adjusted.

Advertising costs

n.            Advertising costs

Advertising costs included in selling, general and administrative expenses were $16,000 and $25,000 for the years ended December 31, 2023 and 2022, respectively. Advertising costs are charged to expense when the related services are incurred or related events take place.

Concentrations and credit risk

p.            Concentrations and credit risk

The concentration of credit risk in the Company’s accounts receivable is mitigated by the Company’s credit evaluation process, familiarity with its small base of recurring customers and reasonably short collection terms and the geographical dispersion of revenue. The Company generally does not require collateral but, in some cases, the Company negotiates cash advances prior to the undertaking of the work. These cash advances are recorded as current liabilities on the balance sheet until corresponding revenues are realized.

The Company is subject to credit risk for cash accounts in a financial institution, which at times may exceed the Federal Deposit Insurance Corporation coverage limit of $250,000. In May 2023, the Company entered into an Insured Cash Sweep (“ICS”) agreement with Valley National Bank, where funds are placed at destination institutions through the service of the Promontory Interfinancial Network, LLC. Such funds placed into the deposit account will not exceed the Federal Deposit Insurance Corporation (“FDIC”) standard maximum deposit insurance amount, currently $250,000, at any one destination institution thereby eliminating credit risk on cash balances over $250,000.

The Company utilizes many relatively uncommon materials and compounds to manufacture its products and relies on outside vendors for certain manufacturing services. Therefore, any failure by its suppliers to deliver materials of an adequate quality and quantity could have an adverse effect on the Company’s ability to meet the commitments of its customers.

For the year ended December 31, 2023, the Company had three customers who had sales representing 27.5%, 14.8% and 12.1% of total revenues. For the year ended December 31, 2022, the Company had three customers who had sales representing 19.7%, 15.3% and 15.1% of total revenues. Since the Company is a supplier of custom manufactured components to OEM customers, the relative size and identity of the largest customer accounts changes somewhat from year to year. In the short term, the loss of any one of these large customer accounts could have a material adverse effect on business, results of operations, and financial condition.

Fair value measurements

q.            Fair value measurements

The Company follows U.S. GAAP accounting guidance which establishes a framework for measuring fair value and expanded related disclosures. The framework requires fair value to be determined based on the exchange price that would be received for an asset or paid to transfer a liability (an exit price), in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants.

The valuation techniques required are based upon observable and unobservable inputs. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company’s market assumptions. The accounting guidance requires the following fair value hierarchy:

      Level 1 - Quoted prices (unadjusted) for identical assets and liabilities in active markets that the Company has the ability to access at the measurement date.

      Level 2 - Quoted prices for similar assets and liabilities in active markets; quoted prices for identical or similar assets and liabilities in markets that are not active; and inputs other than quoted prices that are observable for the asset or liability, including interest rates, yield curves and credit risks, or inputs that are derived principally from or corroborated by observable market data through correlation.

      Level 3 - Values determined by models, significant inputs to which are unobservable and are primarily based on internally derived assumptions regarding the timing and amount of expected cash flows.

Long-lived assets may be measured at fair value if such assets are held for sale or if there is a determination that the asset is impaired. Management’s determination of fair value, although highly subjective, is based on the best information available, including internal projections of future earnings and cash flows discounted at an appropriate interest rate, quoted market prices when available, market prices for similar assets, broker quotes and independent appraisals, as appropriate.

Recent Accounting Pronouncements

r.            Recent Accounting Pronouncements

In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses: Measurement of Credit Losses on Financial Instruments" (“ASU 2016-13”) which amended guidance on the accounting for credit losses on financial instruments within its scope. The guidance introduces an expected loss model for estimating credit losses, replacing the incurred loss model. The new guidance also changes the impairment model for available-for-sale debt securities, requiring the use of an allowance to record estimated credit losses (and subsequent recoveries). The new guidance is effective for interim and annual periods beginning in 2023, with earlier application permitted. The adoption of this guidance did not have a material impact on the Company’s consolidated financial statements.

In August 2020, the FASB issued ASU 2020-06, Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity. This ASU update is intended to simplify the complexity associated with applying generally accepted accounting principles (GAAP) for certain financial instruments with characteristics of liabilities and equity. This guidance is effective for the Company for fiscal years beginning after December 15, 2023, including interim periods within those fiscal years. The Company does not expect the adoption of this guidance will have a material impact on the Company’s consolidated financial statements.

Subsequent events

s.            Subsequent events

Management has performed an evaluation of subsequent events through the date that the financial statements were issued and has determined that it does not have any additional material subsequent events to disclose in these financial statements.

XML 34 R22.htm IDEA: XBRL DOCUMENT v3.24.1
Revenue (Tables)
12 Months Ended
Dec. 31, 2023
Revenue  
Schedule of company's sales by market area

Years Ended December 31, 

    

2023

    

2022

Market (In thousands)

Net Sales

%

Net Sales

%

Aerospace & Defense

$

2,540

19.7

$

3,008

28.3

Process Control & Metrology

9,325

72.1

 

6,981

65.7

Laser Systems

53

0.4

 

188

1.8

Scientific / R&D

992

7.7

 

454

4.3

Total

$

12,910

100.0

$

10,631

100.0

XML 35 R23.htm IDEA: XBRL DOCUMENT v3.24.1
Inventories, net (Tables)
12 Months Ended
Dec. 31, 2023
Inventories, net  
Schedule of inventory reserves

December 31, 

    

2023

    

2022

 

(in thousands)

Raw materials

$

718

$

1,065

Work in process, including manufactured parts and components

 

1,915

 

1,282

Finished goods

 

516

 

479

$

3,149

$

2,826

XML 36 R24.htm IDEA: XBRL DOCUMENT v3.24.1
Plant and Equipment (Tables)
12 Months Ended
Dec. 31, 2023
Plant and Equipment  
Schedule of plant and equipment

December 31, 

    

2023

    

2022

 

(In thousands)

Office and computer equipment

$

1,487

$

1,487

Machinery and equipment

 

12,458

 

12,126

Leasehold improvements

 

2,386

 

2,354

 

16,331

 

15,967

Less accumulated depreciation and amortization

 

(15,035)

 

(14,724)

$

1,296

$

1,244

XML 37 R25.htm IDEA: XBRL DOCUMENT v3.24.1
Other Long-Term Notes (Tables)
12 Months Ended
Dec. 31, 2023
Other Long-Term Notes  
Schedule of other long-term notes

December 31, 

    

2023

    

2022

(in thousands)

U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029.

$

140

$

160

Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 (1)

 

176

 

225

Less current portion

 

(71)

 

(68)

Long-term debt, excluding current portion

$

245

$

317

(1)The Company purchased certain equipment in the 12 months ended December 31, 2022, financing approximately $282,000 at a fixed annual interest rate of 6.1% for five years payable in equal monthly installments.
Schedule of maturities of long-term notes

Year ending December 31:

(In thousands)

2024

 

$

71

2025

 

75

2026

 

80

2027

25

2028

 

21

Thereafter

 

44

$

317

XML 38 R26.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts Payable and Accrued Liabilities (Tables)
12 Months Ended
Dec. 31, 2023
Accounts Payable and Accrued Liabilities  
Schedule of accounts payable and accrued expenses

December 31, 

    

2023

    

2022

Trade accounts payable and accrued purchases

$

412

$

446

Accrued payroll

 

9

 

25

Accrued 401K company matching contribution

 

141

 

137

Accrued expenses – other

 

270

 

133

$

832

$

741

XML 39 R27.htm IDEA: XBRL DOCUMENT v3.24.1
Income Taxes (Tables)
12 Months Ended
Dec. 31, 2023
Income Taxes  
Schedule of effective income tax rate reconciliation

Years Ended

 

December 31, 

 

    

2023

    

2022

 

Federal statutory rate

 

21

%  

21

%

Reduction in state rate due to tax rate change

 

9

 

9

Change in valuation allowance

 

(87)

 

(106)

Permanent differences

 

(1)

 

33

Return to provision adjustment

(2)

43

Effective income tax rate

 

(60)

%  

%

Schedule of deferred tax assets (liabilities)

    

December 31, 

2023

    

2022

Account receivable reserves

$

13

$

13

Inventory reserves

 

597

 

667

Inventory capitalization

 

68

 

92

Depreciation

 

 

Loss carry forwards

 

1,458

 

2,562

Gross deferred tax assets

 

2,136

 

3,334

Deferred tax liability- depreciation

(110)

(110)

Valuation allowance

 

(1,026)

 

(3,224)

Net deferred tax asset

$

1,000

$

XML 40 R28.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation (Tables)
12 Months Ended
Dec. 31, 2023
Equity Compensation Program and Stock-based Compensation  
Schedule of fair value of stock option grants

Years Ended

 

December 31, 

 

    

2023

    

2022

 

Expected dividend yield

 

%  

%

Expected volatility

 

92.00

%  

104.62

%

Risk-free interest rate

 

0.86

%  

1.54

%

Expected term

 

10 years

 

10 years

Schedule of company's outstanding stock options

Weighted

Weighted

Average

Average

Exercise

Remaining

Aggregate

Number of

Price per

Contractual

Intrinsic

Stock Options

    

Options

    

Option

    

Term (years)

    

Value(a)

Outstanding January 1, 2022

 

1,152,667

$

0.60

 

7.4

$

662,465

Granted

 

200,000

1.20

 

Exercised

 

(66,000)

0.38

 

Expired/Forfeited

 

 

Outstanding December 31, 2022 (b)

 

1,286,667

$

0.71

 

7.52

$

1,214,875

Granted

 

20,000

1.72

 

Exercised

 

(109,333)

0.36

 

Expired/Forfeited

 

(84,667)

0.74

 

Outstanding December 31, 2023 (b)

 

1,112,667

$

0.75

 

6.88

$

1,214,875

Exercisable at December 31, 2023

 

905,992

$

0.68

 

6.13

$

1,085,699

(a)   Intrinsic value for purposes of this table represents the amount by which the fair value of the underlying stock, based on the respective market prices as of December 31, 2023, exceeds the exercise prices of the respective options.

(b)   Based on the Company’s historical forfeiture rate, the number of options expected to vest is the same as the total outstanding at December 31, 2023.

Schedule of non-vested stock options granted, vested, and forfeited

Weighted-average 

Grant-date Fair Value

    

Options

    

  ($)

Non-Vested - January 1, 2022

276,670

 

0.66

Granted

 

200,000

 

1.09

Vested

 

(135,836)

 

0.70

Forfeited

 

 

Non-Vested - January 1, 2023

340,835

0.89

Granted

20,000

1.72

Vested

(109,333)

0.36

Forfeited

(84,667)

0.74

Non-Vested – December 31, 2023

 

166,835

 

0.98

Schedule of information about stock options outstanding

The following table summarizes information about stock options outstanding at December 31, 2023:

Options Outstanding

Options Exercisable

Weighted

Average

Weighted

Weighted

Remaining

Average

Average

Range of

Number

Contractual

Exercise

Number

Exercise

Exercise Price

    

Outstanding

    

Life in Years

    

Price

    

Outstanding

    

Price

$0.18 - $0.35

247,667

2.65

$

0.29

247,667

$

0.29

$0.50 - $1.00

 

617,500

6.09

$

0.72

557,497

$

0.73

$1.20 - $1.80

 

247,500

8.87

$

1.55

100,830

$

1.35

XML 41 R29.htm IDEA: XBRL DOCUMENT v3.24.1
Commitments and Contingencies (Tables)
12 Months Ended
Dec. 31, 2023
Commitments and Contingencies  
Schedule of other information

Maturity of Lease Liability

    

(in thousands)

 

2024

325

2025

135

Total undiscounted operating and capital lease payments

 

460

Less: imputed interest

 

(17)

Present value of lease liabilities

$

443

Other Information

 

Remaining lease term (in months) - operating lease

 

17

Discount rate for operating lease

 

5.80

%

XML 42 R30.htm IDEA: XBRL DOCUMENT v3.24.1
Shareholders' Equity (Tables)
12 Months Ended
Dec. 31, 2023
Shareholders' Equity  
Schedule of Common shares reserved

2020 Equity compensation plan

    

3,600,000

2010 Equity compensation plan

 

886,667

Subordinated convertible notes

 

2,500,000

Warrants issuable on conversion of Subordinated convertible notes

 

1,875,000

 

8,861,667

XML 43 R31.htm IDEA: XBRL DOCUMENT v3.24.1
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Details)
12 Months Ended
Dec. 31, 2023
USD ($)
customer
Dec. 31, 2022
USD ($)
customer
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Net reduction of allowances related to customers $ 46,000 $ 46,000
Unrecognized tax benefits 0  
Advertising expense 16,000 $ 25,000
Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease) $ 0  
Top three major customers | Sales revenue | Customer concentration risk    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Number of major customers | customer 3 3
Concentration risk percentage 54.40%  
Customer one | Sales revenue | Customer concentration risk    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Concentration risk percentage 27.50% 19.70%
Customer two | Sales revenue | Customer concentration risk    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Concentration risk percentage 14.80% 15.30%
Customer three | Sales revenue | Customer concentration risk    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Concentration risk percentage 12.10% 15.10%
Minimum | Property and equipment excluding leasehold improvements    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Plant and equipment useful life 5 years  
Maximum | Property and equipment excluding leasehold improvements    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Plant and equipment useful life 7 years  
Maximum | Leasehold improvements    
Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates    
Plant and equipment useful life 10 years  
XML 44 R32.htm IDEA: XBRL DOCUMENT v3.24.1
Revenue - Company's sales by market area (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
REVENUE    
Revenue $ 12,909,657 $ 10,631,032
Percentage of revenue from products or services 100.00% 100.00%
Aerospace & Defense    
REVENUE    
Revenue $ 2,540,000 $ 3,008,000
Percentage of revenue from products or services 19.70% 28.30%
Process Control & Metrology    
REVENUE    
Revenue $ 9,325,000 $ 6,981,000
Percentage of revenue from products or services 72.10% 65.70%
Laser Systems    
REVENUE    
Revenue $ 53,000 $ 188,000
Percentage of revenue from products or services 0.40% 1.80%
Scientific / R&D    
REVENUE    
Revenue $ 992,000 $ 454,000
Percentage of revenue from products or services 7.70% 4.30%
XML 45 R33.htm IDEA: XBRL DOCUMENT v3.24.1
Revenue - Additional Information (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
REVENUE    
Percentage of revenue from products or services 100.00% 100.00%
Transfer at point in time    
REVENUE    
Percentage of revenue from products or services 100.00% 100.00%
XML 46 R34.htm IDEA: XBRL DOCUMENT v3.24.1
Inventories, net - Schedule of inventory (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Inventories, net    
Raw materials $ 718,000 $ 1,065,000
Work in process, including manufactured parts and components 1,915,000 1,282,000
Finished goods 516,000 479,000
Inventories, net $ 3,148,708 $ 2,825,987
XML 47 R35.htm IDEA: XBRL DOCUMENT v3.24.1
Inventories, net (Details) - USD ($)
$ in Millions
Dec. 31, 2023
Dec. 31, 2022
Inventories, net    
Inventory reserves $ 2.1 $ 2.4
XML 48 R36.htm IDEA: XBRL DOCUMENT v3.24.1
Plant and Equipment - Schedule of plant and equipment (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Plant and Equipment    
Plant and equipment, at cost $ 16,330,559 $ 15,967,537
Less accumulated depreciation and amortization (15,034,667) (14,723,869)
Total plant and equipment 1,295,892 1,243,668
Office and computer equipment    
Plant and Equipment    
Plant and equipment, at cost 1,487,000 1,487,000
Machinery and equipment    
Plant and Equipment    
Plant and equipment, at cost 12,458,000 12,126,000
Leasehold improvements    
Plant and Equipment    
Plant and equipment, at cost $ 2,386,000 $ 2,354,000
XML 49 R37.htm IDEA: XBRL DOCUMENT v3.24.1
Plant and Equipment (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Plant and Equipment    
Depreciation and amortization expense $ 311,000 $ 249,000
Depreciated assets were written off $ 0 $ 235,000
XML 50 R38.htm IDEA: XBRL DOCUMENT v3.24.1
Related Party Transactions (Details)
12 Months Ended
Oct. 12, 2023
USD ($)
item
$ / shares
shares
Dec. 31, 2023
USD ($)
Dec. 31, 2022
USD ($)
Related Party Transactions      
Notes Payable, Noncurrent, Related Party, Type [Extensible Enumeration] us-gaap:RelatedPartyMember us-gaap:RelatedPartyMember us-gaap:RelatedPartyMember
Subordinated convertible note | Common stock      
Related Party Transactions      
Number of shares/warrants comprised in a unit (in shares) | shares 1    
Number of shares of common stock to be purchased by each warrant | shares 0.75    
Common stock at a price | $ / shares $ 1.35    
Subordinated convertible note | Warrant      
Related Party Transactions      
Number of shares/warrants comprised in a unit (in shares) | shares 1    
Subordinated convertible note | Affiliate of Clarex      
Related Party Transactions      
Fixed interest rate 6.00%    
Interest paid   $ 200,000 $ 200,000
Interest payable   $ 37,500 $ 37,500
Convertible subordinated debt, $1,500,000 | Affiliate of Clarex      
Related Party Transactions      
Convertible subordinated debt $ 1,500,000    
Debt instrument, convertible, number of equity instruments | item 1,500,000    
Convertible subordinated debt, $1,000,000 | Affiliate of Clarex      
Related Party Transactions      
Convertible subordinated debt $ 1,000,000    
Debt instrument, convertible, number of equity instruments | item 1,000,000    
XML 51 R39.htm IDEA: XBRL DOCUMENT v3.24.1
Other Long-Term Notes (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Other Long-Term Notes    
U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029. $ 317,000  
Less current portion (71,362) $ (67,513)
Long-term debt, excluding current portion 245,000 317,000
U.S. small business administration note payable    
Other Long-Term Notes    
U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029. 140,000 160,000
Long-term equipment financing    
Other Long-Term Notes    
Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 (1) $ 176,000 $ 225,000
XML 52 R40.htm IDEA: XBRL DOCUMENT v3.24.1
Other Long-Term Notes - Additional information (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
U.S. small business administration note payable    
Other Long-Term Notes    
Monthly installment payment $ 1,922 $ 1,922
Fixed interest rate 4.00% 4.00%
Long-term equipment financing    
Other Long-Term Notes    
Equal installment $ 5,236 $ 5,236
Fixed interest rate 6.10% 6.10%
Debt, face amount   $ 282,000
Debt term   5 years
XML 53 R41.htm IDEA: XBRL DOCUMENT v3.24.1
Other Long-Term Notes - Schedule of other long-term note maturities (Details)
$ in Thousands
Dec. 31, 2023
USD ($)
Other Long-Term Notes  
2024 $ 71
2025 75
2026 80
2027 25
2028 21
Thereafter 44
Total $ 317
XML 54 R42.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts Payable and Accrued Liabilities (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Accounts Payable and Accrued Liabilities    
Trade accounts payable and accrued purchases $ 412,000 $ 446,000
Accrued payroll 9,000 25,000
Accrued 401K company matching contribution 141,000 137,000
Accrued expenses - other 270,000 133,000
Accounts payable and accrued liabilities $ 832,149 $ 741,281
XML 55 R43.htm IDEA: XBRL DOCUMENT v3.24.1
Income Taxes - Reconciliation of income tax provision (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income Taxes    
Federal statutory rate 21.00% 21.00%
Reduction in state rate due to tax rate change 9.00% 9.00%
Change in valuation allowance (87.00%) (106.00%)
Permanent differences (1.00%) 33.00%
Return to provision adjustment (2.00%) 43.00%
Effective income tax rate (60.00%)  
XML 56 R44.htm IDEA: XBRL DOCUMENT v3.24.1
Income Taxes - Deferred tax assets (liabilities) (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Income Taxes    
Account receivable reserves $ 13 $ 13
Inventory reserves 597 667
Inventory capitalization 68 92
Depreciation 0 0
Loss carry forwards 1,458 2,562
Gross deferred tax assets 2,136 3,334
Deferred tax liability- depreciation (110) (110)
Valuation allowance (1,026) (3,224)
Net deferred tax asset $ 1,000 $ 0
XML 57 R45.htm IDEA: XBRL DOCUMENT v3.24.1
Income Taxes (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income Taxes    
Net operating loss carryforward subject to expiration $ 4,000,000.0  
Net operating loss carryforward not subject to expiration 2,000,000.0  
Effective income tax rate reconciliation, change in deferred tax assets valuation allowance, amount 1,000,000.0  
Unrecognized tax benefits that would impact effective tax rate 0  
Unrecognized tax benefits, income tax penalties and interest expense 0  
Significant change in unrecognized tax benefits is reasonably possible, amount of unrecorded benefit 0  
Income tax benefit (1,000,000) $ 0
Federal    
Income Taxes    
Operating loss carryforwards 6,000,000.0 7,800,000
State and local jurisdiction    
Income Taxes    
Operating loss carryforwards $ 3,000,000.0 $ 5,000,000.0
XML 58 R46.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation (Details) - Employee Stock Option - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Equity Compensation Program and Stock-based Compensation    
Allocated share-based compensation expense $ 117,000 $ 116,000
Cost of goods sold    
Equity Compensation Program and Stock-based Compensation    
Allocated share-based compensation expense 13,000 13,000
Selling, general and administrative expenses    
Equity Compensation Program and Stock-based Compensation    
Allocated share-based compensation expense $ 104,000 $ 103,000
XML 59 R47.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation - Weighted-average assumptions (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Equity Compensation Program and Stock-based Compensation    
Expected dividend yield 0.00% 0.00%
Expected volatility 92.00% 104.62%
Risk-free interest rate 0.86% 1.54%
Expected term 10 years 10 years
XML 60 R48.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation- Stock Option Activity (Details) - Employee Stock Option - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Equity Compensation Program and Stock-based Compensation      
Options Outstanding at Beginning 1,286,667 1,152,667  
Options, granted 20,000 200,000  
Options, Exercised (109,333) (66,000)  
Option, Expired/Forfeited (84,667) 0  
Options Outstanding at ending 1,112,667 1,286,667 1,152,667
Options, Exercisable at Ending 905,992    
Weighted Average Exercise Price Per Options Outstanding at Beginning (in dollars per share) $ 0.71 $ 0.60  
Weighted Average Exercise Price per Option, Granted 1.72 1.20  
Weighted Average Exercise Price per Option, Exercised 0.36 0.38  
Weighted Average Exercise Price per Option, Expired/Forfeited 0.74    
Weighted Average Exercise Price Options Outstanding at Ending (in dollars per share) 0.75 $ 0.71 $ 0.60
Weighted Average Exercise Price per Option, Exercisable at ending $ 0.68    
Weighted Average Remaining Contractual Term, Options Outstanding at Beginning 6 years 10 months 17 days 7 years 6 months 7 days 7 years 4 months 24 days
Weighted Average Remaining Contractual Term, Options Outstanding at Ending 6 years 10 months 17 days 7 years 6 months 7 days 7 years 4 months 24 days
Weighted Average Remaining Contractual Term, Exercisable at Ending 6 years 1 month 17 days    
Aggregate Intrinsic Value, Options Outstanding at Beginning (in dollars) $ 1,214,875 $ 662,465  
Aggregate Intrinsic Value, Options Outstanding at Ending (in dollars) 1,214,875 $ 1,214,875 $ 662,465
Aggregate Intrinsic Value, Options Exercisable at Ending $ 1,085,699    
XML 61 R49.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation - Non-vested stock option activity (Details) - $ / shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Equity Compensation Program and Stock-based Compensation    
Options - Non-vested 340,835 276,670
Granted 20,000 200,000
Vested (109,333) (135,836)
Forfeited (84,667) 0
Options - Non-vested 166,835 340,835
Weighted-average Grant-date Fair Value - Non-vested at beginning balance (in dollars per share) $ 0.89 $ 0.66
Granted (in dollars per share) 1.72 1.09
Vested (in dollars per share) 0.36 0.70
Forfeited (in dollars per share) 0.74 0
Weighted-average Grant-date Fair Value - Non-vested at ending balance (in dollars per share) $ 0.98 $ 0.89
XML 62 R50.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation- Option exercise prices (Details)
12 Months Ended
Dec. 31, 2023
$ / shares
shares
Exercise price range one  
Equity Compensation Program and Stock-based Compensation  
Exercise Price, Lower Range $ 0.18
Exercise Price, Upper Range $ 0.35
Options Outstanding, Number | shares 247,667
Outstanding Options, Weighted Average Remaining Contractual Life in Years 2 years 7 months 24 days
Outstanding Options, Weighted Average Exercise Price $ 0.29
Options Exercisable, Number Outstanding | shares 247,667
Options Exercisable, Weighted Average Exercise Price $ 0.29
Exercise price range two  
Equity Compensation Program and Stock-based Compensation  
Exercise Price, Lower Range 0.50
Exercise Price, Upper Range $ 1.00
Options Outstanding, Number | shares 617,500
Outstanding Options, Weighted Average Remaining Contractual Life in Years 6 years 1 month 2 days
Outstanding Options, Weighted Average Exercise Price $ 0.72
Options Exercisable, Number Outstanding | shares 557,497
Options Exercisable, Weighted Average Exercise Price $ 0.73
Exercise price range three  
Equity Compensation Program and Stock-based Compensation  
Exercise Price, Lower Range 1.20
Exercise Price, Upper Range $ 1.80
Options Outstanding, Number | shares 247,500
Outstanding Options, Weighted Average Remaining Contractual Life in Years 8 years 10 months 13 days
Outstanding Options, Weighted Average Exercise Price $ 1.55
Options Exercisable, Number Outstanding | shares 100,830
Options Exercisable, Weighted Average Exercise Price $ 1.35
XML 63 R51.htm IDEA: XBRL DOCUMENT v3.24.1
Equity Compensation Program and Stock-based Compensation - Additional information (Details)
12 Months Ended
Dec. 31, 2023
USD ($)
item
shares
Dec. 31, 2022
USD ($)
Share-based Compensation Arrangement by Share-based Payment Award    
Weighted average estimated fair value of stock options granted $ 1.72 $ 1.20
Expected dividend yield 0.00% 0.00%
Equity Compensation 2010 Program [Member]    
Share-based Compensation Arrangement by Share-based Payment Award    
Number of parts of the 2010 Equity Compensation Program | item 4  
Aggregate shares of common stock | shares 4,000,000  
Expected dividend yield 0.00%  
Employee Stock Option [Member]    
Share-based Compensation Arrangement by Share-based Payment Award    
Allocated share-based compensation expense $ 117,000 $ 116,000
Employee service share-based compensation, unrecognized compensation costs, net of estimated forfeitures $ 122,000 $ 222,000
Employee service share-based compensation, expected to be recognized over a weighted average period (in years) 1 year 3 months 18 days 1 year 6 months 14 days
Total weighted average grant date fair value of options $ 30,000 $ 218,000
XML 64 R52.htm IDEA: XBRL DOCUMENT v3.24.1
Net (Loss) Income per Share (Details) - shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Employee Stock Option    
Net (Loss) Income per Share    
Shares excluded from computation of net income per share because their effect is anti-dilutive   30,000
Shares included in computation of net income per share because their effect is dilutive   706,678
Common stock | Employee Stock Option    
Net (Loss) Income per Share    
Shares included in computation of net income per share because their effect is dilutive 535,078  
Convertible Notes Payable    
Net (Loss) Income per Share    
Shares excluded from computation of net income per share because their effect is anti-dilutive 2,500,000  
Convertible Notes Payable | Employee Stock Option    
Net (Loss) Income per Share    
Shares included in computation of net income per share because their effect is dilutive   2,500,000
Convertible Notes Payable | Warrant    
Net (Loss) Income per Share    
Shares excluded from computation of net income per share because their effect is anti-dilutive 1,875,000  
Convertible Notes Payable | Common stock    
Net (Loss) Income per Share    
Shares excluded from computation of net income per share because their effect is anti-dilutive   1,875,000
XML 65 R53.htm IDEA: XBRL DOCUMENT v3.24.1
Commitments and Contingencies - Maturity of Lease Liability (Details)
$ in Thousands
Dec. 31, 2023
USD ($)
Commitments and Contingencies  
2024 $ 325
2025 135
Total undiscounted operating and capital lease payments 460
Less: imputed interest (17)
Present value of lease liabilities $ 443
Lease, Cost  
Operating lease 17 months
Remaining lease term (in months) - operating lease 17 months
Discount rate for operating lease 5.80%
XML 66 R54.htm IDEA: XBRL DOCUMENT v3.24.1
Commitments and Contingencies (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Jul. 08, 2019
Commitments and Contingencies      
Lease right-of-use, net $ 443,532 $ 737,743 $ 900,000
Rent expense 300,000 300,000  
Operating lease payments 200,000 200,000  
Real estate taxes and insurance premiums $ 100,000 100,000  
Maximum annual contributions per employee, percent 70.00%    
Maximum annual contributions per employee, amount $ 141,000 $ 137,000  
Defined contribution employer matching contribution (in Shares)   33,322  
Employer matching contribution in cash   $ 82,000  
XML 67 R55.htm IDEA: XBRL DOCUMENT v3.24.1
Product Sales, Foreign Sales and Sales to Major Customers (Details) - Sales revenue - Customer concentration risk - customer
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Customers in Canada, the Czeck Republic, Germany, Israel, and Singapore    
Concentration Risk    
Concentration risk percentage 44.40% 37.70%
Top three major customers    
Concentration Risk    
Concentration risk percentage 54.40%  
Number of major customers 3 3
Major customers three    
Concentration Risk    
Concentration risk percentage 12.10% 15.10%
Top five customers    
Concentration Risk    
Concentration risk percentage 69.60% 68.60%
Number of major customers 5 5
Major customers one    
Concentration Risk    
Concentration risk percentage 27.50% 19.70%
Major customers two    
Concentration Risk    
Concentration risk percentage 14.80% 15.30%
XML 68 R56.htm IDEA: XBRL DOCUMENT v3.24.1
Shareholders' Equity (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Equity Compensation Program and Stock-based Compensation    
Common shares reserved for future issuances 8,861,667  
Outstanding warrants $ 0 $ 0
2020 Equity compensation plan    
Equity Compensation Program and Stock-based Compensation    
Common shares reserved for future issuances 3,600,000  
2010 Equity compensation plan    
Equity Compensation Program and Stock-based Compensation    
Common shares reserved for future issuances 886,667  
Warrants issuable on conversion of Subordinated convertible notes    
Equity Compensation Program and Stock-based Compensation    
Common shares reserved for future issuances 1,875,000  
Subordinated convertible note    
Equity Compensation Program and Stock-based Compensation    
Common shares reserved for future issuances 2,500,000  
XML 69 R57.htm IDEA: XBRL DOCUMENT v3.24.1
Fair Value of Financial Instruments (Details)
$ in Millions
Dec. 31, 2023
USD ($)
Fair Value of Financial Instruments  
Fair value of long-term debt $ 2.4
Carrying amount $ 2.8
XML 70 R58.htm IDEA: XBRL DOCUMENT v3.24.1
Pay vs Performance Disclosure - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Pay vs Performance Disclosure    
Net Income (Loss) $ 2,668,422 $ 152,575
XML 71 R59.htm IDEA: XBRL DOCUMENT v3.24.1
Insider Trading Arrangements
3 Months Ended
Dec. 31, 2023
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
EXCEL 72 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( 'MV?%@'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 " ![=GQ8VN<8^.\ K @ $0 &1O8U!R;W!S+V-O&ULS9+! M3L,P#(9?!>7>NFD!C:CK!<0))"0F@;A%CK=%:]HH,6KW]J1EZX3@ 3C&_O/Y ML^0:O<(^T$OH/06V%*]&UW91H5^+/;-7 !'WY'3,4Z)+S6T?G.;T##OP&@]Z M1U 6Q2TX8FTT:YB F5^(HJD-*@RDN0\GO,$%[S]#.\,, K7DJ.,(,I<@FFFB M/XYM#1? !&,*+GX7R"S$N?HG=NZ ."7':)?4, SY4,VYM(.$]^>GUWG=S':1 M=8>4?D6K^.AI+W9\6)E&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" ![=GQ8[VY=''(' #E, & 'AL+W=OC$H0Q94G(&1+T M\:QUX7X:>BWU^JCK/&J,0\DH0,>_0H#.3]K';=00!])&LE;OOR+KAIT MI/5\'B79_VB9GWODM9"?)I+'JV!U!W'(\D_RL@*Q%: ::@[ JP#\)L#M5@1X MJP"O;D!W%=#-R.1-R3@,B23GIX(OD=!G*S6]D<',HE7S0Z9_]ZD4ZMM0QYN5F\OME+#"H.J7^(//< 80=[AAL:P.'?B3A$^#@+ M[QK"AW#XUY2IJSNFJY=:XVW0>YF>]WOH3E92XT!"17/ MM'7^X9W;&NT_YFX@-&->5C2:S$ MYVC#YZ@>GPO&4A*A6[K@0II P3I2I":\ S"J*2A+8B50O0VH7CU0$RI"KA_* M *E1U=BG=BBM1ZK*H0J,;PK-DE@)6G\#K0\V=9 *H9F-PL17G>N>$@&"@]7: M;1>W/==$# QL2LR26(G8\8;8<!6+NS6 M :C:RH5Z'+,T[ !-I1K)$!=HP%,FQ:OZ#,Q48?7KKT: 8%!C@);4R@!Q 1#7 M 7A'7M X4"-<^!CZN8^H?G)W2&+<5A[6P]V^D1X8W)B>);4RO<(/N&"6O*9W M$01*/3E8;Z K=1ZZ8>8^!TNZQRZZHC.A+<;%,V7F! X6:4QQ'U[ +N_XTNBI=LA=JVEY_DPB,SBK'L&66AE_'>XJ)XH8$6GWZL8[:R:!EMJ M96Z%;7!W^(:,FJ"D&A,L@!VC38"C&D/:AU%P"Z?@PNG]%=>>:C+G#$I^=XCT M>_VV>^(Z1EI6?8(MM3*MPBFX<)I_%TIE$O@C76JH^PI5;&5O@(7,M'_.21,@Q$Y.95 M)$98.SR#&995SV!+K0RK\ P83O"ON5X'"4(V0]/7^(%':!21F9$5+%2U/ F' M-::U#X^ "X^ :WF$]:);OFR4L5/96FKN8K#B/35%#>"HQM3VX0EPX0EP+4\P M9I**_$VC7IXD:XQ&:K!B%36KAL"66IE:80AP+4.0#5YHH,S C OC9+I#YYJS M-O%]JF242) +&NE9]06VU,KT"E^ :_F":4RB"%VFB?HZ,3^?L$[EL&;5#-A2 M*\,JS "&<_D5K"\Q%3,]FOVI%.1<.8-X09BYS\&"E>OB<%QC;/NP![BP!QC. M[,>#T2VZ2(-0*IM^(255UC-;;JN<0G_S;0(25*?]HEO\:8<*7J89IU2+84BO7,!06P:ME$:9S MY1&@YW6'3"4L.*YQF<(^C(%7& .OEC&8I ]1Z*N'E!-C[@&K-*[SL.H65FI' MF9JN*GL^/^KW\$G/.^T\F^ 41L"K]?)@9;VGN?7.?':";E*IAC:F78(1F,T4 M?[!2ZVTUT>WB(^>D?[1IXPK&/LR MU5 !*?N6P-9\>Y]I X:\XP=8E6%"G!8 MX^ZS#R/@%4; @]/VM\16A1[5S&"YT;V1F%438$NM3*PP 5XM$S!0T(0"-F8! M?4'?J'F,AZ4<]:_OGG1/3,5W SBX,;5])/]>D?Q[<-)^H3I9D'>TBDQLAT#U M?&@U[;>E5L94I/T>G*6O4]>J.H4=X9-O(W3SX=TQ=ON?!YPQI30DSR%-#M#5 MU<1(SVKV;TNM3*_(_CTX6U_3TR\)*BM&88EKND3W7#P965G-^6VIE5D5.;\' M)^-K5J-0Q&@\-**"%5QL?"<'1S6F9#69[VS5A6MGG=77)\C7=2QYB?CFZ*:& M_R*K7.\4I^=_ /"=:&.>H(@^JE#GL*_&5Y'7U.<[DB^R*O,'+B6/L\TY)0$5 M^@3U_2/GW9\6,Y:GW4D!P 51T !@ M !X;"]W;W)K)$K* M)@:R3HHND.X&F]WVH>@#(].QL)+HDE0N_?J2DB/9(B5[B_@A\64X.H>:F3-# MG3T*^4VM.=?@J^X'EN/1D<_VR=3MIKVH6[[U^\_UJ3-V3N MF.(+D?^9+?7Z?!)/P)*O6)7KS^+Q-[XE5 -,1:[JO^!Q:PLG(*V4%L5VL4%0 M9&7SGSUM-V)G 8X&%N#M GSL K)=0&JB#;*:UB73;'XFQ2.0UMIXLV_JO:E7 M&S99:6_CK9;FU\RLT_/%IX^WGZX_7%Y\N;H$[R^N+SXNKL#M;U=77V[!"?AZ M>PE^?O/+V4R;2]D%LW3K]GWC%@^XO>3I6T#0%&"(B6?YXOCE>'_YS!!L6>*6 M):[]D2&6E92\U( IQ;4Z]?%I' 1^!S:93M6&I?Q\8K)%R5G>UQ)RY6,>9\OF%H#5BY!:M_P?ZKL@>6&O/*Q;ER%M2N;\0]SG$2$Q,'9 M[&&7D,<.0A+$86NWAS5HL0:C6"_25%0&FBD(*3K38W.;/P3$#:[-L8T=/>DA._9LEY)6=[A).6<#)Z M7SR$IX!ID KEC?7$33-*" S#I'>#/(9A0J.0# 02@IWLP5'(UURI4V#J3U54 M.=-\:;3?[$R:L::[,%Q8(:3._JV_\"H@=-"=H-!41;I3+[9JYS,-(DQBF@PP MV1%P=$12;-Q;X,6,W!W%21@G_03V&@:$TG@ ;R?%:%3]YC=VET6E0,$-<&_^ M;CWL7CRD*(']\#ALMX^QDU TKJ'7W'2&0-H6\$2L3BK%!^OVUM,NAB @(7$V MU+6+2!0%9 !K)Z%H7$,O^8J;@K@$FCTU-=$+TR-ML'[U<8Y>[7\6$M0I)1J7 MRD:'ADL[\N@?31+29W'(;!]>IY)H7":;9+L8AN<*'T(1C&C4;S4\EB9PXX0, M!6\GDB@ZJMG-,W:7Y9DV78=7?M"HV'ZO_KR6MWW2G>2B48%K26]LS38%W'2( MH@ZE7)3W0'-9@%)H[K]IL9N:B#@]CK9-\(8]VPZX$9\T ME95)ZIV;Z(7N*F1,, J<2NG:10'",?*#QYV.XG$=78A22S.+'P**705$D$8H M[F>NWS!$T< ^XTXH\;A0>D(DK^N\N,NS^T&9QZX2FEZ6HGYC[K$SRII$ X*) M=V;7<<'<[WH/[;,KB1C'D*!^-/L,D2F1PD S M_)@-MX%=9^!+F'O1>^;,T*=21QCNH^_D%(_+Z<<:XTV#<0H^BG*[\U/P0NS& M$IN"+\\;#OZZ>M+V4,O2NRJK@LLZD/[VLAN_D] M8G@=9_N[U,DT/D:F>[6U'=W3_4SS[D7HWL# ]/7]PN6Q(XA&P=!][I0:UHRS[X#N)Q\<,PH=*@3O>AG9\@OU6Q&<8$&0& ME &LTFLALW]-35%VI]0[@((I)N$TC,+M M5R!3RC8"9IR^Y&F=P>W!ZK1N%+ MX(ZOA.1 2U,-*_G[ M;,2\8&]/G,#/P93"EV3PG@<3=Q@_,4VS*=A$,/(P>L:$DJC:##6.\$GXX+? +[N%*1<2&;9WC-!RTV]6.P.Z&U*.JW:\X,I"B N0( - ' 8 >&PO=V]R M:W-H965T&ULK95M;YLP%(7_BL6FJ96Z\!9@[0A2FF1JI:Z- M2KM]=N$F6#68V29I]^MG T6D)7V1]@5LN.?X.0;;X9;Q>Y$!2/20TT),C$S* M\L0T19)!CL6(E5"H-RO&E8EF_FF!1&%-;/ECP*624I M*6#)D:CR'//'4Z!L.S%LX^G!-5EG4C\PH[#$:XA!WI9+KGIFYY*2' I!6($X MK";&U#Z9!;J^+OA%8"MZ;:23W#%VKSOGZ<2P-!!02*1VP.JV@1E0JHT4QI_6 MT^B&U,)^^\G]1YU=9;G# F:,_B:IS";&-P.EL,(5E==L>P9M'D_[)8R*^HJV M3:T_-E!2":_ ;05N';0AJV/-L<11R-D6 M<5VMW'2CGIM:K=*00G_%6'+UEBB=C&97E_/%9;R8(]6*KR[.Y],;U3F=7DPO M9PL4GRT6-S$Z6&(.A-H,Z.P9< [) M"+GV$7(LQQV0S]XO=W;EIHK>Y7>Z_$[MY^[/OR_U4+;&;#QLIE?JMHA'7>DXU=)9RS/U7I7*R&Y/T(EYFB#:07H M@!0H991B+E ):F/*U#\Z^$,V_D$/RQI9]C/V-XIVT+T.W?L >@TH$*YDQCCY M"^D0:V/H]S#T#%HOY_H=A3O,?L?L?YR9"%$-\_HO,.RQXWI>X#WC'2JTCIUC M9P]OT/$&K_+>J+-+5/QQEW@(-7A!H/_.9YAO%#6(9F^_U6?=3\S7I!"(PDK) MK%&@/@YOSH^F(UE9;\%W3*H-O6YFZL@%K@O4^Q5C\JFC=_7N$(_^ 5!+ P04 M " ![=GQ8[Z+2X6T$ "/$ & 'AL+W=OYS^R5*V&5F2AE"Z23:Y>^>X;K0/R-=ZJ:O->).'# P1D'4CN0KH-WQL&M'=PRT(I9&=9#HI+1 M0/ =$MH:T/1-F9O2&Z+)F)[&J1+P-@,_-;J?/$\G?XT?;F>/#V@Z@\O3X_-L MBB9?T>3E\?5V-@8#=(6^3Q_0Q>]?!K:"CVI7>UY_X*[Z #GS 4S0$V=J)=$C M2VEZ#& #VX8RV5.^([V(#W1^C5Q\B8A#7 .A^X^[DQXZ;I-!M\1S_T\&37FK M8#TSK%Z^-W*=S.G0@O4IJ=A2:_3';SAP_C3%_$E@1QGPF@QX?>BC&5=)#FMZ M2]F&FB*MW/W27>\K6ZB*V(D#/QS8V\,H#(9.X&+')8WA$4._8>CWSQ&7"B4L M1?0=]C])Y8V)IO^9$_))8$?A!DVX0>^$E.'R!5IRGDHD>9Z:PJTP@H-DAW'D MPS-= M)OKA"2T78QR&;H?^J1T)(^)$9THJ:NA'O\[Q84E=HG(=F*A&)Q0P=F(_=DB' MJ\'0@:CBT#>3C1NR<2_9,9OS@J*%X 6"$X#.+F?&K,:G#"+LAG[087IJY^+8 M.5C01SRQT\J1T[M2)VI%Q3ZGQE5: WS2,OTLM.-P#]07_V)B% 5[[K=JO=:!@$WKERQZ2E2GJI/G-6EPY;HKJ@+AXKVN9S ?DH9Y-A M'^=6FG&O[NWK_HW">9>BK!JIY-V\H]1@1\4?!)%'NLO49.@3_]PJQ:V0XGXE M'3<,T<5:\&VF3\M?@#^CB\Q<&)YARRC_NIQ/#9TS=%M5Q;TJ-GJ&-J-*JI&: M?Z+FQ)S.4\/>=+8RB/MUL.6'H'(1W!30.KX8^R7:(@X%O8 M(I:T(BP1-(Y2@4KJ/:,OXP;A\W <>/%)&9LL'1P1P$$75_58#Q==E _G&%;2CY>V*)BD5V@#> M+SA7^X'^0/,;Q.@_4$L#!!0 ( 'MV?%CU,6SX9@4 ,X@ 8 >&PO M=V]R:W-H965T&ULK5IK+B X^R_K\ $&R'+IJLO,=CW'EV=H]>!C#9I]I8O*2W M1QPE^7BP+(K5Q7"8!TL:^_EYNJ()^V619K%?L-OL=9BO,NK/JZ0X&NJ:1H:Q M'R:#R:CZ[B&;C-)U$84)?<7C^'KLBB_&$Y&*_^5 MSFCQO'K(V-VP09F',4WR,$U 1A?CP26\\*!=)E01?X5TD^]=@[(K+VGZ5M[< MS,<#K:R(1C0H2@B??;S3*8VB$HG5\6\-.FC:+!/WKS_1O:KSK#,O?DZG:?1W M."^6XX$U '.Z\-=1\9ANKFG=(5SB!6F45W_!9AN+67"PSHLTKI-9!7&8;#_] MCYJ(O02(#B3H=8+.)2!X( '5"8A+T+4#"4:=8/ EX0,)N$[ I_:!U FDXGY+ M5L6TXQ?^9)2E&Y"5T0RMO*CDJK(9P6%2CJQ9D;%?0Y973*;W=[/[VQOG\LEU MP.R)?7QS[YYFX-X#L^O+1_?Z_M9Q'V>_ O?/YYNG?\ 9>)XYX,O/7T?#@C5? M@@R#NJFK;5/ZH:;2.&9CB74I>!-D3X]D^ZNP\",0)H!^!#3/0;H *S\#[WZT MI@(\1XYW&03K>!WY!9T#AR["("P$(*XS YWRCN2GK$OMM"$3 ML%%1;U34*QSC ,X5?0V3)$Q>V2R+_"2@P"]8KX)S@.!O0-=T*))KBXDKS'(% M>I] 9!/3& W?]W41A-DF0K9-VH%.-_ ,$HR(AKE(5Q1IV%AKAWG=,(1TG9!= MA2VV4,,6ZLG6%S:J\J6?T?SK26N<9&O_(".!VQ;R&GV M3@>37WZ"1/M=-*!5@KDJP3Q%8"TUC49-0ZJFH<$_0) F11:^K,O=2B28T1E) MV.:U,CJB8@UBBQODTF+ZBJ 2S!/5;V(LGBNX81?W8W=_KHB8QMTJ;$(0Q[6T MT;[S0B68JQ+,4P364HXTRA&INN9,P)@=17._$I!^E->B+?-*BMBS M\U/2720A,4Q^0JELTU4)YAWM0$L7L]'%E.JR?PP"Z:J4)&>:T"P(F50B55:)9@GJ!\C71-3;3546S] ];&5S.J4Q C5>.*E M%?1=R52"N2K!/$5@+1GM1D9;*N,=,]@W"5O#V$'M-LW%:DDA^BY=*L$<6-:D4;C*7N Q=: JUKG\P-!M!;B+5<:V:;5O' MNJUSJY@@DAD-9"'#XD!=8:C :0CB$"&FN==VF[$]?PW[,"9Q&F+V8)<5QAXC MA5^(Y'7T';1*T5RE:)XJM+:B.Z\-Y6;[),,!1=Z5/P770:W#LH$L_H0DKZ>W M%BK1/&$73!T>F#8[BP[E'KVW[X!=3X[*IP4\Y4H=N5(T5RF:IPJM+>#.E4.Y M+?\_]D,.V7<3AUU##*&I&S8_O91:>J5HWO$^M.79V7HH]_7]74@-V-K'V3;. MSZ^N_T>6R8?Y$KD&+U7-)5H#A1X;D(L@]\S7:7->B M>#P"=\8:RIWUZ>9$S)[ 9I;L=W9\6)B"=S_[!@ 71X !@ !X;"]W;W)K MD%,D6*38I' 2V)!]/S]WQ[CF2IX^\O*\VE KTE&=% M=3;:"+$]F4RJ=$/SI/K M[2 7U:\S!,!M^5Z4FU+FBS5H#R;$,<))GG"BM'T M5#V[+:>G?"S$1Z]//C&UALA'TRFI]MD3>=4?-_> MEG W:;4L64Z+BO$"E71U-CK')S/7EP.4Q-^,/E9[UTB:LN#\7MY<+<]&CD1$ M,YH*J2*!KP# 4'.BOH[>6H;''(W1]_DE>O?[ M^].)@)?*H9.T><%%_0(R\ ),T%=>B$V%/A9+NCQ4, &T+63R OF"6#5>TO0# MC:"_*QH^4!'TS]^PX'SE\GF(RD[\(#7>L"S:9]> M0[5A1]/W#O@6Z'/:)'_JMV $VO\7F6Z-SOOP' MD@CJCJB0X%!X4EZD+*.H:$'+Y_(NE8'&V-JLM4_ M9DB/I.S ;4'KML :TDL*2E.6U*6V6*(DYZ5@_ZD')LMK=<%>]%SLA''4"[(N M1KR8! -!#ENTH16MY^!W]^\1!#,'N% STWNX*43)%CMEP1@5\*D"S 3-30:$ M&C+?"PGNX3=(.:$_ #]JX4=6^',%6)+14MH #%T-^CG2 & <@@][.$UB@1=& M9J!Q"S2V KUJ\B5Y0@M:T!43)HBQ]NXQ=M1?#Z0NZ)CQ8:=C,\>*<+9)BC6% MG(7_!TAZ7CZC)CN,U.7H6(D71%%_WIH$XS@(R #@/?K%=O90@"N)>*_(5!6% M>B7S+F/)@F7#)-*H/U+).9:V0V>0SAG$&KWS-.4[6:FA]E#VD"PR<]2((6H. MP:2?!29!#*R/O8&P=9R/K80*F5#/K@$>:$8?O#CT(]?M S3($0=[_A# CI*Q MG9-OQ(:6T$"6)>!4,PDJX+B]5Q/,B-S3$04XW*O0#7*37(!Q/)3"'6%C*['M MI7!&H20BOLC86M5#,V#?X,(XB)V@CU@7]., 9LT X(XJL9TKVUF[39[EE*WY M,DW+'3W(7R-ZG1!C)PK"/G9=#$=!$(8#V#OBQ';FG$F6A)[FISAUXH-YVB_H M!BDOBH(X'H#9$22V,^0=%TF&DKU>3OHXK6NG$:].@&/L.F$4:M-"EPR(ZP?! M .:.*[&=+*]-+>5K&TFL1([>;;SK5NVF&)F1&_@23-Z@Z 5?4>HY&VKZ!4K$EBHO6*Z'749 M?2QMAU[H6)O86?NVY"FERY>4JZH=. $H<'6PMC&Z0>=C-X;:VP^@+D9\EPR0 M-NE(F]A)^[:$M33;0J8 "=85&M 67-"6%L=9>4S"@&B.-\BYL, +/Y4JI>B36+7,6. M\H+^NX,^.I,!,:+7"1M:ITA;MAODY.Y9/-!_D([8B9W89T-H42)@C;EF12%C M GP3!/SY-'YFSB.ZT7]CM4@B",'XV@H!!W3$SO36XT VK#"U_D;W.JZ47^I M8!+LV7FX?=DQO6MG^OENN\VH3%I(WR6KTHQ7P'.JZKQ499A9]9$!M.'FSJEAN1_8N ML<>,K0NV8FD"BSFUL%-3\"?[S=;^X0H%MF)J7Q=<(\OM5CI-+J]DQZ3/V: ME,":%"YNMS09$E+*0"_KSBXKKF1+VA/ ME*?_ U!+ P04 " ![=GQ8FW;2P'X7 "/0@ & 'AL+W=OGG;FM:W%FZ;E/VN.Q6C_RV,V4M+VV:1U<7%\\> M;4K;GKQ^)=]][%Z_M7 MVW)E;DS_:?NQP]6CM$IM-Z;UUK5%9Y;?G;RY?/'V"9^7!_YAS9.'< M+2]^J+\[N2!!IC%5SQ5*_'=GKDW3<"&0\7M8\R1MR1?SSW'U]W)VG&51>G/M MFO^T=;_^[N2;DZ(VRW)H^E_<[F\FG.>O3@IJL'W;A->!@4; MV^K_Y>? AS_SPE5XX4KHUHV$RG=E7[Y^U;E=T?%IK,8/#MXW/.^*-NZ^'EKNI)LT\L;%1D?N[&KUBYM5;9]\::J MW-#VMET5'UUC*VOT\>]];\$PXU\]ZD$C=WI4!7K>*CU71^BYO"H^N+9?^^+[ MMC;U=(%'.%PZX54\X=NK+Z[XSE3SXO'EK+BZN'K\A?4>)XX]EO4>_[_AF-+S MY# ]M-H7?EM6YKL3F*4WW9TY>?W7OUP^NWCYA=,^2:=]\J75_P].^V5Z+N?% M_RY)Q5__\LW5Q>.71?EG=HH/_]!V)6_TMO(S7$'EE(B%M[4M.VYSVJ^-O'!U M\?+:;;9E>R]7ER_/BEWI"]M6KMLZ+&UJ7!1\W/>X(@$_P;_]W73>W,O"%I3 M#;3#$FX--'9\9MNY>JAZ)9**8"ML"\==#-[$%;=KU[L69.*+&OX%+#)MN6C( MD5NNOMV"+>%X?%?(,!M;N9:KXYN-Z3O7N-7]K&CL$G?!Q19;S63CTG1.]%&N MX"#AP4W<#'R8%[]BQ6IDP.7SEWZD'5QHAMH$WU>LFM)C87!_U>#+[AX<:68D MH6P*1W[C?R[F6M.&H^,-L\&)(D6?S[OROH!X5SQD6&/_T7EQ_8 DT&*W7%]H M ?='ZMP&UY7%3=OB7 /B5"],"R>+>O7S]Q\*' $"\MC6;/Q$:B"0)EMVU1I/ M+2A[UPG=*W=GNI:K%HB-;94.$QD*!A1K0>/MD!BRBH( M6#B>'H-B+VU;ML(XT>V-2"VRM0^O#OP2&_3CN53M\?5N[9H&=KUKL9K/#&Q> M?-H*_S.BP+.&(NI-=U[%A>(&7!'L:7U9C<E\HX/'3D:*2)ZLOT]@GN_C@20-=N1GY RY,"CX;[99D[@4VMY==,+ =CH M#70/BE^@_%KHLFNM)ZWIS8/.@'+-B M,?0B(CQ74$IYVV,^(_ZK=L.B70Y/D/COPD&WO0)-C MO%B ;.,K>K29G&19VJZ -0S1HT'L.,L"_JB!98E$&M>NSGD%BLIV97E3%+8= M+^%J^LR(NTX>_AS92\WTWF%EGHO[J6(E0N<(7OT 'D*NP)P>+!X:K&4AC*Y8 M=O"6_91U\P)*?%WZM>Q0\0/U@I9- >2J'*V,8K,U71T?/W?M^5JIJXLU "ZT ML[%8HA:.^5XE*5H-QP7_"O(VC)I4]CKJ:[_NC"DVBNO [48BJ>I/'0+<=H 3 MA*.DFBZ,$GN(ZGDAC @F#$D8W"%_XVG>&I AN@!-).:;3=U([<2V,B PVKK MLJL]'(B0<_KFYM,9O. <[U\^.[_$$N^3!O^0_+T77WOU\AJ2M'WQHX.$$>9_ M=5M;%8^OGIV]*#Z8TL/1B_WAD-,G(=R#R^)\-Y_BUJ,IXY;M&5? (0;TDIJ[ M ]WG#9(>'@2QNW,E8@GSE)KKF\];&"H^-[HE7HW:@4 HQ#2)F.@8^ONMRFTT MVS'(08/5(+DAO&=M,B%,0Q%V[TT+MH:=L#D=^!A-^S64P$/-_?*>SO0<=F'I MUL,+%=0(GJX\+'"Z ERZ#GE"T1IA<-GN&?;DD'O4)0\C8>?X:R,[N3Q4_-[; M%)X45'#KAR3.Q.B]C^)'LL9LM%S8!O:1,Y+TW+:(:30/X%1+X$&Y+-N.8GSXIVB#EHF&0@A$ORV M<2&NDV1!9C:E^OEQ]9P\=;)<[0H&02V Y(8J'OVK)\]F%Q<7_^*B)"AI5CAF MF=&7-#B KLR7.-\3O: M@(34.OI3'%*S@'& KPO';U&54-##OO3-G8?XI)290C M$O:BKQE4K8%(79V",?5"3!-87("KG@28=6W*>FIGRDDF+"$]%0OS(!0AX4X= M=8R^I5=&=RM:5DFW4P >TYUK-D(X-^8*-7WBTO+T'EBPVS8#DX5QZ1D/65M/ MM&S;@:#N^\\5PP^+1>#+.1:3:[)+^:G;UP_WWZT!T7#$9 .UO@6S$7#9&%$[ M@PUP:VAAY@T^='@'6T.@*P#HAEFH9)QPZUOQ#%&PXSV3[I&@B#BX(?/054@- MNY(EIW.FR$&F(@&Y.Y*(4$'TDZ"*@C8U ,4D.)A%T.A$O1>FWQG30ET@J,N+ MXA[']\6'DABZ%?]( @E\H4\AZT0"T=\?(#QR$N;CIMGYIOR-J&N#E^\B'.0+ MY=;VU$8*2M!\!YYJ_(1<@0 H3S482'7KO(V6?IB,6<"BOH]P<]@,>O;$50%9 M$^2?P-0T5R@+:H0 &,0%YN#12']#IF#5#-6@.*[$$A MR :-#:$ABG-'_[BXG^#%*+08_E8MV:505UT?+1D@FZ6$+CIO2=#52%42T"(Y MA21!6#6&W++#.P%8^ =@-9$8G<\>!7BD/+H]W,)AJCK-_/+OHAH*@S8I(8QG MSYAE3>:L%2K)Q'3.%6P/P#,332OZBT(=T"DWZKC#A $$[.!)Y:T'"HGT<)'V/ M,3Q*6?^&>!4%1-\@V9MF\&/P%NF6.UVC4^C>3B Z[+\2Q/_0OXL**) ZD.N! M[A;(+B*TH4U($WN.1MPR]UWVM.TLHQ-.!:<%7,-$EN<=8""29>PD"SK(9(]S ME['N%;:9%^]53],WD) Q?72K1Z2%T+5V33W+%#+7_;#)X0J \J6A+_0C+^1< M:PEX*PBU%\>-_9Y>?*W[V[6C1U_B#1(7!5\,](M( !7%0^Q]HUR6-.PXIZ92 MJUA88^ST6AXQP45N(>4F&%5"239W;:%4&4R,&886^ 3<7^=I_YC=W"1V3*E8 MES6AW]!FO.2J@4F:+8[ZK 7+ZA.Q[(&'QQ9'^4Z2XDR>#C&'X$$DE4N85-6/M50/PPBRIF,"Y%UK>U<(P0U'U;UIW7E@$L0T#>TQ8LK)&<# Q MKOVX?P?A>0"(@')L#\$8:E;(\/.J2*@=0'A(/Q2CS (<$6@[&%.P M+9XA&P;I5F2JG;)_I4,KC+WNFY '9/['NRJF]6)IX_8/=J1]YJ((2#X@I6#? M<7/=!5FG60["XGL!G3"\C!FT9S0B5D]!:+"="?%[_-X35==7NN MU0=J"1SMM-0N#Q0''DA>.1=7('W5T3XEJ*?"QA&>$@1^J6@R?<4+-2[4B&6; M2<;RMBEQG)MJ[:1_(,^Q E[Q@8VK3:-[35=E9,(S7$HW&%IJ85Q^2K@ M6UFY[&XA16Z43K;?+&$_!Z^%$TQA3^+9(>JTXBJ,HO;G4"NS$];> =UF*%5PK[\R+6_HDR3JCX3WH MT.QS(&:IFH?A)CR2J;.VHIB/1/^=J+ _TF],Z0VEP3Y?QP:?#CR,&T"QRHDA+7>#K0$^G'UX@2T(^J/T)YF<<:=^C\'EZ3!=9< M-)-C)_4<#^L5H/6Y\X]%),E;)?'7^D)8,F]H*6NA[3.M7!(ZS62]>';-+O;4 M>T.POCUZ"+_7H B,]9-=OR",R/\C2C+ZWWU>+XCY4SM '#@;(;!8(V$J-"A# M27Q/Q@\5:8]/!YU57DEW"[XI;)==1I^50Z0@X!$0Q Z5GB[GG,(=B;):S16: M !NT<"O -[?I7$'4:_';J"HP!2^8=K;OC/*&0V?@UBG"L;P\ENF+B,Y"X@+. M4=?NN/@-O>DL]A5K+#G+JL&::85^02Q(C8T3120;VP?[&UTK"\X9V)?\OTH( MD<6S-M3)3\$8EG+#XM'_GU%&E@2N[7:KO8FZ8!.PT5Y^+).&2G"M'6XM&&N- M& D@8E##BA@5[3_W_%YM,8(=34S9[,#V&PXK M $RYP>NTR+C-WO>S KZ@M]6 #)U@4-+! >SNADIR%$TW%+RW:9*%G-Z?E=F8 MIH\L6PX!?6B=7!J>;*%*;8SJJW# 2"M'C"-;W/B43@F1S=!QW ;9*9([CAC) M7(PV2'6>93K4,05M',X,T2:DMP\/J:7W8!)B6QZ*#V+HJMAK@,M;E8:*(BA0SP7LX3S) %F;&6.<'Z:KE2FEN,1;9Y@4#W MIH8Y IB,!A-5[^&=W(R"TYU%AZE5Y^D<3U!VHC"0^=6E]K?XX%=73^7S-,$W M'*,LWL$?;A8X41R$E#?8-9,J"?TF%F_N#]%^Q-H2%HMUHA1C@W<00Z1OC0^$ M?)S%%"H@/?Z6S2;QBGEW(-2B@4!O)YBURA^56) ]:-N#0>Y 6U;B"_SC*L^% M'P 173KKI(9.T0P9P :)?MFE@1X".[]A;8CQ+710@]+M.^T2>3Z( '2%D^ZC MBQ>#@R:&>CPS#N.0=&S7,N#&7@>6"*<.KGIJXV.,K9U1D!,F!V0/>B$LM!AZ M*5I+Y1EYN]D#'ZU9N=Z*5>D$1GVGA1)$:*J5DZ<%34.,H?/-K]A.BZ,[TSPH=I10=E6E2)HEJ6,I?"]$EQ6-LHU9!D+?TDG!#-/ MIQR0IBFR#%6H7KR7.J/0V2.I[T-![YV1*B''-X9.B+\.0YPZ"\BRT,KHN)(T MI*^>7M!*&1SAS>X/3*@8*<=*EJ M4"\(_2.O_OA.C'%A]$>CLS;#>)=W,^F-119SJ)>PH"BC&;D"R5"0'R$/YH(P(?$ M[J&.F(Y*1RV@X()N>TWY1S7(51DV&\^P<:P4[$+4O;<6CS? M0!@D\SP.;&+MK:>VQ@9R'X+_?K"N^SP'@L+DY-D>T)'5X;W?AN[>1[+8=T)A0/ M9:;E^?SIU[/B\LG\FZ_E@)=7\\NOQ5I<7Z:BQI\CY>I_1,KEM_/G).7I_'$@ MY>D14FZ8E4RVDK)"E*H.$,DL]F0<))NYA@0XYISHFHVP@(C%0Z45=4FF/>;^ ML2,VC@U%OQSK]0Q3.^(R25&$6=B,_XO_%)RVZ&] M,MU+:GM !Q?A)P!'VTK39G,:!)H7OT/>8]%P,XX$'A[!7+I&JO=IJC3EFHJF[@+S[]+6>T6K<1KBE"-MGVVH MX9ZEMOLXH<_CRI '44>/B"MIA&8$$0^GO<:%K18B $V8^>6EE3A_$(O'DB%B MJ]3!''%A;ZIU:W\?Q 2%6[7$5N6*=&NS4H?T@=KL"]MN!R[Z\_Y7_,T;L6&D MH2[[,I0-8]*.=-%LZ3Y:#A,,717:9XTYM$=:\) [C>G3WACX0=U+2B$] %'7 M/35;PW,P@;]_ 17_]MGS;U\^^/]AHR;D>V/II\^71,X64N(TI#'M[+ +N PC MA>+"HH;&2E'H?Z@>X EM5!$_CFEEXL?T90[#)E)8[.G7 HK"3'0 G#B,U/P3NJBVV-(.61J*UPY>U_P2K MZ @P[(*A-O7U6>F<[27?8DHZTY93-+TKO 6N@>],;=Y%YVYAG[):G+\=%)I]3L_0JKW MQ_GH67%R<(BZ.)].6_\W9[%/$J[,]AQ_MJ4YPD8C>+*/.-@UGO+A3+%K#X]7 M"WH/PQ20[3:D>6EMRW8!9Y.\#/KF\]W:0\M[3QD8U6T9O C!8TDXI>GC^[I? M:W;CGI#F..D>F-8T9R=7%^ 0MZ1TG(8:Y=>Q=J"?(#-2ET_1R:MJ7YQ?G5Q)L^\ \5W N;4X/]F:IEZ/^=BH=,!CGTOZ"X=X>==*T.N#.!IV6\N MGYX_N3A[D;L 2D6ITMG%W(JYW623\@O[4!1@/0\^Z"\YK$XWB7FR^2[-ON5] M3!:V#6'%Y(AS!@C258RYK1=Z)*9 [^3\ _6R&L? M]61,Z."DWTZAAUB?=DT>5ICAQQ++0L++'R5IKJ"_GE*N'*#&1:0>FVW^,"'S M0S_\?I3]D0 D0"OY4PB2_K2]_KV ]&WZ:PMO](\,C(_KGVKX@%2*W83&+/'J MQ?SYTY.BTS]_H!>P=?F3 PO7(]N2C_Q=@.GX .XO'&PO=V]R:W-H965T&ULO59M;^,V#/XKA&]7;(#AUZ1-VB1 7S;L@-U0-+<-^ZC8=*Q5ECQ) M:2[[]:-DQW'1:X!]V1?+$OF0#RF:]&*O]+.I$2U\;80TRZ"VMKV.8U/4V# 3 MJ18E22JE&V9IJ[>Q:36RTH,:$6=)A7"&B,;?OC M]9]\[!3+AAF\5^(/7MIZ&D#F>7>./,L'9MEJH=4>M-,F:^[%A^K11(Y+ M=REKJTG*"6=73_B"+V)(Q=Q07/?"N V;O -,,/BMI:P,_RA++UP9B8C%0 MR8Y4[K*S%A^PB"!/0\B2+#]C+Q]"R[V]_+^'U@$GWP:Z[^#:M*S 94"%;E"_ M8+"Z^)!>)C=G:$T&6I-SUL_1.@_,(NBQM2K0&+BGXM7TN75V/Z/; MJ.WA3>CS,,^FP^XJB])A1$>G;B MF$8S6!<45+R"&)T_PX2VO>79B-0IZ,CT9GE"\7Y1E8I22- OGZ2AA21(E M8W$27N;I.^(O-5+O^4MI;@^@*KI@I#PV+9,'IY)>W1AJU%V)<@.55@VT6I6[ MPAJ@0@#W+7%*/UC-I*E0:RHHJ_I&AU1CS *#5G%I@5,%4?_WP#UJ=&0^.K=' M%S22NL)S&J[X0A*9%GVC%X?(\^WYD:106\G_P1-%\N4B>.V-UGW-B]J+CKQ M;2P-. -%7S5]\'UP0$3ZT,(>3>%O4:)F0ASH".6@:[D5A&3&N#RHUWYV+4TJ M4_.6YIZ-@#XBP1MN*4L%598)>W2I""N5'?(8^AR,Q&M7-7.9 M*)!R58Z#\7? :6GK@^$%%8]0!7,C-/I6]XM'LX?,;OV$=8DBE]T8&DZ'(7[; MS:Z3>O<'0*UCZY(LL")H$EU- ]#=5.TV5K5^DFV4I1C\:TT_(JB= LDKI>QQ MXQP,OS:K?P%02P,$% @ >W9\6,+B*(W+ @ JP8 !@ !X;"]W;W)K MY-!:.G=D.I?]^9Z=-RP;5I.U+?'>^>_S9KI5^-B6BA==*2#,+2FOK M21B:K,2*F;ZJ4=).H73%+*EZ%9I:(\M]4"7")(I&8<6X#.93;[O7\ZEJK. 2 M[S68IJJ8WBQ0J/4LB(.=X8&O2NL,X7Q:LQ4^HOU>WVO2P@XEYQ5*PY4$C<4L MN(PGBX'S]PX_.*[-@0PNDZ52STZYS6=!Y BAP,PZ!$;+"UZA$ Z(:/S<8@;= MD2[P4-ZAW_C<*9U_H;;?(8.+U/"^"^L6]_X M+("L,595VV!B4''9KNQU6X>#@''T04"R#4@\[_8@S_*:63:?:K4&[;P)S0D^ M51]-Y+ATE_)H->URBK/S6_F"TBK-T?1 HIV&EE#=7IAM$18M0O(!0IS G9*V M-/!5YIB_!0B)3LVN68>KST'W)L$0;O([C. MF)B:93@+Z.D;U"\8S$\_Q:/HX@B_0<=O< S]K_@=1TC[\#L(G'X:)U%Z<;@! M3"-DJJHU-YB#*L"6"(42U)IIU"^$8C%#(,]@8+=*58+5%WU^J]2$AZ#K9&WYQB,^EH_Z_US**Q0U4"*DB& MAJK/92::W!6T8K(I:/ TFLI=,VV-S]M=@9)4U3UTW#N/AP=:,D[@ADM.G9W# M2JE\[SJ,1YT\.#O_(^,32'OQX/Q 3WKCI(MY[\&&!P.D0KWR8](0ST;:=I9T MUFX27[8#:._>CO$[IE=<&A!84&C4/QL&H-O1V"I6U7X<+96EX>;%DOXFJ)T# M[1=*V9WB#NC^3_-?4$L#!!0 ( 'MV?%@0:8DRF , +T( 9 >&PO M=V]R:W-H965T M]Z 7,]5:P24\:&+:NF9ZMP2ANGF0! ?%%[ZNK%-$BUG#UO 5[-_-@T8I&E * M7H,T7$FBH9P''Y*;9>;V^PW_<.C,T9PX3U9*?7?"YV(>Q(X0",BM0V X;. 6 MA'! 2./''C,8CG2&Q_,#^B?O._JR8@9NE?C&"UO-@VE "BA9*^P7U?T.>W_& M#B]7PO@OZ?J]- Y(WAJKZKTQ,JBY[$>VW56^-Y+AT2?EJ-:YRM+.+!\&D)4P6Y../EC<8;CN++ *[Y2C? M@RQ[$/H*2$+)O9*V,N2C+*!X"A AHX$6/=!:TK.(=Y"/2)J$A,8T/8.7#FZF M'B_]-3=[D.QE$'<_;DS# $,Z T$B[=ODDG\_@S%;*"8G4/_68KG0;(1 M>0&'O'TSI7'Z_F@-AC6F@>2J;C0W4!!5$EL!*97 Z\KE^F:P_;]&3"W4*] ^ MO0>E2[/[T$'S[K-$)JHUR-9]97F&D M].Z9[X=]"0VS\?183.B$_ %XW2LE"L(Q/&H#SL8\<@[3Z>18&F2IGI_3NSIX+6WSZ#>#;FRN-]YJL=KXX;C$!3.)<6290S1J, MSI;C$PEB1R[2) GC./9X%S2['@1L(7VBG>"2'2*T:< _S&(W(G]5@,78N8]4 MI&P%P@VA<0<9 YB 3G-K06*MEH1+#SDBGU[;C15]0=.Q9^&A3\VI/WKP"S9, MM AA"$=[]*T!;9^7CG,&RX)Q[<6N0D38^ +!E9QKS*ZQ3.8.1A8\1T"$.+:I M&9ZUY<:.R)+YR^=*GIL# IN>!=>Q%TJN?Q,8 MW\?H]>&U>R90C%YZO**CEE*#7OO&:9!!*VW?70;MT)L_]"WI<7O?V.^97G.) M5*!$TWAT-0Z([IME+UC5^ :U4A;;G9]6^'\!VFW ]5(I>Q#< <,?R^(_4$L# M!!0 ( 'MV?%BNA="3V ( (D& 9 >&PO=V]R:W-H965T*/-DRT0';R44ME)5#A77<6QS0HLN>WK M"A6=K+0IN2/3K&-;&>1Y""IEG#)V'I=\ENY>;SYC6\_0\S(M;?B%3>.;7D20U=;IL@TF M!:50S3]_:?NP%W#)#@2D;4 :=#>)@LH;[OAT;/0&C/(/_4FW#.GN;Y6_+E:UX MAI.(KH-%\XS1]/1==4K/CM'_4>EQUK /AW%P^NXR98,1W"FXRYQ> MHH$D;3K> U<@O6VN-H+"7-= M5EQMH>(BAQ/63^F:2.EO/(TL$,HA/1T'9/MB[#XJVT-5KVJ5]G7Z:.19X0OV MD5ODQH:V!(&TH"X1NL(P6.2V#]=99FKBOB9=PNNE;. MDNPM]_E#T6V\%'PII'""9/#0<;H(6/I'L[L,AS2\]>K%>^.A1+,.0]!"$-!, MBFZWF[/7S7AY=6^&]"TW:T$OC<05A;+^Q3 "TPR^QG"Z"L-FJ1V-KK LZ%N! MQCO0^4I3&PO=V]R:W-H965T5F7 M!&BZ.]R&;5>L>\%]5&PZ,69+GB0WR;\_2G8=]YIFPVU?;%$B'STD14JSK51? M]0;1P*XLA)Y[&V.JRR#0R09+KGU9H:"53*J2&Q+5.M"50IXZH[((6!B.@Y+G MPEO,W-R-6LQD;8INHLME;/6=PN<[-@X]@VGXA %K#9CCW6SD M6+[BAB]F2FY!66U"LP/GJK,F2Z(D:PU%ZF^@$_^K0^W)2\*6-::?-<:KE(J#B*ON"MV M8[T2Y!54?,]7!0)!X+>:%U#:&NRIT6(;^I"9"HO_ [SF<0Q6%?&H=-P!TUHI)7=FO( M'K1ZAJE6RHUZ:0H#*\B4P;,'<6$*CCE$W'0=MQ'AXI>XH&O=#RJE)REU,3 M1TK4&9NR01B&P UPTMJ1.1>B"?VQH-+=1VIW"'L*O_ZQ(^5_I]B(2ZT0N&[K M3/__*ON'6-DH6$][87@,>/[Z01U1E&)*Q"2RHT-J)B,K'T['-&Q.SW_1F-.; M'N3(YI!>!AG%L)N-XT>&#W)_K&L&O?NL1+5VM[;M3[4PS=76S78/@ZOF/CRH M-Z^*=URM*2U08$:FH3\9>:":F[H1C*S<[;B2ANY:-]S0XP:55:#U3%*Z6L%N MT#V7%O\"4$L#!!0 ( 'MV?%C"K])%EP( ,,& 9 >&PO=V]R:W-H M965TU@8#MKW8(L5S>$A+]&(GU8.N 0QY:KC0RZ VIIV' MH2YJ:*B>R!8$[E12-=2@J;:A;A70TH$:'B91=!$VE(E@M7"^C5HM9&L[]WM6,M.=5P+?EW5IIZ&9-?'9IBQ MZ+21S0!&NV&B?].GH0\CP"QZ!9 ,@,3I[A,YE3?4T-5"R1U1-AK9[,*5ZM H MC@G[4>Z-PEV&.+.Z*@K9":/)AC[3G .AHB3H5!V4Y#.C.>/,,-"+T& VBPF+ M@7G=,R>O,,<)N97"U)J\$R64OQ*$*--K3?9:U\E1QALH)B2-WY D2M(C?*FO M/75\Z7^HO6?.7F:V-VFN6UK ,L"KHD$]0K Z.XDOHLLCNC.O.SO&_E>ZCS-/ M)^1/R&J.I E+(IE5,HUM6Q-1 *LEQ*#"QG7NV M?_7&LP)-#LJ=E[W3GAO[2,@714NP*E^7WG:JJ*D>57I*,CS4(RN[\)U!!H75 M^-VWAZ3G/BB+XD^N"U0\XR4V18VUHT,8Q?+.3:D]*L[BPSJ=>@K?4+L9QY=$ M8B/5(=DT&L'2W]IR2F;IN(3I(!T3U([,WC&S=F,JEP:'GEC7^94#9 -ROI#1[PR;P M_ZW53U!+ P04 " ![=GQ8:Z"XQ*H) !5&0 &0 'AL+W=O3W@\F@7?ADED7@A;.[FUHOZ3.%K_5'AZ>S MCDMN5E1Y8ROE:'$[>#-Y]?:<]\N&WPQM?.^W8DWFUG[CAP_Y[6#, E%)66 . M&E]K>D=ER8P@QO?$<] =R83]WRWWGT5WZ#+7GM[9\G>3A^)V<#U0.2UT4X9/ M=O,W2OI<,+_,EEX^U2;NG&M %^X^5)E=D?JB[\G?G 5P MY/6S+%&_C=331Z@G4_6KK4+AU4]53OD^@S.(TLDS;>5Y.WV2XWO*1FHV&:KI M>#I[@M^LTV\F_&9_4;](?7ZIKT>JST#]^,/U=#Q[K;X4I-[95:VKK\P;)5I?5>9=JY+5-MM,N] M,I6PS(7/W(:"5U@HIM,5UDVEJ\R DZ/:NF"JI:H;5UM/?J3>B&AX7QHM66H7 M"K+TF>Q$Q5+=!)RE@VQB>9M@69PD;(_,B2Y6V0;Z+18DV?]@P\*6@"6O3DRE M:G(9;'/ZJC/E__K]+](NI<:#=PAT6LUA=0[V=I&#GC^FZN>DT4Y'D7XE][RKNX!+JU+IMH=\UV@*-(G5Q?G:J3 MR?CRM"/X2,"_BN,F-S E(BA#P)U,3M5LUFWZ1*%Q%9^]\YC._P"$K9BRW78R MW?$]WU'_]*B+3B['I]"7-TZFK].OOB7?A'UCBA$Y]-B00XF4-A\*G2ORP0#- MX9+6QA5J'ZH<3N/@/!;EB$I=0ZU[H2RWZMGE: PX+DO1$F<]NQI=MPM#!+6O MHSKE=BCOHX?^RDFSPY,N=@O[)R&=]DG/>Z2/'=V=3/>U<1P_CC>LM3.V\6HK M(1P*9YME 8O.KJ(^!T).>R>M]%;-2;B;" Q\ /R*8FDJ$\0FOIG_ ;DE5.&@ MZ_%S27U]K^=E%P.E69D0X],U)3'@!7(57/:)UE0U[-BWK-]D#/-0(S(G[GD:J'B@.;]Y1.O]D&!,%PA.>-VZ5FS+.%Q5#6O" M7M1]44^X4<5+OLF*!_8?[16_ L[@XH?*76LGXN*_+K?>2)X=4GLU;X!PEB+9G$J#*&-/ MA(>.>=XZ8H\1'RG.B,?E47G6_+R^O>ELS7<..721WFZZ[GR^G$!O^SLS^EK9X M'#[__0@"MWLFP_.+'>?I\.)RJGYQ3) ?\=%NWV1VV3W-AK/9^;Y/6U]N7X#/ M(Z)*G9Q,QJ>/K/YVI&SO=@S'TU[M/ID-I]/S4_4/)-=#P?M>&8['X][S,9OQ M]X=*4>H;@!R]X!6"J]< DJ@@QS9W=VO$T#&3 <(6#7H&8N0P-O=#@$ %^)!^ M 5VA-T!H'X%LK4TIP04@,M(G<'I5M-3RL #268; /@!$MB83B$HR4^2'9.8X M2H(BB0P$JHZ:R*L.S,"H)PFM(1],/XQ][U'!AES*RB9_S%2<-54?B9$.F"=] MA&^Z-S[P$2QAUJR:4O=;)* S S?Y=*1V+X!0*PYERK0/@G+)Q >554 -,"A6 MYC,"YDXHP:>BA%:19=LJ^;YC0-5XT<>FY5A=4=Y=N>47?>"W[6,6OT@&/M/ M&@[Q"?B:A1%[L)J=YUJ/RFHH&I]0#=3>+"O09)HM):,^%$/%S7.1%47V(9?> MX:D9:-5'Z'/ <7QY'ZTJ88*=*2(.2S9'8PC.H$310966*2MZ><_S.!Y"-N") M5FT!Y(S1'@WW( &.1>=C"6$8 VN"QSEVDRZ[I%]*AP,Y?;. R0SO.AZ&J=E, M^0\Y#7<<-@4_^M'C!O"\9]%P6D<[20AZ2O*)AH[8&,/VB%@D&X<8_]YHQY4< M7&-@/I+?QY%FE_5]A^;$F2=]7TPM1 EZ >F2H56:11V5I%E,)9/PKAL[-H>E MYNG0)U]'GT?=O+MK5.-\<<19HR][:9=9Q/&?DGG/)KVF/3<>O6X:_^=P( *F MM9WD%,D4^V#0DI97)]AZ2IVD^SY"+TQ)?F_BDR%2:@,S^EI)G_F9E0,F;@J# M=BILZX3I,FCF%!M5W4> .#8+;O:[+Y:HR[F#:F&X[0.@HJES_?$DV7H833R, MJ)OM7S;0O8;STR&&#PC6<50-S4 M6.Z9*^4J1,<'[-]4O1CMQ6+2T,!7&8?$_K5.=UD@H^G!%,3<91107,L<6R-2 MMM=#.RNU@@_;.BSM?2S.$C^8"+4OU((OC4;JGR"N;6DRB9[4[D3K=Y..%!A" M@1#_(0ODZB%AG!3-6F_%,=R%]'TKB<6=OJT>O&9TI$K2R:I_^#P*\Q@X-22%B =CZXN!AA5Y1(_/@1;R\4YVKM@5_*S( W;\ :\ M7U@;V@<^H/M+RMV_ 5!+ P04 " ![=GQ8$$KFDZP* ")(P &0 'AL M+W=O:['WLO+TE4F:94/EZS1&PN>D'/#=SRU;K @<'E>4Y7[(X5 M'_/W$IX&%968IRQ37&1$LN5%[RIX<3W"]7K!)\XVJG%/4).%$%_PX4U\T?-1 M():PJ$ *%"[W["5+$B0$8GRU-'L52]S8O'?47VO=09<%5>RE2#[SN%A?]&8] M$K,E+9/B5FS^PZP^8Z07B43I_V1CUHZG/1*5JA"IW0P2I#PS5_I@[=#8,//W M; CMAE#+;1AI*5_1@EZ>2[$A$E<#-;S1JNK=(!S/T"EWA819#ON*RYNO)2\> MR4N1@IL5U99Z+\5*TI30+"9WA8B^G*+><6O1^: [DAC$%E.UX93N(=3$)*W M(BO6BMQD,8O;! 8@=B5[Z&2_#@]2?,4BCPR#/@G]<'B WK"RQ5#3&_X#MC"< M1KLY8::]4#F-V$4/4DDQ><]ZE[_\%$S\LP-ZC"H]1H>H_Z5Z'.8T]\B/,B._ M_#0+_>$9H1[ZSS](R*U]EY'7;"%+@ \2A-KQ?I\4:T;>9)+&Y%U>\$B1:T%E M3,22O.(2LE](16@L\@)$Z*[MPU/T! F.<2.*$?IG>K&=T$/!V8G6%9@QP)B8 MJ#65;"V2F$E"\UR*>YH0H/9;F3$2#HW@'OD -)O$"*[D,5,$T); 2%8H5 -$ M!UE 5H7&U!19Q(V $F%'6?:JD#Q"->W"#=A!D4(0EN:)>&0,:(CEDD=,PEWL MK-/7VP6H");:K 50RE!T#$Q8JRF@_F@9FCWN$)PK$L&DY.AFD'@I2DER*D$R MGD5)&?-L]8(<\Q/K@(AEB,8F.K0KT-8)S8 ]C];[#&$=P*O]1D]G'^L,X&,9 MW95YGC"H(078_YF\6J2!&BW0K4E",E&0!7N&+$X8/7_5=-ZM<5Y#&& @-DJO MUZ* W6IA]CB^#TSN#8_;.@0L.PR!O=IVV;@(TNI@#&M+@-M38&@([@RT,N/0 M&NP,"QI#U>*J8!)6+QZK.*HR#*GSHF ,6>'L=O9ZY*..QZ)#'^.6T-5*LA4M M]/XRQU@=]7W?Q[^&$I%1PLB;TD=TH5:=Q1Y9( ($3\.@#W4BX% P/5/?W]R& MCV ;/JQ;XO^/S*\5(.PAY^A:$.@ME1!@-;Q=0;) 'Z@*X($!]FRU*BM+@YQK")&00G!&D=G_BL7#@* M$(AG@!]:?&.!!/:IPFR'99JHD1[=MT/G/?)"?C2--@2C03%J =7- T83.QA^ M8!AH0AW46B2R-3=JAB.SQ%#*)EPY,0L!0(EB'P7!5"<06@X>)OK!0<8CHQ N M&"DQ@2:,I0M0SC5B>@O<0'D&N7*FT22!T+DK$=]242*G-06(63"6.:%CN+&A MEBF1<+0M@AA<$+^U.]Y!0%"#QQM>K&%#), -,+,2 L(=]L7D^"@85M(R"CRM M(XW4!T0\,=D 1P:T09^L6 ;\$CWH8 SY@^36D JY^:.&I?R:]R%.D!Q:HT/6 MPZ1D9(/_C@(8J)B$]@'Q+H/$$:N,?^NZ&BT#"98Q;1^(5IYJBX)D2\:+4B(B M2);H0!G%M4L@9.",PN@B@?L20\=(5(7#O0"= M>(+5#Q#-X$Z96XQ=0]8 AH+JS758!*!%;%5E$VA-T1GZ!Z.MB MP>7W7G.Z$MB)D@6+*/B/\ +?+N!K F.WE,HOK*C -2HE%$5G%@L_V.)J2S1T M,D:!%OC+Z5("-XF25/:PUOCHW<$ZR:@JX0QC' << %) -;9QM! '&6D7*&K'R$'M@,H)#!/" "L&%-$(N!;;%F$H@_4I; MQ4'#J8,&G1?6M1HT2V7;*3!'5>--0._%#E<(8S Q<'MZL7M1%>@_>_VOYJ?? MD6S-M?B[02T'RJ![!6W6#C)HIX1GY.?&WLDY'M>_-)K@.P;M!"FT,FZW)JIM]FL:=5N<*(1;E< NNW+M"EP;=(&MV M6NWDILH :?SLI@520+^3R4RH0]S]=;[]T>MG5P?W#CSW>F6S9M_SIG6$/^#CR'K!"8T\U FTA-%]1@?CFQM[ $,\4CUIQ MI#I7\@'#\EC[_X1\TFE_3$_(NT;P_$8S\U*I;S(IZ ?CL#^93"M>1Q#T$Y], MO5%C:#()^Z/)F/QJ&X[0'CN["F(;\6030@L[T?WVR=82WQO.GD!'G\@&KTVG MQ^K\W[5CWWCSVK14-W5"8Z@8S*^2TRIU?'1"_@"-/QF-3[>*0-5@30':ICZ&_60+Z@// MGQ-+XC@8CONSX>0$4]DGNP$8KP?8UCDU'/E K$Y\:+KF%?NZ^6O!IX9-2[G* MORULU)C8EDXO[&*>QKJ&K%K\X&R'^$=Q_EN3IBVDW_#%XZ9^>5;G\87D&*=U/A>TOW[ MS6/5#34D[\$,( 6N#> (1]-6IQ%ZDWH2JWDX MW[O63@/!L8^$ SPA3H)I?]Q G0EB8*N/J<%S/)[V1_-.FS,T;]8,P9FON38) MSKQ9

<,VN! Q]AT6]-U\KN^OE\T/@\(F5RI3\"P1\LH;$P7TI4H]5W)E?F M\XIZN?E(Y2V5*^AC2,*6L!4;MI[YP<(]%"+7'ULL1%&(5-^N&87F!!? _%*( MPCT@@^KKF\O_ 5!+ P04 " ![=GQ82(L@V64>E]?1W'+BNQ$FYL:M1T4AA;"4]+NXU=;5'DP:E2<9HDEW$EI(Y6 MB[!W9U<+TW@E-=Y9<$U5"7M8HS+[932)^HW/9I0+/V'?VJ9DG#7.FZIS)@:5U.UO\=C=PY'#/'G&(>TNOT+.(M9F.83D:0 M)NGT#-YTD#L->-/O([<%NW@:C-_+M:M%ALN('H1#N\-H]?;-Y#)Y?X;JQ4#U MXASZ:ZF>!YLD8S@#"&_?S--D^A[6PLD,9'O\3@5CMJ)U16_(!6/I>%TW'G/8 M'""7.YE+O05- 4Y=Z=27"/OP-LA:[-#24P?=5!M"-<4)L /J&LX+S6ACN)4J MA/AA;(C(L.--]@#XI9$[H5#[$ZHCR(3*&B48E(PYB*<.Z1I[Z#PK]*7)@9HH MF)K;D1MU)ULK&(YC[85M%XUC 0S34Z2&^4!Z:BLS(I8WMC>@ZY F'[%2U03= MM?%$4 KUC1KI7",V"J&I:3,SFJ!#:R7=1V*Z$R_95!,6,<7'#&NZS2*$Q**@ MEMH+Y7RTB1"5:9B]9#5>_IQS_JCECH'Z9[ ]H+" W!J 'C:&6^\?]P@$>..) M-O%)1[,D&25)\KTT0$DW"1M$W=U4J*M *N_*K"TBX3NXH_(9)(YA,II?S9X@ MUI HJPX<>\CB2\E:;"NG%M8?SE*G/+34"VNJUY(GB$PT#ME/VCZ+_T[6S=7H\C]?1=/3BG@IR=;P#-57\1P_-3?$1]-=A78;9EC^HT?=MAWTAMUA3+YI MI\.OYNV,_4G8K22>"@MR3<97LPAL.[>V"V_J,"MNC*?),WR6-.JC90,Z+PP5 M4[?@ ,,_#ZM_ %!+ P04 " ![=GQ8<(GD"^,% H#P &0 'AL+W=O M9EL86$4I422J.]^MW9BC)39RM@[5P!X\5#J MRIV/"N_KD^G49064TDU,#16N+(PMI<>I74Y=;4'F+%3J:1)%'Z:E5-7HXHR_ MW=B+,]-XK2JXL<(U92GM^A*T69V/XE'WX;M:%IX^3"_.:KF$6_!_U3<69],> M)57,]K/&_Y6L'*#L2!+YL;0Z/Q]%1 @T9)X0)/[< MPQ5H34!(XV>+.>I5DN!PW*%_8=O1EKET<&7T/RKWQ?GH>"1R6,A&^^]F]3NT M]AP27F:TX_]B%?:FT4ADC?.F;(610:FJ\"L?6C\,!(Z?$TA:@81Y!T7,\I/T M\N+,FI6PM!O1:,"FLC224Q4%Y=9;7%4HYR^N3%DJCU[V3L@J%U>F\JI:0I4I M<&=3CRIHXS1KX2X#7/(,7)R(;XA0./&YRB'?!I@BMYY@TA&\3%Y$_ 391*3Q M6"11DKZ E_8&IXR7_BJ# ]QL-QS5S(FK90;G(RP*!_8>1A?OW\0?HM,7R,YZ MLK.7T%]/]F6X.)Z(%R'%^S?'292>"CD17P&3762#[=UB6($'; SXJQP69V:6 ME?H7 >8+3A ?B[?1Y#>L/*VIB:SDEK4XDZ(RU4$F M7=$"R#Q7W'!6RA=,RRG<7BT)FJ9_-(B:'')&)^/6'Q*9YL06(T18M52YP)Z+ M"Z8AYP^=1"B<;6C@W2 M.@%4N ++#LHYAJPK/?9_8+PC;!O%[(D%]GKT] \$71B-$UKQCA3N MS7,\+YA#,)=5>%6V7MM@"FF5HZ\+:TH6P'RN9;6FW(R/3MV "6%DLE8> \WN MIU]B%YMX%=P[D2HLFX\1QCK%; R MN^6]^&B_G]P\3L7MY!OVE;=B-DM?3>9/#+05UX.$>6[G=Z"+R*8 N,U00$H^ ME?;%P9,:Z3U^U \_M8X6N!&X"I\3.IP<1^+=)E([$M)S]"PYJ&N9A/B:@FN+ M-^V+%PWBPB6 R5"KD-J9T#SPBJ8%,AH;K#?;3&?B/D$0^*5#8VXUK)RNYPE*&H>_ZB? MSJ)X[VX?3X![]+=C(;%'C$@PB4YO\ ,/X]/]T"(U&JK54E%_@;+69@UH[AYZ M#>]G> 1MFB:*[@>'M5H(C "HMVQ$O:&SQ%LUQ_0734T?CJ)WK6N4I6.10AF2 M,9QY4N.E%KV>-WS?').##]#Q[?D70/@XP) TWN!FC1W.,\8N3A1(:^Y53H0X M#!N'81,.<^H)%@*-$+=+(VW.;0[=GJ$>-T;WDHL]9DQGX\8^.A3Y8ML>WD0[ M!TH%]AS57*/Q/G!=<7#'.[MNRYQU\"DP0.<8;7S+R1S/XG$419PIBZ;J#G_J M\_C[!>:V(6]2[^PT)[](;BOH#B?\?7N< M]":EZ3A%9%=("WU!/69.5RN$P"M^=H#UTL)=LEO-'(/=N#PD.F_]L_ C^'UL]D>WI#?I%U2 M$]&P0-%H\;N)-S6\A[%7XLN)A@4]9L+0!UQ?&^&Y""OK'\<5_4$L# M!!0 ( 'MV?%@'(WA^! 0 *,) 9 >&PO=V]R:W-H965T5%*EG;$DSL=T\#IYX[*0]0^1*1 T"# "& M5G]]%P!%4VZL4Z<7$8"PWV.Q6'+5*OUH2D0+3Y609AV5UM8726+R$BMF8E6C MI']V2E?,TE3O$U-K9(4/JD22COS$:Q3" 9&,'QUFU%.ZP.'XB/[1 M>R6'+=;2,H, =:X2]5^UG[/S,'%ZNA/&_T(:],]J<-\:JJ@LF M!167XNCP, I;C5P*R+B#SN@.15WG#+-NLM&I!N]V$Y@;>JH\F<5RZ0WFP MFO[E%&TFHS2JQ1.] DKRC MN@I4V2M4:0:W2MK2P.^RP.(4("'=O?CL*/XJ.XMX@WD,DW0$V3B;G,&;],F8 M>+S)_Y&,0#7]-96[:Q>F9CFN([I,!O5/C#;OWJ3S\>49(]/>R/0<^G]KY#Q5 MFL5PCFYTE@_>O5EFX\DE?"L1KE55,WEP2^GBT@ ^U4I;, &F+7E> M,(M>;4 M0+@X.,"\A^(2B$_4#3S MBCK:&+Y*[./)".2LYI8)P!\-KZFE6LI4H#=-70N7,$++T83JR.F::FI%;GS@ M* J2)*E%^TAS,!8KXT6XM!JL. 4X][3":6"LIJQV>BE_;F>VB&<^42<)"JFP MK0)%4/KD,'/14)<@\;M03K^YYNN5-#OJY8VF_2'Q7O=07 "J#4(=6U=U!/]L]07U/-36"=!9/.O#9$#R&FT:[*CBIL-&PB/Y]E1SG MCM2\0GE:3//W\3PPSYNGF$SU#RBCG.0%HYE^P_>%V=X^!J9@0()MJ&\ZJ M)P^)$(K.C99='=*#ELQ08*L:JKR2D6J"H@K@.YXS.DJ)>^;$ ">3=.>4''KV MPKDUL&T,]2JB:"1-XU^UU63PXB3.O?\\,*&-A'=HO]I_@7P(+][G[>'SY9;I M/9<&!.XH=!PO9A'H\$D0)G0$_C6\598,^F%)7U&HW0;Z?Z>4/4X<0?]=MOD' M4$L#!!0 ( 'MV?%B\P U8N ( &D& 9 >&PO=V]R:W-H965T[&B$\Y&&D2H&D[;!<%BF9;KQ6;B87: MDBO)=?OVHV3'S;8V&[";2)3(3S^ED%ZT4CWJ M' 2U4*O?0*8^IY$.BLP(KI MD:Q1T,Y.JHH9,M4^T+5"EKN@J@SB,)P&%>/"6RWFS] MG<,/CJT^FH/-9"OEHS6^YDLOM(*PQ,Q8 J/A&:^P+"V(9#SU3&\XT@8>SP_T MSRYWRF7+-%[)\H'GIEAZJ0F$[-&&UGU MP6177'0C>^GOX2@@#3\(B/N V.GN#G(JKYEAJX62+2CK330[<:FZ:!+'A7V4 MC5&TRRG.K#8%4UC(,D>E/\'-4\/-ZR(P1+;[0=93UATE_H 2Q7 KA2DTW(@< M\U\! 4D:=,4'7>OX)/$:LQ$DD0]Q&",F09^)XR7_FV5'&[U-LAE0"&M4S>JOSLV@:7IS0.!XTCD_1_UGC:4J4C."8='Z6QM'LHN>!-A*LMJB&9_&! H%IBBBIN/5\ M@'\T4E1X$)+)BCJ+9JXXZY()2/QI&/IA&))?=,(O3:?^=#J#3;.5*N>"&5*= M2?&,RO!MB2"D(A.H"7'.1N[^Q(C^=31SKD$KJI]/( MR?@]R>WH[<##VK<"[7773+Q"P7*B G5(;9B@,_?0'OSI,DG,'S<-Y&B] MOUEP5/X5JKUK\DW5=OV .&K\OJ)U!+ P04 " ![=GQ8 M$;+=KVL# 3" &0 'AL+W=ONZI%+=S8=FCXI+&DA>2N\6"_)[H""-;.%CQAJ1+,X:4)1/GOB4\DXO[X3DN"K M4#V";>!.&F$J*12\-\Y3S]GW;IE[=A3,\^I >IU(BV=(IP5\M,:W#OXQ-=8_ M$^2L<)!9'&5>%V<9;[$:PVPZ@F)2S,[PS8:P9Y%O]G?#3J3SITG#_5FX3E2X MROB".*0M9NM7+Z87DW=G),\'R?-S['\J^3SI=#Z&WR"&+RV"1M_:VH$P-0C' MM[@+]\I![[ &;P&=EWQ-$#P;-X%T>R2-.U;Q!)!F Y5B.+IPT S>Y(FW'1(N MX*8GXB5HEM$;94@V@=NH6W/!DQ="=>.^ HE!&&%7Z!99T\L%I+_K5'TL_($UU']F&(E0,]B5;$N+A?49=,=NS9 M$=1\R%E*@!,?3--3#&4,'ZS9O/X2=F^Q]"FT7S-Y8W4GS/[5B\MB^O:= Q50 MD:MFU(BU5JJO0S:"]3$#'7OD>HVX$ 3&>H[]D(28 ]>7EAC$07%"K-ER3F0X M9$Z&]]S0(]AQ=,\W!5*KP355!(Z4QRM9]H+;:_'.R?*?CXJ2N?GPQJC;2)SQ&[",1I M9@^[PXMWE0;]HWEZ+C\*VG!3@L*&H9/QVS<94'J"TL+;+H[]TGI^1.)GRZ\V M4C#@\\9R#QP6P<'P?\#Z?U!+ P04 " ![=GQ8_V&6><$8 !:2P &0 M 'AL+W=OY]!8$A.!& 8#"!:^^OOZ>YY P7"V;NMNB^V0&)Z>OK] M;?CF8-H[NU.JR[[656-_/-MUW?[5DR>VV*DZMW.S5PV^V9BVSCL\MMLG=M^J MO.1%=?5DM5@\?U+GNCE[^X8_^]R^?6/ZKM*-^MQFMJ_KO'UXIRIS^/%L>>8_ M^$UO=QU]\.3MFWV^5;>J^[+_W.+I28!2ZEHU5ILF:]7FQ[/KY:MW*U[ ;_Q3 MJX--_L[H*&MC[NCA8_GCV8(P4I4J.@*1X[][=:.JBB !CS\79QE M16\[4[O%P*#6C?R??W6$^#,+5F[!BO&6C1C+]WF7OWW3FD/6TMN 1G_P47DU MD-,-<>6V:_&MQKKN[2]YU[;P5GM%KMWK; MZ(TN\J;+KHO"]$VGFVWVV52ZT$I>_\EV&@3#T[G__.+-DP[HTJ9/"H?:.T%M M=0*UY2K[9)IN9[.?FE*50P!/<,YPV)4_[+O5),3WJIAG3Y>S;+58/9V ]S00 M[RG#>_K_0KPQB@D^S\;Q(0U^9?=YH7X\@XI:U=ZKL[=__+UQ&F?A=,^ MFX+^[=..(3P-,I]GWZ;A7__R==6ESIOB8#G MW4[Q@M7B]8VI]WGSP$_+UQ?9(;>9;@K3[@U JQ(/&;UN.SP1 K_ AOQ=M58] M,& -3*!J3;^!Z0".+;VS;TW9%YT@2136!;:%=2CP58SWCA7 MK6%&\Q.,$,RD\IN!#O/L'X!81 (L7[RV$7=0H>I+Y>Q+MJUR"\"@_K;"A^T# M*%+-"(6\R@S1&_\3,-.HQAT=*U2-$WF,OEZV^4,&P=W2(1V,XU?GVZP;EZ.(..B>9.YC7FUY\^93@"&&2QK:KM@&M D'0A M;XL=WEH3[TW+>&_-O6H;@IK! 35%.(PG*-C1M3GQPU'T&/V\A$G6P"TGWP+Y MV+ X$(R( A'$)":A93GYQ;3=[CZOU"R1N_F$FEX%-;V:U*G/0M(*>$!><00+ MZU+RYF,*.@UL/<\FX 75)-KDA9,W%H#P&O1LHYN\83ZRJM4L1)[+G5O:TX?8 MH(MD%BW$QX>=J2H8T$,#:#;1]WGV9<_BD" %%E8D,9UJ+PL/R&] $,&MQN9% MY(:J--A(J$[1_WF@__-)DGVQ;$S4E!F?A@##=@QD0&G8]GTNXD0OG2 O486B M-MT](*;H=IX(Q)Y]Y"D$'Z))Y,7W:I_8Q2^-IJ?;CA' 1M=01]B"[-P9V"_S MVWGV7]?7GX.);=4?O8:VD?1#I5BU.H.G.RB3:CM$BFGZ=;?IJR![LY&7=',/G P%!VN@K6Q!1G[& M)]GDNLU@('IOY,%VG&4-$UW!V#!'*M-L+^D)&.7-5M.7K#1-?(3U[1*[UK;\ M\E=/7M(.:PT@T[EH/Q&L@.@ ['LX*3@RTIFU$F3'L)XB\,M X)>35+GV)A%2I0 8LC)&VFD@+!R/ MX 2BOE.@!NL'M)-B[MG0O)>&[4T2"EA:&G:ER?GW[Y0+.7 M2X#X$+3Z8P@+++ODU>L;2+?NLI\-I![1X#_,7A?9T]7SBU?9)Y5;Q -LDT#K MX9L0^%&P.-_M%[]U-&_X2G<4?H!1%/?EI,T'X'U9(?^D@R#$:TV.D(-2QI+@ MJZ][&"_\781>L+H<#IY=%_S2IM&T/^PL,0*O&U+0($;]V[L_9V0.1^A*Q)"U(& JC\C PNY%J M9<\V \:CV2IQ_@X]1B/NEJ(XS]Y+<$J:200$$RE':CP@@A-X0<2L@K:"0I 4@'-]X8_^W;/GL\5B\6\")82"9+ECY@E^08)=3)XH2B#MC&H_ M1%EAR3A'^4M#5$C]85'ENIZTMS\$>_O#I*G\Z%R]'H\(IQ=OYEFR/LF(XV>D M@ASEE-ZK@,:2LQ;&=MGY1K>VN]2@AOQE$-8@Q=N9\H(D'?RZ;%5>Z7^Q1G/@ M0?F:975)$JH2>9,I0WQ$8LF6 1DCIU="2&16.Y670S471E):[:H3K. 6B,(Q MWHN?\ %1;H7/[984.R>KER&)(V\B.3-%^3&C+E6.H5-L!7?0,K4^&/%FNP]:0\+1>Q83O0J*B-QR0AN:4^6;;3(-@UE MBPSO,: @8O$[%;XCTOAPE(Y.=9NM*Z6T.95!+VD7)UTL"_QM)!9\)H7&(8Z5 MB%XL@02L(+&&]VQ9S]>J.RC50' A,LM%]@!&V.Q33DE>PXZ"$*2L")+MJC1( MN+N'$<0]3V%'S+!.5^>_4TA>8_&]SQ5H0;[7'>D%B0RGFRVX*X$$) P1&4F6 M6 [(U]Y8[4W>.!HSEZC8SNOF.#%>$$,3J_5$FTE)6"STMQ;GS,4D.^(R5 M=F[:2]2!?-7Z89#/>+GQHD7)-32R6" ,$F0G) MA0) ]>%/WF*-"_+LHV0JH.@M\1$&>"4_N3ULY#A6K51'TL^\)C"!ZE T\6=/ MB*55XC@EU_1\X/>BGY14FLL"L)N&@[/W)RD+4I+GA$R/)8ML&6<^&4?TW3A5 MB 4!?-N1G-:FI4SV3B&?0O39<'XM82CAR3C)6B;""$('6%5>M2;$O(J.HGY$ M&#I*7OZ.V,$SB,P35Q>DRA4#*>9N?A 8K61SS2!K@PDJ. E\[.Q8!"2H':E% M .\&4;:/EOLF1/W8,]J1AFHSFX[,2U)Q8$HYNXD8DPHM=-X>"L*)YX&S]%$B M6YP[]Z5JM\T\^R!R&CX!AY3JO&4_P2WX\9VIREDBD*GLNTW&*U1"EXK,L8VT MX'/MV/MOP=2.?0?VNUI\+_OKG2&GLL$*0LXS/NO)-/>5RZC ]JX2*G-F?II2 M0ZX55 NG0,)*"5$Y*[T'ERNG5"%BU:EI<]T%IV*4[4E-GA.MF[0L%3/-VT". M(1:[O*0PO&\26A)41R0I($1YEF0#"T2F?=F-7HRD]WR=A4(.:!A=(,='7&C8 M0)?=,9G[YH1D@G_YG6HRT7\")=^S=QZ>1W-60=4J*M+WZ]^YC&>RC2JI^#@D M7,X>CS> F4EYI55LET@,L%8;$DSD' OIR$@OA[QA\1^".^E'5]&/KJ;]:$W! MB<\^D[J=6*A1USH-4<.U3@,-WO;GXV\0M_2(KB"R^['XCN3=E:+26J(KK0()89+%IODJ];>H M:Z:B[6.WS$F[F!Y7=N#(@;+EX!P*"D+)!<^SW_R#A!31>TK1;:&0U'@H#>#T ^\0&7IN>R8*%^I#@H?4Y3O9-\1#X/FW M=Y6TP[+^Q^T?[4A6(V6%2[9<".FLCM]<=L&3\/L$"C%N\S@<5;+3=V C'@FF MD)^S0@JLQ8FMR9QSQX.\#W>VFZ1/L[]V]O.U/<74J!B\0,_N-DU^X;H'Z?9Z>@ M!:/ +V0C+P37E4J/H^2V)7/!D4^HQ)U@,47*4U6^X1++V!C7Z.%M!IGENRK' M<6Z+G>%&)+]';:R"7JA-J2K9:PB5W#?>(5"R0=^04GCP@Q,.SE,@"6#(>7L' MH:*-PLF.F\#4I\8R=X)A;!AH-H:=M$V84*2,:3R:J*UI-TJ3ZE*YUWK3JI*\ MFLO25G/4PP,)B%9:+4%28(6WU#IM^=&WU,+@X)_73(IRG!193L]U_":%#F]( M3DKQ-)0[,M:/ (VU; (O?(5%,G=\"5.MRF1P@^T*!VL'UFU[8J(C9*.PVJH5 MWTK!=SHTX,<#G%\<%-3GV755>72.;"KYO$$C1.KN'',"!AC!TW9DT\RZTEM6 MRW-[X7!Q;4[>.CN';%#E 7:<9HC8G$&!^>\+MM[4[::,R&L23E8S43Q%R-@Z MN3EJ"V0.."-\3C4W(#%XP:PI++2"CZF\Q#TJ<.)C,V3BLN#H<3P=\//[X M&.X3DEIT)S#/ UJTF8<11"-I^SM]IHTK"A2=UU74KXF;C&(K>LRE(A<]C)L$ M+QF[_)[:0VZV9APF]292U@R.'<0S'M9*/-VE7M$70+G,P*4BJ4@YD&E_7$@+ M:9])T9\BW1G#\V>79/!(O&O*K?8G#V&/>GN.L':PZP0S//U/"$GT!,>T7E.* M%CII[$JHAPB-5>R_W;R#ZR8=\?BQ(!W1:=1LIDTHLZ:53';>)=JL-'9T#(Z1 MDN\QR^E2RDDW6M M@H,A%L;.3.QP93YL=7DF*$>R=D_ ;\F:SOR80@F0LZ21(HFQ:[7Y$F;L.4JH M5NO.Z5\TK=2K27(S+M<4(72F:$-SI_5[:>F5& M;?Q*QI-\B=]U,4H9F)%FA_0WD*]/>\,XD+6<'J+Z2(6$1B8H9 Y-ZH?WJC)[ MYTGLB1QP&G)%Y=4_!3SI&?VY]X]JY3XHE"H'=3&GB1.GI9;3PTZ?*8@VO95Q MPW$B3$(8GWJM:7!M #FV-(:?SS(8T4X7?96WE%YPV:.'G+9]P5FO)+"2#C9A MR))$]'B,LU95YV5MT[L 4IIC/.M!TR-< R:]EXA.9[^H\!AK]H/L44P> MEZ#7L9@\SZ:4(@X_+:='EJY+6$+$A,%6C:K%- R$*H_ !!UX_$UJ")W;G'F7 M)YVFX:RK,P@41X->WRVEN4\O?K>ZXK^'%35%,_S9>WBT>@W2^BE\7D$C UR6 M),\'X-7#&.XG+%*(IGUA-D1)SKZSL2+OZ%]PI2:J7I(FP&=/,2T.5"VGAZ%N M##O&M*7HND=(0NY&.3@-<$_]]RF8@U2H2%_E$"-Y43>CL=/(H R'+7"[V[3V M]"B^%=#);(MKGL^0XM:ZHNE1P+Y-;0G#PR(OC^ MSD<.;(Z@IZXK1RFU,LBJ]SN>3*>F*T"X4[L(8&@!8^A6&B6QLYOEXCW(1@/0 MNN^X=<7]IP+('L6TC=J:3K/-D=&\\EX*DPC\2-8-O\U)&F3+S2+11S1AX =, MARL'@U.Y#?-!:;/*C)6Y:%Z.1EQ:TAH:=.%62)+\QH;842$^*=.F$K+QY?\@ M$YR*#>?.=-=+PN*JOAW;=C'5;MB!4/W@ROKO%?<*:*"N;QGY&W?[0H;XJ0R[ M53)4RR-"JZL%F0Z*:F#K'T9F!A4W9;@J;2C\9M!XY@G/VX-2^S">_/'F-@PF MY]M6)=V@?T(68.E_842 Z+N\N9M)6QF.F^;DN"--MH&=6LDU$I>N1CJ0[VE- MO]VY"QR203BF?X8+-#++PC%7I.0OJB.)F&4__WR#")4_S:M/4T^O/]X$XABW; EW2?3-:(!OY\.,"1AF7FYA )Y'LV(+L01RK-. MT$?R2]@0/\8@=T.BT)$4$..<;%NI:44Q2$47$"ONIM;27:UR<174G9(*7!)K M-5+3-$Q6GD /\TM28TF+/H#E],ST'65E&?2H-*T$=3YF&E[HB/G5/V(.38AM M@D2>L#0@$]6ZVP115[8O88PH>\6_W)0@K/ W39D^N'EK*230 MN_=T5<1UJS-SPK"[[@8=GIXR?#&_^GZ6+9_-7W[/!URNYLOO65M,EX=:V9]#9?5_0F7Y MP_P%H7(U?^I0N3J!RBTENX.MN%KEN2HCG7R):C AEUR6 @?H?E+ :Q9C%0JC M+$1:8E(NX,22DN^+QT%.;Y=]?XSCSR0RRKUW'* M>SQHGH;T!Z1O'-CH38&-J;AW%V["I)=LMKTNW4P,.4LPDZX PGV3!&V0R2GR M BYQI(UHT=&M#P2Y.2N CUVI%@,N4O+H6@H!4)A.3V!(+S%)$;"6:AL")($GJ>=P%;I(/=+/O">BOQQ_1_72*5#T.9=[EKC;N*U-([=6>C%E# M TY]6[CF>:7&]@@ QXR[3W6/KDZ-REX0"FZYL;@>B=D.=HSJ0 ^O(.(_/'_Q MP^M'_S]NT[K$/: MU!3-QA) H,=P,5V6"*A01;/;<8CFKNZX\!>'X7;:0!^XE*P;^:T#GFN[AS>7 MZP/Q@H#V%30$$;\K=X^0=I4&>Q@2#C=WI+^?-/\Y&Y[NG,4K_7,LK/1NS_9Y?"2T/_R"M%9"+Z3/>.E=$FD:@ES@MKZ&=AXRL=7 M84PS?BN(4QPW=P:1V[M<.,#6U*JC,4[+]U/2:TG224\[T$G$+MN2AZ<\Q;=C M0H$EKI?]&G6(>T+(XO447A;G3N*>0;@O\73)EJ)4:^IS%7WK)MW$H/G=>ZDH M#.X:2>,$GB*=SA]0[IQ;O3V,+ER!FUA$1$,_4S&".TT)<*"C[_VM38J#:G>= MI*&;)=(\IV;4HQMOG'#"*'"\F)2,:8WT/ISU+MU4 P=EU&_R")2ZY*SO. PC M&IY. ;YY$Y:CQ.M^BZ"/!]U.*:Z6_NM&- M\]M^W?&UNVKQ06_\QX8WW/$*W;H;ZKDRUJ7!,QU&4&QGS@$#D?X]=#P ME02**P+8E\NKRV>+BU>I"2"N"%8RYIUJ,6TWV"2?V(=8 =+3P7NY@*AE$)35 MDR:"N-&^>? 9U;ZB:&=PAU8N6X/17"<>N5\]?A'[G.+'BT'*>5J]N1"* X&L MEGX/@^?_T@%G-] 73G1:FKM!/-MB4TM5-3\'Z>59)I!#'K:\\BGAD6.$7GAE M<'8(_M>J =AA8A]*/PJ?A MAZ.NY>>2XNORJU.?D/=28ZQ2&RQ=S%]&PO=V]R:W-H965T.(Y,<*BIM7@-#3<9%116*8NW(6@!-C5-5.K[KCIR*%LR* M)V9O+N();U19,)@+(INJHF([@Y)OII9G[3<6Q3I7>L.))S5=PQ+4CWHN4'(Z ME+2H@,F",R(@FUJWWO4LU/;&X&\_%6D*I]:D452R&A3J@7??(5= M/$.-E_!2FB_9M+9A8)&DD8I7.V=D4!6L_=/7W3WT'"+W'0=_Y^ ;WNU!AN4] M532>"+XA0ELCFEZ84(TWDBN83LI2"=06Z*?B!;P :X!$IL$WH#XKA^

2ZM)D>^1#_K N$+.'=DIT1.F MA?"M 'D3TRY01U(MT32(*[0IZ50V>M[L)H(T[0358[V4%"M.*=E)ZA*&A%:< M91;7.X=\6SV'+';YQ\W3 W;<.GQ]+Z#*G1L8+Q*R-;T"#XDB<,\'M>O LM=J MSGP&F/=4]O&2!O9%P!;$Q71T4B8/B^+XNUMHT_2!4!O$M*X=153W,I^HG>F8 MF)[2":[DB8@R+['#N7-MHH[]ZW7KU^O6UEVWUJX@3T>F9=#KE(_?;V/+M-OW M/6I-=@PMO-,&PCLU)[RF];O[%-YI[\++;ZW@,<8I>ZHOSI9^S/* BVO__BU] ML7#;]VE+S& 0X;=GUP&L[:^/0[P^#M'U?FU[6?[2705)_N(.O@<8H$= :Y5^ M2I,4 697L2?.4*_=S\&L38U4JP%#++L2M)E1R=Q[3TM]XL+CXP(MD#NYGO$K#-ZPBEZ2DURM;:P.!2!(M)) =0+*8^O4;!XY (BZ<'LG>9_-: M+-+=P]WA[N%QN?_G_WC=).@%DSS.TC]_\?[K=U\@G(99%*=/?_YB5ZQ/_OV+ M__&7_^U?_O-_/SGY7V=WURC*PMT&IP4*"0X*'*'/^_J0"_$)#?O^9Q"_KS[RO8]]_\KX_7 M]^$SW@0G<9H701HV6(R,"N_]=]]]]PW_*P7-X^]SCG^=A4'!=6[E"VDAV+]. M*K 3]JN3]]^>_/[]UZ]Y5/'58HBKXP@Q^'73]G+-Q&.F<_]GOUP MPG[@*J#_^-MY1N/(Z6->D" L*DI[4B(>WT,F3.=?L3H MU"%\1PAEX4.,000$RDGM=(D.8QRTBL\T<7%#A7T+#>R1L.X.!R""4CAGRBA@>84T3* M^B%.\*?=YA$3A5Q=$!B#T+%:&<+AWQ'5++<_?AL&R !43.B,H(%%#'AY0[A*PXS0H,-7J_<%G9[. MLUU:D/UY%NGMPH(%:29. K6MQH@"9$0./.ELJH6Z0AP99025!!"CL+RA/02O M5Q&=[N)U+#9:+?.-%A[2N"Q"M,U* PQD4$9N=*9$D5 ;"VS&.HTBJI2\_,]U MG.+W6EF5L)!V8V"^;3,*0"![T7*BLY42O"&W)'N)TU"?Z^C /; 3 MC0A*8SF A;48)3-6LZDSF0H/S'9NL[P(DO\GWAJS9#6P!W:C9%]I-2U(6)M1 ML&*U&(&#*-+B62^+<:<$!QH+:?\9:!-6P6*]\2K];?G-UL[@W0U6_ITIS.(? MEET426Z?LU2_8]8%@?G .E:KCWSX]\4_M)J!SL?F8(C# :P_[G&X(]3[S>/6?(A"9X40BFA8$S!P'!E" J0Q,XDPN&YG H6[$!.SXS^)*[&83=_@LJ48"YXD/.@P$\9 MV1NO+DA0T-<\.@QW;WK4(("7/0YX,-WW(*B"7=X$[C=!DISM\CC%N7ZV.8"" M- $EPVT3:($ F8""!YT)<%!4P2YO I<;3)[H!/8#R3X7S^?99AND^FB@@88T M":, ;=-0@@*9B($7G:E4*$C@H!)I29NY"M?D=!?%E,YI4>"\X!< - L7$S", MQ=C9KPQ&#[FXO=A8Z9C+U?F'.U1B( EE\;5-=9WU0YS>%YOBDI",G&Z["T#$(0$VS[+-AEV(S<)?[Y\#JH:;7<'>_;-M/?VN MCQ$)="/-09R#[30#!M2FFI4E[=8:QT0<=84$,I*P81*8ZHG7!_H;U4I9"PF= MJB@9[^8G+3# I$3!ARD3:5[2<00XVQ!//MVLHP7K@WTHF%=;B 0(;",=3JQ6 M4C[*7=Q.RGA(.2%!&PC0+WO(Z,'7K?X,]87; MXVN_<@4&\*4_Q&1S%>DEJ/X.^I7;3!Y\8_%'J"\LCZ[]O@P(75U,]WG70?[( M^=SE)T]!L!7?&"=%7OVF^=CE+_Y6[U_>K.M-S=M,U%W0U$CKA[J\B0P1C5E/ M'[Q%#:L_8]UW 3>?[F^NKRY.'RXOT-GI]>FG\TMT_U^7EP_WGMC?0_#8N4.N M _+ IEKL*JV'0\#:B<1"QR*:@XM?.)C^H&(2?E\P>Y)9DY!(+S336[LE^V M(4!\4L5"UZ(Y$/JE H.?8GJP[8/-EO=BG4RW PMMP1KFNX9\ AHSTI.-/:Q MJB_ >V??;F)4[ <S\/\N?3-&+_N?S'+GX)$LI:?EJ$_2.@K%!2HHH X"7"/FD30D/V M&W3@N:5,-.]PB"E'--7\A OUHQDW%,"9QD&4UH1C@(>9=ZP,Z=<)#,2(12:04%^RI>Y DV6?6P 2M,\*ZN41Q@9*,3EHY^_.__N%/JW?O MWJ$X1]V[ M N&>,+,#9$60F!R@![]T.<\-'7R:FY+G11SLIGC&I)7N:B13 <(YFYYMV>6Z M4"".IV.C8QH<$!VLB\!MNB?[86L]Y-'RWV6MY\URW[K,AU_>NRWK@2<1%XX? M&!&O[/:69%M,BOTMY;.@RR:V9-JR'6 ZK5AVL=Q0X:R\CVBR\;O@@?B$.V,= MPZM05X@CBR9?%3I/P1;;%+,N1\:(60N'*R3@;3*M,#^0K/-ZW17)0Y]JB>/D M31S#+S^26.KK01S55\=C,87XX2J"D: M=X24D#X<+'085Y\OU&# QPP'?!A/&VI8\.U.=_YOV:20[7*TP=3B@;>,;JB; M!JQ\Y#4.W#N=8'7F/IVQ+K9;?!#\"HVBO59 MDPD!SE'L8LA>HH<&<1$;.]UW^"4"$AB\?UQUW#!_JF3SC>'B%%2.P.C=2Y\% M6W,D#:P7)\+F/$D)"'TN;,TUVD?#'J5+_87PX8!-,&P\,X0_"M:? 0,>_@Z[ M[+_D8:]Q6>K#HP3I$1)=4?/J5,]9$M'YA:VNB[WEA-<='3['WZ>G#Q +RHFLE@=^5XGKC?6[O@DP(7GB8PPLA/32T%[D] MLI$0O'PPU%N@2H:D002^$\&3LT]9@?/RX:S#?5 E./ :P"!"9QF@@(5;"6B9 MT>31'+YZY3SW?3OW \N>LO##MNKN'>^ ,]LI8\]%C;L,YVWVV7N*C'^B)$N? M4(')!J6,&/C-#?XZI!2)'9**5_'=X*4_=W6G /^:J8>@JL=-#NB@;YV<^1M< M(L&;2[S32;R5) Y*B1./BD)X(.HR#Y6SE*='/\?%\_DN+[(-)I6(>W,49O2^O+:>0T1OG:I_2.;J5 M#' >[&A:G0-A[_QFD%B*?#GAA\398Q(_>7"KSCDC]BOQ==%E5A4T.W-'OA/],MUM^,37J>(]"44XQYI $;+SC2 'XJ"C^56TA6_MTC9$5ZCR M#$YWA1AE]$M#&TG$@L!DXS!C&."!3P=,0G2.!U3 <.<#>F[< M#@B6NC1D7S,,DN9@+[TN;.1Z=@"Y\K9?I[/C>;?^MERSLR'YM JWWUPS+,3] M\:N!PET?K+W]="UIS65?E7FR"K_+?'Y>W^MW M8<^S*WJ][ZS)"-4=-=;LG,2/NX(?H1492](]NW/47\[673S,4:#K%3>]78VE MB3M@D%M/:I;;>TYM&*#-)A43BETFN4DNAURAJSS?X0A\GZF/ #F#^Q[]Z]?O MWK.])O3"4/X#_>D=JVO*:YL&N^(Y(_%O=,F=\U[ _X'>_V'U[>__N/KCO_VQ M_!6*N>2LULH%#O'FD:X\?O]^Q8NBBM(0%.7==]^NOOOVG1WE6^ ;/U'$FQH% MR6T01U?I>;"-Z70IZ55W"\$!$?!^C[-8K6L]5BR8VSR.;'7O>=2(B&&RRKTE M[JK5^!I\GAHL80G(),.O(;LG2-I8,%<2(S,]VMKI9OE$NU MK\'?>_24@K_W.$'RHHTE>)5/U%4NT9=_6/WI7;7& FY#T8T$SB'#KXG';9;Q M9$H9OUTW[P2RQ23.HLO4Z![.8E$Z['SI,4A8EY8E.+\O E),POL9?HK3=#'V M!\ST>B_4NZ?;5LCQZ[$<#<%MTB+"M'=(^!& V2_MSZ-;W M[;35'>U<=$>[SO+%;IQ;2QY/(#GK)T$EVX75HXNZ)QSK&"=V@VCJ%);/GSQX M##G%Y];WO?/FZ),FJS>$=_F.^-+I%A-^5FL_%]-C>G% :A-,_5$4E;",L9B0#VY9!$YL9Z2B* P;UAL!@MCX#NH,$*6_/,<&,OFZB% MANRD812@W4U#"0K442WGRZO[F^NCA]N+Q ]P_T/Q\O/SW>L'I3AM"FS]#7H1JL]B^[B3^!G2I21Y<<75)_!EXN\J-2_"H M;&%3;',3"[,+)>1YP;;H+U^W.,WI\L(8!;C MT!?4T&#>8&)';439&G$4412\1$(,"WP2&"S0$Q*V;34Z8,+>=>K#6O0$ED%>H1!?U M6UL$JKD'W+NF$?1)$C1H"UI-3? SDSRQ.LZ_T+.0BF53'N9%_N6<=P%?KNG! M=RO)6B&^\/"DDHG8?6!W(31B*B$]J%;295Q9GZ0!@ZU(4S9LZM12O=>MVS#B_?*63 M:D:B. W(_JK &]ZREK5OR/@^0^7[QG/8F4:$/A6?59'=D_59A@,\G9]1'MU" M2BS_Q'JJ&18UXU;OS9MNZ;CL'=T,A:JQ@ ,3F!9+'<7B7P4C[$-CA8:.)UH!NK&@ PKHQQI>=-9#P:O=1O1EB3'7'._^)'^0*-3TT9=; MDKW$.76WKZAC<"3@%?)@46SL+Y.ZX\*Z?7H YBBJYAMI>4RP&P^:L]ANVPH MG[J)D Z^%IV(W47LM2HD53WY.0OR.-3(I8&%LU\C\[(=*P%!YAP#)]WZ$%4M MLOK1V IQ>. (W4>&QL[YD["PO/3/T- )>C1* ^( %W&R*[3O7K30_CC!@0 F M-RA!O7"$%B].KE!B>.8,9CG,[A!9)%K$(7[&\=,SY>*4SG3!$_ZT8^5M;];B M[<+-KLB+@->M,_\UB:P@^?J2/CDNV8>QWKO M(O.JPS)J8N&-/NS%S%N_]Z)AJG]7$2=_?_ M=7IW^5\WUQ>7=_>_0Y?_]X]7#W_UQ#"%:.?99INE])_YZ6NLV^2RX'A@B"9A ME :H0H U/#U'W164J)K9P*)?PF\D# 2ZR31#K^JMJ8 %7WB;F6^MN%2#, MJEO/B=5BT"\"'-ADI"H3'WGK%8VH"C@OBI.TF=:4)1% T 5)9"Z,I4C0+P(4 M^G9E3]['5V./4Q)Q$WU/_X^;*?O-W\H^)E?I)>]B4Y8VW MCRC,CEW@9S/I* MW;$I4=>AV9ZS[(/PYSM%&M'@B>$LYXW-G:&Q4,U>)=H/W MCA"Q:KISE2*!AV[6O':=J%@'[-H3"'8,W82,4YD.V)^N0?I)30WI17<@H_%T M.P)Y,L?UDD+1Q,B[XEI&TS? >U5<2^\ 6F!?BFN9Y[^#XEIEYN2)+XR3!GA3 MQ7%7WJM]=Z>==3_VSETWB*LBBA*D#TU$'+EO]Q#A)7AM_7,F%,+>3\11C$X[ M$2=)ENL$)"I97NP(9?&6B\[3ST_X,_^+?A/4"1>X7Y"K<)T60C9$N*Y";IRI M&PV5Y521P$8"O>Z33$D( /@*DV,D_<.[]_^-^-5YUD.)+IF]=#(1/@9Z60?9 M.S?3B.?@9P>8/CF:DK5>GE;-R/Z[FINL'5_S9W([C?Z^RPNV;Y8_9)JVS5S( MQR#'$3L*P&G.M]CN6+>?/"YP63Y+*.0.A]E3RJF8FDK./RQDK_)E5-KN=#[O MF$!]TI<02M%EO1Z6]<8Q-5WGHY_PX9$\_@K5'%25[\K@AB0FP(,:D()Y+"VU M%DI$J_?W7F8B7"#^MYLM?YQX^8I)&.?:F^(#Z'B7G]B%=ET2*(GXE+78N!RR M5! @)3U4$P3W^ZE4()^BHJP4$UO%A%]03.#'1D+>.;*#V,Z+#N]=V@M0 M,8^C4T(H'+]JA1[WK?G^-MCS7Y]^#@AU^7*D5>WF.G M]_^%/ES?_ S*??!@OB<5F )7 ]E4OF=DE%!%BDV37S)J=/K["M4$44-QL5J,;B_UI]$# MU\&:!8!6M5,J>%"3 *[:V%KMLZ5Z&L8);M4J>,BF\?QYAO)D2V]BU6FW\28: M!W[K;E)!;-MU]6"L*F6[;#+[\Q''*CB=DEJG:?-\G?Z>_2MD"MW*"MU5"E7% M0-@0>,$N\(8Q7]O1GQ/,?F -"C89*>+?5%>'^Z'"A:@^HLDAQP4/)(2X,]8Q M7QEUA6IDT3-#0@=WZ8ED%#TR7 1;Q,MN<9H+.7C1ZMN,QAHJ&>%+I;*:E[F> M;2\*<#XW0%#9]7J@@WA@;_XZ1EI2X/8I"IBWB:"22HYX1XPO67,^D@<)NZ?/ M?C-W[5S;[M)X#?SAW?LO?_VJKO/"=Y=:-P%.4$K_E\^B<8$W'EQ)/3L\[#-= M[5, U].U;+?N:':@82[IJIAQ7FC&GPFZR<%=X/N 3!T%=87ZM49V?],J"=> M9)]UAJ\"A*R]JF.[77;U$ JHXJJ:#459SQ(0<.? MN):"O1LD+\!7&^A"D;U_P!=8_%=:&I:W/>P-OIT)@%8C[BGF08%B1VRHFL6] MV%,5S.6(Z,N*Q%?,5)O=C^K5I$=;'Z.%%B[)CV2E78D\QV7[N"0.'N/$AUW: MKJBG89CMTB*_PR&.7X+'1+=J>%"'(U?7D1 ]=!D7L>S\0V6) M;/.C.47@TZ;[3*U$]LEK3.)9,D,%IB=^I&?-.2/D&W;2J1BGX:%O]1!5R!3N M"&&[CRSS2[/TI/ZW64+H-=HU^_=UF:GN^Z?*A_A>^:!92,<%6AO9%T\T<==_ M><:IH)H,^*;(.'&;O9*$RY4])O&3#VV"]5GO;;!GB2P[I@M#LJ/1JED\]DZA MS<1\\M ^XKNMWDR4//%==U9[K_!*DN)06A!%$E4/]UQ&**.6>BM)'912)PY2 M _D\ZTK'MI5^CHOG\UU>9!M,^L_ %BH^>;F3P&;W-I+PQ*\=>'1UZ(H4^DQI MH8K8RN,9>HCPM93>..N4U^$6N''W5JZOJF+ E/2/_KHJQ#55X$ZN"ZCO@?& M DF)+(,(Q;'.L;R7T:BO#X%C>!^C"A'NV)Z_AYGN'0QT7_@I1.[<_O;OSK=& M3K;=GD_QG,U(R#MW=1#;P6T-5'QR7RN;?=VX)NCI$Y')]'#XG"VN!??F.5OY M_IY5K@G_L8L)IE+3X%/L;ZDDQ6D:L?856P:B458? H!WS'N+V;IB[HP-<\.\ M)WO="^8E 5ZH29! %8T5XE16/%.L"8&?7XV6N;J?Q:LE17&Q(\;.OW,@/N)S#/@YLVC:J+TTCD_Q&E E^GC\U\C(>^:UL]G7BFN!QY;_]]7"8_ZYKP?W)?TD68ASE'RA_K 2*YI^LY8:8.GR M#SL>8+;K*E0KR;4AP>2V;EQU4]H23QA>A2E>1#8-U\!=;1KQ8DF\<*J>;).Z MUAW>E@G[S9K?'KO.TJ<'3#87^%&[LG3']\/5G(34N9P1&=SU'+BSV.B7#0EJ MIE^5]R(9F9."TD&,$/0[Y=$"QW1VV])%92-IBM*LP/6-C9.,T3J65'9T?G < MJ>NXE-7S5'6Z%-7/=68_D0_6F:J$%+@M+V60_7^V??42))B_#Z))=AP6.&)_ M.$VC]B\D2%&ULWM5)4QVK&G0Y:LXZ;T+"GRY7F/M&G5I)@ ;"H.HN]6M>%$. M8%HA XBH7(NN1,B3J+,6 ]7 XH]LF_OP=RV$L@.!XA[;"M5LH8HOQ!A#@C/@ M .K%9_@D2I\)U<5ER19^"87]@)L!CS@,SZ'_HPV2D\>\XPMA\T8D#[HLSJ4= M96! 08$P_7VV1GLZT:/-C4L4_%JM]TFO)Q7D#"^60WO MJW2=D0U_A&2KK.Z*#5@3JY^ K2)9;J@P5;/Z\-8M0"5AB[#$\)%$P*=3C0EE MC>(\3+)\1\2.:W7*0?.9FAQX_9,"4ST6K D53;DT*NE 0;ZA43+L 2/TSF9/MK<4##[_9@[ZB5H._;&Y3)!&B@V?B]H?+3/- M>+*P6?@4*CE,Q,?0!,O%QS.MSK<87>JP@K)TVX;E8^ )JB\'^7?QTW-QL_XQQ[QTQ++95\C6P:8K,LRY9C_NNMO+EIF; MT_!GIAXKKF%56L_0<4L5DY]XQBF)N!^^I__'?9']YF_\5G[.FQC?K$4QJ;,] MN^%$A_[$;D24Y2\.%-,3=WD?'"0<\[]>B+/Y7I2%.VXNBHKT SCL/C!^QJR% MQHZFB 0G ;OY4F34U&JBS#3+BK&/>WYQC=LBOR5379+Y>EZO5,6?*627T-'- MNBSTAL[VJ"2!.(VJ8@U0Y)E:4/HY=9FF=)'/%_ MG 5YG-^L;UFQ\-+2SW8Y37?R_ +G(8FW57\844Z'LGM+D4/]W?T%Q@.*9$LH ML8Y^(L0"\" M(?3[EN,G:W^6[JP/,;M@@'NV&I9;&[$',#"[JTHFNENF LP+.V"O.52U^FQ3 MHCLZN-TXBZBP)RLNI)TY,J>S/_'R2%U:V9$M5IM1O+(D8TPVP?MB2[98U/01VNM7,P[0NM6%*<7ZC:,ACH=D1#]-S7T"Z$7!/P-T#/\]T+TR M2_Q6L=M5BR8,S-'MC2M%7E9 M)%9M2-P9\M7>K*?*+I@^6ISYA->.YIG-64];A=$UJ)[&]-$2^N16Y1V[O&H M%R2V#-Z( 5I;W2;(03%U'3A4]70S/_HV?$.;#R[3V1J71\D$[1P-S[Q4 M]Q:G.;\T66X8G6=YD=\_!P0_!CG;@1*U@"TQ>"Q1. >;1AVR"XZC".*D4[#< M,7EVX%3LD4R/U>M](L%&W,]E1=Y/.,46T)&XQYFL"MOT,IKJ$3B(62&#/$1- MTF\7,?'<\1%I?A/-'1I7J3;P.>45XK1+;ZD[GGDT)\ZCG^.,(9GZ-Q7&F_=@C47BD7W]],T8J\-J%@X#7O5T>M' [!H MWA!A6Q7R^A" *8?7G\-N[;N&!D\*6E2\,5?WO2@;DA<&Z;@?9<: -CGW_1O9 MQOSN)L17EW*4H9;"PY8=]LB0JO0M@86IK*VD1G5W>IH M%Q;H/DC8&Y,/&<'Q4RK^*99I_*D?L7HF86Y1V@G3'_LSC%6.Z!Y M88WNX:W$1#6JI[%[N(3'ZGILW^8Y2R+*B=CC87>:;"'>@@3H<$[BM'S-B 'C M9@XL=3V,+0E+I-\A@>:C:?6([>[XOAF<:YQW1?;(#'O$? F_LDA^8]+7V#]6 M7N\\4!2$%6OZ).&75^5?V:LJN"##/HMW%^_P@;P=$^RIO"MK'1/\$,0$_10D M.WZ*5=8 #A)TE5(T7G\0.-VH69(X!D9+Z[H!E,;B#4F][\;\V_W-%AG._?N+)WN>&">)\?5CK6&1=Y;!!7XEZ M>WOT2_E??[QOE*C6:H301Q!2448WAS.C0!X_V$5I'S[HX8&.'FP,*7;H6]5# MH5S(H0K< .%N24PGJBW;H6*M"&4"L$[S8XYOUG5%4(W AT!PCJ%F5W:%-@2( M\:M8Z%@$ZU)$3:$&\]KB^TB$_2@O6[;S/>R/[C8MN.'"-AET%NZPDZ 5$:Q= MH"-G^A[,W2[='CO5)!(?=IV&=;H'$D3L]1[?5JF>X=WA$%/V'A,L9-.HPQ$7 MSNEZ"2<[G1,BB-/UX*S;0XCAB@4 ?[5?O[IL\#U>"(V1O):4U/#P^]"\5J;; M]*8']Z $J\,DIH.%+;WJ%KAK<(]]8Z!(X!>IM%4$W=S"'=W# I@.;N.*ZU?A M2]?UM:'HI<>N-E9LWXI>U@^&76P73W4]M@_ALE4 MP#\^O]IL@Y@PA[PA%W&^S?(@N5FSRE;7\0N.1#='1R<91 K0@4:(WG*N 71@ M'&\PHUT#KDFAC*"*&-M6XT71.+VR9:G/7CN/0M8H84I(N!)$=UK@&WCU,U_Y M2>Y-U>^+1B/*-^663=.Y^C-\_:R7],=#K,GT<75;<9VP -O1F872M&%3(\$ MV7[,QI6V[YB$Z/%L.E9*TB!"NU..J:&R0X\+REN2\07KY2OS=O/9@!,FI$LY M"]9V*BL:D%LY\J4P.8')IS$)%Y7(7GO94*&O4DH\I5DZD:6/).E#5A-FE.^Q M!M[RPD0"U["=2J$VU&@:D'[<)3]RBZP:KJIWGH/]/).'XFG>*:,5O6 MBBO/=W'^ZSG!45RPGW07?4P8H)>,;8(]TFXQZX ,^5.LK9.NIFBLR MS&.U?MR9'G%)%+R>N281^86+O&DH ,]DG_!GZ2$0R5+Z8R@8Z^.._>50 MD67G[$L#Q$>',:DHC_A9>MB&VH0\GC G$I]="$T+O0: CQ]WCSG^QXYM4[WT M=5I'7, CQC["M0X571!ACA'=.>L>D-6X2"![/5U.)"E^@7>RBS@/GIX(?A)G MF^OR5.6!W?JV.9DC+FC)>W?A#@K;VQ&ARM>[[1)B"_X@(%! ? \UO)Y\VZOI%^OB.$ M_N3D?>[H@+-<3Q%;$YTC+LQ3?CG9H/EE!UL6TN*_7@TT02/"_S8=VY3H?@P MG^E%4<]A77C@>4O'D-&V&))_;C-2J(R_[^5WKPO6E3N%[\K=2/21%27B[5S% M#7/6-WR &[F2\<&U^HFL=C.K* M+EV@>[KU$)(^N/AP5:C=O3\]8-L!A8BC# M1F^HB2*I03>CB]J$?0X3LR@&UXJ)ZX?6B##%D!9A7R+%!5YC0G!$I1=O3FFT M')Y+]*3F0WP8I #=^KP'*?"E>V]>+:MZ08\' D&1SY!'DC),K8ZH4@=S?_$. M&WV9- 2_\L7_.VV83S\').)O3<4CU9S=Z>(ABRIFMQ&_ZQD6IAG$AV@QI;K4 M062*$8!CRW0B&'U,T04=\9%6HA5X^5X\7Z%Z."2-MW@XC\EV15[0K(_= I5CR2P/>]42G1(:MI[XU=.SO3J( MEO)^RM*?<%ZPG,\0,.8="N@!\N1< M/&-49$60M*K \&=_B. D*-BJ(T-IEIZ\\+':KBCF=4R3I/*O;)6VSL@:Q^Q? MT8XP[V6#;#&)LPCJN?2RJN:DT%DGUB-I0'2V1S)<*^>L9@-$QT5B8)\23 B5 M2E.$JS&NVM;H>?+)?IN?[HKGC,2_X>C'-,)$FE%Y2:>S_>4K)F&-2,CW:,@58"+2JXK=BU MZHH-Q/E G)$C3*J7T'F>WFL"Q;5>:QXLJ<;,?LJ0;AB\>$ M#[]"6<4 _0WE "H7G4P;@A"J*2%.JNP.(A'S)^A-*W_WRJ3T_;W)]E@@/=N? M)T&>]TC5U%A>Y%DF@31)D@H%.L/1\V1.3_C$2-,+CNF/:TTG(9]T=_T9GU6=C=E[8'JWJ;T'_>[S28@>RI*_)3&ZSADCQ#:G51C MS "K3GG\8ZABSEPC >4/\RJNSC'F&08N#YE3'DLQP6Z&S3;%TKK![Z/K MF>+_S 5;_$RM8:Q3GY!=BN"/;*I^D% )SJ)JMO9(YO^\;U0H#=JJ,R&KL.Z\ M6<9W?5 ?GDWDI) R"?JO)HN@__@;7\.=OL:'+6(/_K9\ %(RQT)&ZP^+SNZ* MD;N51<3RGT% ?/.(B8[WZJ^ 7[3-8.N;BC_!?%5Y;-UWO<@V09P"?-F/ M<1IO=AOMMSWX.\S753)9?=_6'Q?_PHK1.]^XA$&_""BH%+LGNP"V&+R:;;'] M=R!;5#%9VZ+\Q^5ML3MZ]^,*&"]LT9U=3RL:G.T?Z+"*+*<7IHO8;*+JAWNYRR)KC9;DKV(2H;*27HD M+; .$N.$E]I*#",$V6MB#,>*\ZV8-2U@$(@?N.9ESPDQ2KN&R@KA:B1QH,6& M0K$T%EQSBDFU4I%#IZUB.35%5)-$,DWH%&U65;0LP6H(L-.O>_QSPH";;AUC MF0,XR/3:W]S\=*PIY)G9.ZP+];]GY'R7%]F&"JG9Y54!02W9=>PVZ_9#"(#% MNYJ%;J>&$@9L,_A3L.&E9B1^E8L0"RR,+5B9KTQ""[BX95@X,1C(C"N&AVS[ M0 %PVVSUJP(S/%#F[R)$G=V;@.$R>#M7QBR=X"V[(<%F1?&48DO_2\FA#:.' MPHH@5"H^1#PJ \=!' G56-#S_AB!E!]E#K^N6+I)U>=].B @#]:R6[MM!P+. M5S6LN"ZCJ^^.LA3L\J>K"/4<1 &]\+O>C%,ES^E?#Y\SNW])0,#^U6&WXU\U M!+Q_';#2V[^*SQFT?]E$J,V4 GKE7\Z,4R7/ZE]\DK5[F P&[6-=EKM>UL!X MX&>'S/3W-$8!W->L8C3>QM,PK_S-G7FN;,]ZH9[MSW :/K,6(H9C=#N:1UU1 M-2(96Z,>X/C1'U7)E$.35%2C>7%ZWI6K8L]X=&Y'\\GFU"*9;:Z-XXG-J9CJ M:7/SW:7L\X**=4D^YK(=ZYJ@1> MH4_LFH\?1T+]I2 "V+<0:[L89\3P*; :+\(9P#T)I[:+;XI(*BX;^3AQ6Z^[ M&3$\LBKS]38#N!]69;W.IK4J+Z;F:D'4DMQ\ M(%/W,A7].XH90',*CM9Q&J1AS.L)\L^=L]8%R2["$?T!!:Q\2X*_1@_/%+Z! M877P=KFH-5@6=F$]#K89X?#MY]-YGM$16/FWSW'QC"(^)Y:[I#DKEDX9XZ-E ME,&,H$V0[E'P2I-]2KT0)602L%W3Q;_3K"^DT2_<#/CXH/NY;TNMOK:@_3'' MZUUR':\/JVSTPO3PP4Q7,*<',PV:7P]F#OGJ^V!&X"-&P-<.M'81NVUGV1S# MY$I,8^2E8T(R M-.]%4\$#.\4(*5@+F4>;%(NXP>0AT[IG/GTZ7H>*>15@4(9_AZMF6;[T*! MF+N.C8Z-2("HA 2V\4&L8POK8];W.[:^.+A'KEZ;:R"AUM5&QILUL1(,<#UK MX*=;!:9]#3OEN*(/KQ?7L'L)(X#1S?KP C;H^FJ !%W]>W8@#].!3I,.1P*D)7+S46]![U6'G8OC3KDF$39YG<+$FR MSP%E[T-&+K+=8T%7354CY#L5VE(V+O*"RS^JYO/1Y$$S/I1ZF:1$'(1Y\'3$ZO"SL+;S;J\E:,JT>N& A<"7$217=P$#^+"=H94 MY6LE%);*E4@SED3M/_''_(8[4Q8MU&#P>W;F/BQ[=N4+YWDTWYV^$--@[<1S%!0$4?_ M5[#9_@?OC)["M7+I)>OI >\ESD*7K&SM_*809:;*>B&=3NA:N:!R?,3L?[.G MO;%\G@D!KD:>70RY$)X>&K3:G8VMT1Z^%6.PJT&,?&E@FVHLP))VO44O<=!Y M2Y0:%_IVY5QRS=(ACJYGR?T^9_=Q]*ZO@H+J\*9EN.G@U@$![-"FX66T.R>, M,,H%9;".:Z[2<4!40GKAG\-8GZ5#>AC3S\XNL-U%>A=404'U)=SW[#?X!&[37ECO(ADW::_!KV2-EN[O\Z?+3CY>SK"GK4]::FP_4KFA> M&^W"(K\A]YB\Q#3'56;,[LA0:\V^XC7K3E=,P#5H/Q:5+82;4W;F,N4+<,0T MB/) -,';"%Z$CY;UNRW\FRWTHR5U1 UZ:3BMKZ MS/+GS6VB CW6-AR4ZH ]NH^D/1Q50_IQ!\ET(*IZ'NO#2>A#O*&AZ6;]0((T M7[,K>C]D650[A^$\U D3SJ1Z"";;EP,:B+$Y\]6=LC@FBV$5+ON984N1VHM# M5(N,QL-51UQO[5%_&.N$Z*--&@]O':W2BXH5%8<$1Z?%;1:GQ55*^5>?!;LB M 5JBDS@M$S1BP-B> TM=HVN04% @CL9>>C-$Z/W:201C4FTKJ0J*Y5E6:MLM M,B%XE)T:=XCTT'YDJ;:=DVZFZMO=^"7V?D;;_E5*%XR4[-YF\RI .%O7LRW; M>!<*Q+9U;'0LH@;T:6>S-_PKK;X%"6OV"E9,=L_ 6?9;(GAG^2[B5#)L*QE$$2RV8-X$Z6X= MA*QX4(2V 2E$Y9\PVVRS%(,WZZS%_!"GHK8 M>F3EB OS_JH7<_WJPTUR\*FYFW.S7K/3L#0ZIPG1COI8/:K^TJD=!^@FCJLP M]04<&P+,&Z'PEV M9OH8A,]QBLE>CF?&TSPC!MS\XR"(/.48P$%F&2L_':.J,0ZG%#\.[\8*Y(E_ M:.?\:\M9A@NBA^5[.V(Y5>^]!CW[<&6K;VYVO=3YB,->P' 9NY(!OYY@KVY8 MV?EN?J0& 7P5H6"U]0)"^CO,:X<. ]V7#1((]/N%?MQRHPTV&2GBW\0O9BQ* M^C.)"[K$6]^L/\2O.#K-<]PI(FT"!%H7&=FN%T-**+@5D($=Y2L#:@,[&L-( M\USO,Z508/9.9\WNRJUW2;)'464[.$)K1I@UN*"4H59!?<3DL(@"LV*E'!P) M>,C53A\!+B3E"[6CSYA@^4OYL@5WAQ/&YFU IU-^6RP(>9N)LWWK+T[[<;UH M^; Y-T!X]4Y=#T+ VW:].54\016TQ$,?CH,X$I+IK=#C_N#/7KQKN,[2)^KH MFPO\6#SLCD9Z=89H* G#!8QX)4_W2X/93 ^-M ! M^V,S^N<$:D@O[,;X8$!M.5Z\#SC/4MY#@$:]^]UC1J(X9>&0\6GN:6G' [WT M[";4P=UG,Q+4%6@7KE0WH2L\)"-R"_1ERW&H<"V!0DG2-"MF66P:&'W_QW?L M_^F/Z-QQ@9:D?86K5ZFNB' +UWX<*M9(U%=H"OFO[U<4>D7!4?',GJDD0\YV/1_PT8#5N6"658O^[O%ZC/=;NJ);QSBJ5N"42$!]@@V:XW#'!ETAJN\X#-@"O#5 F&TV=-R\R,)? M5^PQ#OMKMI69B?-\QQZ[$?ZOYRR)X$KJC/RTQOBXDK^X#\>8$PJ;R\)&!\(N M'3O?C8B=[WR/G2KAG&+G.^]C9Y=#=>SD76IIK'NBN(D4E*C%O?O_ ^KQ!%2' M[VT/J.^.)*#V%%8=4-]-$%#5B[N<%-+"COZK6=31?U#)J)UBPJ[7[S\%&]7F MD1YL^2AJ8YD%3!W,H@LR,Q,*"VE $8.=;Z?(8A!W>$OE?PYR?/I$,.]4<"B' M/@?4Z3M@ITLWZ/ D(?C4T&="!0G49 M,+/>M!E0PP'V&3 Q-+[10$6=)2DAIP_69*"7H#4T.Y(5\%[D&D.ER"HI8'>( M?PX("2Q73 ]@X'9^EP#&NKFI/C:\O53SL: MG$6[BB0;N0T'Q.[=F%),7YKC>Y_*84PM&WQ%3MWJN/])CJ<'@3V/ 'T[_!NR M"^/O:=^0;1;H2]&/Q56:%X2GZE=LQ87SXHYRQ_L!1DT%7HTV^A" O%#=5\SV M=6M7;*#+V/W84^]Q-Q16J**!&)$5$F3\Z=0]6F!QT36NI"3!R./VB=U0BA>? M=BQ7O5FS-Q3%O@'1]GH80,@7M^PCMMX]7:AXX*;N;-K=5:*U0H(:6W4+>A(D M=#F%:3402QH(90VDM0:PT$#LH($1>X<5]_?/ 57;:1J5:\B<1N";-1($$*6 *A*HID$##F)4(/[R9!GM^L2UEOR%W\]%S4JA#G_#'.SX,DP='9_C((G]NPNA7/>+J :^>I ME-):88\E"K,.GX;K[OJ6T67>4NWW9@1Q>#D;:>@C,0![M<*&Z&!!K^]GTE)G MOF#G4M+=&G9H]8A1=6K*]8.9?C[[L"6MU,KE*UUIT6AX2^(0UW_,R[_F[_MH MV$[+LQCB*KPU;M@(^1,KW#CM$Q\JBHB3E&#R&@AZU3*I)F1_#PJ:06P9 >BJ MB6(?Y#:((XT.VB"0E1&[K+9K(39_!ZI^>,B HD9@N>W$8-A>6U57]CS8QD60 MQ+_Q'%H K=#-%K.R^^R>:,I^_T)_R_YU&A;Q"Y^)P(LDNHN\I3"^&/N>/9$] MWQ%"UXA6T=K /CB BGVU*\B0P$[19<7D'AQZA4IX;\R\CQ!; 3U+G45V?9L] MR7S 9/,I*W#^M:IV@ 46JJZBA?FFGJ(&$+".HI$C58??,,GR'>'9C7Q?+7C, M=C07XK?PDXS=6F-/:U-.$:J 8C_9.#CBSX(9 A(85TT$5(=2FQ+VVFFVAK^I-++C[1YXC6-6%[S[$ M:9"&U/KT84D/"Q2 ;,S7H48'"!=4S!R9PH<^9M1E0=&Z(@H5%WJ*UU3M:$I, MUIA>^/M@@10?99E,^UIS$]<.[DV^W1'!D')?SW[C=D#6?6VYE_(T$D0BH<>,:D8X?#NMS_.L M+$C'WPU'_-52F97D*,*4A^98.".LG] >!:\X9]19 E- 9AW]%:U>!8!5KIU2 M"MB]*LX2YZ-,>#1;$PHXN!TJ+=/RYE0'"&1?2L.%QC0X8)4G V]&N7+ND/W7 MFPY5)LPB$YU8:8C<9&GQG(C[4Y0$OT!5ECWX[MMO^7[T(PZ(V)MN7Z=D8'_X M^MW_*4JJOVYC#D4I_\\=)4@M_;N9 T2149:G4.$#(P1=&"](+2&@#0)9!*_+ M:KOT7?-WH()WAPPH\DL*LHRC.Q1@=V+8D! W[MQQXS^NOOW]GZQN_*>OWRO< M.$AW >&>_&_HR_?C+CYITN[6]%UJ@'NM:L(W .EW%;VZX1;"PF7;EM8ZC[W MK>O*)+4Q\IWL>E;A^]Q026U?<1@\:M+ YBR*(P'-7(,E$9]#U'3!K]5QO/C?]1)E^LT"3 [79^B@69+>B,IQJ>C## V5" M+D+4R9 )&"X?LG-E2(D4ZVA45O>#2H@&R--Y=E9BH1(-\@1A@#@?]1_%I\GL M%I,XB^)0[?...+Y,;!IA]-/; 8('DYR2([NO5&C SC)&ILO#302?W.1#$&(1 M<)TDEL%]<8ZN"'J_:& ]<(E#9NS>P#"00/'*$9PD6:$U8S\PLP^Q:J:9J-NR MCP/Z8ODG'?_]N,3J56S.BU*VSXW)FLRJH2_WQV'R8#JR_VS",V#'Y ML2S^.$]FE([$EQM6I_5F1O<(_=F@#NI@?SHRC_Y E3J5:@2M(_)G6?A1[LP( M'89T6E>F M9(_0E?7*H)[U[T?CRJ=K^MFF\^8#'3"ZQ^G< M+BIY>,8$'\^*^(LI>ZXH+ MXJ7]F.M>(BK1FQO(G *XIXT4B\.CH!*NNB/.7AG07Y(=CNHZB,!O\$X%._=! M$A!6]='F:4I@4+\RL'_@10I(*)_1LJ+R$&XO%?1"]:+W M.,WC+*6>S"^ZWF9Y07 1$][%D?Z6_0)OMDG&I]4SG.)U7-Q2>?+K.'B,$U$@ MU7V&FG$\.->;78FR]\XV&$@ F%D:1:D @;5GJ6XU#I^-VB.A__?O @ZJUFP"8KPF3\ERM*"Q(\[^'=$7!LELUU)-*TWE9 MK\6 >V9O84GSPJ(R.PG-G_E]D%R51/AU2UT8Y^A$O(RG2W)=E+'(G'UKJ25#$? MAB*_PA6,["FJ $<4'DEU,6>L%ZG@[]I4N\D,[X\K=(0PN<,U?/DF.U>*W;K^,%@MZBN5RO,2N&CFLI6"O .\S*9U"P4 M8%%S*MIA7@F3RL__'7*BQQ,=+O :$\*E/\US7.0_!\'MP(Y35)>6WO^M$[^OKAW2\ M]7,UHR-\O#R):R@>TY3OJ(T[7.Q(RE8=_. EY_-ZC>6C@Y]G:1&GNSA]*AM$ M9FD_MU83\,V936+:75B%[9'CZMD;,R4OXINVZNH3"MP<^'BP2]A9.K SD_)W ME^)(_P[GF+S@_#2-^&%_D.3ULN)#1BZRW6.QWB75#5J- N<8"++BSUQJ:U<, MFGH4H(I#\XBA*/K36>*OQ EE]8=R.'8M3@S(+\550ZZ:;0!^-%L-BZIQP=/_ MQ519_AD1'.+XA5_G("7A>!LXN:I M%#=131ZV2=8\NJG_/DT$G#YETX5!%P2/4BAE"+-#^Y'2#'"PE0=N,UB>QBG" M8!O3Q5/\6P!_6[XCQBW)V!W3/7LIP-X%U)TY7?5@(."1ZUC%-+J2%ML/U[*P MY^9J%1'Z$R/#)_6:D'_NUU_F+.:%=4*,7ZM']<$,;?VY^6%-!C QJT?'/#7O+S(4*&2"R2@7CCC\0RJ*K M_"6P1T[68M_H3QS2#]>16''S$HX O./=2PK^MV8-W:RMO;%^Z4';B*30C8H7 M_M)'8(TCN9" ]C!W'LVNUWJ1"9$M?B?$3O$3:[7NZ)E32,^<-:D>C)]0)_8V ME72^=^KY7=*!]T-]O?,Y_/JA5ZBOB3;_<3@Y% O&).AFQC"^D!]B>-T5SQGA,Y[IZ^Q M;E6D X;S S/[LB>H(4%\P<2*Z75Q#8Y^80C G7F[4EQDFR ^/,"T@_MD/6T1 MS/8C8#VQ()D91QL2*-#]G2EC>1&'Y^R.!=E_Y$4!=*%6#0LX"YN8;TW#*D"8 M>5C/27=#8N84^K)_]R1.(]B_DS2:/96 M+#@'HCKDE.N#070NFJ4[Q[S@L'K++UVU, MM/<'>Y, NO Y4-3Z@F=/?+@+G8,8[=Y,YGV*V;8(WQW1VR7*!4WV"@K75*'N M;4XC/!/9$%9020D]9*BA!5F(:SJQ>W_II5&^_>NG6C>*W@6$/HIPB HNY'P*#>[\NL>'E9R- MU'3Y.4%%N7H?ZV>4F$HI/'F'*_CL,@+:HL2Z>F M_ X'>98&C\G^EJ[7XL<$BZ3Q9BU02(2C$EIW\#37:(#'G?,JL'5,.L]0,,>K M<\K2/;IL1I/61OJ4)\Y1,RBJ1JT626S?JAFYP@(.;G *;59,.VWF1!5*&H5N M:X4&M4)WC4(?+0I=)C"6O7ENUO?/ <%G08ZC\VS#0K98<1+"Q.9EYL[V#Y;@.5 B(\T25.FB797^3T3QAJ[GL)59;M]K,& W@\U"M+=Z%2" ^Y@&OC1 MW2:M45"%X]&UY(X\#G>3M3C>V9;MEK(&P2?[4W-,/-"$G0<*J@D6;.(WS@IW%ON!R<\1L\#UI ":S0X1M):Q]", DI?TY M[":>@L8*E51$C= 6'5_<;E)QGR1Q@[:X57=?8&>UK3-TRXQK38O4*0D#NO5D M:FGY^FBJ, %@(K:[;N*P!#6N0*%#Q5R*884FBGU;)[R+!AH>2^R(+?U4H M#C:6L/L4(7OVK]:+^:P)I.E: M'5&ECGV,P357" !LF'D M#8=()VW7*GFIH=]0@+R+\U\_$(RKRW!+A4?UN&\D.)J4.EMH5 UZ_(%1+]62 M89%Q@1@;S7W7MQ<5>ZB:@9ZLF3[JJZ[P%^.YI(]V93SVF2(>,-F\-VE_I@&! M(^&L:NR$P%E&@XM],XH#D@NR\?T(=4MJMA:_,(F_4/$CQO55&N%7RG-V107! M)!?'#@]T7,/M.3=4R()([J*U2R/9\8"*)+DRIB@QQ#VWQ&5OX@7V[W(D\%>( M4?#BOIU-3./%.U=D?\U2?Q7/#=-+TS1>SG,V3B^NZ@U.C(68^+T MZ=/.=/-I^G&.< UL4]HD:U[=(,>UQC5+,4=Z=U/E<]*8*R1&G3>KVV(29]%E M:FPLL)0F2W!9"R@H$.8_+:&'^R(@A<>:.,-/<9J:E'$4D?L'"L@>_-YRI<^D MZL-!CC=FJ]4U9M&&!\RLL9QL2.&FZB>WZ;S M6: M?L^ZE:$8YW@#GU9I4P:ZSB!'&=@T4LP:R*0QW]!6AJLF56I@*_A+\U[&440K M:5/B9QP_/=/P>TH3YN )E\+B6Q)K2^PN-OKQ1K:>"IYIZ]8T]%%&P5ZR+;?- M6_&"2F:JD($19^<-!,UQBK?HI]+JX5ZIB+3H2U9".$N2@.2("BO>&WWUUC:3 M9U KS<-UJJVWH?MJUX_I35OH2;DS,\<4-R4''D]STRNZUU0WW?!^3G=3RS=H MRC,7-#/N[8).?.,WSV=7ORU";^L(76K7^VT0F\HJ 4&#;T\FCCC^#E+WI"&X M%P?'&84'B#AO(*X9^B>*Q5-\A#[AN/J3[P%Y[#8]P/[/2)X\#M=+?(Q%#P&/ M+YC/+S'\X>'1!WN C]0O]K_5LTF :.\\^O'&]9X*GNET\\W%ZEZR+7<2^O9W M^\883H[P M2?1XQ4_R5GHX&\?UB'JLG(#GLC5G2&)M@9?7;AFS%Q^CA\Y6YH-;/^YWOQFE M^O1R:(12];F%3JF3%P89P\GQ3H\C%#_E]#B C:.<'@?+";B0@9H>%XCETWV. M7K'\;=\=O:+BQFD>A[SRR_QWI ['.]X=(ZL29[H1VA[L*'>%+-(LM[JH1Q=E MG=[ OD]?U9X^/1'^TNA0%Y:5@7SI\,U=Y)Q)<\H;FS[Q4=)^/? #R?+)^T*:1CK>S1&#XN8KF<6'.:XS(D3_M%S:J1[J>'-.D^JF3#A5XQQEMJD79-8X]=.R>6;/ M DS+Z/,G7[*I*;+)]AWQI1?-MM&/-Z#U5/ LBVKST$<9]GK)MLRBN]Y+JWEY M@^%QG-Y]>ODQA1(.[CSPY/6"?H*Z;DO;F4,_0(5W$LB:.HG:FFKM_#6/0=!C0(F%V/LR4$>H MXQO$!Z]6P6U#'$>_7C7(#T5//T6M<=!=BG9%MG(/J:0"J9X@?TF(ZEV8PM\ MCV< 0\<;;\=_AD5VT-]F5!XK+MP^^S])])[\ ]4$_(SIX3..=@DN3Q4Z*PEQ MUG"Z*YXS$O^&HQ_3")/[(@M_%?JYI;+F9_M6=94[INH'=L]9]XUF'A0P-B^B MSE;\G75$F!B[@$C=.%H.6A\D*F+JJCQB1,W8:,<&1WST,FHB/OZ*!=V#^D&< M"?0+9\/+!MB#-L4 M:=Z5ILK1)A8 _2+0]+8^[\N#L>)LN3A\78TRP_>8U&,?/F=]/%8"]\9C.R(8 M/+:&]T<(X:L'NXO4\F'C=SF^Q>UUG.*K F]FV$HR#O9&EK@= M]OF/75SLVZ>5MR1[(L&&=X[A(RA4 M_I8B7?89DU)9F[A8Y*L<#OE6HIY:E?/%OO9X;R "J@1:, ZN$.>@#(JF MX,/ )RGE#06^ZO&V5!RWO&&VQ)F2G[<5.WOKO;JRVZKT+JAX$$8[-W('JJ6KCEE:U0%PY]N# K /9']=L#AK M'CTU ))]T3"O".YOH>>/+Y]NC'JOXS5FSZ3_B@.BGW'?X+S20JE;6IR)ZA/] MNCY L?C/,L.X?2JX:<;,WS_!7..B \GG"6[97LWR0SZ9I/J]7CW?*3.'P![ M/JK1W]B>CU[!L^_Y=(=^.WL^.MF ]GSD!CIO>L_'6>_5GD^K&U.I,"GV>A!2 MIYJGNJHQS5.+Y.6]67HC>?C 3S%;WMV3G^//LP<)O&CL5D3L?[*\>IIOI(SS M7N?1%WB-"=$6X?@Y+IZOZ-ST$D>[(&DFT;(@1WZV?Z#,W:R59/1OS6F=5H]3XK_2T;A:6\U3CMR[(^O&H7 M(G&)9($:<6II]!HS/F:?<@ XMYU>3;*'3D<=Q!FG9G]VOYOS<3IG51[NVW?O MWY77X@W/YUS0H![1N8O4/*6SXP ^J'-EKF.(#\]QCC8< O%5>8[6&4%8O(0( M92-C)-%6T/P:ZM'=8$%5;SNX1-4##^L#O!$^5.V?W :DR&_672E*)E0BN^," M>5-?X6J70SUVD$/?RB/)@,D=COC@_MWDZG+T&987G[+BK[BXPV'V ME++-5-WZ<+[Q '<$YE9B:X-@KL%@]@OFE::[F"G'0^6 AL*P3>EL,>RJ'1/9 MH!2F0'MC"DZI*FEXI)S%&]:3 MD\T9K-+VCAB:@!YWG!1=>N@<4OZ*P>G.N)=FX@U&5*.Z%PFS2@[>5NPUB+A\ M0%Z5_;]X_BDQ]'8#]2#UVZ,W?MWBD&F_R- C1E(HSZBT*$"?J]/KJO&CZ%C) MFR3LV>."<8T1-#N$@]-YL>-PE>8%X7M9>7DD/ZY%HR<\ >UHP@M^L%,*S1#< M#JP?DBMW=CN!8LV:S;SPMK!!@9X8+<3[Q;*8G94W9>(\WU&<:$?8W7.V<2CB M"]2NKZ<*YF.B,_,FSEFYB5/"M39QJJU8B<&Z>5#95/.J:JKI10LA\YZUIY_I MYT,?D!8]C3?0Q1#?)*J=@/N&897I]Y9X5Z74C[(GZAZ]&0IEA%C//+US#913CZ0,,/T_%. M9)LWZ\N L*>".5405[%;9[AI!O&A$]R4ZE)W?IMB!.!.;].)8.SL)@^#FG%0 M-1!B'Q%)0_%W9^5@+*J5F; 7/=S.V78/*6+*R:>LP#D-6XPKY65!1QPX?W$2 M1C9_(P*(-3MPU#%."0=Q)%1B05>JGT4H6'\9&6/.]FH"AO$BB%N93L#'W.K2C^>8?79'L1M[@>&2IATRYFML* M,R+:1QMAVLJ9,+P(PL<86V3. MYPHL*R1&.?:88M15>2,=MU03ME7#;B#&3;3AMV'0(PZ#7XY!" MY2B@S)Y4W,+&)!HA"=_TYM>#-G5QBZ(@\2.5CZ[4'[+N=KCT?E;S0:8@#!>- MIE.+'(K&4P6)0U.QW7$LB3 2E.O7'Q)M=F_LH@I5E\*)JG/<1(7^ZKFQL4.LVK# M#Y\SC=(7%06>K"3,B+^NVG#Y62..G];Z6E= MU: "ZCM_/ YG':F(8W#-,1[IM2-.Y7\S.QV[WC2%TQFO3^W2*,Y#MH)GCTIJ MR5D#X3#8Q@PD8831MB3HL7O^*,ER^1I24..^WT!:GCJN37AG+]81\L^ES9P. M\F^9)!(TY]VF^T[H(.7E"J+![CY %=^CF"U\^2*83O XUXNXB&MK)--H0PL- MYYX6 60'U(""N)B1%T4-79WS@&\:]1/DEG+!]KWJZ\%BFDM*M!CZ]3L7@CTU M/7W,>5U%;5CHP$'.4!JFV[// 1#0S*+D0A$JN9DS2&B#Z,;_NKL8_Q?K5M9C M\E A^Y76Z[@&>'],IR.$R7RN M06_ 6KBQFY%/&XL0^59?@7DW%9A'N MV/8,MK -8.C5T8J3B VP+Z9^R+[>UBM(#XR]S8K=VF]MIU40YNXLA$\G;GZ-1;X[LI B;"0J*@EBBLLM"5X$^\VP!YS@=-%F"D( M'V=4T5^1&4_UZ&**\<;(-"%EB1=OLT84HXYZ!)3 K(@1M9DUTI4"D(]!$3[3 M-8;\]ZOR>S73WN5F!"-Z**S-Y;<<')LXJ MIXKW5=X4#)Y>$]I 6(4Y@BJJ;9BKZH4>V,)K9HW(QE"9"$&;2AFM/[-S<$%T ME@+U@X0\#_+GR30FB!U3 )3%'Q?^&*4C"WX-RX-#7TA)''G@,VAA3-AC9(\P MZ!FT<6F.;NQ5L4GF$9'M?)<7V8:FN(R_-(B"\]]P^.L=WNX>DSC\ 9--D.ZO M RKL>:P2Z%*D"^@G'J.?.:+EQ^#O&:GYXR]/]9'0 M P4Y:SLUQ%,"PD7G2PL*79/*#QJC&F!=\W:,#()[UXX_#!)PEJ2PO@51KCF M0[;]$+_@FC6]7^H@@9S2S'CMD6HP.'_KC$9PGN+2 MU4U17F\O,D2)(T:]<0&H!*"7F%VVO?#9WC*LF0RUS\X_D=ZDSM.H!.K%)-IA M73.%UG"^3* '#%FG( KOQ>0Y@&\OG'"(%,VTF1FT/UT^^SESSF8;4"_D*[P:XPCM?7>%0&*LKO)O;%7K;S3N;W;Q?UFY^#HCHZ9KG._82[B85 M[8YR7F/Z?O>8D2A.64VKL:3Q/([J921FV78PG"A?!I..^V_BW)HHHN M76>@AC*Z62.9-NKTW@*:!GQ5QT*YH>U<=V[UQ)5Z,E8GNE9/=J">4%)/:K26 MA3H:\I+9K(GUN:CA)Z[:W.$$9HA4I251GYBA@O="#(H8H>>#/%2>4O[RP26>"U$#@N M"0 [=!6/3M/HCA6OR&]V15X$*8T_3QH=F5'@W-1%%-DC3? @SF=G2#^=L/-N M@80D+&!O&B"0!($^E^C Q=&R](G58KK CT7=-UPCL 86L/29B?E6I3,5($QA M,STGW0IZ%/:$5[]BT!YUL^\CQ(=6*_FD%BFBN-#/PAZ+JS0O"%]8G5-WW%._ MM#SX,J% /N6RB])^I*6'!WI^96/(ZAT_D"R'+ELP0(P*2/.R2?[W-?WI+_]2 M_8;^#VM$])?_#U!+ P04 " !]=GQ8Z-3+XH9$ !"U00 %0 &EN^>\5- 4)+.;(K4@Z;+ZUQ\ )"51)$" ! D(TES*MH1;9GY( (E$ MYK__Q\?2[;P#&#B^]_,/O1^[/W2 9_LSQUO\_$,4SC^=__ ?__A?__;O__O3 MI_^^?+KOS'P[6@(O[-@06"&8=;X[X5OGQ5^M+*_S!4#HN&[G$CJS!>AT>MT? M1S]V?SSO?/KT#]+$I16@*K[7(6WU?^RE7UPEK?G>3YW!Y_[YYWZW/^R<_33H M_C0:=QZ_I.6^H)'-G;*"KN/]\1/^YQ7UUT$4>L'//[R%X>JGSY^_?__^X\>FX.M02^*]/:;%/^*-/O?ZG0>_'CV"6 MCBLWK!+BT;<.H_R&['_\6Z<3,QKZ+G@"\PZA\:=PO0(__Q XRY6+&R6?O4$P M__D'QX,S-,C^H->/A_A_KA,PI3\GWNS&"YUP?>?-?;@D#/JA@]O_^G27&11J MRYKYJ]"Q@Q]M?_D9E_G,U]QG&2-_#A%<<1]7OA?XKC/#Z+VT7,R:YS< PD!@ MW#R-21_U#'AH+E)[?+0@*O<&T$@MMR(M8ETT)Y?-A\%T/ET!2(!06T"T5MNA MX_D-<>_-=V=(==_\3X1 +I.>HM;;H>O*"MYN7?^[5/'L-"J%BFLGL%T_B"!X ML$+T[W1^&06.!X( J9PM%M ?S]%R:<$UXJBS\-#*95M(+=FV'R&]Y"T>T6!M M!^""-T'H( T%1.AN=AB2.?4$WH$7@4KD;>I*'M.=A]H-?8AH?P!AI:'M-R%Y MA(^N%:]C:!*N,)HK#;*@%>G2=?&D0RH]7+] RPLL6U3)\C0F>=13M/K >]]; MO "X?/"KSKZB9B2/-)FL:,U<6Z\N0+)$G\ (S.X=Z]5QG="I.':^AJ7/.S02 M\&)]5!QTIK[DL<7+W96_7*'="U&@C]!?0&N)U6CHVW^0,\SN]Y5(J-*-[+4+ MA/=^$,3,? 20+/K5EI_BEB2/%S%CZ81D24=,0FL]7KO08;4J])GMR=;CT)]% M=OALN2"X]2% RS#Y'4L;_WSQOUB_^_ J"D+$0EB-(/%.)%-9:U/*;D;R2&\M M!_YJN1':,]TZ'CJ3.)9[AXZVD!PY+:PRSN*&F]Z@U!DQMJ_&=7XU!TQM3L NL08=(\\WM"&O!/=>*\MUA M#7*J=];>SJL&>1RM-KX_J3%\>F/:K_/7(+0<5Y=E?C.:9E9Y/#\L;_U,ML"7 MZR\6_ .$$PBL.ES@;KL9FB:SF8,9CC>8FZL-"?2PVVUTEX.OU6:1BY"5?KZN M0Q!_XXU2)8^$IL:;VW%M>97[J@XUE?IIFE:I!#4WYXO-H?7F>TF;C>^WZXR> MT5KCXY:N>D6[:)S"[<3,??<%+_[D'""78K$N%9RJZI KU'YSYZHG8/MH<^TZ M!$YX)4R^0H>*=R>HB>)J'35'[368 PC!#/TQ"0(0!I*$*=I%DQ1*HJ*9D8H? M7NL05*,WY73_!IS%&UJ,)^_H&+4 "$O1@G#_2][JR MA]#&C7@M8QFSP?:LM,DF>CV=WP/$X72C4DLIU.FN/ABM%:NSX$=8C@;;H"17@0 1H%<>L/@/WCPG__#.P9?D@QP+\0<@FI MJ$<'L?$%#14!?P*AA>!/\8_(-4_1!,F##,PVWSJA+BC;K=[T>U\ZJ0-[?YJ>;-.W&IGMUE,0DJ$Z]N97ES\PL.' M'-R? 2?F/OIERWWTQ[%X.!J-AN?=\7E_;X"[4I_ [& M:*?MHU]S0,B^24E*?%Z1 M!P6?[#?'WG?M0;W11Q/=HY+!:JF_WBQZ69(6H2"0[*I!LFT**-V^W MC@L>HN4K@ 7"V2]R6$+A>BC#,MA/$$%@ZFQ0L?K&61'BPJ=HA"X: @$0N*C$H=U8IVQ^-]JYI.\B@=>2J!(FM&FQ+ ,:;7_5]]%QVL+$F,7CF) $=9>N4,4$@\)J7!46Q,> M_.2:_WF]?/7=6]=:%(BFH-1A"8:7@%0L>A@,DLN8V$Z/!X^8&=&G3G'QPQ*4 M,"7I#;$>EH,[+P28+.<=7%NAE=#!L*H6%3]$B0E0DDJ,94AH;S-!=/05.DPO M?+AFWB]M2AVB?,H)2,5RD+X6,9'/2\MUTR?N5%EF2F59T>N>]_0W*I03D,KR M4-PL8KINE@ ND+;_!?K?P[?DE3Y5C(6E#U&<_(2D8I7D<-&X6._L.9Q$,P>U M,PE#$,1WBUT6(+E''\J2#WL+(_1J^O8MZYOT8\= M.V6R%/4U]S/E&WXJ$-6VE>0LZR^7R0M4\LHEF$8ASL: K1'THSRCTB&*3)B> M5(9%AACMM>-V14B]:&_1)T4G$DK)PQ*Q"!&I_W>1N>; Y!H[N_-)=J?L(W*C8TUPA8B%^MS<#'_\%Z-N:O7*')55^$E*)'J15:(*0.R/H+3Z) M9+[/DC] Y)]K+,'RH:>2DV0#:EER\0&:XF*^\^V!2:UDX*G,I+^H:5%F:8XT MNMS2$@%S^FWS2'?K^:/CQ/[^^N)R\WUYW+R?WDX>JF\_S/FYN7 MYYHOZ>=6\$K8%P6?%I:U2H(9N&&0?K(%:/+!M\W(=F(L//KQ>S;*DWLTD&\B MU;_UNF>UIUL5VN)X=!0JB@MEL3SLCB\4&M2J,7H[4P5(E/2P'ZF,5S\ ]U+N M0ZJ+/+DMYY+\7EFM " @0)K4><@S1?@XP2$.481^X)@W[Y8+<-"B\,J"<.UX M"Q)+A@(&KKH:@X-'SGF,5*?:%,RD86F?@ T0_:\NCE96[&;$4\4XA @3*RG" M2 C@!A8R;QFJ8&03+9_DMBS$Q&X1XS!02IRD("199;"5^E")U$D,[@S;*++/ M%S0. 9PD2HI?HGY1X)"ZV0+GEG5=RTSHAY:K3M*/T%\!&*YS:2R0JBLY/O!4 MU1@7@H"H3&T#^P&=@L2O_X)YT69SK\&@#"/=AAFU3$'"N)D2CH;%]O%U%A(TM1/FSQ* M,2OI2P>]@CG($*11UC&Z$!;UO1QJ&LY*UXO"LN: @9\\1DS2@UHS8F*9-C-S MQ,N@1U(H4\4;OYUR]H@M,0?N0X)T)5KD0@?[1NYLT^AK2E%I MW7$@XW0C0GJC;J1J[**[-&^M@4^ 7%$_6C!X@7 )8?BHI8_!BB)$=_ %D>?37#YG4Y9O2S/ MQMWQ6&%LAZ8 4XD)C=X&*M\;EV^*CP$99>1*N@E4O"D6OBOBY:N9H!"D7M+M MH@:VN4T8,^;CS+UB6B)"4(1%QR,.*AMPD5;]O&XRFSDQ%8^6,[OSKJR5@W37 M#CMH)O[2BF8"I2+=IACTGT!H.1Z8W5C00QNL(./H/7=LA[;$E%19RJQ S(<%)IQG'V[+C7T6'2"V1T9S]@Y\'C%SQ MM5#37A2Y&? ",*.&DWLD8G@#J %,UJY8&;'E1OG8^]%K.(_/,T>;E#!12<*N(GUYN1,PR=/Y+[X_(Q8O -\=&P3/ODO? MF-$J:(6"2B(M1H0 M:;HA6?@NCA+,?#0@NSBYWFSI>,YF'4XZWO"3)H5C*NR MB6BI0;DYY_XL!SE7$A/1P$6C&4'8-A[%\8)[3X\[6E!2*]G7V#WPDF:&R!]\ MS\\2G."\9 ]96B_#L[-N;W1VF'"H1J@9SS/N/#0 $(09NG<9PLI64%Y5*XC4 MDW<>-Y498,KFD\I(48UB-$S$J)9U6%4=ZS5=6&\13W$<",>+$/U;NV'L!KB) M;PB"FP_$5$2]XUEP?8MT%ECG6N;168\S-]P M(YFUE^C,.*=ZAU-*FP4A/O+J^NCI$MT*EAZ5,&5.$74Z4&?$ITQ<-J;O' MI14X-D70A65-$3@_<;(\*=4>?O;IO7;<**0Z.E!*FRI\%GF)^"\.6_R_ 1QQ M'1$-DICAHPI2CVL"'T%[X&*?&T&8AXVCS_<_)T\\_I M_?7-T_-?.C?_]^O=R[_4>O)7"/G 55?)XZYD9"^,@$C90EK-[4K2R3[F*J5- MDBE4DVA8&X)CWESYRY7OX?D\^7!H1T=F';WQ0!W'DW'S8(T)+[:$'R M[*-0PCQ5C!-V9:+-<+G;#WG!G/K%A8V#1 5RS8CF7>#YS\0#M;RQD!"CV S_ MB3UV7?M+-"MH!L2BLL:B@9]:ZCVARAT\.M$# M#\%CK,?/>*\CB"A^)*,B!YL'\)U\0]?]''4- TAEDDUY%4_A0#QS*B)FK_)1 M0(:'YD;>T*N.83Z9_1X%(;G>>?$IT5<) MA-0/6V$VS$+ M@W+(;R07N!;Q,FEKB@2(,1HZ"HR)TB_+ 52G!%OUW'T/'1CEI)GA^RG7Z+,/ MU4.2."^!DIP^X]/_C:?0HU^FT>>@)<]'GRQGS4+)*W:SN[*"MUO7_\X;QVHH MXEUW-7G^9^?V?OJ;BCA6.UY;&R(Y@EFQJGT;],]5K05"[77]&& MY,[;O..?V*'S'@>#+GG3+MQ0=DH,NN-15P]OVW)!%2[N,L@WYOURO:V>8C!( M%JK05M P(&2L/MADX]F."S+TO_AR-% 371T7+%OC8"/WVZHM*-< C=YV"!+0 M[RX@D/!FDZ4/0^=/5J)HGJI:0K$UQ.3!6IEGIJC61YP6FY!,LA\_^HA]B F0 M;%V2Y^/LJ"$"+9S0ET5?7=8UX,:[U7]J@N.F#YNSESYO0% M##G=;M5Z$("0'SE%E8\50MR\J+N$E61CUFZ_=(__3I/.TEQ%N.L?+;P$V&'D MH8ZVU#]::[S.8\.P;<,(T;;-;RR\@V(U=JS(J\P;4WRS\RS! 8 Q3W]SPK*ROS5\4#@6^%/7XTHBU5K7! MA)_9M777<8&M)E_,2")$84*2K[W^"LEH2"NT-;1"BI)ORJTEXH,-P(PD0<(O M8!$3 .+F-IXI;6$LJZ<5:"0+OV ]K,2.1MQ:56_E=UGQ!%;)1F$Z)[ %P>0U>J5LNWOK'BS!QMC3JNZKL:3HGIVLOA,>%M)I\:2!/L&JH87;@_^-# MS;OE N*.@GCJV.CT@;] !Y[L!SLEXU@2>1N2[4;XE?'-A_UF>0OPA+8R-_,Y MH.[;VAV$5I"ON^?3@'6R+G#5'D)J,;()7)]@RN2$I/M:+6)4:HZ]L^[X?-_N M=)S82S@AZ1)7AP@IT6KE$H9:;LK0.V_NPV4LV9*43'RUC4)3'9HEW9DJMZRD MV:!QM$2TI:;ZD&1*:84"&=(LF=N"Y/7^,<-21U$3FRW/I0 MS*6W1HM:@:Y1\.0Q*IMM#6A'U186E@1($+>R2RW>^EKAL/9=5BVJMCJ/7UYANEI!08Y(MQ"ISXE6M$RS 0^W M&OO!"M&_T_EE%"#5&P0X"$BL<7T/__$<+9<67$_GS\["<^:.C;U88B]Y' [8 M=QT;&]*]V0V2"MKV KX0B;TN^F_G4V<[$/1'/):./^^DH^E8WJRS'0_Y,QD1 M+K8SILYV4)UT5*3X=ERRIN 4+BPO"*@EA5&# MN"UKC!I(]N/N$%^KC;IG@XMAOZ_&NZI@B&7SF%4E"^ES!.DS]6<@43$4V9@% M26YTF>VW/(>ICQM*IO$P/XU)4_$!8].8$I?"XL<%)?.YM)XNLYHZ4/Y9+M*$ MEK.^FK *'27K,<(H7? $7/Q$YM%"''F!EA<@1F(; Z=*&!7MP4F+'=)D)].F MBBUN,7E]D\\XAA-K+^>< M/\O/>=)6!S?V";?6B9M38%(C-&V#E)3N['>Y@$P*K'$5"3=JFHL$32J9^./\Q$];[R3-DZ- TD%GMP'EU85,;AAU1MA$ M%^?6%.=%!C_<2"=N16'8>0%C'[6&+MJ@8(CEQCYZ%2WGM:@8BHQ]@B0;-7GC M)*6[N28>H;^ UA)[->"7Q]3T'B5S_"(_Q^.^.KN-=9+>8I\%W-\GD@P^4TB! M/M@Y!\VSB>G)$?'*#\)@F[H^#6?"<8JHUS#:S:I)&LD][,O=89=IFYJM:J60 M9 LYKZB:X)91NNP!A#CF7JS0'P$DS.!35[UN@:,5"#M_Q0W^+=V=K #LQ(VV M/P-O+.@YWB)(Z2K9GM"*9Q?%WK _W'_QJ(:<,E5!+9^!];C;[YUKD$5:B/OY MF2Y&K%%S&,<\<>*8FF@'@OTI$". 9W.;(7H%+I,[C9*-1K99!2][Z$3R/^,1 M:4.76;\S:/XS";N2EO._OG#R2J$"&XS2#.BD,(OL\-ER07#K0^ L//([/JC@ MGR_^%^MW'Z9N5[SJHL!-,.FI0YK]>R?I+/XS/JB0WT*_0WKL;+M4\+@8+# D MGL *YT#U%F6OB2G%=5$0^^/CUQ(<-;54%4(2R6N%JF0;I1K()NG-=Q%)06QD MX)S\!9Z'NVW])3%9J)C7V!:2(0E?FG(8&-@5OPW&:E[H%0]+8'KSUL^BO:9ZH8 KF=RVZC9KEMY8#?[7<"$SGR9LVR[WS$/NBY6Z,EI(I7^"EB!OND);Q MAN_9UXM5ES\!"U!WC00'58YE)8KRX$D^B2\=H*5 M'UCN=([?>]X[[V 6AP[DA%F%IDX0E,BW!L)ZJH;GUBEZUVUZFK(:S5[$-L0E MO#($S/-"A99.X)3'MM18VS4(G$GT,)P^?N$Y_";;TGHGX%5E4@JS9B]#VX99 M )"8L.'H&C'%]U)8F705L/%)_0(L M[.BUM2?R:3#N^B? U656"K^ZUP=Z:;4'\'V'C=#WT*\VX0S7#JUJ,RH]< _$^$CS_OHD#DJGM"7QU&I9"K>P-!4X2*TD*\D/A>7 [:@VZ_ M.Z DA^C\-6ZH@A^UTBP1BD)/(Q9:BP4$B]BD.]\5!D?XE_*Z6LWU4@GDYVEU M(HUZDI%-#"$T5P?YN;J?'D+EI&TN3\1P..R?*7JN:;^!6>2"Z7PSV*L(XFG! M-;-YJV=Q/^R.S_8?H&F!5=]O-5LG ?Z;./%Y ":Z7GI+B5":X**%_P&V?"Q-CU#,_1"N#A:\9T0-7@ M@J37AWKD7N:)NRZTKHSSZPIOG@*E6\WF$A:,T"Y&]2+#+69^/2+>I%8ZI:H8 M64I%$DL:6,54I2P04AWG1::H;>("M6:HQC(8Z* >;N9S8&,?XA!O4DOU("I&EGJ0Q)*FU(.Z U \:L2/^"$%TIO5ER6AUHR'7'UN M-+#;U3P%A]":=9%?LZHFXE"YONF:D:,_4JR<L^[X0I,#NP0$L#1<8[R3M,PJ=_XN8M6N''99-<';$Z2\ M*N-7K.$39B7PJU%SE,P7+L543R"TO 5Q[+M<%T_FA"PKVE'"G5E/'NA>KF\^ +2= #Q"QP9/ MF-^U-7'MCH\#^8KY*2F F!X7"XPD+2('K%XO?\!B)AQ2>8IJ/?.0Q-7Y'@0! M $G 9&]Q#Q#HDXC95:06G^T9):6\&NX34VMP%-7A )@*.& Q,6< M&M:I:91;&ZY6ZZ@_QZ'=RE<$6JU=5C"+Q'9WFE**D\TWDT( M*!)^5''4,!0[52G7>)]2NM_\W8=741#Z2]0YY5">+Z25_-6>SCF90W7G:$G0 M#]:2//#;&6SA[H%95BNQ"S _*S$Q\IK?#+SXJQ=4 &2)H2_XK/+:24B,V7O+ MN#"E6BS5%#&GXY]ZQ>:RXD)F"92//"V6TQ(IOGSWRZ6X*62F%-GD27)@;%:* M1+N4RW%;+$/J>7/8;VAC^P;#"E573"A+J M37"5V$4%F!8P28?/M+>55=,*)K6$Q2-S#MH;OS,3<>:R7! D<3(?0,BTBQ26 M/1#IQ3I1B'#J)$EO=<= MGYWIJ#W8HN(0=@G%.JT(Z=8X1P-S;2BI=1AR+I%2@9PK4*W%4M&6-^4]:N8N M!,O]]:/AWK2"F[JU1P67&T@.U'K^$\!+ M6T]S!4]@RB^:?$S2XEZ#=@B)\-EI[VJG^ !16#)+A1%PZIR E>YL:N,7<=T1$2\*?M4Z, MQ4V>@%GQ "G S@2XS>0/;3L&1W*OA2,96=[ZF=QU7:Z_6/ /$$X0#\0>V??S MC^S3)(\D1 _NXR]!)\"]=%[7G27IIX,09-5Y+M]T&DA:,1S[H=_K]T:#[L5H MW!V-A@/M4D)22&%5T4J)"/$^/_N%Z91D+7+519Q#8HFC\24:]QDLXJA%] M< M9ATMX2 LUX)[?6&B=;J@2P;+O'+-E-%2C.(R*)!C*97-.[%/ /2#E64#'%P= M';?I3I7%);/#QFDO]J,ZJ1!.*6/WSI@"M&D229G^0-%&8,1!WE W7P#^UU^L MF:\0Z17,$*XXB3H[LM^CW3U\7@?X($$7:[Z4&;+DI$MG'_9G="Q$1T1T8'R: MT068+V6& #GIDF3@51Y%F;+;NZ?XE?!6TQ(+$G:VE>C60EM+.\F7G. /2?)L ML>6ESZ11OVRHM"W8QGR\8<0MXA;:A;-/-V]NV^_L='"(9DT];NA8ULOBPEI.9IH,V([B5'(. MWCSYXBP=;S&=OT#+"^;X1OH7WY]M]!'#2,E1,\.RBU%W/-( 0+2S4.C*M&F MXX1I]^2JJR56JHI;&#@,'NADY4Y'C_ Z"1]]QPOO/$19L7V5K](ARITAK0+) MBY.OQ6L4^5N(,OL O8*6(*FUD C2JH4U0)^CH;808$M1RJ&P026A[E!XYR'R M$> <$#R <)N=(_U\+78R'.0=7W9Z^'O' R%.3Y-T@W-).&E'2D^(6W+Y<]A3 M:WS;284R[O8N+GI=)>O 9HA/UOU@W):/4O@P J8KK@:23*>B'DAY:[*VPUVSS1/5W.VI_;TQFZ=^LC MP.R':&R9J%\M-XI/.0@(\)UZHTNO<-AS-A$!8\[R$=R4::>M&9Q[,FT+>ZEHJBVI"RJN,6DS0Z3J@O5Q"ND"@ENCR2*C*AH, @?2<0!=CS5-[ ME$A-0/XE'&C^!<5T/L<7G#BS^G(5H>W&9FAT[]ZR.H2/,J&$H1JI2KL6]G\;9GLQ#B"CE6CP*:6X3<5_B,U!>44N\ MM+6/9'/!E*L$*OF_0)]ZO\2NI"5J*HI9 "]TVLW8JTQL.UI&KA6"V35 ([>= MQ.]\Y0(B2&\V6?HP=/XDGU/Y1,&4K.;-1E^C7*JKTRYBG'KXN0>8O6BZ+-*O MR5A5S(:5,.6RMDZJ;M-J&]QS%VI%!O/1H/!OC=A2R]I=_0?A9;=(HF%(>%85L(PUW2,N=W:85OV8LIK?T M=2.[6A94YZ/!2$T$Y.T)G3;BRW7F&ZY;3X&VM-0)E:3'N@&MRY"#?UAW[WL+ MI+.6U^ U++DT+2JJ)4KDB;? /LK+!)WN2/<'S;P6+2ZLI:"YA5$N1P:5.DGR MRO=(+'<$V.?H%8W,\6([QBO[RJNTWD'(ER&DO(2KD:SS)I]!46_4Q?]A9&_F MK&L.#NJ3K<7M9P4L=&M@H7N<6"@E6^-[S@"&.TL'^FN[;." M2#Q9J=8CN(50P?.YXSH6-E)=N8@!'XQ8P<5%LP._Z(XO%"8\JL_R/:4M0K06 M>S=Y$=NQP3-<8X<^WP.<$=N+ZF@%D#;.Z.+\Y].V2;-G[Y;24([\,BD[D/!2:H<5_LR#296RC3*:,<=(N MITZ+\W53%U'W)9ZC9=6TQ$.3JW8EAFB1L[))JZZX/5=+X%02KI!-U^"UY,$/ M0?!HK?%D>O ].\YNGF$IZOT&W^D'F#4W7K1, MK6UGL=?PS@M"&.%]_!T^T(,@?$*\(9O[V3:>'-65C+)B>.=Y[8(-:F'<$.[7#WK=O5P8FP$6Y6YH<6NJB03^/,;8BK.!)N<,P)\ M2H%. &9WWE?/V=\X"=4U$2+U&=!H(G U7G97KA4$TWG"A2E\8TD$!\B\ZA/NB\^4#[ S13'Z%C M@\V70?)M0,U?7Z6M+*.'W?%8@R2A3:*P$D,:S0"N1B^FN])'RYE1 +5;Q&2< ME-*9B/_<(,6SI9DF(R#=\ Q/Y7+P N MB:U$['')6?YQ"6FR@]O\A!OMD%:5OBN)B72L5\ M=?O]T;B'?I<9,BDGG1^+'H4PRVHY:RLR=N_H(T2R3O?'$E]H*!>IN"3RVI>; M2)V%6/,%QEEWU#T_W]\<:."-2Q5&N1P95#;OAO%ZB\^9E%*"]0!!,9DL< M^SS)K((QFJSU=.\\L18.0I@,B>PI5PG$:W%51T''YNGQK>-9GNUX"SH.:&4- MD[@0F5HX>G!OF^XIGAMEQ;62<)V5MA*AI@3S(G3O7@2SMON[Y0Y!_&P1YM=H M/B*U4-T2MFB65R+SW2(FBKN4OD8FN6J_AAS(V?8N6G$3 2%$:UW/A&SH,SFF M4,JBGV%*0AJAM6C)IQ8V2>(5*&T@&]!6VB/EMLW);.;$%-UYZP+*%H&-\$C';]\X$&OD>LP#D%);6:\U487N8T1*?R M%.M&(]&+"J^*'56^]4T_.RJ.::W!HW9N852SHR94FFY'U528#(E(M*.6R5@# M6YM\.^K!2UR(3"WLJ)+W7S1K:TEI+6%0?3$6H5(32RMECF)[X9N[1FJK M(&Q]:?D#$#);5'N379C6!I3Y]HBMP^GK$:#AS!R[&"!<=0P"275Z&U@95)ME M%3TW,Q)"PL2;^,KLUK+!9(DC$7$!9EO<>'B4D-K DL-V,X MK%L!,3?>3?3VWF@T['65&1E?DM/\5O)/8!5OP *<-<]!9_45OAIZ0,)_^0[< M=T#V\RR#2+I?'9XF+OU(VK2YBIMG1#'QQ)) M9\ #!)SS+DW'X;9.@.-CB:3#YB$!;C)'ISUYF,LT=X(=-UJA*SCNQ;6S/36G$.:UM&T9HV#LL%+)EC?.O]]-..DDO)'5OTD]G MIR.U27SCL04I"RRW+$150BWQ3C$O)/'VV7 OB<%ME@"DHG.7/>7<\T"!,IQ1X\!)KBNWG M$4>T12+R9F1Y?/01PT#H0)*R 7V*/P#+E>N3_=0E\,#<"7%FYF!'S0LHH,;Z M,Q22[?++%.L2X55^W\/QOH]:R5!\52#:%(L0STZY=''D;<%0^-3E@"S/ E6G MK3L/?0A>K ]L=+"1E9[!-DS@]A9@U,AB\GPT[*OQ9+V9SX$=.N];Z6/WNJPT)N$M M0-"V7.QU%Z$QK#.%*<1+:%E+12,JU+RB:8HS6KR::0615V^6MT %;CS$=3"K M#\3B!H\8?P(,,>-!CPA3KA.Z4*%)$( P^-5RHQ@#KNM_MSQ;!A8Y>CD!M#*7 MS' .Y^'4(W9/Q9=%.QN\&O L:NZ(<WR> M#X6T9\9(^R)F"XOTUOFKN^WO;X9:,/K]T?!,U5OEABER1TV M-81 %2;<>>](/#Y<[V%01I.&H:TQEIAR'9[C#0U, ::8 G)L2 X5WN+>#X(K"\+UW(??+3CC MWE/16S@6* ERP)0G!CD^_ (1_;RP(86/!2%T8ILZM2N#PLY1O<8BQ=.*^>"I MS(6ZSP@*8Z+KH&*XK^V$+YE,Q(\0Y743BFJ+F0? O2M&18\%%3129:4.U<*, M+&8JS@7-R9B*#34##Q%B]A%>QXI6T#$U'RBM; :8O6ZOVS^D.9AP=,_N)42K M3K'/-P.?1.$;B9K%"&!?7%@K>8I+(Z]-!.3)H%0G MB:)A@@ MA5?XT@6N"^.:,\L>B"P9XBC8ZW 3JLF%5&T8D."JZ%1XCUIW_S." M3C!S2(YY)B!*:ID(C2HD:W*[Q+_?NF=E$F65UTKB==;I:I2:X18M;-'G-%_K MB@>V3/,J0)#<1F/A5XI"3%$$Z$!/)>TY>OT=V.&+?_.QP'B]4:,Q*! M$EG1:.#__8A22E&W?:T/$('XOA>=4=/L*8E7I!CT>%H\)OQ5YH )6@.A]==>/:&/CX"@;)&/+=!Y70=R9):5I5J9F>C,2 MO&WR2E:H28V O9% ,J'9P*24-A)8(K36=031*M\.]I,*UU?^$I.=//_U%]!: M(O7_'/KV'Y=6 &:[WXMY#5SDX^3$779VV^PDG9)(I:3;3Z^XWVPAE1X&.QF* MYKN#>@(N=N>Y\H,P>'Y#."7C3G("ED4TK=8 ,X$0JVHR]LOUMDQ"SP1; 8I<(*2WKY7F:A #!>MFHRR49 )VU<6: M(_0E^=TI*,R4T1))S0HY#ZIRCNCD"5"=)ULZO1EV+WZPEH#I%])$5UG^]KO# MLZ%ZQ)4CH$ 5M<4&J0K**X$\SO,J_#PAIZ JKEE4R4/]0K3'W0P.&X2*FC)2)$)<0MXP-90/ Q M ,T&RP4!<^'(E3LD:0II?CY*S=#XS\!%S2U^ 1Z.GXK#/LR6CN?@(R"^(TIL M5FQD"+5A+&KJ<\$,)[C2=96VK-Y3?"?E-:PE]MK>D33$1C-"A&)?#!L;QXJY MQ+X/YJNL)PB; 46!9:G1F"&<,IJ_%^M5*BLH$B<>G."/6PA ZLS7UDPHZO@H?-7#B?JH?- M3_$WG7@XG70\IT-FT8PY5W3(/$PG/8-4Y7FQJFR4;P?OF1>KE#NDP3[0"N#? MH64!P"!65"4.>SQ5M0);.Y#(0[ RHW2Z("\C@ND/P5=92[!4%IXX#AA(N' MB.4L)+L?/:'=#-0D8EJ(G9+T\PI QY\]AQ8,#Q?HOZ""^%'[(R&F(91G.SE! MO&%>&G.[@W=;9.,VNXX@FM,QS80]P"TY11R>@& J@=XH1)&:5T MS@@-XC1M%/-:5O)!S6=.70N%@KU:K3&=YI5>K$]OTKK'/<\.]?1SNG=KBU:*H^YHT#U-E5:8G,Z4NI?7NLR4*H][2C7.$\"^ MB^CS*]\C3O.1Y>)7/WW9[[6JC^0T@W1@>#J;CO>)HZ%SZ>AV;CIP/)U-)F6O MJLM<^EI/8Z[T1\751W):I'1@>#JMZGH+Z+%(R3EBWB&^.5[@V.21=_.&@VQ_ MIWG1'EM3],MQ(M#];O2 9\#1;;G:XVLZ!^3X!VP/_09MKK)L;&$/M=?A:4EH MD:_I?*A[\5]H!-,W5,N#[_T* AQ-M7[,EJ'$ *%H7)_>R< Z 8G?$LNC8YWB MMU ;_M;O[B=C/PR=BX0=RSKV^TQ>\S+?,LOO+:L5SKKCLY$1L5T(*.2K5Q$N MGAY_TMS3?H%^(/W-/KVG8\1X"QPTZ/U^#8WP:WLJO*BK8\1V&RPTZD6IC 4O MZ]G5]J:%W?MI$K3&5:,>E1JX>3E,MBV=_E&-HK72)Z;&,%- MP[]T *>5H$W&2GV5:M0)M]9,:6\4QSA=%'-7T@-5/5P0:I_$5*THG+T?X_Q0 MQ%5)+U /?EY0#V?*-U_" SK-'I6,EO0PU9P)I7P"59'CZ3S?(&=E/2H],.^' MF'N9%U+":5%'\C+5Q,/I@&0\V)<*#<@<5P=)<^AL,.X.1]WQ&/U_>#9"0-8R M:TUL4IM$X9L/G3_!["L"$-QQLWET+2^X7&?0]X3G>YU4-O4ZS2J'<7=\WE?O M<=8 6@H4!GK2$\HM MH4@J?H4X+!&_:(\Z(Z#LH?\18.)/ON6',_5 8>J?LN*F041(4%N(5&*3%EF" MN!'R\MT709+%N*^K5=LS8Z_+T\QH=&;P<-N8?&DR&93_.ET?DBR'A)1P\]ID[NSKLB#_.\:R3F7.NC.TT]/E<)/013]TW0<4[- M3)5+L' \S/!+"S5G"X9=43/$TR15.TDK2$?2FR8]9JKLCBR4= 7C*MNFQ/2A#AA.M9DR6B*I62'G057.$?U] M5GEXLJ73F^&=QX.UK.*T6J\K+1%7C@#>8U4#S-$)?#?+E>NO =C9PQ:ZE)66 MUQ(&K8DTCR8Q1ND$B>MD::2P[#<)Z(0RUU=Y'6B)5Q7X*="LS3*Y MA><@.3M(O]OK)A8(AD-W>34M4=.PO/:]N2MR2:<5N'0U*$VS4'7_+YB_01.$ MM;V.-L1&2;X]E:T5%'65WA ]6C ,IG.J%;=(9_'6U1-6S8AY3V'58E$#;]JT MR.%3A>O9:*:3=\MQ\9R^]2$)A");)99T=YR(5L+5!AZ@J)X$$Y>T"V;%C+SY MP+_2KB7X*F=8B;EP86#"-;J)N#J/&G'!50VXRHPOC DJ6]<6=G+< &Z!EY(< M6HOUZE"MN1O =\<&Q4S_!"?4;??XYO/!S_\%PB?@.TO/.P(4F8N ME]W?<8._7;::XB[:&-=B'8+V:,E'N!S-RZW=09RFB6)>:^(O2C%M5)9$?$J_ M\X(01L2L)"7\O19C.LXIHR_K)?E]:AE>@8.U&^9,@B!:QFS%IS,;,?(:7R M;_:$F"C[R,';[W%.%[7L;21(_O9HLA\*2?,9DE<^X1N +V^6E\E'D&HALL W MEH"EUF!.*$S M<]PH=-[1&<:.D'IV %HF;#="(KM%TQ3/E"B&RW2^3QB?Z[Z,3K*3J-<==C6X M[!&2,\LSOS$.Z>1S4<_37A>9MR T$7=['05MDKN]+K K1X "=WL=P7>%C6TP M=-#D>O!#$""R\$1CNMPSZV@)A]9$FT>5.+.T" M=7ZLA 1/6;OV'? ]SFI6- M@55'3V"I6-[$V:2?S_MFT!SNZWME]02"L$QH?N0\U.JU@BR7OD=>%96L&GOE MM)0COPR*5#T/A6:H]YKJ[G)=W #KK--XTV%SU)3(NS69-%GZ$?6=DY2VM<1SH]"2CF0& M(TU)&'+GV9 89X@CZ7(3-3$,H?.*&(.TQHN?M__NF( M^6=1;;F08-8X81S2SIOA$ 6(Y\"SD62^6"&6T7HZOP>(0_>.]>JXZ&\Q!Y-> MWL%DIT\2B#+3*_H^[;CCSSNDZ\ZF;Z4.* Q>;>DK\4H1;$.!6KL'00# = 6@ MA<>6E7T:X^0Z O\"%GSY[E/H%&Q%2X552=Z[*D@&$QI]^KX?_5A#A.$ZJI]%U6D"#>)VC1X-E:Z_#I-6X"5+.:9%FQ]X;[.MF&X:>JCP#:@+JU M%6W&*)TDA7A99R>F=M+ O"QJ1NZ+F9&/RE"MV-AJ-]KW!5"B1)XS_Z?QK M@%^_ SZ-L5+ICAUI2EFQWPL;#LD2*$1;T9 MOD]9>E.+(Q\6!\ ,_+.0WS#N9 I"&'4 M.!J8B/+ %(>S:S!W/$"82'P_G#B#Z1?KPUE&RXGGI=D9DB^QSTGJ8\P^[DAH M^6C0UQ2O)!EW%6NT.MQA7C;5;_B$T'JLDA0-1U@B#FDN7K0Q=5U;P)@U;N+$LXT;=02[BT]$BB\J>1F(/ MMFIZ?(3^+++#9\L%P:T/@;/PR.\X"SO^^>)_L7[WX544A/X2J58Q>V0_[]:: M=-@AK?^]D_09_QDG7">_A7Z'=-S9]*S45OD,%AB$3V#E0PS!$K,DK7@6H1<( MH6HNPA"\\481$O0\.<$?K.AHQ86U5!="?,_O; 0HU>DU;&[8E^M+I"/?EA;\ M@_&HOZR:EA(6$!&'?'DHUEO2Z?"9S^3+JAV&I'F$Q2-S#MIUDCE9#Y_ ._ B M',J4^;2YL.R!2)=#+'GI\A-LQD50P:0H"5/)J'$8P*BIX)G$,NZ U/JYY;F M.A/3\=L:AR'G$E'Q[-;8%.NDU--338X&=A@O=JW#D'.)E KD7(%JC;5] ,,= MA*"_MNA ?WS+'K<+%'MQH0.1/8 =_T+2AIEEP%:&P@[6]#4W;J M<4_835&SQ"I"I!;N0'RJ^+O/K8C3HB;+E4VD%EXT\LU?]R4Q&ND5M()",T9. M-JU4#:Z#7!./16L!:"FB654.0[9L\7#(MXQBG4]/#Q%657NJK] IKKBD62(6 M);31<$/IS49;KD;$/^_-=Q%)09SJ0T8DO"6/-]K,S:=P=G.\S3$F.&F$9%]QV M-\HBG>['[GUO@;36\AJ\AB47W$5%]81 H]++HX6;,3H+GGGG75Q82^%S"Z-< MC@PJ=9+D3O*]Y^@5C@SA&=T@X:E657$\25(Z!@_]@6FPAX7;T MA&8S4"DR"LA@EQE&@G1Q02L3"?H73*,P""T/K2@+"MI858X;6,*<,>H6\M9R MX*^6&Z&UY1;M1SS;L=P[+PAA%.?J$+J2'.:O)''['=(!3LRUZ:*STX?2&\H[ MM/D*DH@:KCL-WP#<_8A]4\E7.7N;-<8+K[*[A)?$)KL1.^,J(5=62SU10P;% M=PM\9#<:#GZ?K6T%$WL-M]/R"JG%-8X9P0X31J]B/EJ$J6_*X5_*8D$Z"H#] MX\)__PSL6=P7HL]!@WY!BPBFK2 /*7--N+@8#8>C_44A:;23M-K)-HM(2@C" M_[RB]?T?_Q]02P,$% @ ?79\6)C79^SO @( [Y,7 !4 !I;G)D+3(P M,C,Q,C,Q>#$P:RYH=&WLO7ESZDC2+_S_\RETSTP_N$$44@$R0L):6/SIW\PJ20B#=S""5L=,MP&I5)65RR^S4IE__]]Q7Q>& MU+(UT_CO?Z2D^!^!&HJI:D;GO_\IUDJ5RG_^[^__^?O_)!*"=KMW=2JHIN+V MJ>$(BD6)0U5AI#G=7:%N#@;$$,ZH96FZ+NQ9FMJAWBV2F,PDQ61>2"2\H?:( M#7>:QJY_15*:_ECR!L:?4[_D_"]9E--"=CQ M"Z/!PW)B*BGE<_G\\\MKU!IJ"A6.S990V=\5LJ2E$J(HB:R4$Q-I29$3K9;< M3HBIE)1MY=260@D?H^L K8!>AKWKVHD.(8/__N@ZSF#WUZ\VL5M)T^K\\G[ M.:=^>!?KFM$+KAR-1LEQR]+9U;(HIG[ASRT@B'^Y9ECJS.7P!5'-@:,I=E(Q M^VQL"?[GWX##J4YP2WCTS"_^8S#VV$G85)D9'CXG.^;PEV; 3"C2Z)=C$<-N MFU:?.$!1&$C*),1\8OI(VW+FUPY?SJQ;&[^T:BD5>II_N47;+U(I^PM^#:]7 M>X6@FF$[Q% "@JI4FR6.OV+X87;"MIF6I=QK0_,KO!MF+AREV&52H5#X-496 M\4>EBKKX\?##S./'G7[=EI3>G2/DD\IP-L_N*EO;7S M'."/KK: M\+\_O-\3SF1 ?_SZ_;>C.3K]_?($VWL71J,7_U%25&NQ/N. ]QX.6F\^?#_K60?&'8) ^ M/,Z3_=USTZ'V!9F0ED[/34-Q+0L6>$5U5&L7Q'(F=5AK>0S+MC6XIFS@LQG! M?P@:,,L1FUES3)SKR>'CX6A5"^Y7BOGS"^.Y-K\G1R5"W38:N6I;W3 M_D$1-OA37*%21>L3'415?$ZQ"\L<4)CPA4X,IVBH99"% 9K50\NT[1FBB-U* MYE*LT7*CNM\Z;]]F]IM/@^*/WU*FD,UE4CE_M?[R/K2_H+*;5\3HT.)8L]FG M,\W0^FZ?4[+IS;?YXGSWV-:RN]%N!1>&KRF/%=U%1'%*P6.:3X MH^T]2;4/4[6N74J7#X\US;[KZ6+!F1.M%^?1L&G;U4^U-ITAWKBX+Y\>%-6] M1G]TFIL4W$-C<'CYX_=%YNXK8K& ;&3\2;+YU[Y&G-'X_/[I.#-JBM7KAY1[ M>7J0[GZ=.)GA?N7H\FB<*;O:M5,Z'IG%1@6)(XD?H.A>^I,'&[Q;-D#93THP4XOH%4.EXQ,ZX5.M*\W\ MR"3U^X,G6ZP^U2F5!ZW9QOGB(]8XV0MX@JG.3E=\/"T=]/?2 MU^63HY/'B\/F5;W:*C8S.-V#[^7=(LQ49;/522>88)^TBI.+_F&^7"T.VKFG M8;[7&XR:69Q@&TP"_=8YGIMU\"! ='!L]O.) M],U9MMC,X4P=R_W(1#TU*>+DV,R&IVKVLEZNG#4FU50FFTK?-DZKG56AA^N6 M[C;&JCOLR6?MIV,I\735.+[\.GKX-8L5P1&A,$&%VK__1DB^:S.T#100&$3? M12#[WQ^VUA_H"+W9=UWFW*"%3/C>6W)LJXAW?ST;DWVT3==BGYBOL^M1F:WV M+7;P[0G@&H<9$30#H%W-_@!@,-B4&:L#7_=-H^:82L^S-?5FNVREZJ.2>)// M*[5NY?9A= L@S)L*9;K:_Z2I^+FM44M@9* +/PO_F?_(;]F>. ]+"'/L(3\=99H M*]9I(5>6R]5.,Z=(AWI-35S&+/%.EI#?SQ+RLEAB#K)^C ?J%J!1UYHP\G!* M>;S0'E>,W/@L=UX^?#I/56D]41H]C3:<%UY<[C)Y@H=CG 62[__R[=M\11VB M&50M$\L >."[&P?GA43]Z.#\0LQ.JM=%L=)HY-*;+N^+U[JE&\Q\\1(9: XZ M5." 4]NNM@'E7!/=I=XV.XW>L:SVC\]Z"3%;,+2]GGP_V%1+CRO>?6/%&[;9 M'S7<+ROM[K&D'%0*G:=>?^)*9U0F1?MH4W=Z74I;CL@VOZ"TA_K(NE?*.:G\ M>'EH7NYI@]-KJ[CA>_RM2GO=&_PNI7UY7LN.Z^?E7)GT1L-1-3E\T0[MZD[O2ZE+45DFU]0VM=%:7QR M):8>R]2UB=.^/NE=YV.EO4$;_"ZE73&?1H72PUV_=W)^*%NETY-^?;RIV[Q& MI;VJS?YZU/3N=#0X?KC25+'6=(U1_7A"[IN;KJQ7&B*+H ,UOZU[1E4\W5=. MSALGZ>-6X>+$?BC2317<[][6J$"L^6WMRI00T3Z5Q:RO2E/"[3[*ZQ*(L9127#M1A=[%O[:+K=$U+>Z)JPU"IQ59?'>#OF 5A[TW* M8VHIFDTO+$VATYP-9K;G?ZN/3(]%[I]2[N#Z.'TFUE*32JM23\OYR^C&0)=/ M(L_0OT*CK3Y#BP(S=BWJ(\C.W5#IV-I%LS$I]JH:RTYSHJNQOI,=IU2*&7*U M#%DU?':\VNMVNZG"/FED6\7&37V_\- ?Q=HQ3*.M8L:7_:5UV.:]=H4,GH8. MZ;GWQKB=NMB[TQ.Q,ER5;?[><\WUV-?S6HEJJE3=*U<;65OJW4Y2VF%T_??- MMZ_;RE13&TF/S^Y(HG8_$2>:-CI(]_>>ZB?1C1ULNHUZ.:$T1$:/8XSVZTCL[=;JR M8D<65;UGT=/HQ(NK7AE.DMZ/DZ05X21YV1QRVSU4CSK7Z6*/%&MN]6J45V^? M8@Z):'AR29NNMZ7;>D(ULZ)6.BI>U_IF;Z!'UI!$>]-7%KQ\*>=Z23P@UQZ- M.SM]T"WWK5J^4;6>[LAMS ,;E)']WGC.DA@F=7;RF!M7ZTHY4:273NO^^.'R M(K84VQ!S61*'#/?W;@KWD]M60ZL?7J?(^8&)$O#1 QC@,* M[89"'_AQAF O,L"[>?D=E/;X\;.DW@8F74Q\9 _'/J2;7EGV/V+;7],P6J+7O1XT#+FGU<[&Y4SCJ29V MMV/;_ZG2SDQ.M=W6% I7H,/B.M1Z+N_2M=PL/QTFKLHWHIN^TJ[UIY.[R,:. MWF\ WEKXAFV]O'1%7SB[ZTB-7K/8.YG8-[7T08]6,SECWMN[:@YLF5]G&M$%K.]M;4+U[AA&RHO2VH;1OE,U>JI M@4C*ULWD^J@P4J,7Z8FVU*[>*G]*:@OGX^Z=\OAT4"ZI9T0WG/W]079CM_8[ MI7;)&YIKYF$[I4(S=6(<9(M:[J2M37(FS^UU>_W$JJ+]72&U44\?%^X)2K]MGDMM7,&9>)R/I6D:GP ML?;LF^765'V!.>X*PZ,'G:C=QN%-=S]1K-<+^4%D05LTF2,2U57Q()!9/6H- ML)3T.>F'_/ BN*.Z!H^JMDLZL>CXV6'AJ6ETX,[^/FTYO%RMU$+6]9ZB%Z[%H[]%)/)<]A=H]/7S MP47$#1=->(.Z&^=TK)45W>*@G=HKVP^]?D^Z/3M1:L71<ETF'CL7A^?IV3;Z^.MLFX^:Z=XYME1_KJ4Q&JU6-FA;9 -H*:?V5 M=Q^6[0'&W5:B(UC%$;'4UPQ-N/V2?TQX>GG:E$JW5N_P>CBP.N/+2KD9.:RT M+4(ULT,+K=7\%FV5I7KQ('0Q[[[,\XU[XZIP9^2U,FT7GUI#>5]+/$37&"S> M]VUY=4W^]#;:Y8)3RXB-0?EQOU$GAT=I5=F+7! A8MOX;5[\JXY,\!8A2[8Y M (!M**!LO8TUKT_-1D/:.VR4QGM--5]LV)-4Y)R7UYV)X'V_12O\1^*<3S"" M-!P6GLRK4K;W:.6=?F-P<5B]B2S B!(C1,H^O[SS#;O6)[J^Y]J:06V[J/8U M0[,=SE (9V8!YZEXIA2*ZMU>HY_-=4J&/M!*5F0-]RO\\+%U;YA%_Y+N+^TE MGO+=ACP0Y4G[V!R,2P_C862-^II%?H6;.GU>@U/HGCF"M)O'G14UB:04FWC>J3==]HE&^D(_>F4+QIEZ(;P8BZ05E] M\N0G#(I5*NS?UED! M2AGV=WDGA%3J\,[;F#8:W=N;[%%#Z?:)U9M]!Y#HU+ZB0VJX])PZ;P\S'W/Q9C%WK3=6Y[IRH"GF MTT.O2LX+LCB8-$^+D52]\\3V..X%:G^=R]_:IM#;BXOV:2436!#W>7V'M_KP MZ0M"&>KR$D&Q++PN/]YK5-N7#:J>U_:O'B/IHKY7+-_1+R86S%@P[6FG MG B*9>?*:EP?55)JHSIXF!SNJZU'XS:2J/"=8OEVSYU8*/^10NE_%6GP>B)? M7%XJO=NS'BD=-Y3JW:AIGFT6>)VCB0@6E%6&SU3*K6:WN MGFP5]XR.4M0AE% H ?$$HH^V1WHLMK99[9HEC?(02"^(V'*%,3KJ)KE)2THWLY,%) M2\7*52-ZO1KB(Y18&)>JKU$BIS>7!_M5Q5S,\4V/D*) M!7QI AYI+_2LDC+48=%T>]63KGAPGT_4FJG-%-K8_]QB0?Q8K97W%]IX&CZ* MZ5'A<=#31'52-75I8$PBY_9%OO#%B@OJS);(8]KUAE@6/,6NV+:+%1ZJ!E\^ M$JS:#J^_]*Q2I)^H)6=*F7Q!;C1N3K.)XT?CLM>N1D[S^7O[K(P>4WQ?)<$V ML<.TXBY0CBE";(,IBY+_'N/CE:N9Y^.44Y8+K8-QO?1P5X^ MHB6S.[DC9=F^;Z?O\G?MRUID]?JJ+/J[)Q"%FN7?4$1+:I[FI8^OD[%0IW]RX3NDZ MTRLG^I$%Z]]2>'V&N%_7!I$JMAZ%5+T7!><3["LYU[>IO'O61 MG;N)+OO&K/#.1A:?8(6O@ARCFQKL%5N5A[*KGMY.K+359:5L-)&(9NU MQ\TVHQO+R* UM44>U++;OW'/#B6EVXO>T=&W&O9O:9 0.?;\F+E]N[T/;\D> M:()34V&/FSUDH;H.^W-(#6H1/-<+5Y$=TO(8'?0@;+A?,H]/B_W)::]*35I^ MZK4K]4)T6759W3?>_<17*!XZ-?D(R;<:5*R#X4NF[53;[.3*NYM<5?;[?3HB MC<-;Y^#L]"$EW4:O+VW$F7J.K#'COH-QQY>'V>O)2=\4R;U6/ML[;A>,W*8Y M1=]OK*/ A]SB-9AK!_O$_2QDR_?EDO$JHR&UVE9E#;EE" J>BT:QCH*Z'0= M##]OK/>-AXF:3EU M=M(IR>:FA9UBSSJ,UUZ/0/)$1C+0'*)7C/)8H;9=;5\0ZYKHKA_,S&;)<:9K M&1-1OCUO%1SKHKL?W58C;X0%>4KAZRO^1Z*Z93"*^20G#@[/\^7'U+XLD^.[ MDZ>+R&+]*#-*E#5*70-XV*FVZQ8Q[#:UJNU#TU2K5HU:0TV9-37^-195B\Z% MJ1E.Q8#[?88I#\76J7QWM1*,KZ[0467OSCH5/K=#K*]]J#?.F*?+; M>=7X*D,:IJ9H?)^4*]7CD<-15;K9=YZN>A/5N"T>')\9:BFR76_,)(N9Y)38U*I-;+@N<*%;CQ='1UV]*9(6+=I/Z?2^/(@^8GV%,^87 M&;/#8G8H4LNT!T2A^[2-@2N/)6P]G3NZ=<1"HU9*7])"O=8SSC::)18O=*O9 MXB7?98F0M%C<;URFAJU1F>A==9*^KAQEMR>6#JN'9YTG%I)B^[+"1&#I!O.#J]#4NO^\5*MY_>:Y=+%I7DPK$JN&[W7 M;:,/23><219 4N7D^*+U<&#DQ9-F.M%+D?TBD3::,[X1DFXX.[P 20_.[QXN M*P\/I8:% X'3Z. MH_ORSXK)]N+;]'-TV^K(UT=Z>]3- :]+.//[,PT#<]& [=W<]0XWG_( MG^^W-JSAQV)BQR*Y_2+YD5*.FV8QZV9^DLM=2A.1/FG]?JLP.K6[D8L349Z*BM..5'8/"@;6\Q8).%3K3J^&W;NNJFR MIC2DB:1W)OGSE4>1-X%R3)SKR>'C8<2*CZVJT*/< M;#C6?5M^ZDYZCP<.+"2#DS9PV[UB>Z[I^C MA5^W- VLE#-;2VB4)8>)AI5V&X^78_FH5[3=?G1??;CZ1E%9(J:F31G6H.Y=:N==Z.%QYM.!CBT\GQ%1"SJ_> M/)\H?5K)U*1&@]Z?WQT5$F[QT(T")ZS%1KF&QLG6@#_P5-Y0"1@;&X_IP.M] MNNC4G7T#4.WYI6Z[Q7MBW4T9IT^)[5KTMS='=H__'/\W_S,^Z(V'-FK[S6MG M3HZJ93ILU;*T=]H_*!;GGJC99EJ6J'B^7G-L/CVWG:LF?B M#5]XW@"N;ZJ-BMYI9D:TE[W/Z<,[_2YGR9\?$'[N,A+V7[Z#%0[R9A MGUS3ZP/QY';_<#_]:)U<'4T)RTZ%:7BP [T]90P<%C=%:@Y:\?ST:U M.IJ1<,S!KBPELP/GK] SX-*!?V$;5$&B3?J:/MG]#[X'8 OG="1' M?P/_M4&!M/_S%[O:UIXH# 1C\J?LPI\"_C_E_8$/($+7HNW__OA7O5J"C_: M&#./9'_O&J8%N(X/.Z)L?=Y7/W[7$= )9EO K&-,$OC[%XX")"3P_\$"4BHZ M)=9NRW2Z?SVGZB)R+8<&_N[ 8T$E[$JAKY#Z^!EU;4(ST!(@K?["-!]J!7-?P;8O*6?F?I\2_J^%Q&6S@Q_#A&V9NNK=&#P:!QAJMM;2 M=#!)NUU-A4G"D/_[K[PLIOX**#Y8%K48*8BN=8Q=C*Q1:XXX[UE::KE+(TQ[ M-8F8:ZNY=*XIJ_EL,TV)V"2JJ#;3LM*B2BZK9/+*#\Y^ZR%&:^:IX;7_^-TX MK]3+^T*M7JR7:W__:JUSTUZ;9ZU<:EQ5ZI5R32B>[POEV])1\?RP+)2J9V>5 M6JU2/5_CY+D6FRJQUQ9R0^PN"+EC&CO"?E(H)059S*0+&S+[@^K5V?_^2\J* M?[$)@X$RP)%&NZDI@@UIV1*Y-N79Y)G;>F#;XD">D="N?H^V<)\;\CKK2O+W0!G:YIU^6#R_UAIJX+Y[>YD>P8O'Y ME??] \MIGV3;C)O1 M.'?Y*M%J*=S:S0*!L*'A,$"<,^F.Y3_5&TWB;."H_OY OS2$#&QK8A,':NCGR%:O_.3&RR&"W95'22XQ@]6\BE>!WT@(;YSKT M+[1Z\\OCUM[[MZ.^:UV%5+)0V,2U_7(LW%"V2. 9-%7__2'_>'/!;,"7E_ME MG91?@&;>K_M_GA&K)U0-^F>@)3=[M;X&7;20+\G<>NSVK!5H(Q!W_OM#@UML MJL FFGJ+Z+KIM,SQCQ49B:)AN$2_H@/3U86+QE6M43RO"_6J -"L#OB+,[64$JI7@I3YJ?[)OZ@>"/6C MLA#";P%V*Y;J OPL%5+I!8+]BUG$%?#T@VL[6GOR*0]""JZ+A"_TE:5DOK04 M#S2IF:Q,%5IHBDH601-M-PN95+Z9$O.BE**$I,3,5MPRGWFW+A MNG_AW,FCXB+01(IF;CCNWAZ*M:/+(_>A<58=43,3P*O@RN;I1#NZ.W:ZO9OL^55:&:>=H=9IYN;'/![<#9ODY%+I MU5*G^_U#QQP_.9?-0G#EED&V7\O04[^B:Y:7X).^9@@.3$MPNE1H:S:LCBN_ M"2660&%L=5=8X#"%3.6NBB];P:A=E4SP-FJLRE9>L*!^F8?Z0YY5^G"2[CE# M]5&L.=G4WLF16W7(O&?U&@WV01>P8]J4M"/@M%XWBU'EE/S'&>4U2+?A2WL5 M%E2O-@R3+V=+8Y3^J5 .UA!BGNTSI)Z63_;&!WM[E^5$3LGLZ:.[OC3I@/E> M.E)/;S]2KU\5SVL5A.3?B-8C(1=+$/)H[?\6VY]/L;:/L9Q D0@\14%H6V9? MX$18Q;\%Q_Q'VKDH+6UJ]9: UK%J@69C(B$ =O#B#!=QZT*4OEQ;6&99/ ?P MS'/VR! /]P[?- >&O=B+VM*1KKB]M./F=&'EB4F)"F;S;\#=L?AE4TZ:O[Z MTN0O0\95R,$5[;!\7,,YAU]"LF!>6?O]2OIZOT'JG/WXUC%?Q;"( M*F#7#L7>X6JM8BC)%Z7AV[7MLZ/6G^4Q41Q&%$Q8L0)B",06[ %5, %0%31# MT!Q;4+K$@N'_#,??I):DDH*8:9)4'F%T3FZV4JU,,T,R:=I.9]OY;.%Y7&N< MOJ52*M5NBN[Y4TNY/,T>VKE14YZ/@#4F3X>3;K=W*/8/J[W\25OKU?-XI?S\ MRNO*4-W/]$FY1^C!_;"8:P]JE\5F>G[,LUS&&0RDRKZHW8_ZK*7_]&7%WSRQ9.$WXCJF_P4/O[%OOC-$ ME\Z_%6%[<1"N6;QQY*^&^M+OC_-]<4W1](EM+( TL,PA"NCRXW%< V)#*@N< M8388*[E4,EW#L28E4Z6!@ZR)9%*Y+=XZC9NCH]9%/[-ON$K'BYF_'QX@)8^I M9=/))[W@]S+8.DY1O\C1T>#!5;!8G8PK7CHY[W861I[ 7)G1X%YRZCU-O$E, M[B_[]GAT)B%SR1]B+EE.R**8DM.Y]T=]UZ\W/N$P,2D5P!4UP1>UA ?7TFQ5 M4Y@["F9<"TLTN\SJ$$-[8I]C&?O^_?I920I72:&6%+SN;I8P*P_"N9G\ MO[AO?2PJ(N4EX91VP+-2A2*K#+'00KU_P)WOBA-Y-"G!GU6K;HZ,$&%JB8OC M\L-QSQ"IU*^4^ M:K?B8?VQ>C$YO^W?I#Y(E.,8'/_CE,^%"=Z>?J\-9MPNO5UY*IB=O:M>];BN M9ZW;=NJPTVFF/XB,Q5QVZT'Q3X^0B( '%DBE-B"Z0,=4<3'#&;X&M$7M/V,Y M6L/> %\+R-C/06XD#P%2&W8(\/S]F<6K*K ?I_%NG+J4^\L6'*K30=7K*(_+/EI8F CL=C^*+B[ JOGLB< R6#@_,MC=>GTLF;*\#3M=^[T1_1SE/;Z,]$" MKJ"W:,?/O70F)M]TK'2QFX]@&L*HJ\$W4U?C9?I]4!UP0[!9)/S*2=&L4>#E M@J*]VM<9YEA9@B;F@^2\%M#YG.OY!3/&MQF+CV&+6OOR#V.(%\_#M%(@6 MQ\1A_R7F@;T9/[5Y_%20Y)^=^=!I1,XK5AE/]T@TD>0.\_O"\?0K(]$_/CPS MR[5FT2CD^NZ3MO>QDWK>>A0N-Y7>CC @EC DNDN%?R=%2;B@EL Z1JXNVOX> M]I?RKQ+_94''UQE43%"C0FLB*%VJ](0^%D+2. >%WA;0;($((ZKKB9YACF \ M2FS3P#<';-O%$R5B"RIM:P9_F>#*U;T#I;28$3R&##$S\&92N(,_? &;FZ1' MJV>D^NOY O"-6WDJIZ^M-2E\Q^$6/_*_ 4J=(*%J'ITJC$PAWFS?[1W>D_U] MO5$S3\Q<_5 \,\3+-[;KW P4TC-F>^VNV9.]SU,Z7R@4WD?I;Z](\TTB8)@. M?//H:JB%0?FR]_HL]J*Y__FKX//=763")FO=2M%(YK4W<-AUCL M%47+#@G%?:$TN,L;JMSK#\:EDG9U=*Z==6*A>!-+?%PF7F#[49>RC/-GO/]3 M\KBU"WH>N5X5B*X'K!^6B1;U+H"!%XC!/.>'S$+9#^6 -*#5P$H @@J_&AUV MZ<"B"F6Q/DGF8[!Z-K;P$T9NP_]M5^D*=M?$M]C\][:=+G&>KV=$['E!9C=[ M2_H3+)JA"C_ET+I;E,+NNJT'6!6#7G@]W(GS\09C+:/93-ATB>T(!9&/H)*) MG0R_6*>D6T0AK5Q331=:S72[E6T64K+2E/)B)I?.DE9:\8OZ!B^L2=*^?-52 MCC)BPK@W3*LK'Z2?+KWW*&:NK%ZI=_5R1U4;_5PQJY8OJZ6'$I; 2CV_9CJ5 MI8P!@Z2_^,K=1X@Y\X MQ'>V9I#F=(RP]S47?;BB'5(BG'ADCJ5!S\[6RZYQ6=0JE=NCXE%G$4[,7MP, M[CK'EZ<->G-XWQP_'J?V2MN/$S<^/6M#"\TO!R]L]MZM>76KS*Q[$T]$=6VQ M@[3%#E((="#F\/REP$'*-0]2IX7$7K=Q(F<3N:MT2:QV1K&#%#M(L8,4.TC+ M=)#8>:L.8U&!* HX2*#?P%M ]P /6XV%WPJ@5Q+/?]C!J#L1[#[X5O ]Q?=-+6EW-H0E@-@7[1B(2\4&E=.O98S]Y5AQ=>G^\Z4UT_NWW?H]-/%HCAS3/R2VI^;R"N*?R6,N)ZD MJ6)4B?6Z=$4#53^O4$@9+F9D1.O5,:W)JNH4LG2 DO>04%; X^G>\6G]*)OI MD>+EB4ARI5+_1YZ(V'@BQSUNEZ-7F;IC]^UEZ#" M@H+HBS-2OK6M!&=,-ND]U]8,:H?356XR6NOLODC:9>WVIGQ@YQ_2@U3Q%1S^ M5DN)4*^WSSJ+7S&84628,JR\@WS2LW6OD^I[OEOMR]S>[+AXFZLC SZF.LEGZ;U6*7<&4N81L] M.;J8P[%(RSLS$_$TC9VA@9W#%$7'%%R;LJM@+JPYV*)^%N 7XK/T"3Y\I,&C MT64S8.DF*F@@([.;!C$4C>B(0;%L,%YL.^#V$4NU!:Q=K*FOUO1(_22S"5^S MOM_7@A8;FEWZRK&HEUWG64A\J1%=;.(X%(M%X_X!A;%8.RR,=%C&65#HA]@V M6"C\RO>S:;M-63C3\ IGX9T:ZF0#MA0UF67J D;10SL]-24CH+0K2MLJXIQ,JSC=F0.==,+9 MK./#2W4OE3UMU.RKIDYK2DT3%^+69>KLR$M$&]]9\3,^8:_?J PDL*) PC1- M^D7%&!:J*3.S$NL\+].^E%F]EO9H!YI1<_I.&9=0"A;VC&_W^S#FU7[WH-=_ M:%_WW,[A6?EPY5@C N;X=;9"X\@XR 3;RIE@RAL^)X>XC>FS(,\#%;IBLLP6 MT-OZQ-9LKY(W>MA#FF@1-+=HD*EAYM] \3\O@FC9XA#U=%'6WNU37@PCV MSY=>;)+D5F)A.'LV>ZHGH@]F_DG%T=^L>,,U=FI,?!_LDPI8B'Q_>GX]2XS^:$W./LG>AG2<39.VM?79R]$V?O M1.=0AF7 ;'6JRV>.BB*RSLBENKRC$>?+?>[1DZ+$:!/=IBLZ$$"(.!.D!82U MEVL1L6N7#QN/Z;W[_8E '*9=E0_!FS$AS">=#G@+^ F]".IX MQ2 \)V!HLF 6ANLP$Y@$ 2]+25!Y" MM'L886&#P8S9ZP8SX[ B#MY:V' M[\A+4,EKSF??M)EK"934)SRD3'$M-GB; M!@9%;% BPJ/+>DLFA7][HGO $BWAZ:ZAV>!I\_?5+:Q#DD7]A]]?Q;,]_AO8([ T<67 MJ<4_D#7ZIL7VWW31[S+!(^X"I_"7FU5*^QBK"!C3ZUFU?AD,_'CD05[%GC$Q MKAH(Z#KL2 +7ZY<%?)E?64%03G9EIKQ+F/TQJ O"@CNF,,]8A:^2D>CIZM6D MJ-2H(#TUSOEC].VZ3Y==.K.OM%HD/-+W7:+ M]\2ZZWQ:!%--.8\BF&X^D9162*FIDT9UJ#N76KG7>CCLA$6P#GE?V+L3KLH'Y:OR>:D<5#!;7KW_ MET4WE?WT4K!Z?W)YDY7" :>@3.?T*UZ:;1Y:SA;V3"5Q!;/EV\*UW1;\_!X< M%+'6X^]0PBM?BZK9 YU,4 R]V.*[%Z8#-$EXL87W(E'\<8X)/U[Z_7]F@DA$ MZ74L,-8JADM-:]=G"06<$ L]VJX?)I49)W9H@DYY506+Q M!LYLNP%;I9#ATLET[@]A^N$E>173FJ?TVVFX;W >]U/A<([7F";LKPE M?=ANAE94.=\OWV[B.P3>$$EY(QL.O*N>4TP?00+B___V1^O'F<@NI9.H;WL>=9=K YEX4K^I2,Y47LW-@_D6[ M.[5$X,YYCTVNT3Z,!47&EV M[X"PDZ]F6DSE"@N/TE>.'-Y\[?.:6BHQB$^'5<[GK5?>5OELJ1@CJ"@@J B( M!4Y!\.:P;""U9K603][8&-\VJ,8("<5T!ML6C).W6:W&."G& M23%.VB*!#DS"*>T0';2R0EG[3KLIIPIB1H[1TAK14BI&2U% 2U$1#38/(321 M&#IMD*:-H5,,G6+HM$4"'=B',U#=-=*FSF1?LQ7=M%TL"93-2ZG4>D\R_^GX M*1WCIRC@ITC)!TY&X+,10M.)H=1W:MXUF=-U2W6,A&(D-"N/FU7?HE)IYE-B M+E584XF++]2XB!+K;#ALCI5WK+PW7 )C-W:1&\NJ=;=-ZRJH!FSS.K)E5OF: M&.H5EGJ*7=HUNK29V*6-A$L;55GA$V-M2Z=36P^K>J7$U_-P6_ *@//]8-7? MV8ZPE\%,I<>KP MGV#/4LMGO%>Q/: D7KJ5TB5?[W+N]%C1CC ,%&V3;XC.7 M&*S&8'6+!#HPP#6OE?>!WTQVGSBDF2UD)$F, >H: 6HV!JA1 *B1DH__[XK" MY(=4_7\Q>MH@91NCIQ@]Q>AIBP0Z%+XP2(=W8,V06F#"USTFJZ;;6XW M8B2U1B25BY%4%)!49&5E.K%_9'QONADL>.=O!P;M M"+?8Q4UH7""P#:KNZP M2ZH#RL>UA6W#I'$9\QB3;H*&C3%IC$E#=O;2)=BZE+42 F4-'W7O4RA-D[3, M&).N$Y/&QM@DGD,N]8(NPHQ[(H"[(JLK'@3$S1^W#@S-P$G)X1F)YB&_Q$( MQVZ8PK9II"S&9QNDSF-\%N.S&)]MD4!/;0X,:YDZ^O>L )_*:MAD"H64G(\Q MV3HQ63'N9?-/Q(!1DD=_,@S$3:>S=9EE,7:+L=LF:(D8N\78+60KJDZ76A6C MC9H>M7XGHB*WS:5>UQFM^=":7JP<44[Q,*1#TP+%+MQ[%J:K6KK>>=4*)3BL[TH M (3(+H41P]FI7'3:MICD7-\YD\'ANLI:AY7-4\5M_;N;A8?6^@^HZ(/"[+ M[=S7+(#?IF67QU1Q\374:KNM*=3"H^.2:0U00=/#^+7R=9X& $_%WG<$O._( M"DLPL1TAF)K@SVV'Y5T$TQ,.32 O9M)N7?)LM#W@. $C@B@EQF Q!ELW!@M4 M=LGL#ZAA\Z/?@IQ+Q\FSZ\5=4HR[HH"[(B4@4X 5GLV602E9W&;-&T.I&$K% M4&J+!'KF?%R2O794D^K( /^WJPW,=@D62#1CCQH4O&(MAE7KA%5R#*NB *LB M*RS^E(1@3EB3VIN5X$^+Z-[O++XU+??]5C.[;8-J<9.5&*IM@MZ)H5H,U<*O MJ')USA0UIO^!EK?]OK!4K5L$/&M,#(RAVCJA6BJ&:E& :I$5%A^4S4=$'I>7 M>ML%,K"^-//=:FI*EZJNCB@^=G?7Z>YF8G-NQ;4#RA>8%FQ.LK54.SXOUQE6YAI*2DL4/ M!FQ__*[!LW@-GZ7_Y7%IN1]9]H:ZKU=BZ7S#2F./3,JVQ3@^5U92F97M"?/ M3&-*7& ;Z]729TSAC]]UE ?V.@G\BIT'YQ3YJTPY2]5%Y"*"IO[W1U/.2$JA M75";V7Q>;J93:=HDF7:ZF992-@D-5-Y,>M]O7J%P;&Y M/"7OK+Z!RO:[_=-:(5584O$Q6]G"]F.X$_AU#1[^'G:-GS) MI CMUH-K.UI[,N-@I;*ODJO>U6RA:!@NT6'R ]-RP'X;F)]K"VV^A(3N+<$. M=3[W:O("<_0%&$&E;2"2BGTZG2X5VA3(!B/:_*TL#1:DDY&=%.I=_@X\,2;" M2+.[\(-C"M1@58#9B/C+:P^&ZXBBL"$T>&!K(O0I_&ETVJXN*'P;L!-[Z!Z8 M%%.*^"B\4Y_PUJ$X4UR C;*-'VS2ID*76*!#A8%E#C65/P%_N["T(99"JDV7 M= K_Z1!OW['O@5!4'!Q+*A0R?*VL8C&2QU8LK14BT,LK],CO7SNW/7TR$0P3 MGJ/ 1)+"(360U/ID!P>V:7@HIF,H+KOEVC"D;0L#G<#.POIL!RL[=6 =.[C6 M!ZI@YC7\0 S *MJ )6*WV'MS#KO!9 T>8'8V?70Q_3H@F[>A:*VEW%\O/(.3 M],$KW QK&YKZD+=IG3Z/57AV\7+0G[BI_$;^:,+*/K_X5'- 431A1$!CKNYX MW#:"K;<%O$I&FSC987]*?_E?C31=?_X='>.3GG_;HKH&\WO^]73^SW_QUCOW M-9#G^7<:&A9U;AX@SOWPP!BL]GY#-M& 5C._ 5TT(-> 61DO=H-G"Q'0]3?"<^? 9R*<=EUA (\KY MI>TB6A9@KUBC$& CW&!/3'"Z>)OMMI!P.#,B&&Z_!;L/][IP-7MUP&$<96EV MSWL]@#.(9K1USID[("4P2[AGU-64+ANT12"S:':ZR?;9S:!*6#7=9G'_:KL55,9=!W'1/ M .&R#5!678)@!@;1-9L9 M5=@4H1V6&;YC7&K@>S??[.C'YC M6DWIHNWP+3Q._)T3!)IK %FT #O8KZ&'62W-T*M#>A3)+)@MW8*H[4!$DP'/ ^FI(RU<1V,Z4QW&Z!N!4;=KT:S.- "D)ADT)C[-[YZ:F92J6R^L%0G9\:]92!YYECB#=B\'B\# M=:_G3R69%_&:\R7P*U__]QNCK' M_MY&RANJ&!91P1(!HK-WO&Q*0TD*/U$! M>,#+$Z[G6(W=&GP);._C2^I]]R=(#F'6VR^KRB0:EW8,JITBY@#/(9>:E6$5 M)$DW!QS2N*@ ,=K(U30LI$=!H8#-4%W% R.VEZK/U#7J1AAVT#4=TX!%@:N% MP0Q\L@KD03^)5X%-1F8/PHL'^T $/WJJ3YBAZ'#2A:@!C@;@=="AVA,S*H;0 MT8D--%*L"2@NW2,6H!^=@R^PVFQ$Y@V"!66:BM'.;27@3MH'W4A!F9X%#\&! M%3(@+$2I35$8W *Z/@':6M$8\O&'!H\6[H3;T+WR?U0UTF<@U&7>S0X'ESSL MB4JY"Y/0P>0!<1@*Y@X4]] &E@8K@!V;3AX<185Y/ /LD SSMG%$-&F:WH?? MF3OD+:T+4HWVR=1YI$(S$MY=2!E OV9G$ATF" NB9V0%P):.V4<4Y-->!U3$ M-L:3*,^SY*";]C6@$,H%.AA@8P9HOW9\6OF@W^<-3H$=C&10 VT5H99I#XA" M.?V HY#1@*%HW_:EQO<'6I9)4/(84'E1V!@&!14PH@!E6 2%"HUD+>F55^;3 M.V?+@.T])2U$]I$YU]ZP]HQ+YF - LUWL,P7[=!4VF5C=HOB?.%/ M7$6'2?2NT-#A$4/-U$%K_&Q<_XD/J1AMB^!6_JQ<_#4K9M]JOM'P?DL*D>0!$WT?FQFK1-A8!>AE!\VA3!6PBHX)* M;6P,A[LVI;3'+YP"++9+QX)GP2=3* 3*=H#Q!-#.&@O'ZJA*43D'AG^ <04& MI1S3F0QP+K!QI@M6TX-7R*:>L^(%>Q>B_B(^Y3?LP#(5'UC& M!Y9O'EA&09V\ZOPVKA.5*T\%\F!D@.HC:Q<#)X9Y%PRP)RA,?>H^3-V5A=Y* MQ7G56_2TGAT>D$%J[E'XH6S??9BZ&=R- )B*7I5WIF!T], >ASP5!MU\;X39 M3;:JMJ8$\'U6AV(4H#/5W!B9!4UAS#@\#A@!0WMT^6%A:&$S_IM*&:L&\PY6 MXBW?HQ3SJQ(A2OIFFJA##-=-+;H/]I/"A4X,8J'KH-D8YU(\HS'H4NN9'\DC MM#YB47F0K#,EW,0 D.$@.3S0L>-Y,TB&-IN+#29-(3M"AV( 47/[.SPX^[3# M?\(H&SBZ,#^J4T/#DP#^T=7;[-,TONW3@DV 1LC)GT(:=J+HA7BYW\M.4GFD MEZ.POL8/%=J@@#@P8(L:P:/,D1>6UO#0%F A&0QT%GYFI:/Z&%A/ )D8(O1O MG,K,#KB0!G.;^YIEL68X Q-FP0,)IH>NV+9[7#0B0XH'G Y]%FM])KW/PP*( M&"W /" !&'!GHC:W-L$=((>G\V*_SV(%_%H/9F#<'B1BPH\=^%("%#SC6+ZU M; %\1B]80M0NX"I84QL!S(+0PI296GAR$PXV1(>=SDS;61#46: E_? -Q"P M YT@ KT@=()N"3]3Y>$LD?/]> S3\AB$P552>*HY88J9+Y?BO"VXO$4)*$3__! D$30RLC8L ME:JA<8.#+,1$X>?!U/AB=#)A"0W^C' 7(\33K^*;V\35G!L8*6#3L#U5,1>V M!&;3[*ZO6L)7S.HB7]U,K?_.C(,>&%F;0Z7PD5L+]=Z8NL,GO9.U11C9<)EGA\@2MQ1SQ3J38+/ MT@Q9\MC.PNR!X%C)3T3#N 9?!%/N:(*8P. IE.#O[&R.#5S.0^V:X9JN#39( MM4#$$1 9YC XC6Y1K+/. C8\XP;#/DRW&92J+,[.J>JY*L%9P(;HZ\7!N4WQ M3,.^9,A[),P!8BB:J5.FY/H8#N-G;0&FUDV8\UDM$-0V'@MT/4N 9WG^A2$\ M&IJ:FF"&I0-;P@;T-(R.Z /\O1[5 MDUX4=8I=?-?8\J-[7-L&SJP/X#QE,P763)W.G_SU,1.$G_T%AG#'%V V>9;J MXO9!7@#G%/4]"E,"D4SGY;]V0$ZLB:XSGY!1&W.;V/P!_>#T3RD*-!,<#'2Z MS+!XVS%=%.8W6@[+R B+*I[6])D#$T1058!5IN4;-B\MB&\:HPRG(TO?M7US M$L1--2/1-?$$VL%$1J.SV'YZ<5T<#AY.O# KS^,!Q0.\PU":[ MF8!N$^ NBKEV:#?[+&F798 .*''\PX0VSZEK:QUV3#+U#SS+%@[;,GW%U)#J M@7MV'!@ ;9C-- MA6?:>$&'2"F"MJG#/C"T0G@(!5]H8ZRRR' 88 YL@K436I. NM.S#T'E)WXL M;9* Y^:,3$Y/OFKO&5[(F86',=RLDX%-=_T_PHO$!7AA9XQ>*CSJ.1L0#N?\ M\'#P?+C=L?RG>J-)7+._^"87C]S[+W.EDFGIM=>Y0O'6T/AH^]M 7?^U)_]S M8F21P2Z/GF,2\YN!:^\8@3W8OY2TV($_77$,>XFO=GG_?O4%.I_L7+\9 ?[P1$=@(Z=7WHN.-^*:-R"7%5TL]Q!OQ?:KIU?>=XXWXIHW( M)E.I>",BL!&Q1$1F(Z381D1A(V)C'9&-B%531#8BFY3CC5CB1KQ=)NYCD8WO M6W7^ ZM>:0SARTO.SZWXM0.$5U_@"J\VJ+Y4>*GZTELK3Z63.3\MT\]-E09C M@26?"W[&YXHI\U:YQ-=H=<="LV7V1ND^52A[?SPE[4W?7_E9>B]-9/@_0LN M\6.FB?"S@ED+IHNUQ^T_E\?CVZ@ Y<\*2#XI%=;.'%^1CW/J"#4\JMQ8)?A! MV+BD=?+PZ09O_!\K(,K*-_\+E<0_X3@M0SUL-CJ*M<-7XC4;O/%_+ 4SA4HV M*PJEWU"R>6:%X9?@EH9]UKVHY==Q?U\2P[K7_>\EK(0?+*QA)2%19+E7X72S MU,S[QS/;&U[(P*(L;@O7".F=0E9<:E2CL/X-_G[&]C#)^7FD&X%8O<2*V5WDGEYL%#S,U? M23J+YD9+27E)(''=GL+B=Z:W)I"Y(&%AR?')-<;?HR"_+X8!UDV7)8N\M).3 MEHY(MT8Z7@QR;AL7I)8/5]?-!!$*@JZ;6V)=^DVZ-)6+=>F'(ZG;Q@7R9D9: MZR8@YCC$^B'8/,.Y*>!9-X8[J9I.-N)GQ3XFXF*^]F\HP&:^\15O,+,)ZQTI61*RX[ M;9P5ZD5I#;'Z*.^GMR.T+=+!JLA8HYX5&AW#OJN\311K&-'G53E9"["9^O%8 MKQ4;8&/)![S;JTCM#X3U-ZGE5^/VVC"&:W1BF<_G?4#\TM:\/95?YSC4;0!? M-%?QI7,LO>U4!8MBIS%L_6SU6:35>ECE?+G3W,JXP_PQ2XJ5VS#Y+/VJ0JKH7/Y#TB>&'B M:5%P@>BVR9IQ8[ENDW4'@XD&!;G#=7,]5K!IT!82V0^+["J.5R[89 6P65]O MHBBPSPYG,1,5&I+$:YN,3>\\>O5A7W"L2.0#YYF^U05>6 ?Z9U9ST189W5=I=:)=:SD,S.$M^M\9O!*HZKK[([\KTTW>L_WFR12SCZY?Q+U;@FV/D=90L MEK,;+?G++5F\UC(+7Y*0Y90WWG16D&.%_TSA;TRI9IZ8LK)"S6O?SB6#O:\4 M:=[LA@XK*,.Z)7!@O66RCRS>W^KO?*Y/7O=%P+ M=OIFD;R322_W[.,91"HDEULK. (U[]>B^-8C%['B>ZFX^XXHYK> ML:.H^'+KIL12+..2Z[2N20%LWUG@A??.6\)?L=;Z3%^"0C[F MYN5F T=SHS/+=?0W1Z W,UY]RHH=U'@-B4T.W:T2!Z][.1&JJ+MAZBBSW*K3 M$6#M. ;]65X0E]R',0Y!_X/6O2T*4 M5UM3A%_"%0M8[V]F"'#9^#QN?[%^(BP[SEV8[Q2V22R^-IR^76R06W[>R):S M@6>'8Y6X?B(LO<7VTAW8+6>#M2>&KX0-EI]1LAELL)D1]B6V/=ID_VKY(?AU MB_7W)46N>Z71[Y;TCY2,%P/SV\8O2^^]](^,6KX8H%LWN\2*]-."L?263?]( MR7@QGK]U_+)D1;KY$?_E-K[Z\L36V.PG].ZJ]XKV[ NLK67.\*L->C3;[[FA MF(:MV8Z-K6=XTP['9"U?_)8Q5*>*8YD)<\!X>Z9?CNVV_(\S'6)VA$:REA1: MQ*:J,+!@*:&N,^%^-*QC#6%M57C3'3Z/LD"LB==MQ]N% MG>GW+VS;#I#,H;J.*HEO3_ #ZQJDV3:V)AH1R^"=F R;M;P)M@;XHTL\,$#90TVU^62@>P MBXP$,$ '>PL1&UOFF)PFC)T\48+_8J\D'%9HN6H'&\=@4R '2:F9%NN;L\.G M"4\%LH.4&D('RXD:;#*\=8VC]7&)O.629@D6D PH@E_X;,F$@?_*N9@^NGQ! M,Q29X^+9X;&)%'4T+%0J$* LK+-MF7U. +\K#NM:A3V()MXS?3Z)$%OSIF.O MLJFG52PZP&Y/V-P+A< RQUH?^6["WF3]@S<1RB=3?PA<5P;*1YOK,@3CL*Y- M0[@[RR0QCCW34W@=YUB/!K0^UE3L6EKJPG3/UX'J@Y0TUBH MC,*]IY "'= OJ#1@<;!8Q0*.)T&#,?@+'JN :09R,46#_*_K K;O IJ#5.OF M!)MD=0'@=+JFZX2E'MMZV0/01&PF0&'L>XD1>BUMPTP\[#'&N[=5)G-MG<;LO[3>AX!SY&FQV/*3Q+$[2DVQ$>7:*S]FPV:'EB*'3'DQ;8>. ,WG7-MQ?> M:$FA/ 9(Y8GJG&FU7:4;6I)O*&W:UV ' @N&I$VM4*-X'8$@QBF#0:2!FWB M4,[0LH'43H!F?&:!&0419(:1J_ZH*N=7F53X>5%BX/3L3Y\]@%HO*DXYF9I1 MG*D4*DX0R'\7IK_X*GB'63M@$=89;ZI8#KS3=%2"-SYK4$;S8U8,.C)YVQ:U^H57?CL!&UT#?3<(8#A6DSJ5E MEO?FQ"XZO?U>-T,^[R,5Q@F+3,*=%&W*FGCZ=)M=^P1Z0S;XSFC8UOD*:;PDR3:9@*F)P^4Y,R@BLGT'\(+%CH,$:1D_H7KG@.$F4B'_ZRIQP<.GC3%*2IOQPOW..B; M@12B=@,NT 'BJ?X3F%'7:8 1=C<:)RI 2,]4-FN^,)6#C PW]0-3#7 MCC[A_BEO_8Q; *AB2"S-=&V!PN4^AR//SW6(9NA>!5FQ&031)_.B@="N*"", M8," PY!9X0GBFF$N)2RHR/S29])5\R\/Z0@_9$6%Z>;\\G7 K*IAH2)8(-!'VI0JS-MIQT.BDAS,#L5 MPO9O142D?#(S%Q(1Y^(LLB]=TY&#C?.ZJ&,[=AXF0_C- 9QBN@/=ZY\>BI=P MP5R[U#'N!VUB6HSXSW#5\U\Q4K$+\(M:^-?2X&Q/>>Q=A!7H!A/=%K46H@DR-XA85Z6PD\0;AE"UFZ0'(P'H3EWT'(6)C, M'(2DBCT"=0$,Q;AN DR$C(7_C9"5J_B^[:*(6:!<-!8N'J!2H32T2J\E/.4N M9";M&49V'\,--IU!!"QNH7K#+ 0E?JA%"7GW07 EY%_.#1[VJ>4<"/N.(*7! M '-((\E): M[;P962@"[W/#,T/MQ:"2:@SPA2S*Z]L)//-:''BK-6=YC';]6:WO*/#>(K5) M^62YV.#>3W' #): 72\1@ZC$TR=/5.D)5W3@ML#R[PB'%+Q'8[(C5&R+4,_; MJ($,$A@>XZ1]3YO H+-LG&:J!2]/%9+B'_.([ T^WF)&.C6-3J(.E.4143R> MB10_E:CE$"V K\]9BW3 %O!S5(:>ILP$&SS45,I,RP F9H*+"AI"AQVU$'0! MV&YK8WX*KR"B@^_!7NLF1NS9]>R9L#0,D/(@N@*0SIXQ=H)!.Z:C 9LQA6NV MV&3;&M"3C>PP%XP?_]0?. ">O1. M7QWF"0. !Z_;AD>C)H*WAERB:Z'3NWX;_A=R^<56&GL:A ?+?3(BS&CUJD:SJF@8XJ-3"XJ\="Y#X@; M!B/9"7P&WN8:L^Q:YH 2 W]$OSILQ8\),$1TB%1;P%^^]"%EPE+9FK#57:.L M70 3:OB '6$ZQ-E40(&%@ W[ID/#!V:<^P*Q]T- ?:"5/:7KCH"Y/1H&:ATO MX@",BN>X77/$-@ #.]3QCY2G3\7H+&%3P6WS/JDL)=/V=2B?%K+JSE2%8&IA M<'($P*Q#_0.M15&DP(M@07B^]IGPT2:>-F7CTZ;XM"G*ITTK1%E[P-W@:$<5 M2@4^ !,8H<5G*_ ,G'!K9"]$-8)?_HVY;7[0=N9HZJ71G+FA9&\H.13_?9X* M9SP;1K/]R'#(0=&)@NIWFA;'/)B^JSM:@L7[/&]E(MA*EZINZ #(-P:N3BPP MSLQ]",?5&,)Y.X+" R71L;OO>M? $]X;A&">/:0LG7; C!E'*)A"Y>%D/__/ MWPLO;M?6,+F)!U:!I.FD<&2.P(&P=IAM5ES+"M\53A/S3LS8=BW8(Y8> HL& M7"6TZ,1D 40\Z'"ZN($>CFR[&/;:9B^MY&?WFD:D=,@-#S!2 AY]D$F'D!_3 MZ^ 'GFRS*-H0^ N8E\.A(#O&H0SA6BP#$/';A&='86S"GLES-B,$[(?SPD#E=7CZ_P9X)?]B* M.0 OVIX8>*[(?FF!#\Q2:-NF@EOH^"2/@X8YAHO_-]*NG*M&%,UP&!/SC MQ> L#^CCT62Z'K8*E@"):]#X:0]/V9]F9[4!,_A^/U^(]T8 R].KV1,<#AOFIYX?@'.;<8A99 M8(1T^WXR/A7 )EEDJ)DZ=7P_N$UPQ\ #MJB:%&JA_>:&:"8Y#OXVP?-0NL1X MSF],6XYH,*%P4FWPSH;6)QV62@OT U)Y+]E09OS\-S+\-S3F$E'W)J%( F$! M$7:$P8^K;9:P:,#PE%I39R_@1';50]$\E>?P2L_JG&4+(^3Q]$:<_>:X^V>LE(67'[L:4'^Z3 MFD9P ]<9.QAIQ?WDBF& 63H:3,J:)Y;!-,)BG_-CI#1[U8+1" MW?'T4V!8@*C3V!G+?S(T[_C7H@$#A9F*:24RU7!^\AC/%/-M--L55'T8DC)1 M/VM]%I2RZ4Q*#C-J<)'-POS\W0T_B=:7W9F;Q_[/WIL]MX]@>Z/?[ M5[ RW;>2*EG19DM.9KK*<9*^[NDL$Z>GWWU?]" 2LMBA2 T7.[I__3L+ (): MO$6V* M5,VE9X@+@'!R<_01\H.\^_3R[ NH@*P@ MT@1X=?!'=#(>J!QH$J"\9.5BV'$#O;C52:]:-SW?RG[DN"J?GCS+,A+&^C->4K@8A(%DH1QCO1P<%07G&:.49#8Q)\U35F__IX!1>Z=,MWHI MN.4YQ;8(:KIR2B5'JK(4?7)EC@#8D3G5%(Y5?2EM2Q4"5?+6Q+$HSE78N9K: MA.)4I3K!,58YG2,7*1B6HJ0-(%M MG /?P3Z@0X4$#UAN%'[#&C%56$.WJ0)9&8T/1 $G;L9OK)[B2F*C( BWAR129@*4I9Z"&3:RNEU75?9(SP"AC M=/9A#'0>%"FM?A*SLG;ZZ=]G;P_:QTWO U=_@D@( M8/O2>9=AG9BI?D7OP0RT('V+M<1Y@@CI#0YE"E;U"@XLPG;-2$W1L[BT*CI1 M/9K@.0=< $JN6GHT?'RIUAZ..G1%6$5]7+/)1X,Z"?&^$ 2*SU:T&6%2Y.04 MK9$2]*=4QH[@+"SV)H!-(L>H7>@55,0#'5W7:LU$&-"*%#%]A/5"ZS % 9Q* M7DS\-0K'4CO(U3'X4O@^Q0Y@[5#$X^%@LAY'49V*N,]B.,J]3WQ\@&V37,3P M9&4[F!I+E90#>ZP@'N/ &4D69*U\KBO;*!@%7/+\[3M*&SU[T?3T1Y,LCFKH M&$2SP$6LZ-%4_D+1"^0O(X(:L,0Y-2N8-RN('ST,&,M$SC?;Y*$5,27DY./M!&0.CSN M1,E%T"5@M4@MT.'%,K3 QIU9YAM6&7\UBZ=C5NI527H!N_?_1+W\$.^5*EH5 MUV5Z;$/;I.A*R)5W!B0UZMRP*BFPDCH3%#VIMM844L8P#191)+OI!&-Q%\N( M],L8I1*L$Y8%HUN57'PP(+4Q[7Q>EM-Y"O8B#"JVHWC("+J465$,PZ8S=#\D M>7G^9CJ?6T>K*:DX%^,Q>R71N(4W3B6JJ?!X,$L#E?!,:>.@.(Z2E-Y 19D9 M>C@NEA7D4GO4R71&RS9EFUGI@[%4S(K,XR(,.!,F,7L6@D (S_ [E\.@-R_O>J5N0$ MY.!1&Y-OH@,JIC!4WLEH9]]%.UVTV-?M96;.U,NOLU*D4[;M,>[L6 MCDZRO93 )K>.L<<;WKJ'0MGD&#3(O)H?B2RC&L[3[*%IZE(7D)S:56J8;VZ>N>!W0H MBBQ+?$K]?,INCB]DVM4NB/=>-2\RY5C^]8G")LZ!KEUU*56?4#+P5,RU8J*S MU<'LPF*"K R"J*2V\YRR?:U>2R1KI\ IK(R_!%VM^BO=TO3.T6PTSZ44.\H7 MQGHAU";5" *NF\"_9$:)GPLC@B=63+!J]R_R-UR /4KN 0PDP1[ W*^\?$%M MR'A6223[FJ(:[*.,.4$]N.2]S'N.I.RT7I]]/?E"']NO7ZC654 _7-DUE-?) MM8MM@K2.5S:FTN(D5 T6^!B=P,^415J1">KQEM *8XHXD)"DS:6R5M-R$LT* MW1I<5W,6^TV/PP4A&JRF$/ &EJ,OO;=D%.#6E9SWPG/\2H)=-3EAC9]C8%1X M;4*4(Y58KAS1>E4K@V[?#51]CA14G@L W*(6\M,E4% QR(N,CS-,UHI M^P(R1DP9+C =&E8ZJ?I&$:)L(F ,^ -)E*2>7 AA2&>! CR\216"]2E,^ MD?&O(Z.L@Z"&DZ ,4P(^2GS*$@;2MP=M[W?LW0A[\83:>#4J7NCF;TVOU3_J M]1O*QT'>XTE2D,A?;HPX@8D?2UUL"B*ETVH?](_Z!^WC=DMI+NBX M3](9"XPK.2+O,1A**5J[F/%^==4,44BQ@Z )_$F^!NU@)I?5XFTJX"GBN*"= M2,<5B$$XI*.%1,5QE?MCQ M"IJG(,1)GJ^^Z%\-D^*V\I(!/@9)06T[0+(%K$BCUHZ'K;JI4M/$(/N4*@6S5!*5,K\X)$QQ76I9$P MTS5YY;QQHC,QHYR/&>>859=I@0'(GZHT8Q"(@=1"X-0(M7.R9L'RW.H^7?;< M7'=RWF&=;]GO67AA\(]GPY[OB^YA:S0<=P;M8:_GB^'QT;@W[/>[_>!PT.\> MM;K/V#7$=WP)LV_ON6/KL-?J]H][ZN>GJ6>& MASRDI0ZD\Q3M:J4HV:X:Y1C*J*-E1KE(*@.KFK3UG-PSE%4[YNKNF!JU8IW@ M090DWRC%#Q5[/&M>X.&>%:._2(]/O!260ED]L;+VAL2BM;G#-_T8, O_,12&]HE*&J&)YO'A1. M]4.HMXS2]3#K,4;G')8.8/0XQ9Y:U$E7N:14.H86>*7YFEO]L4SZ\I54&J)4 M^>QE?(CO4*8)YCQ;Y@N^G.9P17FB2!D_*:) 9SOJH7,!&9H^;,:H@[D^V;-,OM(?RHC!LQL@NXA! M\V1V#1$EFCT& MH,(/YH=,2*^5W-$-U)IQR-QKFKURE8[J)]%N<.331]X-L/.=S&FN%->E]"SE M<\!R%'0%X&6+A4C2"M+*8G 2+::5.Q73#E2"/^:O-51K M&P%WZY+/#%0N.8%#RW)W<>:&R7HO8MWJ6\DK):NTS)V3AYW;NBA%T,ZQ'576 MCI5D7CYMJX(4*:/PL$Z4U,8 "QGY".[;H7TLMY!,*\62RGS# M3@UC."+V4TR-G)ABKF)#+!5X,.+LE<]:-R_F7O/4 CB0HUP&LV8/3-.\Q<71#HD(^W@L M: C>R8I1:!7+>':XBZ4G5#=]3,EH:-7,Q'&TCY=EF<>( ;0KR>.?>KN8NC%P MJ1LN=>.14C=6B)7UJI)R"H),X(0QT[-I2K"4BLKT T?4JO-96F-67+B$D0_W2-33"(/QR@X1$3*D"I% M)(&QH"NIE#R5)2B_@_*U$*9)R%R4WV=:C=':QUYJ$+[3("AY^/N,TU* -4K( M)6VYUT\=6-M5LM*PCP%J..ALDDG7@>[8V;5F2ZQH].GE11I;L5+=(H&-"VOQ ML%N13XZ=#TF66[]P*0,7E:"A8OF&4-V@-"E43"Y1K\IDD 4^+T"A0>JA40C@Z1?'1%*CFK>8'T52%W8L9JX8LP8\%,X>H M?@ZY0 1S.)( NV=6AX O5Q4ERK+A )9Y%+U-Y#HN!]2B(K-4@8%1S5:6%=+D MNU(+IU_+Y523)(=/*KD@4F55]RN+ :V2U?MXR=:8G3BX92MU+P^/ M8.\/#Y-_8L"_N 69U6U:Y6O2;L\LIE0-EG?@<'FONEU2.Y;5[B_J,EUM($V> MLVH7Z6E"?GP@4IL;O9I5,X<2RB?3;)K=7OHBJYV#W<9!54E;%?N!72H-5V W MXZI44J*@[/S-!;^58XX*0[C-(Z4/AJI=0A4S4(4AP=,"(OUGUT,KDP \-=+"0ME#J%"Z4> MK4,3IJV*K1\\AMBLI IK/$UT^N'\R=V1Y%SJ15NIH=OTZUQJX6/6)/Z%M41E MPXRR'AY=UG6)M:G2H94-V;FS)9IP[Y?*\RJP"D@P M9>^9YO.ZQ!U3"L8@81-=)J_T.;N90XGNI8=";FO4N91]J==# 6ZHOB45WD"O M/M?,FJP92CZWEFH%$[%5?"7F2HUC=W>)RP$<.LMIC#I*YU%>/Y5!YK@Y>-)0A@BE\26'$ RES;#-:@J=1*<+!3(DDM8M2K,R[,M\/ M2S?+9&%U.G)[9)0*C84WX]E>*14J"ZBQ[(6SV:)2WE0?7S;@(U-8^"J5<^7I MS'H(W2?90 :!"(294FX[HFL2KBA+3YW^578.6'6@:0RRLLBU%%HS2DVE7D7Z MT$"](LPP4,J>1S,R4D)\4632TE@4_ZY)!F=F0'>"X6W$?,:<&_E M$A'=*A:^U=T$U^8R09V9VW[$MZ8M:N/83P[ILY='V=@=94LM'W4OB-* (/%L MI2>H9@2JOI\<2=_ V#'-!G;JU+/G217^90DI?0REP::V$(%5,[9*0=Z:/GME MVX2E!N-FQ50>R&I ]E4K7P9ZS#.LCEB+[;O(\+5&S%;NPMMS???=C 3% '@J M7EQ=[*?T_%#ZBI9/U KT%WK8YWZD]$VMPNV4>%P^'S !N0QU15J M4O1#1X'8+5:!^2F%J19)86KY1ZQ%#3,M@Y9">/:K5 #) M\OXBY\#[&<)KU>.8^6"E)N%L95,CM62F3N*VX^*\1H:X,(J6S:]$3W2GKGMB M);1$RT2,F!-_8*N<7 MK3BQ/Y\ZWJI"A:EQ6&M,:^\<=F\E*(0Q 9*"9E5YU;V)LZX'O@-/>_4:;T@GL>+L2@.,;"0> 0?D<9 M:U(G5;D4IM$N]$QFY: M_"#36&%3JG*O6/5^+H/T6*QW)?59M#33:JA=9Y2,;.P(*LP-8PJ^*/@H<2'" M.%N=J:'38Z@-A(IKF&4P#=D-5QD6<*F'&Y2 ?SF!;/&RWOL$A*(;.M*QOQ(' M8K:ZNM?EPD!7PW20GR.[51X4B,A95I7LU.;3A#P"L.A$KLN +ZFJ M(9@&#(JH1X;DQ,3R-"><*J ,1Y?\2(33 ME>(7W8@9)52MT:AIS3P%SJ6J",QC8 '.("Y?H,.3U\FT64E.X"UEY[?]%.5O18YX<)PFC6B4Z& -J,?(N)(:HA%>2L@. M6U.KGRRGSJ$JN>!:8T83=16F7EN.(Z1X/.9R7O\%:E).DP2XL9"[LB%D4^25*& M2U1AX$41RE9UDJJ[6*(2F(VA8XD[H-0]F\96#W\]+BQ29!E#/BH.P5?KU%5& M>BE(QD7LJY)L;@N(SAI80C[7Z,TWOU4=D83;$&?34,&B,)6L[F"5N57.AX7" MLB35:[(:@J::+E=E=>Y844G>M_H]V_D>*^=E:@:HP*]LUX9-@"@/8D[=&&-& M=S&9:NR"M_BW+(@[7;A#65_H6!M12Q_,*1#^M\R$N.#_8P/,OL3'#65FE>Q? MZ9*89K!91<0:'@MVHT7>YG1 '#&_,M9Y-Y1E$]-$-+QN)04XA\ 8\.DG1Q M3Z,-C>!N(5J*O-H-ZK%992M=1*8<<@5V,+D,TX*RX"=P%_'06#6K+@O'*HW$ MC;S@ZKP2/\I>/W--#"0DKS*S*DHR:BU#*,2S2+ ES(T0T&4'EU]0;77!C:D4 M?V8E$126*2\@_V2ZM-L6@-+S2!"%H):2/B4#Q6<(CXB+S+W8 ^T81AD3E_GF MU288)J"LI"&FT^K)&U2E$A )V9VW4Q0:]$ UZ-7:8E:JL6**SAF&XU7/6])@ M:3N)W'HW22HLBC#7E@615/=2 G&SWE>?KH.W[!2XI:$:G%$-LHAL4,E6B(T( MA&VJ S7BO4&?64!9QS+F M/T^*'-6E;.&(MNPN8B=&*Z7A6>+/X%M1."-0PS,;N02,4QF#4QF$.E,W0QE+ M_>(K\V5EY :#0NSMD.\N5=FRHH5??9+5"?+9>4(M^67 EG,->)1+!R% M&J#3FHOW7*F%*$[]W#A@R W.JM2+!A>?*F7TCW-^!F'SZH(([C_.;F5;V=:5 M^7$%S4!WB#,)<3H0?96D47!%;7^)&J POZ=P<)8S9B)>]*7(LE <_/$-<=RD MF=JJ/G;\^@:>Y^A,5Z4!6$[2P#%9." H!\NPMUT\T_0^Q1<)@7MK#LF$LFNX M%J-(N6\-'P?L!^..,/Y$A'%%M+.\+G%S%43!BI0&/;A47)7A[YW,_FJW7/J7 M2_]RZ5\W'H]3=X!K3 \/\T8PC;?AR5E(GR@2K?!_N=\ Y0FA)"ZP24Q&\E6? M4A4T')3 ?.A'K!"LU(/U<53_\_W^RY/XV#E15>.M7"B$I#+G<&/U:I4%.1RW MRF8I9I6M>^MBMQ\#YTSN#]/\6F34&4*DE'^N9X@*&][T)X[)^Q^&4?YDP=.6 MP)MMT_R61HTZ2>E$S2E7W<*)J1[Y5GK;4JX:E^9@N[>*9U%W-0+C+R=?!\$U M)ZA06MX;;D]0X&$>:3S7/$6%I51_+ !;R_5(G@@UWK%"OBTQZ6# C)A^7JIJ M"WYC@14\81)48$IM9[)JO<']FX)*1,CN[V0;D;=LDZMGNL*PY/0\6TEY4LL33HP*WA*8)2S,FU)RFW![U/[ M"'&$9@AHH8:JI6B+DZ=Q;U2%&53CFP 8JUV#9-EO(@JBL"%R% M&4V$ ZH\8HFO\>I4 Y5*^:&I-&3H!&R]@4#_>)DK>H@ZW/;B9SOCHZ'C4 M"H:'W>/^L'=\V!T.NH>]8:=U-/"#XW&KW>Y7X&;^B'%;1IZU^[4(7KK6^MTU[=6A9X/OYVN(>4:'Q36](;^ZQ4+6QFZ1Q!6 M'TPGB&V'*9=@7R3&#+_)I0S^4*?;<#UR@RH9..!GYL:P4]Q=-E;*"&/]5;HA M?[+50]6Q;WXM0,DJHT-'5*F5>4"&+.%"VWV#>4"D(U='BFTV!08@WW)"*^># M4(X-IK>2^=FX)FX[7Q>2A0&CJDVW72W6IB/!V$M>(F39=RJ'@K(,N8:P#,36 M!Z-8):8EV+8*Z^5^($,-5.=JAI9*KVU0L92._.AJ#*IA7T%'>M44X7C(9% T MH500N^D*M\NV(#6HPBS$R#46ZH.HX2;/A/3!S9O001/B0(I4>4H678>V]V]"=7:-V2).+T#'P7?&:3N>Z27IS MFA<^$Q/$-!"%S?\F+4N6,D:C]M"U^HDJUTX=3K>;49@I]&:>C(:*MMCEX]GY M5V_0:AVT^VWF_0\?3BOL,CQ8S+Y<9%^15*CUR#(+# MUY0+%TC\5GE O91Z.=LYQNJ!^D23FU'B6R?(0RK/59!T0X^W9@-^KZI9 M5XG'IA6+%@Q<],/A< IIZPM9LQ D!W0;:7YNO;8H*RRJ*8Z,+R@9S*X7L5UL M5I8W[8%2)I:"TDC'@&M/R!E:).RT6:GIL&ECM:NLZ%I2:&;1FI0YV MM8. ;(P/6H*;JD;P5%<"=[?Q&6$&M=YM&_0P&%0IWF#S60*E 5E"=?7&5J"?GA&>M/+]ASK7FZPZ MC#!22P]=V;%.,\&0*,LBT\42D]@R%;W3#5,H +I:Z3=C.GW_R1@PV',?0Z%> M,0M(UU'5)FI*[(>XEZH,3K$X'ETS\SPK*,AG=Z9^H4_NZ@HF M.H] WVM7"JU829,T;H<:^715U5I;]$;\F#_Y2+;E45?*8=#N!L->WV\-Q;@U M&HI6(-JRU^OYG6[%G_R92XQ@!8:'AX='W=Y&WK]. =?$R#,JBR,:H>!%&).$PA4=!)7U,P)BY M%!&\"Z?U&VYPU<,CHD05+>S-A28L3/E,H&3+*P4W)+@K%.GTJ91,578!D5'X M6Q&K+SF-J8/R^H.8\W<*V>@0YDD=IMBC@FW[.52?\+MH,/;0$ 7)R@T!$_> MD7T0R-)+BUB%\QG7;O%U@P8F/E6ZU9?M9N@19'B.L$O!I56V9=!+S&K (6D7 M_W/7*@7B2YYI3F=0;>5E)=).4#.[*B<'73EH#3K!<#0^' U[@R 8#OI'_G!\ M%(A>T.D?CF2O(B=_1]_89ZXEPU3U8:=[W#KL[(FT[.ZZM"3R>1;]MBHT5_@X M=!TE^X+1PH[GRB$[*T=-OG-VF:/JXZ&-G*AF_XJS1W[?/QZT@^%1>]P=]EH# M,1QT)/QS-!KW1;_=\5NRPMD?8/7.*7_GK0G&9,.C0;O;W6Q,N;[LW=MU]D8: M>DQ$SZ+BMC6#C\#0)\:"V-&CHB\ZHCUJ^^V1/QR-Q'C8&XUE:R#[ MAZ+M5U7JDR]?S\[@B&GUN\G5+GTW?_P;0]4 N^H/]B3T3#X7[ MHH")SA$\9P*#DRDHH#DV132<8KF[-ECO8GU#CD?K;UW^4G%,TBZ_01(3HWFYDNG9+Z*I)LZ948F01J7)._M3J]EJ M8_#!RR8"0SI85T#H;MHY].GKJ?]'2JP<=X_5:\/GIL7C]'&K-HRG:3RT](C:?Z*.6.&I!EW]-]\ZZH!AG]D=\)7P\L M_':GQ]RM9L[8R+!$09F*4NX3C\-^BOO_/WO)=*'W[R66*?I3 UW3M=3B#UL\ M83]5Q(G/":I#V2#D<.#D-+N[8 D*6-92BTHQ3*?7\D8REMBP'/ZTI]5TN^Y6 MN\Y_[%WW-J2LHV!'MYQ=PT)%3LD"VLY,A $WT@KT3)O>9S$W!4N5G\AUQ@5J MF,.8RK*EV_(.6A6NPNOLD)4)$#%^./4LJ_9(, BEQ4QCNBD8SH:!W;$C,XU; M)9I6A[R M:V[JI8XH;!,?L8G4'F@<2DS/..6!FMXZL]6;G_9VJM!M*E(X3.)[4W I[;IF9FQ>4 MZ=$SD>6E\W]7W=JRV+U'^VZU?]%4K)UL&T/X'UX>=<2 MO3HNTMV8Z*43-(Y$K]TY'@R#;DL,>RV_-3P>!*-A;]SU_?9Q:]1M'56D M<5E,E:%G']ML@0D5!R<$MAYFR9CE])Y(YOZN2^:2GL8\*.E*6KJF+')CF5-V M6NE'\:6L)ONDE?Q:A32_DC401/ MU?UG9=FLV=XF ("E&&K;Z\[2.MM4OYX+8%5JE((GA']MVI;#H'(>,T2LQS6N M(AOQN6P!;B7*8N_JJ6I$TU1H08UK++DRQ)8M5?"Y_FHVN9RF6:(#*H M&[YFA:7V5T%(<%\,S89Y;F:9.,K#OW,)C2%-HZ2V F;0#69K5/Q4*@ODLU3G MDVK'9#49XMQMLMM+GQ[22TO=E5*KPN/FL#TI8!THEA#FN91:B*WP8>I=N'C' MA'(LL1)8C315,66KVKOB9U1;Q.KU7JH.0#!8'X)DO78V=*LNHKO-IE;\R%)- M6.MV=T'\ZG$.[D?S#((H ;'Z!2ZXB)=@'.NP+_00:DTDZ MKQM'ZX%I=9*$2Z!#3(Q>25 %6>X]'X=IA@_&?H7X*2ER13MBS%BB)(2A_!_7 MX:.2U 3.RRB.98%4!\"K"45O5,&H/E0;"G^3]!O@,NS54)\&'5\K6AUJO*HZ MEX!7,=,I@P7SILDE5XLKDI-2A"H,=LW3L&\ZA&:J7XT,4.7[H205"0ZM681M M4:U',UHVG&E*S 1-[]UWJJS&3@\PF0/5@D'U%Z=J7WI]L/Q^%$!8]6Y.J(#O M6MBB\COF H/L 1TWDM@[A"3A1A/QM[]-*85!52X39&*0W:JA3U.#1"( MVG9)3[69+S #C_.W*TD:8Q%:*4W4K?$*=*ZJJE3)K5BX):/1),KTH-<@JY@R M[3>1@%4]]R<)Q<5FRMP("=!\F@0RXG=5GZH[X\I O:"(\332CZ_,L#(?5/7H MR9R:1MB[ZU4L2EU1,XC+#'=U/;UMU>A4)?Z5:GL2(!%5:4\Y+/AK#.<\PSQA MX'Z*K9#P].0PNJM4ZH39(?*S&JM]+3VXEGL(XSS M5_&]"B18A_WW5H(*Q;X/&F2.@R0Y:Y*:%#.1@Z#B'YAK=8?\@*,Y88+2P^ I MQJ&05I3%,4&'4@44(9_)*78L2>?&Q-0=24MK.DHTE 8\U<<&KZ 6BC2E[M'$ MMBKCPWJY[<)8,0*X1*Q]/6R2U:-2G6+L[T8ROT(;/3?H6MDUSA0^:M48R@5? MR"RQ^HS!D9E0)ZFW:U>66UR/YH06ARV&R$6,MA\[L>!0-%"QR2R,E956%D/# MK]1XAUHX86LW#62.[EKVQ.(X#;X@'_*ZAF;%N ST+#MKL+%*L&8&"^M#:6ZV M "H;\S!VB'*>X'20R.**GY':1F#7E= M(C1ALG(M:%X3LJXNL&D6J53POL-6Q=_ 8PDGB<(^D#A0+6+9#XZ]KU!E R4L MS[DC6^F87+UJ]31+_0C;'XVYM2CFG66L?(!5(")UFD:JG]B"\I+99ZNQ(V)R M =T<27I2JN?O6#)?.Z6S8H[%G%0(1$XHQQVH$!B/O$2T 1U.YC;XNIL! VK$ MWF]%I(K[L8L -AC 5G!YF@C&-X#'+K4@6->.\N3\#_B]?730@H?PVGG/OX+: MY'N#7N?%0C0.)FZDDT14"@I9XQQ2:E)G')CHJ("MS4/&:8%6EC-H&^Q[_GI* M135L]3'GJYYUZ+-'EQ(C?;)4(9A62T/F!Q/>IYS9CGAK) N)R7K<@1:J()KX M.6C>QE=_%4; MOO8N'8F(IIQAW9&.HUVC05JB6)T6/K59]YD@RVX#-2W;8)^JKFT\OAGGL&>E ML'@C"!A0KE(.QZ0;;HYSSP+65?DO]CXP<)J3<,;>'JV35&/CV";E@AW)V%HJX;( MVTMX.TPW:S5PIDH?1[7.9W6PDGN/#3+U%ZPFTS<59=I.R.=K2EMEP%IQGNIQ MJ?>UF1?6 LJQU:,>TC]LMCL_VQFH"S!MEJIJ/1_WQ1@(I;-2]=\'F)O_B@V/ M*UBF&W5^JR[!7"I&( N*7#ZP^K^ZKQM="#_>*?-6_5O%NUNS[&M1_)J#0T>( M&A#BN-GN.D+4@!"=YL 1H@Z$.'9G1#T(T6X>NQVQ04(0(.JUZ+MW4Y8>;]:# M.\SZ0=62'Y[R8&G&]ZE4,(:,GBUBZL$2_.-9]]E]CY]VLS707G*#,#S[[I&E MZFEWS0,OS74-C&Y:K/^EIHP,2/!6@CF,.![==F-IL1Y&&FV>-32M9V[_/O7] M^R.Z^PYOV4ZKT]W06MRD/C\YRG=VG?*=G17,MZ!\=6Y.G;9U5[1]6#NZGT;EAP/J+Z0AD!-FVZE93B"@_:HYZE\D UT?/:K5:S MM6DA^JCT^WD7-<\:DFX+.NG/NZY&GG*5(B4N4MJI4RAKI%!>L]_V6,-\_'EO M316M&P,XW?0Q=5-=OL\5^UD2!4Y!W3T%]0A6?*?UTVW)VQVC<[^U23IOV\'Z MQ#VH"Y+VUQ1+MF=I@K5M?)53@W=!#;[/1NT.FAVG$S]%G?@^W- YWB0W. 7Y MH>=V+J.(&C&I=BSC%VL[?'FO!+ZDU2FX$]32P>G2Y0(/:C6/%A[4X4Y2YDGP+8,%$)8 7H!WXAN]*X3<8/2 +$^3^ +QY>E:@QVA MVWMS"W_T/DVQ>5>47'"OJ,P/N8NX__++?XOI[/5;:C[%8#$EE@T..HFI29/N M"Y3):8B8) 5B;1A\7^Q2S(@?4^ZJS-!#! 2"?4IK1DYL0*3ZK,:J"Y>0:4*2 M2L] T1!C8H9;?:#&5 MJ%S/8YU2-UWLCU:DIA=]?7H_0UY-5FK^Q2FV.WB#D:Z'I>_F'5F^O9O MI.^M1F'3N=]IMIG.1X=(\3O2^ >[2LG42/)<+:TOG9;0H:M)2$9>Y_>??"R H6E0K\@!!3J7+^P M;M@D5*U=#.?=%(]V[( = :&P674 =Z9SS3DDED+5?5GUX>0E+5>.3Z)6LUVR MK+5?83#V;\C-?5"V?JX>/ZUF9YEY/UU2X_A&"4_-@P0I'NKVX7I0!HS"YM\6 M[AJ\"FRPG[GA'Y_G-[+N3K:2[KE6TDP5UTJZYJVDC7 ID9HLN71N5$'OI:>5 M0:T4L-IKG76XA2OJC]8+YVO:H%R_\T^PXZG53+)ZYC4J&DKEK$01@P_MH49T M>T5H6;U>4(-"HP7EX11/0T8:@(ZN?HBP^&Q/0UKMQ0W%K7/HT4E2P.!16*Q4PXS F4 VE]:%Z M6FYTM!&E7R#"DP!-#+L!DQ:O5!6\X_M!*N8KE+WK=<>,P!:-^O"$^5]G./]* M&<[G\#9:"D['^\SI>!]4.EZ-=LAR8C;WEZY*6Q:"R,U';2U3,4GTYQ\4[%^I M0?32"(P6B]O'WHV5S=.W]HYBL"4W2^40PL;2"&V0YVDX*KB/L++QER1^$XC% M:')PO@0$&LJH9E&N#SA;6%RG'ZU M9Y/D2O\)HS"O7JF5*7W,C!,W<*>'#@LC1/3>MK8Q$%F95@#MC*N&)!'R?:<@'"[Y)H!0,$JU& M@TJJ,'.BL,3YI8N483DC\ MH\'C\ G@2A D'HT8,>+U7,8% G1JX&(- [-B3GJ8*ZAA#;("$8-J18@@ON-Q M2&Z8@:\C!AO+P"B8A('"$&@:;/()BTH\>)2X?/X[YW'52%Z> M*!#N(C+B";?!14)FP4HY&9>):2@0.\L*T[,TG*+'C,=+D2XSHQ W?L:N7OJ P4TX,Q:GX"Z1&D7&8C5ZC?6Z$NC1)I;1PET!5 MAP-AA(BXXPI"F;;8&F4H%K\)-*2TC@+#F"E)]B[Y.?)[A]VQW;BID*D&8HF@/&HT:\QI_:C<-6JP&LZIT7(PZ!H"L6 M%H@R47&]/J?)-,PR=-M^3'+2_$XC.+*_>[^'TQ"OUNX^_MHX^T@"XBM:]W@% MXE2",A^%"B];O9*D#=DOA+T9L.+PFX@+/(C:#+$)_U+TYJ2X0!!,]6V/SQ#0 M>B4BHXO40F[-O:.?,?-'_TUR.R/3,.+3&6-"WB4)VV)1'HNZI(;O!P:5GQ9S8 LUP?;3'Z./'=>,@F MTVF"&R_QOZES')TC".29-[UW^ CU%UO%#!J*@,1H.P%=?3@[X%&M9O^0GYHM M/1:/6K">NX?H.^6+F';JR1D>S_@0N*-*XWZ-\J!LLG6E^$UY!S)[ M?]ATGI7[@QD!"$_44EQSK<^I826)G2PH)*26=_O(,,CAG+O&(-%&"=-L;RLT M%5#3ZU2)3:OP/YR:1A'MJKFR3!STM^@5NLM26^Z]A &=%]5".S_0O((&<%<> MJ,^JGJ[0F4UZ76_)XE..T\'JO&T#L TC#"GIC0"T+Q4IT"$%,RK&PD<)C+J[ M29K$!Q>S"XS)9!S65S+,7%)3Z8 1!*&-Y3(PA9KVHA]Q?"NGI6U47_/@17ET MPX-KM)%/<0IC.E[@B,@5'#+ZEL!\5.8HL0.[8MEZ2:4%$3V2<+?WG$[0I,C@ MXNS%JR>.GGO4/'2@K9;!L$6LT%[;$:(&A&@W#QU$91T(T6_V^XX0-2"$$TTU M(803334A!(@FIS5MD!!W;:AQD];Z!,'T;A+"#X55NPKO&/H!0_/-CC M#9AI##3\#FW<^[=Y<5RY6U/>&._6&[2U"ISMF+L^S/W0R/&=^_+U<;/;KCM; M,]"T(_(/$+ESO -$[BS)K 75NK5&'E16J6]6J3*+E[LN")=8Z&E(QD==@R>B MPU8#%S]ZTF^[.2,FOE*,AK*/,?8TFEOI>65Y^,;8>=LSW@::TV$-VG#^M(&9 ML*]X][NLMAO=H_:FY?2V">P8^T<]C;O/V/W^T0^WT=V"YK4RC^4)*%"/N N? M^"1OBE(^.@[DNAWXO'O4??%T3 #'P1ODX$<0JYO@X,/N\3('W_X46;L -;-X MBHS3;<=A+&+?63M/2BG<6$?[.IH\M][)G<'&CZ)M$]8Q]!,T=6ZO7!VN.9E< M=_O'Z!ASB76WW%?B/9^:8+2=)FBRP=6/7#5]V.R6:W1T?9[_;>KBE]K*Z,3\ M_$I&E]CF(\XG]VLCMU@]O;ZFM^R9A57YE=K>?%6] ;?R[EQ_W>/VJ+X#7*>"(!"6.-7UMAKUEB:1_4-5TGZC1_._HU44@D>=]_+ M)R!_+R9(,.Q<0QT8_8FFV>%3;K^ 5< IUA'!FGP: 2OQFFU8@%PS:UND/V2# MP5N6W6:;/SL>I$G!0F=YN\3.5-SJHYQG/(=/7OBNYP6)E8OOF1-NLCL:U%EL^J!)6:Q=6. M2U<. :M.Y]^SY CUS/$ M]0RYL6>(\,+@'\^&XW9'"+]]-.R-Q6#8.Y)B*,:MXZ$\&HW&1\>=P> X>,9O MY3O^58@X!WT.GP/[!OZ,U%]OP\R/D@S#5V*4J)N>I@IWELLI'Q']DR8I;O?. MM]O*^&TBDO2SR.A9=/2 D 7IYHBM\"7,OFVU.1B?SMX)PYS!!MGF2.[C&5&; MKB>H Y\'E4UG_ WGV)B0+"B@VCE" M&-%?(IV_%;D8[LFF&]Q_S]5I%Y9>I)*LM!LKA/60LMO>=NA_&)OA9M7A9I7A MEI>%\1B/,VJQIXS_0+6&'8<1?*:%8OB6DKC5?@G8H$=R@ J>@MH(7]5IZ\XH M)Z1J>E^HKRQ>!%JD>E2[=?!/[A^3T/:'(W$T'HKC3FLP&'<[K<->19B<3D1\(3,D4P"R M7ERDDHF)W9A.N/T.=CO:$V%R_#2$B:(JM5#"7HHV8;G/ED5:ZF#%?U+H%VXH MA5%Y_C]>+W0ZV>,:[<$;27<'XMQM/Q\=]HY&G9$_[!^.1L->O]$_ E0'A]W.X-]V<,[J85KPM'^*TEG=MT= M.@+]&$FU_\+Z!FUGVD4XAH-(S,$.>#4.O\M@U<:RC$WM"V"^J.;,_/A^7ESJ M&(3&ZX48,%T(X[\FJ#U8"O.*YF)D>2$,O"0<[CN/6SD 'I#KWI7X >CE-L+> M6\N.2D0MA9M7>UQ0+)2^GCIX2J\/GMFM\EE'OY/7'03#$159Q M3Z/!@Y%>;+0XQ=BKMGUDE62$X<">[(9&\,./63$%!D;WKAQ@3(;JU?Z5\R4$)-#]]_Z\MUOV&4 MT""WO1G0U*>6PM63 J7AG7MS;D:&$(4?4HCP9415+%#?D'39A SY[[\='_6/ M7]=*D#S[1;5[U6<=,:^,"7N+$*;QR&:.P<..0+62F+@FD'!CU* C-&4<8SIT M18@]WE,Y1A02/L!3$6?"+S.HX"C3L;O,@)005M7K]2+#\>K>\ZI*W;.8$+A& M88RRJESA-$)'TQ!S"+Z&2B>Z\H'99PAVAO!<&QE MS.J4Q%7[M;G[FN=;!@4,2?A@6 \V<80 ,;S%&W=0"Q$L!<$)%;UHW8E*'J9L MEHN&SK&_I&]$"-KWLN)5JSI^8'@J)UM;YRBMLF+T%YW\K%&D8?9-$U,Y+AB\ MA=+U8;1:/X9OA.XO7\9\?%V' #.F+#KM$)$8!5)0)[,H+$4AN7BTY@NW6(HO MOIAP+D,*ES:]DRA:7D=6U.%]<8(\EZ-;!DSS*PD7LY,+'1?$E*LH0TGMH/XD MJ6QXN.!*&U>/K0!MDI^E],WXL,WUWB-)OW(#TBQ5.A_18'D#5,XUUOXI\$Q? M-+TWY5(S%/WR+%;9*8T2&518=#7[LL)-ANM&4C,>S-BPGB2$#J&E!@.Y$J;] MK6VC_TFNX+%I0R7UKIP%,N0W$,*Q-Y:"3U2-M;ABHRB_5(6"C' *0HI-/EAO MY>@D;"!B-K[+R\187A0:E3,%GO,)R)7J 7 E)(XL)G18\CCB$FXU,OC!T@\( M*_]NPZ'R4FV@*_?&,_&K*70>ZM8-06>H#C5$PEUF&@B%AT1^@@ M&(RS\YI^O>#DB/?FKN>=5KN+P+)9H3W -$%@G)RERCD:^0DAHGQ*+T1LJU9X M\5?8FL$5L#C=15#V)6[7I_-/&K5+NXTI%SFU)F:<@GX:TO[Q$,05> XV]TZF MY_9=>JY+S]T>I-]Z30JV-^[(BB3!F-:*,(N.:F@?'OQ6GLX_+N:YZ WZ'0E\C HZ9:YL$I1N8/_'-]IHHMP>:Q,66-86.80.V]\ M GH/O(#1TU:]/\(RT'&8 2][8.JDN51V#$U":\_H1R)1@\:%MG38A:5L@#EH MMM]06@?=XY$=WCB+H M=:7H!'Z[DJ%&!5=G941YV&L?=8_[^Y*<]N9',TRWEZ+&I7(6Z;:=B/[W\#L> M>Q^+*3S/I_T*UW]!;>YMP5,8MEO#]A 5B>'79-CN#+OJK_-__77\_7/[('HG MW\OSUBS^TKL:7SWS>'+_>!9^QP5-0%&+QR+*Y#,O!D/H'\^D'[S"5)IV:W38 M/DG3DR!!-_;[2%P\(_[^*-)T>#@?1KV#/X^G+3G]]__]\Z1]U/LPN'KVR\>_ MOZR,>6M3^)C$-\^B_>;MV:?@?[MGWZ8G7_[E__'V_]K_^_'BV2])769A3^%K M.HWSQ1G\]O'*][__\[?3;Y_R;__OX/\I/IZ\_^U?SWZ)ZS*#!3JLG,19UOGU M6]H_ZKT+3]^]37Z_2.9O3H ,^3%$81_P:*1A:$_D8/F3O94]L[ M=[SCT]T]R3DL'O M:^U^!]Y]]@N.D;D$1FK6FL?_5L=.37:?2M[#\H1378#UZ[Z4![=;N[P1%2D; MRZF:*C!O".K]B@83Y<,\7A^;ZQ9U><2J+$K-Z;%%1.E]I%+*!+-8R1!F+Q=& M8IZ@IRN:\F(3X>4IOO K M&,SDXJ/&3Y3\ 0?Z\HLH *W>8]SQ:,]C!$V'I8WM;[J.R(AB!HMOW"S<]:VQ MK+5W^;AD2-$#0@!.\(1H@Z$<#NB)H1P M.Z(FA.AU'9KU1BEQ1UP;I;;6&XCQ6H/N(]A$2P"5#Z,Y/KR[93U//!KP+)]1 M.\P0)Q<;Y(=K3PG'#[O #^>A[7QR'/'#BZ#.[!UFB<_JJ%=-EL-<-2TV?9.5 MJZK*-?<\6K<,D7$RG7OOLF]AE&&0?D-GY+8GM4'<#Y)NM<+]N _$X5%WD] N M@^VLR=Z2N--J=QSAUITS6Y[/YU1FE-C8N+8_B8X@_>AY\:ASHV303'@G6&81 M)1<[8T0]I*BHCURXG>CO;%KT.^)M2*@?[SE);O3N/01J\KH>465.PKGT4TD] MB5%P8R4:9A7]L.3>]D'UJTS2"^E]*-)4S)VJOX-ZX.WD?I]5J[3E)MJ/>BS"%NW1>ZYM$I,&N:^Y_(MJ>F'J_(=1=DDNG MO.^@9G_$-#)"F][OXMX@BV?!^ M2YL-I[772O&[G=;>=EI['8D'6OOAGI-D&UK[ \GFK1\Y,H[#S/NUR3+43X+M)DOJJ[;KIY6. =\'#[L.: 1_#ZL%&_CY59C#\_RE'/WP MEX7>&V5$NH0^7$Y"!1J=Q:D(O$\SX"NX'^M>O$] /^RABRG&#,IN'FM?K3I> M>K>*@'OC-)EZ[^4H+3")"A[=!O9(J4^[_3X$1 BQ%6?B_94PH!=R4664N133 MAO'5[X,VE2!5&]==)DD9BE#7@;K_9\(0WFR1Y$H<^/!W[ 74ZN:).I]E$6G.V.?I- 4N$#=K?RDL9)3-J;$Q3 W'3QE'CS*BW M.K>;3] C5QFJGR38AXKA#VDN2_AF\'4"0Z-V+2CD;!@/7M=QDN6$I,FX#.58 MX)9I$>6(@N/-1)K'L*X\NQ 1<'+I3^($)CUGW)ZQ;F9S]MD#OI)Q)KT2Z[M9 M'?D5]G2!3UX87R;1)7=L-6N:Y?"Z@V(&&R2Y%-YGX$>IE_Z#C*/$.]<@#_@E MOS5 *#?O7X6(\V+JO4/XJA2?EB'40)RD_(Y.J]-6#66(!00P$D$WXF)-:(9Q MGH:C0K7R4A@!:F38DC6 [9<"?>$AA"F!#_.B!+@+J 2TG1/V1G"9^,*?TV/Q M"0GSVW^+Z>RU]3@%6)G/ERB+.$2%S!3(!"+1<1MK-6I8M2+.I4R;WOE$83I, MN5^UDI;G^"LR?:4Q/O[RD=HJ 5-\-N,X@S&$5*%<[M*,I_8UA0E;-X/(^@U( M+>>P(^-B#,/B/C[OON= M,_'] M!YBT'XDP990EA%R"4PIX=;[=]K;7"D^=PZX2V)>DY[7 H285M%'-!5724XNM MBLB"Q?L@2.P=-[V3S#M]_XF9AT9 '8(S*?G%):)5PQMI>9,5,^P:W+#Z",\B M$<<: 5$ :\RS$+-;E)@X!LFFQ2I#R\8%[&&ZLHK0VQ:P\'%0/R0,"FR M:&ZMBT]K4@Y!-W7"#7.*3>F]$Z11P_O]]U,E_[_)]$V"KZ(M2$)HX<# ZWZ- MDE'9/3NJ(/:>E A?GZSW_?O/+[KM-N\,N[68D=EXY8?STS-S",!C5[S?>C'> M\4\Y/T>EX1WLB(MY96F2"#%WO#>\(ZRQT6XXSYMXYEF Q/C0"XFGSP>!,MO\ M\I;1=%8\1"&7J6W$;>TC<272ZQ_S/T3J+XK4G@4T0D_],XRF\ J0'=;#>4'> M\F0TC8 0^*V-P8%R)YO[$SXZZ'D?L<48EE&F\*.UZZW%4A))@4:=!*!\H:BE M_ LMFJS)$\.\F%,? 07$P51P41[V@.-XB*E7.\#?Y-;*%@73ALB15B.(7 M<#HP3)@YA?(BT-B,U2<9>?0["&20HJ4H_D"/Q/W].4W@D5-+^5$J)\C?SR?Z MF01G90]L>WK$W2RRA5J*):6B>NPTE)7$RF5I)RTRY =-Y4_0KK'Q+0&OHQK=;C6IQRT?[ W[@0S4PD_,C/TV+<>% MFBPPM"3-X>1[-L^\K]J:P&_/IN("+U1:OO<\!@4=60]I^2L#=WIOYS%0SL]> MD#F6RFF(>A/H-E'(2C"IW 2>, 63B(V0_Y%L=E 32%@.5'#@38355AI.:&HQ M:"@^3>NH,H9!L4[=0-2PH$ (/CTK/OYXNA92#7>W##5436AK&>IJ^"8-D:]Y M/5@I-]-#'+LKF"$("L*4QYG]\_<34T]$<(RD]\@4M?]S/V04#+]"9*-L"!_F MSA8H7>H;,#Y4+"6"<="JO2MGNTZ5.%4(&[ [E>+H?8#CGZ[^ ILQ@UT'(_J< M1',R%L&R.XMAI^1%SEH&4!14I*#AG7[=E9VYF-&^M#579HB:K=I%,W,!/N;?GV\P?=C9U!X'%A=X+F8S1=6!;!]+ MP@1$\X4'BOL*W1; [H&@.U:X7,Z F'$"/YPG(%J5D/Q\DIGNQ"=G\*>];$8L M*[%Y*M)H<3_ :S_E.>@O:J _8/R]@8,FS"9F1^W*-EF5F'CC5FD=-KU3;@>M M%11UO^7?8O<,B^SK.RSXR0'_?!;#O:P%6\[O$P*^$,@B,QRW+9NUTWB4P&/_ M4R"QS",L76$,HV@8.3UHD;I"@M-[<\XD?9,HL4ZN@*53=YGBP"P9'/E%)G-R MPEJ+P#BPH+R@:_3W4,*I' LZ22)0ER)8,0QNH(L=?2/ VA>XD1O>'\WSIG>2 M3N?H(,"%M!W[IMUVN]4&C?$D3,&VC&5Y@N"UVHK'9YSG8CQN(&2K]QDA;B]V M1W@OYU_=Q)''ZNB%CQT0H2UUY/+M"]+\G$7@"@ 7^,R>5N?D7 >M#; M1391KII?0 MN95E9QA7Q#!2X5?X'0CU:S4.H4[@ZXVH$YDF%$%?MJ'.!:K0\B)YT C'-7Q[ M75NZ]_0Z(%?$!N\DG&T1LH:!(M&9!+*%W^>E]M \,4W(TTOG'*(S!X;M@#1+ MEZ(_]HV4A6( ??AE=>0Y_,G1'AO]%C#.V$NW;BA?X 0%NKJZNFB'Z[3AF MW 09IGS')'ZNP&3$D/!4P"3*<:/B!>HEHJFF2C,L9AAI3S'VBW$[4#Q!(Q-! MD"JH>*8=F=JY\BRQXJ'[TU3S;I07+XS*>V]/=["\VH.V]SN"N<-C3BYE7( N M29&?2X$J_*$-+C,+4(*L#2BTH!U.A*G ' MOBOG6Z\$2MJ&\L2%2G"$4_3OA;GZF86T4HDR:TD6MT!"5O(-\J91920D6\ @ M8E+!Z>2()J:9TIH0/$X-"(X3?)/FPH2^$0;EAO%?D6?? _=[@X-_UD+(30WZ M3K5,>HMGB=(;?&T/DGH;9CE!?6?A=V7)@YKS=05?EY1&O4%1V$/I%.'\0G0\ M^\#D&5UBP(UE1(# M''^4X!H)O<"$-'>P"F2Z0N;U YKTD1)A1J$4%:_!D0;7>CP2L /$.AELJ^4Y HA)RN-"CQ2*ET[KM;&6Z._VZQC"F \Q/Q.#1%(362PLK?#2\IGXOJNQ:"L)9"+11\)'FI_/OE]5<3.AQI@'@O M_!KSZRG"9IQ+9@HT'GYH94)98K^7)Z!CUG"&I\%M5@ID#0J:IO>I8ES@P#2+ ML W"3[673&0*3"^[,ZS+ MC6J]B[H,^YX_>VG_\$,#7LA I]T*8[TF?WZPE';^WW\[/NH?OUY,;E_(35^2 M>O<=\FU%)JH0+!(6^&;194C28Y6_Z+52!YC327FLREUWG'GGG+G(GLNAB.)/5<%7S;.GKVFY_C3\>7B,U5ZOYJ%26!L963-W1'/CT*EMTWZA CRH+@8.&47SA$(HP7@2J M5 R_%1PA@&^G"6E@2'RPCPT=MNYA>$#7VTD1A'E9,%%O!RT8!C.!':6CN1F$QSI2!?4:VP<%\9@>%0%6S,8JJ+J3 M [?*6^ES)@0FA[ / MA17B!/5H[5PQB=H+;\"=_0%X$-TOK!8?Q>3EP>"HR@3$<^C\W:F7%A&Z M-*T:('Q0Y3ZB PS3C./CR?G;DW_!Q$#@J"S-C4%BCD"L M#55!"^F;A2S=]Y3GDRO[%5>#/)KX6+*GY9B>OGXE'V\=[E/!*;PP^,>S8;?5 MDJ-NNS?LC8[&PY[LC8?'1Z(WA+GTCMKC5N]X-'[&;A&^P^21X+:5<4829WC< MZ?R_ZI M=3*;OH)C-LNKWY>#61RF8LD5NMO*VFM2AG3=>*NM]#7B34_SZ(WS4^[396>P MYF[UGVLII*O(U_V[/0*7B5KV#JO=J(#HR4>QE)@&2#G/\7L6%,!R4R1S/ MH!R3QC&DR9$ @:EC=(KXUDPQ>H""=32G^'MPU05R3T)A?H9Z8Y=X$"$Y1%36ZU8]_SNH *94WO.*%\7N*;-6C!'O\ MM-[1;3=H?G0FEVLXDKB[Z^R"6\%>=[(K#WO.KKR=76G;CBL2J%[OG/_!LP=YT+]/&<374S)LZ+Z123D6P5SZ.@ M]%85O27=;OTX41_)6"%IF(8@W%V&BYR6M!@2+O"ATUC6^68B)(UO,3,+\X3. MBQ%P6"BX.0*%2[&N$8S]=1E;ZS3![7;1?@>!RR/#MRK["+,4?,YNT#*4 M\CY$D2?Z"\[ZH&\JN2&M4AZI:Y:MK3S5 U,O;"L)>ZN.@KUVLSNXKO66)1NL MYR_:MOIOZC;WBA-IKF"=;LQAL0X8O;6CHZ/!X^Z'M"%$#0K@-40\ZN U1$T*X#5$/ M.K@-41-"N U1#SH<-Z]M9^WHX/;#7M&AWQST'"$V1X@[PH;N :S7JLP0T2_VE2_5KEVY'=D=V1W9']EE,>W(+JUZ5S8O\E M*TW2T7>CEN/6R7L21=XGS+-T%'X@6VB7!/?M[9"UT%^/8YK4_AQSQLI>DGW_ MA%_-U9=S$8ET[@ZWITK?-TE<9(Z\3Y.\ZZ!O3ZZP5-91_4G:).N(OK)JSY&^ M9L;*C\KSKPA 6B7O_8(C*JM;A8K:L^\>U0AXNLS@@=?@]C/^**92%7=\-A6. MGU58:V.,_L#VR-*4U]?_;L;2V#)Y?X3%_U>*7?&V/#)9VSM-UY\<41U1'5%W M@:C>\_:+YYT7CK:K;8/=)FW7T76=XK_+A-V(46"ZB+_Z&[84'H\?U_RSNTIL M3*W?]J3N4X"["0O@\:=] _]B,?:FQ,Y>$K6];:I23;;=U*!;P2BH+,HZ/U6G MW6F +-UP5*E>Z^(8Y <8A-HI=#8==JS7NC@&<0Q2/P9AXZ96ZW ?_CAN'/;< M^?) L9%Z+<2]%)!.>R6#[$"12=EGCP,BI^\^[4+T8WDBFPUV;-^NZ>R .Z4^ M1LRN"8P'L5CV[_C81=(?.LKO*>4'C@O#M5N/HZ- 1OMYY5 ^R MY?N'C>/V,NEW,Y;R^$1WX99:A5NVP0 N,E,3Q\A>T;]NZ^ 8PC&$8PC'$#L5 M:7'\L'5[Z>DLQ [$4BHP-"Z*4H>#5:O97%QD!\Q M=GK'CCOV(BIROXJ3?J.WFQ4GV\HB>^*3K$/ 94O1WJ=/V>VZ:9\N9>LV:4?J MO9FT(_7>3'K;P19'Z;T)KSQ^AM6V7=B_RB2]D-Z'(DW%W 51=B>(XAIW.1_H MX< YR1V#N+Y,CD$<@]2+09Y(&*7?:+?=^>+"*&N#L(Y= M#>]<1/ P;N+U0:3?9 [OW\W@R5,K0G&MO';$)5H?&V;_#I0=)'VGTSATE-]' MRK?;C:ZC_(Z'1>Z7EM5&QZ6C^RX'2>ZUXX^/&\/G+W^$??9\?29$B[2;JX1JSIHLO4>S::OW\"(IS MIU?2Q]-:M#5J^O>_[,&7ENB!GT1)^DK#ZUBSFC"X38<8[D(>C%(IOAV(,;SX ME8BNQ#Q3LQP,FAV#W//*0/3@.GB'S<'@9Z_\B*NQM)13\?W 6C#%W@>1'.>O M^"[]%7&F_DX!4+Y*923R\%+BLRM/):KDR>Q5!^3& Q'%VB6T4ZQM(KQ)*L?_ M>/:WKY].%YB.'X*?8:NG4Q'Q8Q6>D/KJV2]?<9MXR=@[A5^!Y)GA2'$;KJRN MZJKEVL8&I'5J=U:+DR#,9I&8OPKC*(R!YZ+$_V8_'WFB\O!RL]%K5JWS?:=U M2R(];[\P9*'_?)U(3UQP%^'(LP]2Y%5!!-DQF2PQ.$%.V) M&(\'F*WY(I6>GTQG12X#+X3K?!\VF(A]Z5V%^<1[?W+^QCLY/_6^)K/0]_KM M06/59>?O3KVTB&36]'!<^';")_;"S!N)#)X-GW,<<9854QI2YF4R]\9)"K?# M$S\F,/1VR\L3+RE29$5"Y!(XKK(J[SR'+Z;(HWA//@EQ2G$!OZ1R!H]J$K\Z M?ML OW46^.U3[+V7H[00Z=SK]!H>>E :WB'5TS1 (O%_D<'XL^*S1!'[2@*G M$=,!08'('X!5- )8@_ZB_BS\A ]I4Z4. %VSF?11DD1S9B[]Q(FXA"?&GOPN M4S_,I#=+T?D&//]3N]EIT8/$PFZ 7UI=;R93+YL Z],#85PTN#A9&#+M*=X6 M&!AO>B=1=.TE'34F#Z3HP1Q$)'Q(IS202YGE7@(J&3!M*J6'OV8-V!7R +@X M#3PI_ E]ZQ4SO5?B&*:=9KCB,';\BM['RR"F<+#"/@#A'\$"\1TWRP-Z#]'! M[96-[97NPEY!1OD$!$DK8.W )7Y4!# "I%65+'B=B.=:. /'^"*;@&B.\S0< M%18;TH^\^01(/V\J3W_HOBXLDLWR%?7\,QZC$1BCD#" M"47+OJ![+OZ*7/8*5%29XJ>EGYGZ=!;!6]]-9U$RQP/(.X&MQD>1 62LPU[Z M6G(!2*,,I%KND1I/' 1$Q1]D.0VAI\$'.?X*[+A6.@/OE,+Y*5/Z4Y%G.? Z MV />N_\48+@=O"%%YD0I3CFH)1F8UQ["F!^\BX.MLH&B_#B)HN0*QTRV+QR) M"6QSB=K2&*45"0,X_G(1QG150B<33 NW=0RKH/ZL'G,3&07>:,Z'ASJ*2KF1 M<*L$X#4Q93F%OY\7TRF>7!4)R*8&L"4\Y*WTY70$,K+;;O !N\W5NX^USFNL MC5V&E 46C,0LDZ_T!WMD^%9E\*+=Y+.]I2U[LD1%D2?Z"[9#Z9N*M6IY9]0U MR\Z /-4#4R]L\S3O[1\Z;#<'UWH&+?O0>B7J/&/@2;V0^F]RX;QB:_\*ENY& M0UOY/>C%^E(Q@NT*A^,#V]PK=0J^$'Z\DVM'_?N#[LGC:\/:CA"/18A6L^6V M1"THX;9$30CAMD1=*.&V1$T(X;9$72CAMD1-".&VQ&8I<;]4"[ M66V_SB.5PEXO#79K#?PDPB__\:S_[)[KT3MJMH]T@%VG&;1GWSURB7G:J_: M"S:X+OW@1F?@LU\^D;N*\Y393<>?*78ZNEE([XC_OX0 MWXZ_.,+O$.&=(K1C'.%VQ0Z(PS]B79H8.)GHJ.^HOT?4?Z=H[TB_=Z1?KP4[ M59UN][<73NPY%G LL&\L\!D;L#BZ[QW=WWV?A=Q$87-:SY;3T.^0 M2RFF4C7X!OZ/_7 F(N^SJBK9E6UPMRDSE9?_W=1LF>%WN!!!67_8'L)QP%YR M@/'^.![86Q[XR=%]+^G^5N1R(RK0EA'T3J9STP1L8VS\N).J)6<_ 7R>QM%1 M?],^OFVS^Q; >)\*0W2[C6YWHPWX'4/L-$-@ U['#OO #JW.RT[O9;>S4U$N M ]"F'#>G[S[M@I[^@)ALCY]C5M]S9S^DRHZ1^F%T3D?J&I*ZU3SJ.$+O-J&5 M6M#>=1_(%DA9"V5WTXI%K7786TFE7FO3@*)UH+,S:N[-$ \ =T*W^RU;W96?@7"*[J0D[EXASB>ROQ>-<(HXC[N42.72)8GO!#JWVR_;@ M9:?O7")UT[V=2\2Y1/:#U,XELC^T;C6[AX[0NTUH#*/ _XZ<2V0W->%'<(EL ML0[L(:16Y]"Y3![6(GIB#.-<*GMD0]]2\6D?.W;8!W9 ETKW9>=PIUPJ7Y-< M1+NID6]>??. MS-T74G<%U _1G1]&H]#7Z9/ M1@-^VLZ+^APTVZ;S/EDZ.Z%D.H;8689XB 9HCAWJR Z;:I/VU$FY^[D@]>&Y MVYU)+M5C7TCMBF;VA];M9F_@"+W;A :=H=UYV6WMNN=C7V."KFBF'LK(MOF@ M3A;1$V,85S2S1S;T+16?@1,@>\$.K<.7[:-=:\WJBF:>:J'$D4LK<*S K-!U MK%!;\WO;LW2DK'NM@7.R[))N_ 323AP=]\S&V?;$'<'W;.*.X#LY\1WP9_PJ MD_1">A^*-!5SIQ_OBGY!Y%^DSF\_\GHPT_ <[%I6=1M=+M=9_T]KY=QIO'>D-K5R^P/K5O-?ML1>K<)C3I#?P,) MH7NH$=9"$W8.$==!9'\M'E?OXCCB7O$;)R#V@QU:_9>M[LO.P+E$ZJ9[[[E+ MQ+40V1M2.Y?(_M"ZU3S<>.S-$?J1=8;VR_;@9:?O7"*[J0D[EXAK$;*_%H]S MB3B.N)?BTCUT[+ /[( 1'_C?D7.)U$WW=LU"7!:):Q;B7"I[8VG?4C-I'SM" M[S:AT:72?=DYW'67RF8[D6U[-J[7ZIT=*4^SVL8QPIUU45=EL^,&\XH-L+EM MX*A9'_?'6O*2"O(R%Z-(/L P_BJR/!S/^:LPQN+<5]VC3= H""\WR"Q:)%O? M1'*PFL4#PWT M<]5#\,TK..[9+\_;+]2R?)KE81)GWD1<2D]X[=;!7(K4RV4Z]40<>)%/Z$OO6*61+SGR*.0[@E$^G<2\9PH?0N4A'G MS;^_! I4R&"M4[O#,^9KEJ[T(W@)[J/)PO)W:9IJ%[5^?I"=X<-RRE0S8*=7 M'GOJZ.NHTK%R[/]E#[[#9J>G'1.OC * Z^ =-@>#G[WR8[F@E47_?F M6(4Y^2[]%4D$ M_5V2A<@LKU(9B1P(C,]>329$1[B%XN^Z[BRNJJKENO!9&55 M-(XJKU&S'"51P+<&TD]2@8-;X,;%7U',O *FE2E^6OJ9%Y2T47CKVS"5?IZD ML'C3F8PSNN;O+T>\:US@R+D:TWHK@?1\F57B3] M-ZGPKU@L7<&RW"@1K//17"I&P"]%+A]8.*SD!;X0?KRM2F>=1#^FWG6:K;8C M1 T( 7IVVVV).E#";8F:$,)MB;I0PFV)FA "MT3'46)SE+A]S.J^JNP#F_S7 MKLS@#BOSH +B\9CAT:9\X^GTPW,>W(+NZPWJ9[^\ES)C!ZD4:2P#_IRDVFDZ M>GJ4OZ]E_=19@;VI59^Y(_\&R7_MH;SM(^"'EN6.61V/MU\\[[QPY-^AH^]'R4_I?:NV_;W. MM2VF/ V6F.&Z:7\44[DK?+XT,UM/W70:#\NK+=/Q1QCZIYTEZ[736D_SCY\DN=P8#V][5EM)QFS7+AGSGG5_AYNL M^ZL'0WB.(^I3_E D>LD1'U]T?^7GR3WN>F][OXMX@BV?!^2YN[ MH+C5A7MK5>:XQ>-L3\ZN':/U QU4^T#LQPV2U>T,VK8J\K'YKNE]"?UOWGF> MBCB(8"1.SW*:M[/%'$?LA2VVO5-O]UEB9XVQMS*.PXSO3'936W.:N;/"'*V= M%>:LL"=@A?T&T_W0]/X,XRS'*N0GHELY;?O^W'WX%.VOC6?L[#R=GZA5M5%" M/PU;:?6&?IS>1#\LE6_79,+T>'EVPQ%,0\R3V35T'SPLGYJLGT[YE6Y_M&(! M51.B97:NTQ"_3J1W*:*">L* (N%_\Q(J\?$$I3M[8/+ZR716Y#+P0OC6]X%@ M(O:E=Q7F$^_]R?D;[^3\U/N:S$+?Z[<'30^?R75"'N=,>ZD<1]+/J4^2N+A( MY87(N6-2X 7X<2S"M!P'749W\L.PW8J(Y]QB"<;1IF;/E>%F/!Q@4OE=IGZ8 M26^6ACX][J=VL]/R\H1;-ZGG!ZJ72^;!,#^(%'[I]!J@(78Z3>]CLOAPF4KS M>G@2C3">+S\,E@@>T6VNV:U/=D^T;KLE.MO:$K<=(3)<7$Q',EW<$L &DQ#X M!#N&\6Y 4AO&BI/X0$YG43*7)4=X5R+SX']CH&URE;WR= ;;;TU.8FMXV"WR MZ+6W*MAO?E3.IU^;RO]D?E@5BS$_XO:JF@GJIZ9WDN'LWDI?TDR[;6+];F-A MBY8+494*29%G.3P>: 932Z]; '@@G!PRO<1K<3'NLC9M1J=9MSK]%O^ZO#Q] M==_J]=&_KEH@?N:Z#;Q#K0"%%P;_>#;L^7XG\/OMH0C&@/V_^(ZS7$[;G7/I%RF\XM-5+--L$LZ2\2D('Q'&;V0LQZ$? MJIL>00$AO0F/-*T\;:7[%ZX+ZZCM3I-R:>^3CFPE)6]E%IJNGB$L=8-CTGJ: MMB)2O],6^2!B<2&GP)KTYQ=LZ0 "\!QEXP3&"Q+B@\ASN/SAFZ%=OT]0>+,X M06G#I^U%" *;Y%H8C[$/'@NR$<@P^E9I%V15]5]G^/<4+J#9P04B]Z9B[HW@ M]BPK8-K4!1)O-)J&$8]9 V1:BFH"?,*E(BL@\X@X*U_6:;5;WKO_%$@1NZN< M]SE-0-_@%I5X(TCG-1=& J266"W/27^"$>)%2HM9-8HDCN:>Y(?[BP\GI49^ M#^'00[5OW9NV2?:',T^LD6V]!QX]I7?8/.J[QBWFL5MLH=,\=DVE:D&(P^:U ML!V.$&Y'[!LA.J[-6BT(<=@\=)2H!26<;*H)(0Z;QZ[SX 8I<LW*,A;+TU_+C;52V?/"'N#GK<76_DF%6O[W#URW/T@FL+V*>N_ MN&]3C763?J3C>4L](.O+^;LAZ1X!GM9QQ@YRAM,#'D$/<-MC=UFCYHK$1\JS M47W5Q_Q?%:D/=>_U'VK?Y:Q^MQ><$N$XPRD13HEPV^-I*A%?Y%2$,8R(]863 M2Q%&F.3$?XY7X[4X/<)M!Z='.,YP>H33(]SV<'H$_/B^R(M4:0UG68;%?OS' M'YC&[I0(MQ=V1HEX#+]JDHU,2]E!)J++_9^S)4E6G MW8[8(WV!ZLD5A.J[[WY4!"9%&SL16^2475@CUC/<=G+;Z99JR ZSRFD2%5.EBRQ5L-]3 M'=ER#_9U#08S[V0V2Y-+&7BCN7<^$:GDQH^9MZ;)];UVQ+:GOP7P"58_=KY5 M?;O1;G<:1T?]3;NS]I E6,_8\KQ_VJ VL//1I+81MEA_Q'],\K7'_&XJO9N#E-FVEV G<(2V;=;LJQM@DV>U8_&ZL?@F MA=B6+>[')/%N&N!?DUQ$3T;'W/3YNSR=*C-W@9F#I,#&_CO*SNL\ M\XB&]M;GZBSQQS_@GSX;W&"![R!:UY-%!GQJ:)GK@9@48A.AV@7)+&&\:P M?@10V%!(C6'LQ8DG+V&;-N#!( L#@@_UYE*DV?4HB*ED2L):@DJ.U_7[ ]3, M#!JD/=-R6+2$Z%!K>F>Q>ER[==SH=KM>%4U2SQ17Y:A'CUZ!.CI.TK$,JVME MO>,/Z\OK$<+*B716XJ?BRVCU&.)4(SEF7E"D.$4"N\2Q=BIL=AT%JP#IX"#+X.K,\Q7J7@673G?MT3"S&OQ6B0G:#\B= M0$>"O(6'S0A;ER_/-+Y?8N/[W8AS!X+J>?BB@I"[>'T)X'V76@/OT MC;&8 N& A'Z!P OPH''H,WRH]4"Z VX14;1\+3_<>E7FH2HS8P'S/+Q4KYK! MI3#X;W"DQ0M2%E=B9' ,(UH);YH0]!WPRQC?!K=CN-][?OCSBW7SK0A+>Z^O MQ=K[S$\5%X0W" 0+8RQQD%5:&/&1PBMB.K?IZ#=)CQ[L*P^.!D&>(H@)&N<$QLH^:A>^IR'A$_#B79:KV%F!\GX M "XZ@.G*N;Z4?FZ_?M&X9J XK^#Z]V=R)E*8!M !V15!%^%A60B;FW8$H2=' MS .@J2(GEVBS>L+,%8:UR[EG^'("8D:)O7($(.4)LQK>%LT9WW9FT0E/0= P MD&E*'K& -BSD$#^"4P.5\,F"_M#%O?X0T"%KLU,ZO5)G5GISI[,(#_)?%=B3 M_Y^]+WU.7%?>_O[[*UQSS[DU\Q8PWC!VYIY318 D)&P)D.V+2]@"'(Q-O+#D MKW\EV6;/-@/!@.Z228RQI5;WTT^W6M(T*%@Z372N5^%Q*SPAAAV8#$Y5 6WT MXA-@CL#$#7LIRRE>_'O&1L-683DPZ90L_\W,?L726!$E/D!Q3F +9R@&WUH\ M13&\]L[1+G,4CN=2TI8&92YR(='+7.@"F*X#V_]\^T^CFEM;=''C%ISB%#D0,!H+CZ#FAL1B(=(JG9_'% M82"P1=#C*6,Q$JFT2 =B[U6X;6CNDZG MB1*F.I^DF$\.;6S1R]LJOI/#RS9]?->[M/LX-WY]CP,?Q8*G=^CGSC$BV[=] MRUM:][8AXW^/\AV+ M!-H0_;+WRE$XCWL%+(WP/(KX#95M\;WI"-(OY7(/X? M;\@63(5M:4L^"NP'J-04V/< V&=Q/07UHP/U('E#L?PC6+['.;T*Z$-2&).= MS;$OY_,V-/Q;Q_S?&?[5GYM2=F[/]P2;IG+W!?9C-_S[O8D53=M_!/EWO.SG MSC!- _29RQ1S9ML>W!A,[[ICFUO/Q!W(YDAI)2'P&US2&>#QKL=Y0SM_A6B[ M]Z/,IN1-)\5W/<)_[U6FI.3W(%-+,25P"TQ<_GGII/:!^VX=0??,D%Y9V1E? M]KH&&OD-0N.>#1^;$O=H5VD'+7P_Q= MH+QRNWBZZQ'>+UY92140E!I:CZE[>*61B>1&>27EE;O@E2+EE917[@BU+]$8 ME5/,G6&YGFU15DE9Y5ZQRC1EE915QH=59OL3IN#V#-/=();N,W#NF0&)4B;! M\AO4LH'W!70!+#.'9RP$$-ZNA-!Q(..[D8!8G!6Y2[.%HD#._WM?N\! ME\V:)I-?V'&Z,-TKNCK=*QKOST[VAV:^R^&>T.XFJ =EOE]^[I' 28FTN.?Y M5.5X>:^4VNB9593WQM\+4MY+>2_EO4?5<,Q5&8#EI/[GL MKC#ZV,QQUSL-'LA6@K$ GF%/0!7W@4H9,&3)ER)0A M4X8<;X:\JRF\ ^\D9= '/;1?P*!WW4M*F+?%8EN)V.1LW3Y/S>W9](RB* E1V/.M'XYYS[-TBMMK M]OM;M!R@,]4!:J>;8(J6EF(*_8%I M3R!ZILARWWL_F)H)]N<,N-BI^:Y9_6^EO&4YD1$WOO#DBU/>FSRH?<\&,+WY M%24TY;W!(S43>'/XAN.['MSK#>+BB;94$)1P4\)-"7<<"3 M+3:,G4+OFEH?<,(\;KW>/0T_X QZW %ZU\R]8CM>=PA,F& JEPR;D<0,)>V4 MM%/23DD[)>V_X1-^>J!EPBVT],EW/:,]"2X9%FJ*=R)(FY@C)BV.OM.R'1TZ M2T#^)&U(FF!B^]Y)VQA#?5W?0[UA6:0V MI)U1KQ<]\1\U=4F)22M0*]]08WE%3[_C38 6;6-)D>>'Z8^:&_R)'X1:Y?2! M&5P90:S8T24\%Z*9/FX P[%<@I,DQNT"![W)<%V?C+\_L"T&CJ&C&2YD[#9C M#_"67&YTC=PT,KRN83$2R^A@XN*[RL#1N@RO)!B>Y47TDT=/YZ.GVR,+Z@ER M<(2 /TA''P#3M#7@09WQ;*;LI)@SV_8@@Y[M=2&S9N9F;KZ&L=$8,6@\T(O1 MS5W@,D/;PWW#[]$-=V"[!CFNJ%.UG^02O\*\&_&7?<<"$1OQ[K_MR?'5?WJKJ$RWG$S*7>17B3X%I=][6\2L* M[[%7<27&*BY*"4[:$KFA6O:EDP9L?-6,3Z39!3#%J#0"R(5;GHO1;N CQ0%( MU5 +<:.QL@&3X1)R9H$? X_YBTL):6: \(Y<"U$/_[:HO9IM(;FZ^%P0I)G! M7YZ!/QXX=A_=:SL3QK*]L#7I-\!^\5% TQP?@;1A>1#=Z^&"Y67=%Q+,]'OK M7TJ-XTN-(W93:HTN1.K>-CH^T6NDOBVD_WJ@<(;5QO>10VU?HRR;ZPB6P?("T2N B9H&^U()=8+:Q6F+JT$8Z8X^P(3IP@!Z% M?T,&A*)']^1U-?RI&\-__X=^1&+13 @V,=6N06QNT70U M+\Y6?H2K/W@AF$LGK28__V^^\;-" 6Q+MG/R'Y;\Y]=2TE;&I2Y]3?X_\)L"/X' MF*X#V_]\^T^CFEMG4Q\P"X)]2&]SZ%,TY.Y4/\&_<^/[FE8N2G6=N#8C@X4! M(W44[]1:))>*+:;*R\FI#!'>&R=9,=]!L& KMHW/&0X:!Z8RW=(OL2?M1N[> M1(TX<_Q^"SJ=#;=X3?O>:@UZ.5, B$4$N(W\PPI>(V;"Z!!IALX A/(6;!N: M@9@23ITX^'O3L[&F297VNM"Q"TV=:4V8!:W#A#[X&F8W0\1MB :2D)%I^1YB M+E%8&5PC7T O&4#-PS0N:/1R$U*T3FA+K"9VY1(;8S5GL.406L.)]3D&F[O_K25 '?LI9L'0T-G:BG$X+K0VG^' MJBADQ?_'W&D9NTUG9@TI) ?B)#$_7?6I./'P 8>ZV 3J3K?E3F-7__5A=SIP M;&1UD.C@_&IZHF'H*>CK()A.2$2+Z]W(C<[-E*6F,\O3+T_G(=(-)H;F.D2''@D!1-30UC_!R\E#0MWV<.T5M"&\U#1=_C@:I!?$ S+IK M3H*.!5\E[5K[^N &A(?$KM](4.[1Z@3 &/H_WU0-<&FAS4-5XSA.%46EI;;T M%J<"GN=@2]-8V.*_!4F&X!LY!"C L&Y(Y@"Y":0K+AH<\C?4&PZP7*"A3\(O M;26SPO&SS$IKX04A3K1L,T1<'6JV0UJZE-U:_M1$?.+$1Q)V\&\K'P>0Y-JF MH>,$O@?[P0[WG(#4H;6C9BR,.T8#Y'%.# M_,]E"1M?[A0&AC6*!2!56,S^O M*1NYA%R8ZRU>GS5FN9FA>J[Q.FM7+!$DCU8LL1P9S5!/F4A?W^U?F)A<3;-& MFA[^\^8(1:<5O/9S=P,<&ANS8&T$"T-[8V8&9X4HF3<\T5SG$:Q[(PBMA0=A>1C(&>BA3)"([#;"?NB$PH+3C<$!$U0-2];W@+4C*"EY)?23Z+ MK 9J&Q9.;R$OYRTHD&F@[P>>.KP%.C1/&N38 MO/GV36<9D>6$4Y5M2*@"H@;HR29$V(7;BSMIX[8C#4%?P>^UYM_;PBI&@@;< MT5FWVX[=9U!T@BD5&0\W&( L:I*'>XJ:@B@?CI,PD4/R(_.96#OPTQTX-)!! MX7:! =823*_:F V]H<6I71KI[]"('36U:C%59&DM-#8<'^7!L-01[?<=U&A& M)UJ!!<[\Q4UGV>L^CK30$&/QY^9FH6NS6>@*7C&'-"9G(DT:,Z50Y;[CWO/L MK^ R^8/[]2,87_P*]C=>@2?U$5"8!C9+/+<3O!)1><2E<7A."+4>*'PTG\FE M28?13Z*A6;^#1!9=%0,=#:;O6Q X<[/Q'B/]C2TW^IM,U[O,!-UEAEB)X 1, M@IDF:RK+%-.T!L"83>PC&S-M9"$DB!D@8\; 8B8(FB$D"V?W@TH &T&EAA^S M!N<12 2I2O>$7 ^+#ARX4" 0$?M.QX&= +_04V=CZEL8XDG5V'00R+5$%& A MGH-!G#27B!5_C-_AHM FSJNX['"@"4HBNCW<2[60QR#/!E_&I9EI(+$2?@7 MB6Y&+FEA%[$!C"]H7#4,\NCG8FQ>S2"IE]08SEJ*&"'>($DQ&D.!V G5C@$6P/.ZM(H\G S$IT2-#= MPARC#W1(?. ,>"*=)H8"PB>1@0T+:$AP&9J>':BT[7O8>Q(/]RIL5(A1Z-#5 M'*.%X]@6(O4I)KM<;!,^,[0A$@4'N/&7D,%="*MQ\E"#>$8O*HL0MNQR?BMT M^_;O6A;+Q('&GMK T0G!T2%F$(C%ZP&7@6%"%9=AWQDF0O4^]Y*FBZ'5RMI KH@H'0HHY9@FZBP"%@E/A3 MY!"8,GX54E\T^KA)EHU1&W46A"PC#!H"[)O7T^\!LR%D",P8\H_(#^!/(>(R MD G]GC$=""]T?E&=(_&[$%@ADN(_$>([.!-DA@!+U!S);>H"*L#5P3/J%H;" M,G!ZT(NH$F**Q /5"SG&\V48"X;)(HO M4(R.' +A"E,&%V308!"]A"2F#IP6L*";K(Y-.$%=))-P/,ORI'O>:MIJFC_4 M4+R)O%&"9*8 N8D0&/Q;,LI4C6PG"(3Q3182;G CN8R"5ISE@],)PN4,Y3QW M 5/ADP*#(#,6S-X!?4@Z&CYEA6_-LH'X8_0]9($P2/H%*5FC5-%Z0C M T)%^%:8Q46M\GPR'>C@9CIDD?N.@B)CC7(R-9PJ'N/<2Q"#MF#TP2LZ,HNY9QJ28&I79TPUO =Y;X1T#*ZB@:2* MML9\1Y__F"9< Y6,2N"F"6[$XKW06 (-FLT5+S%G_:%ETA?8FP0 MR6@R#!M&K.QB/J0<@:D2_)4A&2&,IW^QG[&( .C@K' +J8:+R $92?"IH XSW M1BW1Z!GN*_"$LT33!#Q):P8Z_&GE75+:UZ&4W(RD%REF8O90,',N3NM.)C!(=&-^5G^=?J.,_GDP1B<<(DZ'$*+ M,0@(3J;@AH];BACO:KXQ@#_3P/H9UIO-&HDQ&=WG(?DQKH&!]Q7:C[4<6@#K M]>(K=$.?E0[B"T$"F) 3PUIT%*GY$C&AI8M !YS*MEA6%74AHRH9C5/U#. R M:3XC\7)K,:^1O6D4;U5)2'.LO-'DQ:O)N\].+^ F!A%I\78:\P6M+XR[1@NI M I+%6>2MZI&SBA9DN*IP+%F9-,W*T*S,M@8X,C:"/%-S8Z;V-ET!M>G,S!L& M]^Z8+"M#,##$.ZW8ZW;JX,-1_0Y^! -(-L9N3;7A+4U8(V0W%:NTUPULH\@3 MNSCD ?%,>Q1VX*G@,?YC71](<04,*K>0OZR!#@QDP\N;I%('IC?\G^C-U#AW MJS^_KS++>L)@=AM6_$6X,U?U89-,(N* 4 .^"^>3L?K"HI-PAAK1/9H+PE$0.;\/7L[]G(D4\9I.F5,IXR_:+.-1>-Z"[UGB"_\>(T%1EQLAN:? M6$H9- H/=JB^6 I:(+W(3HE> =^SHPN!5I$K"[K'SBW =5[AOYX3-2Q\(1>N MG7SOV!SR%"7%2F\=DC8WLG./7PXVHK_)&-9&YE:/36T$+D6+? M@\L\?X8D?WPND/SF*8#[W.<(#R7^4'OXVJBR*7%?-?GCA_W-V6P(0^%[N<&8 M(;$D$SG2+SWE[TW,#?$T ->*/8/539CQ:V(@BTD&P)G!;AQ$\6;BX>,BF;?R M7>O!6ZG(=XN;23$W2>P&KD^T9,MB7Y$#O?PA8_F10?@7JTH4]P:_7NZ\+;OOU+4PE=#UO MX)[\_#D:C5+H#:F./?R9=;0N(L3N3ZAW@/-3!Q[XF>$441%_(NSA6#$C2@HK MLGR&5Y2?@.=$GI?3+W"<%%0NU?7Z&]@WY]U,Q@TDA38Z@[<2(.O9@ZJ&HJ6% M"U+"'&.M:WNVA5?EUQQ;]S7/C?9J"G;7,J9?"&;!G6G*U;.9D+Y+2RQDO,+B=W"8M"X3M(Z"\"&!L$A!F(+P M>R",N)<@2MS/H8"NB9G#!>%P'RN\R -!'1]#(%YJ(07CPP%CD:9M*1C_7E)! M_+JT+=E]%.$O 282[>-]DN;Q]V.@*=*$+,7.#6(G31M)%Q*S8PV#M;[BKIT Q\Y PDV9@*6;^ 69^V436AS#S#IHF MP)N0(M#\Z)26^/J4%D5-BIKK49.F3"EJOI$R944IK>#XDDU+W$^OS[-I0>%T M3D60F12_"C+G"KEQ_G,N0/XH,HJO(>-;VW?]3EA>!DBBC, 2K*332_N,E>C- M'$M#<0J0[P,D^D<4A0P&2$YD,RP!2 0B7T8J,=@P!7)HT.)VZ37'[CB@_T&@ MQ/I.D9(BY6\A)0W *5*^._NNL((B9Q!2#M-\6I'Y ">_+&$YFW /D,E#0!FR MRA($+IQ5,*%862;3TDH"PR6^/3KZ[O:_H#_X=8/PS/4 PC$+=,BD#MXM-Q>< M&[+FB.8/(_!FX_"-*"G*/QN&A3O6"](LS0HSTHD#Y8%H,M>]03"N@*!2_GSI@)9;G.)[_ M"5@IR?-I2>40#'_A%'[.UDF5:2$X*_J#T/C&#/V6\@1DOVY6HK"XW[#(VS@DV3V^^=_C4[&=H+B]GQR6U,S6^9AA:=\H>W S\SG#X% MH+T&((&C '3$ "1\(<&:+;()DWZYK@%1&#I&O =O@,I4\8;M^'1QWW%]$"R1 M1*2(W"ZP_/M'8M=18U>\B13% M+HI=K]:S<:EBI4[1*R[H520'+3+WISO8[*5#3VQ/3JSD0%PU2\GE %BA2ZXN+]36ZD-'P M$>', '0@TW;L_J<7$=@.^\G"-#CC:FQ4F/=$V/]?V2R4F>ZT(%DY1XU M1VJ.U!QW9H[('GW',MSNG$T>HTG^]$#+A-MOV.S&-/KPH\W4C>&__T,_HJ=H M)HI6\"!TPUV0''>:EN5:3G_\WW_@6 MT'H=Q_8M/:G9INV<_(2MC0H,S4CTA=F0_ _$-8V_J=1S:U5P7 MLADAS7>N99OZLM2X.:FU%MXX_R6B_SK4PD,%ES1W^5.<&3A!"@X=_-O*QX'P M7=LT=)Q"]&#_O__A)/87)Z7^][/U;_#':S]WTT@\3&$C<=8D'"[27*(,&T>9 M)]_UC/9D@7D(TJK2SPU?Q;9@:B\!,T,!DP+F!P%3540Y#:&FJ9S,ME51X7FU MU>)XE9?Y3)N';9C6E1!!@V_4B^>5;*-Y4ZAC>!7X+>/KJYH?&\2="20&^,5/ MA5&;J]G'*6D'/ON&0S9G=,-3''!G0A@6&!L?,?-=_Q%@!*!.&/<4T@C]X4$TP<.%)],N\ M1+&T0ES#YJ$%9K6(./,1;( WJX#N.=%;PZ=Q@>Y]( 1/2RE9>"N0F;/FN8?C M*8FV:8\B5A_]G<0ATDF S2,D@7=AX[[Q[P7\,>G;?MC)9Y*$[R)4G%(MJ#\( MZ/'%?[X)W][MFRBDN*].(Q4K-]D\4ZTUBKEZ(O"LQ4HN]7L97#HX,>G;(0_: MG[K4F'5GJH/\^SHH*"EQ;Z:;J0Y^:7=.)R>?:F)(S\+ )$P/<8,Q0Z)&)@H\ MO[0//]V?3!87%+H]PW1MZU,="CE9K#I$C6<_C.>+ 3S44 M="?N].&5O8F.0]=H?$$';>-]R^.]Y4^"C=V#@)TGY]#QXHYJ/#XHWWV8#J_BX*Q?=HN/MDS8]R_#.%$)0 _?6),)[)5)\)F;\<5GK(5,'NMHS__&$>V\>307K?4Z#?XW1\].5"Y M-QZ]S0'>M::OI,8N$>26H^6(PWXJ";'@]541.V>^UQS#THP!,%< M28*L46TX$+B^0YD+92Z;4[ZM6?FAL)%?VM0_;L:^;;$OTRWV@U&A6^R_L<5^+/<'#O?];T%=:XLM3I64 M-*N*+"NJ+2'#JH*8$8&DZ7HF'>W[?[0[^[^R>R^3K>29>O.T7LP7LS?%;>[[ M_XI@^)T+)E^X9QI5IG%18'+52KU:*N:SC4*>.2M6LI5<,5MBZ@UTH5RH-(Y/ M/-DZ4STC6G)6O<$R"G3GH9"]J3,%)+L\DR_D"N73PDUT*C!/>"7ZA3LZ:2'] M:2RHR:8V70I=%'%TP/?LZ$+@YLB5!6$] MV_*,:.>N4^'OY 1K*%3[S#Z=N]#*!9\V=P3O6P?N3H.I&[+QHMTNHIL'D'SC MAFRB"!VHU_R6:6@D^?5[$5?P=+(7Y-P+F-D;F. 5\PFV,\/IKP1F^V8W7P\. M"^:TFZVPW[$E@4T*7-R-Z?@@?E>JNF-MW.)FS7OG!.8C^M-L"07TA?I%H="H MJSS'I5GE]\ _9UL$?_#NNGC""5@:9.I=")%# ,0GY*$&^RWH1$&Q$ 7%/'4 M^VE5 A]W0Z$ ?R2J2 %^!O"SW&SUK%HKW&0;103Y*I>1>9'? +K7/?3/=-OW MZ@ &B3^7:=L.V?1S H'C,IC^ZQ3U#\[4!"'NUD-1_TA4D:+^>M2O7V1O"A?5 M4KYP4R]<-XN-!X3^K,AS&T?_>A ZC8^ @]SV86/,%LZ<3, M)U!8WT];$J2DF(F[A5!D/Q1MW"".?]7:IATN&**+@7:S&$BABX'H8J!W%P.% MZVYDKB6Q6CNMMA1-4D4EPZL*% 55;XEMA4NG-3W#A>MN@F]\HB)OD\A"?]I3]9CU+))5"HF7 ML7T'=9/H5R(X=?Z]KS,#![H8'=O <,Q) O<*F";31S-WM$ MY&XBN81#]ZDADP?#_+(\+I$DT/X'P1[ M+IAH9#K00@TQT:B@S^$ "RY\1=,RIDEFTNQL'[U4 ZG=@\HI<(U 2"&\[!(U M&EVD4A]0/62"D2(,T,TA2U]2J- Z7:21%F*I^)LIIHKT?.E;!LD!P3'69ZQ! MD1W,<';Q<>\WKP5<])$=6!5!0#?%($3$S0;,(* 0' M;".RD/E]/% [.)Q#%W]]P45^\%\K^6RU=,?Q"#P:QV,42%.M"!CS+$;\K;0 M6/''\S:);1J]U-$)/$_;U4S54TP;ZEC=&1=JOH,L&JF%"4;NU$K!8( :3WBJ MXR/["'P__A1UU3=#BPW'K#Y["+ZC,-:ZP.J0AO0-U\7#$3V7]&R3EO-9QX84 M0/[=04_"J6,DX)/![ MEO4]E!9Z%5GC2X2.;0B_\J.O2S M)%7'D%HC[3;:)EZ%?L<[%40^"R;,;UL9L+7K\S ZG.VX1F^MBKAL,=^$M; M@[KO!)EWI+:X[03+#;?GOJJ-D>#6Z?([FIJ8MZ/E)F!S"_R!'F ?'E+2E!0B MFTB</D3L -]UP M-=-VPV=^C&T%GBN4*S!=>ZXU*%KQ@3=]TUINXF./A%^.G(9EM!$N(YFB9AM] M0DGZ0(=,:S+G*A.8CXT@(G3HWZ578.7$5"]D@&">S7V@)PA"6] TX#"$NSD4 M1=+&\D,RG<.VUI2BS+'4;5*GN5#QE=2,X2%ST%8W"?GV;PY[,0WU.$M@K0P\ MI,WNYM.6G^55C!8U+,#;?M P-%[]OF^A#T@VUDF* L?AZ0D>!?^Q$"-@R$A0 _\SOT(@Z0 M5 (+2^HUQ-P#M"B0?N^=E'-!$ZR$QGG@2I*N;PZ%X< R&'B-VCBTS7 M&9@^3O/@+2/Z2)V)DP\TT<9>U0_]*-"QQ.??A02)7[ZN\?C1%M00U0'.9*$G M@YVJLX0!A0=N7 THD;0]B"H[*(PT<;9 W/!1Z,>8=2!2(2^BYQX)(PA M^KKMS[\@ZGO0D)47XX%8^^X^ M3IX)+)T\HY-G7[23WJ[@2680ZL=\/(CVO #V):DKR8BQ5P@J$_ M"'(VLR@!_=I#?0I32!V2R@AQ\)7&1%D<%)E@BD^B*2\,\(*VH( 9S\%-">%< MY!;_="$:=#Q/\ MNNX$X3+R8NM',(H*3SZ[-=F?&6H$TG-7,$ 00> V)$TP04[^I&V,H;Y.-G,6 M%0%>8.V+Y5KA;?)@>8?A/^K#4C$1:1YJ_NOE1*0!BR5$__V/(F647\MU2DMU M1BM@]4?;4[Z/=+6I^N#$5 O[=[!F[F5J&H/NQ"5*-3-8PL83H6)A(YS/'9/, M1\C7<08&$K\>@NE*,1-5QR-7Q[MY0$. IT&B0209BYFZ"W"HC)73 :-9F#Y3 MQB H19'E-" %CD/FDP.>C7/!5K)+I@'G6&D8XY ,@8=Z.,@*V1G(9. M%9Y1W0?-GIBL8F%F !]J$7E M'8GI?!%N4C@GJ85%'M%'!$F""8CI[&DP9Q\DJFTRMPMP;!]Y6!+SDIG$.?#! M%R<:$&!"O,7EV*CM#FQ )Q.)Y"A3\L_P9@@ M2I357_,!@0S\)7LZFB8>36U^-'$E#ZZJ":8U[78;?1.K/ICSSV"F'NV%MI&: MG'#.;AD]%GL5S!YC6T5OB;B!&Z7P" I.2_JB295U79I.BN!R!# $1@![$8PD M&)RR#2M.AP&@6K #@KG964IC72K$@1K!YJFPPJK3H"-P'+B,@(W[?3](_N)G MVGV(41C+-@0Z"X%-$I,I/ 10 VXP5=7V/1^7?(%QB-7DJX3]&.[,+7FS:C)< M%;:4LYP':,.-YMCL\#+Y5G"R 8F26_ASY";02.$)A^7"CF49D/K;%0F0!@2S MU7",JP:GL4[8(]1=7!WC+@SYW$1@T$6/)*;G/#)NM@--G!5&^K:@]*3Z:9:V M6JN+ZZLU%TH5<<,#;T+L<*WY; '(4NGTRDQ2?'$M3$:')\D1-=07=L3#%0?1 M:,XQ]O455L&T2*"3;PS=N[CTQJQ%F/->86.S.HQ9[<42I1EU216$&U;OM0%9 M*S.MN _J@LFLZK)N)\)J!!R-^([%F&&*'E&D3A>)IQ/65I*6(J%%+9@K#T'# M';">A7D/],#UD@SXT=1>U_#4UVC=7'?F$'8Z-_,ZOFZGOB(^RSU?F7>9<4I< M9Q-,NKQ9 3,KQB.^82'_LS[:GJ/^:YV>M]Z')V9O^F[\F/+<)91'I -,"?Q2 M.3>I'XP"-8 MK\BO-FBA1&M1TO-%T:^_9$WD0RK6YBH2(U#$W2+C,%<81S(BP)WB8424EI:Z MM TST*^%D"I@ &BX'8A1!8UW,#S+G1W.JNDTDB@QT(-Q^?XBET"/#[\1#D@T MXNB9<\)P%[(I47W>(OWX7&1VX+@1K6XCD:$>90*6J4<$_0@[D-QXELLRW+B"2(*J7CQ=<&R[/FPF MT\;#1;=_9UY=C[[]6[LZ8ZKA<.1L"Z]%R(,A2;*72K7__5QHZ0%&L(O-^()Q M*=E!.>OUD)C@WOQ8#N]Y5$(EMT&GPP6%Y47 M+'VCJ\9?K\^Q)#PXO6B/C=<9;-D-A^[ MI[#0;[KVE?[\>'-9[WS[E^,S6[27=[;Q^7],^-\XF>B^52YRM'*15BY^=-L/ M01-9 7*2RD,HJ6*FW5853N-5$2AR"[8$5A>TC6+Q2C[Z'4CX^%FW4R?R@6-B M=M>?A5-IP]8Q0?.^[HSVMW%Q$=2":<-/G>$LRZRB9Q1.U3A94$61U]66A/YD MVU 7.4F +04N["73T%2M_3*Y8._DNT*]T7]XL6[&S_?%$?9ZRW?F^Y=#E;?2 MMTW^62F=9WU8.:MF57[U3L'//A0@GWQ@DYF67#D=F4F_.T)WII?O[%34%TG, M"$^%I/2@&V>FWWO,CE1!99?OK#HOIV=RYGK8\T'_YJYCW=4FDY$JKMYYX76= M038-;UA)S-US5P7++FH=-;UZYX/L7-R_W-R^].J.=<.K*AQ?9:[1G2L]N].BNW!G5'T8EI5"M/8%Z.L]=BGQ6E5;?[EX\ MRNEFI3QH\NA+-Q=GNGI[/U(SJW?6;M5D66T\O_3@X!$HY<[DLC.Y5N75.Y\* M->?VO%FLLL_F _>@E:\>%'BM*JMWCJYN\OVBU;IK\D7-@/GGS&EU=*URW.JM M7O[R95 ;CA]8>%NH^GG545L/UY@.K=Q:N52&PY90*Q?N^FJ]I(BU0K&#;ETS MH.E1N0$]J7_;E)ZN?>DAK14S.KIUS8B*EV>%NUKY266?'ZYN^4N@)+521^76 M#.EI[LZXY ?LN& \.1.I+35RSBE2YS7RM]5\);E40/6 M#$#F(7F1[IAJIW#UTNO>CY\?"]5"!]\JK5A)KF3RQ9Q5[?5[1;=S>O\@/PVS M*K=FL++=T6V_D;DK]8#9ARWG)>V;]^C6-:/U;(RS2NVI?E;H7]7SKEGQAL_) M$;YU155OK:J1A[PC%.[."\^/M^4SNRMW\*TKNGI::P#O)5V_8W/7%]>JSZL9 MI8/L=(T.^!9X4?WT,%>X0_=)-Y(HO%PAXU^C \AGE*YOK[M:P5?M9[%U/[FU MRAV57Z,##UWKLN![C?OF2U5=0D]=HUFYGJ]X2K^;+/2!D!W#+EG9LK-/YSK+9QKMS--= M76CWLJJP9@B>[I[RD\O<<[4P$3GGY?(JQY=.T5/7#$'>NW[)MS)YV#MO&Y61 M-C"L!^-:%=;9EMHH7PS+!;'G%^[T[(5[4^.0V@AK)-"3;K(O[5,1-NO9BM>] MJ>.Q<\-E"(=GEI/'=\Y =BNC6-7(M%WO5YT:RTF-]H<=- M6A.E4WC.JN(:N;8\_3E]WU*M9HXS:Y?U=O(RK8WPK2OZ>@JE^BEWW4WV8+8A M"T;1XL:0W!KIZ^$>:YX14NG,?IPLO960A$VQZ;<6M^[PE'.6H^,2OW'A]N;T M^2,;%]0R@0Y,_ :& ED\QX4"64S'A0+95@?FDP)B^5/3 ML.!)4-V+?EOY."@:("I"%B7A,N&-6N8.I/^67"/S^^/>!<%@S'KW]4=CA;'7 M#N0PAS0DT?^!8=_8X%/5IJH=;]6.9[2Q5;_X[=]V"S5$.IAL9;0X\B )-(0W+X#*CIF5QX-U%\K!NIF3Y,^K@#O8\CS_SK8)FC ML-S5:(W0F0,TLM[8MXQ@A1 ^#DJMA\<+JJB6H##5EV"O5+_ M+)O]MK"N*.NJU?;\0J(7J^X\C3/E9A.D[=K$NYV'!5LGXJ7Y:'IZTW#51SNH3=Q2Z2\6?CV+Y]0,D)"D,5H>5(DBX-- M@% SIV:^43/GU:;G/+;YE^ZD]WS6\F6Y,N@[9]FO-O,:RQM]K0HXMO[2@#=" MK>^SN2PR-:R(8I[;E-5/#. M+)H#\:84X=9#>'>F_=*:FV3.JA4Y_7+Z2'F^SW_[=+T?YYW*X?WZX!CESHK"3IJ)5JG))'_21'$0) M&1*[QHB6+N#='19.7_UQ$%'NKGSG843VNX]R]YT!KQIQ!7JOV#%>_P.5JT(K MIR598U1H]GWK?CRZOU8E3'RY1%KA$HHB;8_X4DNEEKHOEKIQ*O(Y2_4&9:5A MEO5^$XY*5\^=T])MN8_7U4K84@592X1C:5Q^D''Z9L& MM2,/UC?-2*:G4R)X6X-KXHMY[2NPVV6EIXJ?%]+RC7K343.8@0@)3I03&5:F MJ3=JTM2D8T-=WC%I7NYG[Y_NTA);95^$E^3%I8DWEL@$:3:93R<4>?-4)?Z\ MI$HVL]06*E!H*/4GJ+6[0N:OA[ =]S5.>+9IBD(,,RAL?CT 8Z]J12NIMBH% M(&>]:D8&S0=KI,J8J$A2.L%+/$V44.NFUATWMO(AZ\XXE\W[ER>_Q?:;QE/> ME1O^;3J+K%O"9W(K"7X+C&7/DBMA0]ZJKFV090MW#_4"ZZKC;H7'FRXB9B0GA(R2$-+K9H0I M)E!,H)BPGZ3J/4PHREF5M[3:(PN3W:NGZVNQ)]L8$Q"?DA)I7DY(_%L3R_', M 7UN*X0_V$"#QHK[,ZE.5X/L1@I4VX^DSX>D[313$&0*:B8(CS+#ZZ8&^!"T MS2[&I5$!G=C=8YR@VD^U_WBU/Y[1WY]7 *SQ>@F&'+'I;JY*\1@-_9"L^IC2 M4IM.5=<-:BK#9.NS;9- MN\"_@&SVY?[LR>MW\*&& D%=5A 3TIK%9YM;T4TAA4)*++L?*TC9P@K5;4'* MU:5\Z\%!+M\T6L6[QW2RU2J:60PIF,B)B0PO)&1I->SZ<<@Y(HXG+0F** >K MJ2(:<])JKP;C^\L./N69[+#!*^F$ MK-"%(]34J:G'CO]\TM1[YO/I3=NN5@M5_L[L:OJ-.[XBIDZVZ.!% 45);RUE M/XK<%/N!VA!,-6W?9?H0,2&Z@(1.C._YQ/B^G_;TEXM^;[NZ[T7]678 M97WN[#%?/?6MRR3"/[*+;EKB$@J[Q7FTF&DT-6QJV/%G.!\S['&MYMO7/=5N MUB_TN[+T)%637!8;MO01PSZ\1,T'.$P) A,B7>A:RG7] M=J1R9$M4$<5P:8&F:ZA)4Y/>X88>GS3IR6-=<7*GI7+OW)K8WKU]V?%&Q*01 M?\D(F41&%&A:YEU*DX=MB"BBSGA@'.SM03,S!Q_ T3,U#X,&1<9;M#2[#QM@ M'"S@7Y_)[IL9M\USCUKS;EPO7@K]!__T# 5\F6#2BF795\YXH%! H> (H0!W MG../_6C=8'O3+6SZ=61*3^>PCW@.>XM;F[Z9X^WF=,Z\N+L=-?N2RO?OQ]7: MT_.URI'M37DIH2AOA4C4P*F!4P/?]>ZF;T_B\,)XV(""SB:O);&I-$M/=;.# M#5SZ@('3',C\!J=9NK'IKE8X" @\=-MOF3 62+G=,V)WWO4X >=V=C5=@Y1G M+;G7E^U3GZUV7LRK_FWU-%?(JAS9SY3C$ADVDY R6SP5CV(!Q8+X=3U.6+"= MW4S78(%;&$)_+@8C+>=+0SC"6(!8DY)@%3FA"/M7_/)AA#B%[9 5T$G--FWG)&)DRY^:A@5/ M4-^A@W];^9B\Y(1DQG !J0'(6!BHMW@5<+T+'-A%+X6.2^:;,K\8O"#)F] \ MQ,%/O1YX&?TK_=U8KZEJ4]6.MVK',TS<N;K-[@!^C>1^2+>^! MX5(-I1H:;PT]BD@MV/$R)5E>+S#0NJ]?,\IXW[[?MKE2>[ M3F:XA+#-\[9CIM#4KJE=QWH"]1-V7;''J@H&&8.=U'(3D1NJ%_R@@^T:'PV9 M2:2YS1>BQ9^Z9#4-*:/G,H- ?L'VW)KF^%"?#Y!IY$$CCYU''OO.0B)C"[$* M[V,;6-KE5^I<3B:(F) M'66!3W B/2^$VBVU MVVUL2/T'=OLTT3+CYRLHLN?%WFA2SH_JYYTLMEN\#8#()7B9._82^#"/@AZ( M!; 5XA&SF(*&5KL2 PW$MD!M(M.],[QNSG?1"$ G0L?)&\D65AP_#2]>RKWZ MK9N3RF;FTL1!63I<\8_B,D[>X@I :@T4%"@H;(LW_28H7.:;13E=*VJ]9^/& M]O@+MG+'C3 H2 $HI!- MCQ] /-'+=4_+K6&F"1X[1>.QF@:-*J)!9/-'@542$O?6!O[4U*FI4U./P9Z0 M'S#U%^_LZF72Z9T7(% OX.EYTAG=9K&IX_T0E'1"R1S]61WA@60?V!%!6RWE MI,L2Z &0QWT Y+[3IP]EU1]RO@!*F>=>+REGJW6]?^H/JPA'R5Z1?(*7V83 MT4H=B@P4&0Z';7T(&9HO=T^/I^G3:F_2LL?N?>NF95T09, ,*\%)2D(1TWN7 M/HJ7]1]OY'AD?=Y]]4 ,I$"U_4CZ?$C:?A2I@C4R2KI02QKC9""@DPORCSJY M?LI=2+F72O/*TGI=_JF92X]'JUF&W^U$\"=^$%(I1&?,7VN2%C>0G&K/#(#C M33!Q(@."RVZ#]4%A$6Z0PM@L>-%X)8XSW0>^"GW?,Q&YF87.+S)8$W2D0;)N ME$?B16%RGFL_].RFEFR-5%X)TA%I>G0%-6]JWC%+)WS.9/2]@/(P- [+J$S+J!K/J=(.'T:CA^+K.]6C,W.K?O MSR?.E3\8X8;A'("83@B9+2[0I09 <8#BP%8W&OD@#O@L]W@CW#8Y%FK/G<*@ M?["@Y0.4JK2TM.5+V-21806MA3_BZJPO M6O;RYO& )>/RYKRI.H/>G=KGNWP1#*L*PDJ>+ 6A(3"O56J1:V=6CNU]CBM M?'G3VJ_'RJ]ZJ%\5/YT6W=/@HC# D2A@11X!*U'D13XP'3)NH,Z(3FH<[.'F]%0(([SS =>:?Y*?^E) MG52UCT2UXQFM_;E/R]G]OHVUW-9Z)\Q?;T?H>6-HZ)#$YRYV=Z[:NTNZ5[?P M]HR]NL^?Y\5GY^KFXL_#]&+E;'6Q"&YH';>S!IRJ4_?P4LY;8/JP!AWB?9>C M] IP'+53ON)U6@(5(*.>(FQ=DX98NH#7Q#)#_(Y?'TW3A(+Q7VJ=AI>W4!\KUZ;K9Q^! M\]#9C I\8BG15&9$0&[6][JV@PQ%7RNK@7![7WVTRUHAERG#83]ILMQY]CVM MV$#7/ZP36^OZ.&-)I9?S\WQ!:O*C=J,,DJ<7G6__2F0-U2OKJ):U!4S?P02R M^ *M^0+1%5W7?T5LR4NEDG^I=AY[$W;\+-QG6/FJ@#2&$Q.\D$ZD,VOJ).8) MQ+Q;'#@P21SCMW]#\3$&>3,#/(;)0PWV6]!A!"[!X'XGR*E0$=+MV+^G/5KL)(\YR\?ZT:'B)E5^(3"K]'.CXAY5<[+8N9I(F>_$SGTR)[X M3*?.F3PA+FLF4#K*TRC?RMQI3<-XN+N"]6&UYEZK METF1/YA)!^:_J$&BLXJS6MT@@;)SX#0F03BD /S0H":# P M<#6883%PK$'7Q27RTV"*YL9H;FQ_G9SF.JH0[&S,)C@4[65XNK4Q-75JZO'A-+]EZMU* ML@<-RTDWK[I)<2R?:=5B-8M-';,<):'PZ02O;+XD/OZL)JMI?M\/=DO48=O0 M#(^&7G35S]ZO^EGI//-]ORC-#?2 84&] !P+2W27A!S5^:OS4^'=-\:.[ Z\-2R-8T%-T6;2RL]32L1 M8\<[/B4DF4]DQ&-,XY3P?%22F2_RQ!-57BC/!*Z#T6S7^S 1CE-9T8)6A(D^ MTKRUA465]$0T)\9UMP"ZY7R^_I(?._9^5OQ]KN.=QZ[.\4:5+]0M]>Q%2 X+ M70=U7$Q('RKU"WI.,P T T S #NGPVM,_[42CA=>+"EVN5YDSY^NNG5DZMG%KYSGGP)ZS\02D7O/..I["2==L;5*'5NU:RV,JE MCUCYWB3TOF9++_?51;QT#2_=SH=NYW-8F<0U<(INK515;?C8K#_=5&LW8%@L M=$:JR(5I0U%.L!F:-J3(0)'AD-..Z\(I_98]SU;M3!.*Y2YH-AZEEUH6(T.0 M8Y0RB'#_#9PA ]^:YGM"<+1&916Y=M=NY9T_NF7!O?_T&CCD%78M1X#;46 M.@MM%Z15U.#8J>G4(63(Z4Z,9S,YVR(Q#EF$<&98P-(,1";)=CA]]#!W@ZU^ M79X?A7/=&/[[/_0C^IYF0N!@@.LNZ9. 7Q+!&_OW5D JE'S8*UZ,\'DJ:(&? M:S7Y^7_SC9\%H$G--FWG) +:N5YU Z+/$\SMP&3+@:"7!&WTXA-@CL#$#7LI MRRE>C$#\9 K66 Y,.B7+?S.S7[$T5D39!^/DG, 60I;@6]$E L[1-=LE*X). M'&@"SQA"_.R%IY)1\>S!"<^EI"T-RI*N"[,A^!]@N@[&]_\TJKFU>(1_1P"* M<-S\-1];A9=0=(4!%*\WSF%W02PBU$CP$:U@9FN' X0,0_ZK?7Q?/ZO< 7>$DLN8-6\[$C=E1$CU;NO&IVTE99 MJ+"@>/[\_ Q?*H:75?G5.WO=/+#3[8G)/A/Z<:UFEF] MLSX\&S>&30WTSE]NLG=G GA2G)'*L:NWEJX+S[+7=:LL[%5 \3HI%!Y01,AQ MJ[=FQK=/+\F*\MR#-]YI;UC-GYW7KC'E7;DUE[GD]%Q?/V?]5@$42]E1^FJ M;EW3_\+]X Y<3$R=E3K>N50;(1^105JRIEO-S$N7Z]_*.FMTS/Y=F7T06BWT M5&7U5J4SX$XE#PR:?D8\S10M\#P6R*TK@YIW[-Y#T3#&;#7WZ.85L9ITNUE\ MZ\JHGDERNPX?+B#[W,IG>C"?!X(_4ODUPJJJ5C9=$ZZN"_[8+MO7.34G.-?X MUI4&W.G%Z](IN'SN\<\/+S4$*LIE*8MO76G _9V1M-IC]ZE0=_C'[HL,_;&$ MGKI&JX5:^^KZYH%';17RC:?;4KZ0OA[A6U<:X+CENXPXSETW^8MQ(2_>CG/> M [EUI0'%+O?2KC]6W(+O.RU5&M[RSU>H 6L&]OFEU"XTFP65[7=+3_"A/.A) M3D?E9P-+(HLIF0FB1T1D3#!PX4GTRSP.8O3* AN9SZ@&]ZR2/<^)&A:^D M0]<-I85E\*]LQY^SGGF^C9[9->Q0AW)*/CLC,<4^BXQ&]<*([%N4#"T)C?AS,Y$KFS#L(L% M>&;:YY5D[UR\Y:I.PQ[S"C9LO,2734@HSF.%S2X]B57$=Q@Q7@S[_%Y.^1#[ M_%Z^=I_.WHYOK!K#@:?*OM_*?O@Q=P[OQ(;71\+Q %HN=#=WV M=CR6)#T&HTZ#4ZK\^Z[\^Q3 ALNSOSK-$;;4]JZ82,]JIS1 M=I/!V,BJ[7-L8GCI+G2&A@;=.C*V-5DD8U"\E)].3;U0?[X\K3CM._%1QF& ZT((.,$F0#/2^81FNYY"RR&G, M3,/EK4<,N]Z+;+<1Q:Y['RNDW"Z_">W^/+!Z!);9!9LO!":_!C4?>:%]]7+3 M2C5>2 <2X:HMJZ& MJ%N_'UC>:5UL\O8DGZP 7C#/LJH<;L_(*NF$PKZ%:S3]0XV=&GL,F,T'C/V^ M?"]?]+M-KO!\6C6[[H/5[75&JAP6# K(X)5,^G"S1KOE-4^J^.I@ MYZ1ICH1:";620ZK<"%_Q5HEBT=+L/F3:CMUG[ $,>(^[T3+%XU)_.E&\STQ_ MNV%]-3 PJQ-87-/ELU!ZY';PE)P[M$S(G)#+I M+1V\<*R1/;77_;37[4;F'[/7EW,]YW9'#VZO;G6N.IFGFTR[1K;0Q0=)<4J" M?7.1[F&$YF]QC*K7A4Y4ST&70!Q^T+'_5>#Q&F0:8%-=W[-!WJL-N>X6\^U*D36$QURVVSN7+ROD; H<7HOIA""L5A+^H-$U10**!/$* MS_\4"5CY^C)S"4&R"6X>I?:=?^=;S1%N+YY6EZ2$N*8P\,>A1>YT4CUFT:Q<@%$WT+-7M/*W3Z[M:LFS[_T32G)BOH3XD_"U_ GBAL4 M-^+8^WCAQG:)UV_A1DV>L 7A0BZSS]=M*Y,9E<[*^*1!8:MLZ[BPX7B33;3SFN/A^2LA]&RN #!84MB-@$9(S@+P^,X6:+"N,FDOB$ 8=- M\X^JNFG;$RE14=.98_=SJ!V&Y2.!5J=EP*?$B(/[&MB$"V// 2C0,BS@3(H> M[+LH%, ]<&RR.CO*R*[;\[SXF.8'?F=0."\^5IVK89F_/\WB<[Y)5:,DR0F1 MW^)ZQ9A9"@4,"AC[%O9_+6#<=>%SZSFI5'I^OCZIC$SM6E.O,6#@?$&:3Z2W ML.+QN""!I@N.H\^'%$'1= %5]J-1]J-)%WA@S'P?.#86CFW]8%K0@FW#HRD# M.G-XU#.'!YER0)%!.%]X&ICY6].&7.LFJ:EN[ZEP[I0\LVFR3;>+PH!,D#= M X3_3_,&%#4H:NQOWN$%.K8.W.[' 6,9)TK:9?JL6ZLWV&IG4%/Z=\WSSLT( MXX04& 7'_Z+I IHNH!'44450-%U E?UHE/WPTP45Z(4U!30UL .2+R":J]M^ MRX2Q8/E;/0I]YSV/%715IW>1:\N%"[2UMTUQY4Z*J?@ M) !/BP$\Q,K7=*]NH6W9^S5??X\+SX[5S<7&T\-\)^@_@7@6$B(;@TZ==S& M4VSF:T( V+KK:&>V6>I=5=W;O%;+:+Z857D.IPC8%+?%D[ I3E"89R0,$ZP',T3T#P!#9UB$CK%J\\T M+7 \OM#S@/D T-?P_ 'PK!M\D*8"=CBT4D4*2A2Q*[G\4.*K\T$O(X4PWNM:#T5KQY[=;W[X-[9 M W/,C3!2T%P S070>"E>\1*M&8C=P%-EWV]E/_QLP1WY"^H,0!T#'1@D"ES& M]CT7USRBEC)D=2#WBU80T'@@>,57KQ[>\Z!@6CP&+;E3.]> M-L8B"A2"S0O%!*=("5&ANQ!0(*% LF,@V>Y"A#\%$F=2N"KWDZU!LZ^:#[92 M<<_.C2P&$HD "@=8L MT("!!@Q'E7D(YR17XH8U(4/VH94?-M]T3TY\_P$K31BT^ .0(3-^RE+*=X'/D23WLR]:A8#DPZ):R,,-(7[VPE/)J'CVX(3G4M*6 M!F5)V84Y90=,U\$>^#^-:FZM3>/?D0]#KM7\-1^>AY>^_=O /HRQVQAWO0!> M0XT$']'*1:FN$Q<@7E=56E#@VR"CMC@)JJ+$0U46-5V5)$E4=(X3I9;X+7CK M9J2VDHQX5;<#618K-]D\4ZTUBKEZ(B"-Q4HNQ60K>:;>/*T7\\7L3;%0)T() M.E5O9!N%U-JJ MJ/&2*K?2LLH+&5W1M RKR='X@(@NS)@!Y-@:?G6\U(_#XIIV"R<7VFRVM+RQ9*'&*?* M+]]9E4Q5*)M&LMFOZ9Y[JA-:M)%!"K M'+M\:R'3TN$H6[YC-WLH%#'9HWR$#Q4M7&C!4>JL-HIMUVW1G? >RI,>*-VU4,ON7R\ M1G>*RWM.XN!_K!>OLL7+307>N=-_KNY=/Z>$3:/J]NVJ_6'5& MZ2%^^VKWB\)=_;;X8@Y9.+YMW8#RS=AMD5M7NJ_>WSU>5&^5B^:D7+&:K5NY M(;9Q2U>[KSDN]^"#4HXUQ%K^:=BYJ==[UZJHKK[?$M0KDS?33<,H-4K@>M1\ MED?HSI7N/]9ZXJ!_+]XTZYS_=X3M7NJ]?W&9S9_5ZI_=\[E:2X\?S MO.!GT9VKW7=RET_5W(U;:=9YOESGO;S,)O%#5[O?+R:++ _M7*%:*(UZHU9+ M%HODUI7N/]J7)3WSI#_WV/F"V9%.WV5(E.,XOE;)0\7K_5,W-C)J]/9+Z0>,EMDUQ_ M780CC_!45ME5A^PS,UD:;*=,5Q;<.C1F1;-VH(O:,*,4UNSBB!L4MWA MF!TQQV>*R7Q,2E?[$S*9R4_-Z;@PGG--,/)X?;NBKI>5;F[-M?4-[4QDM914 M9G#HT?JI%Y6MF35RV8VF.JNEK6?DBL&.4L?KMZ5B=4I)14DNKU?E?(J<.O'X M#(P\@JF3SZ@+:E72N4++$H8;WD[:.AQY!--%3>DDEGI7Y=Q4+]5GA6Z_A>9, MO1ZYS)>E*%M<:%RAO6AE1A.I.:HTP:ZG)ZE,L(0M?6ZXL)+PF-:9(%(X_F%&)*C=DDI#)97\S%SC(O;?(S!XP\ M9E+"X'F2ZJ7SW"KY')4SL>ADN8"K'U-IAA>26;<7S7(K8R#,=%DWJ[JI-SHKK"K!<.FO6(2A5]K::M<71,BI-G.MEXZ50[3Z3J7)9[+99D=GF*YVJ/F/1V"-H M);.J9!>K\K*K5I+E[KR<*:1'8"QUO(5!8ZB,U\/\AJN_U!:.4ZKIN:4#AQZA M%=D8I.ANGB>[4DF3MV6%2I=C:-8CO%)BBJOP2RDANZ5E2LV56RW;F<&AQP=+ M,(XVY!8+F7/;N74JII"#\AI->WRP=LWNF>Z*J7"VW)'84BN?S0Z:T/!U=#"[ ME]^HQ51I1I8'3KW5GFMF(NO H<=;<,HOSY*<'YN<_3RIS)EJET_D9FCLT1:, M["+&=5ZH@>QJ9B>U:=*=V3.8-W:\!6Z>SW?TC.K(4GQ"4ZLR(\[I)AQZ!-OB MTFC6(]@N7:O:X1,5I>NR6T[A$JM>GIO!H4=$FQ'7 M7;U!VRTYFJVLN=C"!9B.AAZ?BZXT!XP^ZZ_)K\O M+=:D) L%W1DH(LFC68\I=_'\HIAVFNIRM&$Q#)/0@.3BH+%'I,NUHOG&.LH7 MY*33FN9+]4%VN4);V-$NLBKNM&C/M@PT:(#!IO@C^"$L:$.]T]>DH4(F>(I< M(#TC%9>W+3WXP%-PT2<':G#(/.V/.;8R6$:P,7]!RA/D/^:_CB6>XN\&)(6T MS-#\.IASJNA.(/$'OT>A3&8D=WEO6!&=I_WDGQB MWDWZP_>"^1B^%\S'[OU>4D]Q?"^7NY??S+/]I9_R9D!(_080+LK ;PJ!HZC2 MSYEX?A30^P! PGCSVV_NYV6PG^!#*ABW!S\+!JF7P@%R^1W3A"I7P'@O0OWC+;'_YZ) M&_AU(@^*0E++#8&JVEVC)N0EZ,-\%%9Y'H):NK2UV#%8'9C63N1GGN&<1UJR*LO#^:TR+/DV:% M)I-T,M5WEYN8$'/"U?U+M?QOU/?_2 5_+OXB;<;KE4S23%F*%H]P9&/[W;+&JGX4O=-NY4<]R>_RV7*QS MXGK<3HIR1 +32U/Y6G55ZDK#O!NM+[)#B845 M<1.0)Z0C22:.&0)F"%];4+@P0Y TL(8?&UW2..2GKT\;O-&#-A^?-Y3TK9/. M+@:J7*X5:"-;*:N=#7M1WM"+UA:-Z;9=ET6WS#9E;J3D-K!6=PKPAG2$B0&9 M(9W$[ &SAS\,U[XS_G!T5.+[?3"(8%1+M'A)$R<<;V@ ,J;/&GHLM2FWR-B* M$VV3MZ:]LMQ+G903F$7]8 ^+. M>,3U%8WR4"RD\PFG)=O3O,"P+A>K="YK.8BS8L>9MJAGLL ,[?QZK#0S*:@= M4,RWG[%(C*8CR>1[QH/'BQ"+DU09W8,AC6UXFD=PGUW;._"0A'?&OKU_:P3L M3 6CDF8XFJO/1HQ %93V)-K\"\\ G+MDFK8X 5L'U]$ 8-7]EK\ [.A/Y@D" MSQ7(UJ);;G1E,=UWQ[HAY:L*;"M%?_N92 /BCEU.]?^*K_/7.O/5RUM<_Y6^ M/:?X[4?_F$\@&^1[;,*NUOA$+3F526EA.NR,M;@7"[*)!&03%W0G?BUZN3V/ MP'+"M4G_0XZ!I+ZEH_E"+<6M8CF:YI\'92#%7)L+B+E&KIZ?Q=MDN5 O-3N4 M^3)48+O*%. "9(1*I# CP(S@YE5;/L )4#83?9;C8>Q\9.R\>ND4C)P8.<]5 M^_8+R%#M^F:PG@WF,4X2NI1+*3,W5;NZ^L/0#+.@*+W:M?/;5KHW[/'6"/7I M9I#DPR029[>!WID='X$N.N9-$8;1JTM1,]'%$>(&_BQ^5C?.5PNK/O?C&E2TORM M()\9DG.R(3&G)8(CF +VJ*QE@31$QQ;HJ#/-#0+VO0)T7%:3RY?ZLYZW*WW MHOF$62O/G]O.*(GB:ZED),YCAP\FZ-2/<0./E1EN', 0S![(\7AKO+@O,+T9PGEK,&'RP>1S?R&@MSX] MI@I,%;]:.SM+J=!!>EU<*/QDWBWTY[DHV^FD4\L_5O& ;E)"JDE% M-T_EQE6X8GW"I\9%3FV5K.RH48NN#&>4\HJ#)NA(@GDO.0ZS&NO3 MX\<74\7]A9K>^O1W_?:>US+ZJV_FX6..BAB-69A6I5!S,X+/)?.39 M?+RXT7U#KLN9.#\%]3YPT,>?-]OZ^WBOC%8G*SFA7.N6X\_C=*-L+EB1O6RS M+<9JS7BUNB9E=SDO2^,7*9'*.:,T:K85CY!I.I)^UWOQP/C^%1V1YVNC]9#D M_8>5JZ]!VV>O?%V24^EV;Z)EN;KDOE16XV(INIP!TH8]L^)D)!VC,%UCNOX4 MS_:%Z?I#P9G-6CNYZ=0XAN-E9^W4&9=]F9VW;\5K$G_NQ;,#Y\6:D&)TP-?[ MR\ILFH&OM]?Z*DTG(G2:QE2.J?RN@B^/SG7IYC1G,DNO%<<8"AQ#<:MF06]F MI&6E9URI@]7<;HS933_9E/LUI;(N;5BY2K. U/T.5K%4+!)/';_HY^M.@XG] M\8C]]K&L=T_K;S>BFC]30KZ4GFUEU;6IJDCSK%F\4B.J?+.Y3G8L, M#.9.6RES*OO24FBG.7YY@5JUUT\JF60BS+LB]Z<(][U9C=H1&75M%1*630%KEX;ZO%Q3R+% MH3.B2&A+CZ%6'9#-_ZAB_/H^Y1@UWN6=;"E-M+U03$=M=F"??5F8C-Q1O)M M(R-R_)HQN_*F,9*S,R@?HFYB\0A#OQ=:]GB1WU=K'?:)3-WW1:>X@-)C>TAQ M 5N,Q1B+/PF?VLAL(;/F>(V3):4_H)FN4*$F-TLPB M62BP>=VY?B6Q?8IHTRLU[+JS4^/04QQZ^@=MO:2Z-5TO9LLM)[7[ S4:HX9; MIPF/#4LZD.D(CA3#[CLA7^KYQ$:(U;A5DE=:J]4FG\LX M\,RPRD2$3&->@WD-CDJ]6UYS9U&I'V4[PV==&9DEE>56#IT5,W;3D$8S>/S4 MMY^Q5(3!? ?S'1RA>AG+X9>_>(S_.$+U"]\[1G\.J0"_!9@*,!6\;>9Z*#*X2V/[+\K+YIV20*Z& M2XNKFU7W93QBM&;TC\WLOVK?4DY6C/D\O;#D]G1>*]OM5*;<=D94#%64I2/) M9"H2OV3)JJ]%19BSO&E ?"C&@M]73 47L2,^%!4\M%'Q5R^C$LT9]?[('I+N M9OLL]Q8&PUC>R\A\[&7\%%&W;[<[.Y_)\,Z.?.V6VC% YA/='BOB8]/YGW=- M^_N8N$'%63XO6M*$;(]LS>D\N_QP]#=!N!_HFE;>"*3$Y&)]J3RU&4 M[-HBTWY.1[,;DG<@6T$MV^A(+,%@GH)YRH4ZO]WCR1^1IWPHIM;JRL_T1'VN MRE$RF=:DC$P/EY=E+YQI-?M+>E8B78.:+QJF-1GTD-22 FH-&:& U,+@(O68 MPUR P[P=*WOSH]]5]ZISN1)JZ6BGF*\UR*1;[[%DJ=MEXG\7A?7AUE6%7K:8 MMA;-)2=)XS6[T*;+<@9),:A572S"4(D(F3C.6CY?_RK,:+XLHWDS*/GF)W]H M/O-VE[SIIJ0QFRI3XPK;6JPN=J)99^ME,6VUMK'8,-5NET_H#=?JN855X;S/U%==;])F(*S+>?R4@BGHJ0S#%?>.6^^;?%@VN[P*W &C+2 MU/4^DC1 FM:/0Y1]3$R(O:;PF2+Q"[)Y3\XR[?AN>'V7S$VG]\[_@ MG^![@B+R!N1R\U?X%(.+!#H;^:^+\"4?\OZIZ'C I'> CL5#NT;__K_PYO=L M-RKHBF[\"'AKZ%1S$3*_'S1BLS,Q.@8"C!SEIV#A'[SB\*X9Y$?P9\! M >M6O&D=#^3^1]]^=B #)?0I)!7+HP@?(_F/8.4A5$^!BTJN>!6OBT8_ :O8W;'BQ+M1:;(^J- M3BG;CA"E6O:)8&LYHMW-M$NY$MLJ<6T$#^\\[0[;X:IJ64 ]L#F]_MDJCG";A/ FWT\1\:'ZOBL33#3^+QT9B. M\Z,X$Q=&:7Y"C^)3.L&/R61"G,;\Z^ #T:.1&ZA2?+7M3=U>T7C)S4;T\4AA+M2KA8W)=R6[U4Z5!7YCDLT1 M*K!R.+(V-F)F.\VJ75?+:L:\T-?,M#.*C,RUN37&%Z"JY7'!EII!M MCICCD;&9^9+O9IU>EYZ)+T-Y4Q+C-7:4.A[YO$T412;9RY)2)98?UAO;ZKCD MC-+'(Z/->:^>FJ:29':^.-+A1E&!^9'5ESCKKN-DL5-R6N3)9B,24ZKNE# ME+EX-#3=R*B=NMEMR/V7LBSV4E22SZ&8I>.APJ@W6Q9+%;F\K(KTRZ+2[421 M&^!H:,TJC@M4FZ.[4;L[H6EE()EB[5R0B[T=&50RJP<1P4; M.'&K8I\;+TOKN+D )'7B M8MGYJF(4ZR^5KMU*+3M+5LI6:4"G)ZX@8]#==,N46F19XZUF>2URC1*8]<05 M#-0YH_0V1843G:J2U_(4G5*<$7WB"DIZ/)-EZQVMV[?U1'3(])., 68] ==V M?EO+9V;+@MQ^:9:92K8WC<7 K"?@NB!CPH*.CER.MMGH*-T:UM86.-8)N*[G MJ]DLNM!X3F)'2ZN9?Z9H$PP] 5=FS*M,^5D:R6[&36@O'9=]:P$7/M*PW+$Y[9#]I,:7:NZJ7H#LN 35&O9ODY0$(P]&BO7'>PK=J-#$_6C59\_DPK4S&.AA[ME=M('2'3 MRBSE*)N8U&6UW6NDP= 3MQ7K35Y2[:B^(OF"/+&=W,LR"=@P&'JT@?RB[4A) M*UOG"OEZU+;3G;(YG\&A1T]@FGONI*QD>=E=U7.:4LM3_""&9CW::\(9CW/% M8F_,)>TFX&PQE4KGT- CIDGV:V,Y93144M944:J;+%L'#H$02VQ0Y=J9C] M#=D?IQ:#;GU:B@&X@J%'QQIUU%Q?:*:G&S5IVH%#CXY%.^.J&IT*&AJJR;; M9E1)6CVQO-'1!H)C(8/)3D?S[&! /U/XI2G^"'X("WE0J_'U-"CN"YZ:$"BD M2('B;4L//O#4)_3)@9(5,J7Y8XYU6,L(-N8O2'DBX\<"=)D8TMG>-MV%=)C0 M_#J81.@!.OU0&?2D6+1P,Y<>FKMB6> V]\&TS\Z%I MZK>L$?Z_?V6&I9]B<7PO]W,49$@L7#\ M.LH $]D]$=F94<*[]>-_#_$@3$[TGY(313XQM\TB/S/LO#3C,4:;BZ/-)\,: M^AQ<]MXB.]\['Z.I3[1U7 MRSI/\OD^_A;7O[J#^E=%MA:-,C'VA8Q&R?)S?#G0I0*,Y(M=N"XDIO%/3..X MQMTAC=,'-$Z/VO7-8#T;S&.<)'0IEU)F;JIV,1J?CUK#;-1*DK(M;-OF0AR. MJQR,ZTU^^TDEZ%]4K_H<2O75:?TN=8R;L;RO#H;'4+,QE6 JP2K[Q:CD\;3Z M=VW1[ 1F:J'T5Y@C:XA A(D122T?0,J\#G\38!FZZ6AKR7H,1V[Q'?;!#]( MVC\G+=B/X@NZ0Q*Z?:'Q,];5?3]^\6ZL=1A!ORR"OAN8=C<(^N J7!(MD1.7 MX(F1D%Y- 'V M3UBI'#)=>2$%*=65FGFQ.JQ41)-R1@RT1,S0]\9OF.RO\1+_=7) M_K)6Z#\D^[+0S9+#WI@B5:JDNGJBGV=$6/8A^>TG'4]'Z.3YC=.W%&/B)/5= M_@?<$RRK"%;3!1E=FB&-;73I40(!/)J T1,WT>%/= MFHM&0S641#S"T!1VEV,:OCM3P2>3-OZ.ABN"-$Q.GI6&G*4=ZT6BQ&I-=@ - Z$C M 52-Q"=VB'MB"*JN2HQY:(8'L@@$%#:D8(T*&U+N2$Y!W>DRD$2S(0H]P<[R M[7Z*SFQ?I&[?'!MQY<7*S;GF"%5LHB@F O0H;#K!A(Y-)W]5[7EODZOJVD.HT$&:V,GRO-3&RC%U!= M72B;1$B2A/^_2-\63.=?X\SW:%N!AZ3HSQ:"D9WSVDPD) W\;RUJEFZXA"&" M>=;GR_J[FR-C=>++V T^WSOM4V?? ->0TQWMO2>:'\55)LIG[6[96N9):CZ= M3!--6*0>Y@#&DY%4ZEBK.-\#?6>8C@G^"]@/KD_PES4@_![!=YAY.9I*NW,Y M*2^WXIK-N=4TZDJ1_/8SG8XDD\<9O_\\IAG!7^+=DCI(J#&A5!/*13!-T3)1 MF*DB\8@%G+VRSE?D-^(,(^BFT8E80P%[ :V&(@BBM M86,,+!QCX1AKPW>C#0NPH;F8$[W_EK2 8EL[@CTA)4M+35>F1:7-B8G"LM5K ML9U1CX5=UF*H]F2$HH^]ZE@MQI2/U>+[48O_B/([(YI.M6?U*2F)&37U4JF6 MQ["S)^I^10'*IZGX9U&0 S^[9S] N?=8>_CRVL.]J;>?3@()$=P)!K1NUF-R MMJB..2G?5-W:6M+R-.K:"D0/)A%)Q6+88XX)]P'4_D\G0+Q/N&HO]=+H\XD9 M*69SVF(V,2=2O0D)%V8SDE0DGKB Y' W,K(G3*"$#$*P#0- "IG0P6FCN]^1 M91VK25A-P@:2NQ5/$ G7 V\8BTCV5,F&6#617\BM;C>I#I1YWJ"RT=8,MHP' MQA023/K:0W*^ \T'2-W1-7?*K;(/DR44_0SFD#22<) M:)]*OQO5^W@VDGWPHP(A1>ACL$UT5=AF\JBJ%TY*^)322\"]*O#WBA^_X[X7 M$K6M%V>EZD9?D*(U&DNQ;K-EJ,Z(2B)G3SH929-);'+!=/_ MIE/EC/Y.V1_ M9*:9%.DHDZCSUA+S21<&5/P:>*[N6BTV&BUW[N MEIO/S]U5?=FHCFV6YM/ZHP#&0$,=4DE(TGF/4[P@%8<,!2>XR(BSI=D8W?[XP=H@Q4%5,'JM]JC7 ").RNML25+'YFG, M!S ?P*TM[US0^5T^$.?:;-'(1Z-(?A0ORYH[!&\Q%>LUUUC6I_]*SK!03[Z.W@HZ\ATT M".[H6=Z<-_QF?!FW:XJ3D/&\]?)CW/*$,@%WDYZ4:?:7 M$=4>/8,L!D88T;%((GG,8![9-/5NE9+:J2ZJN'LA!#- OW_."IGQ ML^,6FUV;%!/)M$G3G7F"G(%M^M)6DHPDXN\Q0\P&,!O ]JP[D)G^B@V4K-1V MN!G%:(Z6YCPOE7-LHXC8 )"(&"89H>+O]9YZ<%/6K=@!UC?O-VCA5O';=Q;= M< =PP52"J>3.8X#.!Y='LBUX2T"A@Y@JNF,24T-74?UV\Y7EX ?6%QXTG>$S MEW[!E4TQ@MY3<'$?13*%M9?BG!R $1MON92)9MX' ![,'#X0*?)ER@P;N^ M_XX55K9DB T#^I0LMZ'PFL5J$PY\NH1#3O4-,:GI.+GMK>7L/ .8?F']\L0B Z_./"W=A_QO^D>IFS.2D.HEVQ6F&V50Y MND=U6<@_8!9N+!VAJ'2X/-]5FLD!&FV:KUV8E(=8$+"]^'9$)\X//RP_NW(__V22? M\_"#XK(Y,Q-.;DYFQYO:P-F:PYF)^,$E1: OKSEA!1([*[%+'U,)IA+LTG]8 M8\)KE_Y4TGA-P"Y][#'%+GV,H ^%H-BE?[5K PHKV,0D" ,S31L\&B*A3X$N MK:HZQ&)=D+'T^*FE1UST\8$LSP'%Y@'!EGQZK4^SB%K;D%A/YSQ]-^&(0%U=\DKL(*U5]4(7+.F M6^*NIG54A\U,L(J!W6?8G7Z_0DU+# BX/D7=ARJZ-NN(AIH3Q]9[WK,8L[5Z MU;8LR%*TD*HZ&]M5)NR(1B4>DTPD<:**/W:F8VZ G>EW+.[\,3=HUE1R2V16:6?FQK Q583FB$8%'6DFDJ1Q-4?,1W NQ^<5PL[# M1_0YQTR?EY,L1XNIW%K*BMT8R4(^ J2P6#S"T!>0PKX6K_BZZN?7.O,=1FY@ M9,?(_EG[HYX/")_&E"#YW3=@TW-D5D!M(^ /XLJ6UN#IURQL3,!^8QPKV M "C P_]S>_)LB:9E2((E3N ?6&UR^$%H9 - 3Y\<=]P1%!M>"K?Q&L:T>$OD MIE-1.)73;96ERIR+EU[D]BI5X0I*)YF)S^!I86/19#J22A_+_YB#8 Z"(T_N MPPIP'S&1"R;QD,"-XBQB+XG@:C$O0IX8K\^8(T[PP*6 ? 5H2_UP%8K=)Q[X0'S MV+*4'?;)0;???-Y6ATFC4)(=R .2L&=9BJ0B5.H]6R#6Y+%R\YB1Z#$&)[\G MY2,VVFIM8[%AJMTNG] ;KM5S"ZO"W2@?JZD\4UKS7)XL;&6S[^:==:H,E(^$ M9X!(,[%(+!7#!@C,0"[!0#Z2R_#%&9@N\,XJA&H)4,A6)O9MN@HGT*Q+IC16\3Y9R]FLB31NQ MZHI1V4HWVBE1PX%6RG?*,TBD,)8L2472)VK[?1HU-I 2!%T5"8O?H/K&9Y04 M[N:@6)B_EC/[OK@7O%"*QMHI1NB'5$P_@-"/I)3Z5E.P*6D*-JA9!'A5HU[Y M%]Q8[N%%X,_<6 Y[]3 ./Y@N=[[[_!1:3@65&T-0BNK3J U^X4U3M+!LB&7# MSZ'L/+0]M07/5Y]V39&%5%D?6[RDP2K!06F?O&[4ER+ ^E3W6L MTK+"))6,7=0Y';UBJ.-HT' 4"Z=8.,5JZLW45$DS)C]"5%N?(C75S+@ECUQK ML#MPPZ/5$PHI$W]NO6SI:IH47PH=66^_3#?EV2CNU:UBR%_T4,8TCVG^\RFD M_[8@M5Q@1PL;J(53U_M(T@!263\.;^,U%GI_V=7L@",^B)AGW[P@PJBE@[W' MDL>H1)%[75D4"<1_"$LGLKJ&RHWPEC@A_!9;0(4&?-5"ZK1YQEV_#<^/4O5$ M6O_\+_@G^)Z@B+P!L7[^G\,KB<%%?&(FR7]=!)%]R/NGHN,!T>X '4N$=HW^ M_7_AS>_),"KHBF[\"/*O0Z>:BY!:?M"(+F=B=&R(O!SEIV#A'[SB\*[IGS*5 M"E5>^K'+X89P(!)0IB7V/T)H'(%2Y3?1$,!\+A!5Q*GUP_M6\!$BX. SW7O@ M?ABB M[5M0CG/I@5W8JE+W_0U%/R0I?R"M=C^ROX+T_,#?CN_T^GGGV%=-XD M\&? ),&#KGC3.A[(_8^^_>Q K@/%[BP4(Q!%^!C)?P0K#Z%Z"ESG@4%X[V-= MF;R-J2=8PG_'!WLXF@:(-[HG-[U"U==_521-_ $P6C3@3T=_]J"-& Z,)*RU MV!Q1;W1*V7;$R4>U>H=K@^NL MU]KU2BG'=KAX#MH/QE =;IUSUP#3BVU2:X6@Z *L=EN6J&:Q$Q*D) %6$')T_\KMDJ.+]P M%B7CT,=5-V:\)FW13/MG&OR2X4W)K$\;AFA"@S?ZR#;!^4PS)YJ"(2WA1ZPV M804!/"_0Y-T 7Q8DT>R +68479!]56,\&J:JY4'V.5[FW 9'J_VI5EEE?*5) MTFQQPEKOC!O!8=0W BS++\'>+<,6+\#6WT>);S^IIW .UM_\BV[W-N3*6[[' M(KA,Y*?PO9C@_M&O;5L%8''AL'!DW/ZFB>"JT7 .2+9 586NC;-2]XVDYTN3 MG$]9K^C&]?X]IAUZN(Q:%4ME9+K T4-WQLR[HJV+^+ M?J/^\P_A\"9LNJ@;2WB;0#64- (.-Z%>""\1'N19-$S111-+X#8)<"Q[R@OP MG@TX9FGH$UNPO(L&IUQ+ EAVJAN$[;5RA#,NY[JE:V";X(,)."C@;:(&1&[( MRF0X^W()B,_G@/"[:!NB*@'JA[.#3U31,@"BSMP(H4A3\%? _C2P5 0MS(N& MCDPAZ+>).!4UM#I:#,#AB>B &84] "CF/^9^[Q)J&@4&@.&Z2LP4W@03 PR> M :U ,%P $24"MP"T9GV)C#%H,EWS"D/"'9A@O^!$P8XV48-W"<"79_"0_ARO MASX1V:,M@;U(2S@_V@N _GYWN@I^1ZJ[I(%SV6H@&?@G"QZ$.EA?'#O0L-#ZL5<&98""4, M7OPBG/%%@"3)"SZ;0WPG;/F;[BQ_YL[RMV,NEO]5&WX(+LG:4[?'_,''SEQ7 M%""6.AJ8S0P],T]$=XFX4.AB >=0(*,"2F!4""8*%H S B:AF9Y;PV,"HB(! M[@&W>ANR[YIB?;H3IG>$7I6ZM+:UU$V7S[ZPX^IPU*Y([#4(77@X0@<@1,[K MO4:"J?NLU+TTQ"7O@1X"^@V2AL0!_9?@5(0C6?. \"!+6.YY,7CCP2L,21K\ M75R&1$#H=P6_(0\!8@^.[+DMVG]A-18-G&3IHT8,0"$"S@0P^D!R1% M6#KX309R@VC V-T]7@1RD*TB,X8G30#<>7, P:,6GFAS 1 5@#;XU6/F_B; M_C6S0Y.&^2,,ISBQN,\4(\38MA!K N,(R)W@S)8> 0(18&M0U(&BC&U 5J<[ M8#T12:^PU*HUM94=OXN<& 0C%34@20%^.@;;!MP$RK,1=)(I+QD$D(7L0)X% MUP[. FW4"I"KT(TH.K3<@]_ CGAM)L$_(D:M[7]%_NB]"&<8:/ F "_DR*:I M@YGAN>!Z'F+M-OI$L$!@ S $]VHK (#@. J82P*781!3 \C*UB'H;B2P>357 M7S>(?4-RBVU3.ED>4F-2=0JQ:2\333O\[!H,??)P#/W-:OB8LY^9LP?"%N1B MT@3J?1#D47 CB]ZMG[K^V]!YQ^ G M(B#T.MBRX1OPS)8HB&!;@.%Y!+^C<[8[%&J-V%8E^?%";,L=+3MAKT+GXL/1 M>0!,P.D#:%Z(2+X .6=V_4:!9 +1.W*H3DUT)&N%[/E!B)L)%"E$BM_9=O]3R2@%IM@';I1VUA_3CZ+)@I==LHB*#EY\D_C>T9> _F)T\I\?1%7D M898$DL>@@_M@)'CL3TX+'OYV-UAZ+]J!/Z$<"L@=4+8DE&0W%N+W) M"T@T4M#E'6J1$S&$M3YGN@QN?-0>,V 24:4Y= M*.0#2IW"9+?@"P+@YV"+_!-Q@E*1B&I TIZ ;V@BNFA>>R5P'@#[P'P7DGR1 M&>#MK^VO%4X/WAK7E';F L_4"9<^WF($":.F&: A8%T*0 L_72]\H7 _LJ8[ M&GRB>(!PT!P*\6?,:[)A+RW/+!F +FH"]((>,D*0#,%6@;0?,@L#]-N+M7!9 M&\C 8 < 5IJN>F_41/)5$%_6=2"HH_IT"K\00BSPK+H'HN\>:A,;/9A>5J*G M@/G;0]O8KQ;>XA.1\VRAD$- ()+A";Y.P^&C9JB -B'8!MIJB]?J+9 'GR MNI'S]: 3+S7 97U2T@!R 83*B=Y_7P?)UGC#&(D+8@/&V$*#,_SY6 M?;SW@R0IY(D?U-:$,,W[$J MGV[XT,7M6*+O4PB] #M:CBT%&O]; MBNG"GJP7BCJTY$+'X0="K9=/)V;'81JGQUTO3&/Z<.)M 'H)FR3/[(+>P14) M(QH)L6\7TJ&2:<.$)X/^FV!7VJ>-@F= D;9( MID'F+^@@-9' $/)@3HB9KD]V5CKX,"/92(EX_DR/\M>B,1?Y-UP)1[\_6-!Q M$@<=XZ#C7P8= R3WGPY/ 'XW&C!X/GXC)I!^>XUWGZC[X%UA!ZF/"9AVJOO8T^P&+,H,K#0[V4 -<"]7TO> 7Z/?>A)7 K0#^! M7-$D@":^5&P86[*?.@*9'RQG$ #^B> V K3- 1%;!H>)@LG0[Y"->GS66WYR MO+XS%S41L+Z=&07\8(#O@*5#@E'X4B\O M&C4,&!!BN0T%B'.L-N&"[->W1*5^N2@5FIW$E!,[UK0XM"?5X?HJT1>SAQ-^ M$%"]2-$ K%@(.B,CV<-WG[0-B31PVT$BA.&0,S^ZSN!1Q3%X<[[\@Z05]-<] MV=JF"%V(.W^?Y_GTE"O/L0>(71+FA(%4I[%H.:*H$0=PA;IZ5-I$/0C^**+_ MC#9LCJ[DV4FFJSH5QDW;!6U9:+Z^D[]/#/CU"S@%A]O=)OH/ N,[[.9(>S8- M:]2"$& WDHE^J_(;2;75JJB.1:#->AQF]":'R;@==^E]&V;T[@:&QP!^[%FG M4)6IN:Y,2BI@RFO/K>RO1*HR/TKT8X[,]X9-A_P[^0I^2)_-_ !$3ZURIV"QN$IPM]:SLLZ.S MW=)-$)$B#P!V@)%^.*HAJKSG\(>N_X B$>A"UDL=A2L@C[DF.N"_2V3I@O9( MTS..+PW($2+HI8:.?@5&3%NZ]X7PG"J0Z9 98V\_7(I@:LN%]M>P0T$"L+*% M.;+)HI (SYP<; $L"X_EN_3 %L90\'PB2MI!' ,RX7I?]P_W>MU(.+9C[Z=$ M:T^]L%!XS._2/QXTO: ,)+/L+3#(5>D%!;LFBJ0%7$T7=L@(_^3'C49>!8V" MG]"+<,AK(V#!\(J[71N2*1\O/0XBTU%H&K06H9 ',.-2AU*X%(J]159O8N*M M'MKF+GS-*])CK?UX)T:'BW<.+=NCNC M&M"@+113LK-^'T+*G\7WEL#M?I?6IV"$#O@:1/P8?$/7 EN]"'@C\E*]L65 M(#L[F_HH2$/" 0= M#+F2#-./=D<<^L1K'XCDX([TPW0>E5_ >)\PR- 7^*5D07,'E/A1_*0!A'/O MTH""P$/=,( L4 \"#>_M;42(@.""0"=;M3V!82>*(.P]B+7",K"/W*LK.0._M6IIX3E-$99!)(A)3@FJE@13E0!\@X(_A6+V J08N M7O"2;"'10IN!YZ:"1B1+5&$2CQ$X*%%JC&<'#0JD^JQ>\V8-W,I D'0#)[YY M%"BXVV)@WWVU S"$?W/Y)Z)S>E>&%VT>_BS07O8R"&*WP=E#P)+$D/_(BZ,, M<#E<\A&)%3!,%(6\V@:2I9Z(W)N0!:#T'B?^5" DDM8B0:"IO@02D\>)]P(1 M^*L%V220K6&4IBPJ+A3#-!0[ZKGWX3[1GO:2SJFK=B1%0=\:PXT%+\3)K;\" M##P*/X%X&UP0?.M1Y*R7>;%W4*/;Y1UO#L.+$],.0L' "RB@\++[>9E?F^P0 M*GI!"R?B?0'\-!$)2B@:PM9VT27@[/OG5(/QS]#N_4H:YH-H8T5<0\D-P=T& MA(I"ZSS!YN1EF^!@?)#YYB_S1.0]>ME] C!%%'=2T!M88X@FE+$\1(/^ M(J>CP#VX*% J,?>P0.>:(QOF#""7A?0VL%Z"_)>WOC37H4(W!=_P)$D/ 0D; M2BBVXD?N /2SO%JL>X'^-*3N$WL$F.('S;*^'B#Z0I.GZ4B'CFPIW W+3YKT M60Z,;O)2#5% SR\K[=PG-.;\Y-QA)W\=YO"+.).NMJ<#(!5F//0V3T8TY!=% M4>TMGFMRLJ O,W,JJL?5V>D0$CLT+[IAGW"\B-D]K_6T*DWW^6V0[@ '[LDQ MH/7(+H >T-5>.T"6_UU;B\AJZ$=_0 M:!++4TX/^(#Z"03A1"0_/P'P1>';5N:AX61HV.CP4[U#@M:]4H*0S0S+WHO][>P@%24,O+?(. M@S$0##8JL1%Z-78!UMX^O*0^RUMWIW ^$:5?K^IYA4WTB.V7/UH1/GWAJ_!] MX;Z)R'\Z@\6]5...$-,#/W+:0\/9SNQH>NF2 M4*Q>>J64]F+SF%>0;F?.15\CWV<6O@I@.KEM([Q!9>^@!_=@BHH7G>AM9/\& MCP_<@F\')QVZWQ\M/(G!X4DX/.D"X4GT;X4GQ=Y>XUVQZQ8!,&W 0\4,?#>A MZ Y42C1G/2CR5M(@T0&X0=>P^2K/+3VD6JMI9[GFDL^UYJ+&5>1BZBH%"A8/ M)SVV+2"E1[TL%B$$:2PVGE%L1$ FCH&\MY:$Y0O_K9T94*!$QL==DM$;0@ T M5K^7P'3X%1/M1O?K"*!E#@(:,@IXCZ)M8:ZC^C2>/W@)R!P.4/6)J'AK'UU."59\TK7@!(?FV1W, M3NW.R\I'@(+B6M@D'!+L=&,J2E"X@QEU9B!\BZ%P#N1'-B5D\$.EO?QXAH.K M"&1Y*5Q1 OXU:,7D?>9+I>P6=5"[;,OG$DI/;+^WLD*J.-FWK M*FQ4?C@VZD,U$/@Q![V<<7;'#((872]X /P1:)/B)%2##ZD^R$#M(/7#?*,X MW\XCB6[;,Z&@F*90_;>@TINONA\DJSX1K*($VWFE]J&HIG!LDI?3BNSL8 [ M"9")%ZI=^AA !R'7=_,??R]^&1>T-/$=,"<8_ !435CM%&E?G0E8'G' M4P-XO'$PKV2BORN4*+<_'=A/L'_P\02%V C6&SOG=]N"BP5S[% C5$K+?U#@ MP@J*&_(, R+,R=XOX>>^\.:GLG:"BON00@]TD=0M(H7%.-/&:[_XX$68'O$2ZB%)N0(FB\XN^>( M>X7>*O1K+=\\A/DJ?]\'K'FPZCN7$<#_#239BR*O83V&;JE=MCR29: ;!E"L MB$P,?CTG/U/[U1T?(](K.)U\M\,)WOH8?A.!':WR1-P-@VSMN<_.SN9CVMZJ M%(0H^L%S!^GX2^031W&7,#D5 4?T^\IZ[H@PAFP]$M2# @_7)!)*;O6\DGX^ M?1#.M2\LX)FU5,GR&<&>Q\/(T) +!L4."#LS(PP]T_Q\Z.\BBG\.)@\>HG\@ MLDAP@W-IN0QZ;L)J-8I7>S#(5O$3]29>93(OG\]+X0/RQ,WD0J\$*E"N<^ \ MBNX'>B,%Y96"S2UIZ=EPJ*)<4"I&3/!+;0Y**Y<\^B32JV >NE"^![*JH1CPJ;>_7E0N # J(YB@475(] M-0']%\RTLG4XRC>8(3'(W!NY7L\+W;=CF \',VR]::O[K!6_') GNYMB,.D^ MB,?TQ!XPJ>V)?DC&\62RJ1_B&<0)0C;J>Y1==!Y?(H/Q=/N0V /?H9\5 2,\ MQ_M835^POK8,Q$Y0:T&(<;#,PIO!+-*V+)'CC$J2;3%#E\@!90ROXV#0'D[^ M"<$42SIG9\)'T#W0+7R5.!*HLUXBRV%+ E_H@38R0+#G+NYTG;:&OV[2?U1D$G"+5+ X8^ P]:MA/2(8X =" MP0!1^%(+XLV:9T#3A3=52S)EK^(D_&GWH,ALC,K3@K[B1-K8;)QTI96FG6/G M_NEQUXN.7#[<\W, _4#40ZD^,!L6OT5G]M$(87 CD^,>V(&Y]:A'SHD"GM", M*5G0(+P/G3LRO'M3API:^G5A(@0" &S%$=3[AXX,4X4AXM">ZQ>R] 7:U[9! MWM1A+R:7,.>Z80661"3, RG73QF#SF91GQG\D9]/RT9K0$U'##1V+907A5*CA)XE#X=MM1JXDRW)"2Q>\6H)VLOJ'-I M2) =ZV@T(@_ ^?P"I/ C6#PGJ.Q_^,V#:JF\N2L*&LZDTD^%",)BO; ,H0%Y M.BQ&B/)C0EZY7;;672%I*!D@%&H;QM1ID(>PPTWDJSHLOBM9MN?1\2-W+:2A M>0J77T\(@BSOIQ;D1!3T!:L*@W<% C'K=QJ34*L8&$H[$[VN"JC.)IT@X;.+ MZA)4P9S'A9-1W*$76:Q#_P2:&OR.BM2W'5%<[OI3E++M76<*?F:(H52E'L!) MH*_5>+]20X;7Y(B7>PG4;UBD%Z5MPA<4J:83%,7@^_/V<( :I*';L[G?K,QS ML?C(UP"*K.Z5BT+&N3TD:Z(%,3-"5"K9)Z*-2B>@1?T%T=F\S$ /?OZ5[+," M?QO6 4SRN5)V!Q33E^# ]:%R*;OUI-T ME;GO[U$#O$9!2<"JEQ3LP1#P*EOSH^="ME3-BT?4$<-%S8EV146]\)1PO R8 MRY<$=-N"?F0"O/036.,&/9>^3?2P[LK>(]S9AQ_ C06%?@ _1+*9#8W HE>4 M9R+"3 8CM%$_*6,"Q"7H^ ?_[LK>@)]A$7[7;\7CQ6# L6O8,-%/]GY5(&@O M>OJY*_#H4*#QH@%4\ +[IL_IJTB?NY%C\J]5[[3UJ>'IS]IGE&'.76D-^RDW.Y)J[5LE:?ZP/GV M$S6S.5'\?:?7.',=W;P7#V>(?N8/)- /(L,2T.IHTBTILU'"$>7DD%'6 V7 M&'3S?(@0?%37Q/N]?2%-RTDVSE6Z]0&3EZ-5LBI/V?#MQW[#,'>T2D,TX = MCJ%V.!"E0TC SZG5O!MUXURVV!8$.M.M.!:TT3%/B2,<^%?D+B^XX^CW>\%E MNM%L"O)+5>:SSUVA/G!&>G5VO0M6I4*T'37=5K<^VPY$1THPPP+[[2<5?TH= M7W"X/N1]W3%BZ7=[RV0IWUA.8LMZETZ)M;R9?7:65>=ZMYS(5+9]3ES,N>0D M\]*5)H-$?PI]$/03=>*6H1JM6_PNRMCTZZ> I_V=QY^^S>/_VI?QF1[_CIYR M&:9)N:2XE51UG'8JYGQVA<>_J+SDAE:ENI7Y,KL1IZ4X-X$U.^[Y\?\=1'B( MQ[]:BFF3-:O;%R20U$;F\7&<&]0676\F-S!4?_P:?V:;K RG/J6HS5]1* M&7EJP0M./,5N]/C_T1W?]^/OEN?1N9 5XMVDN[#B%%MJ=;M7).-1+=K6\NFE MW"VT6Y5E?45KO;)WRQ]\_-LP'OZPYC$,/ O,*%YK-U08]Z!/##+V:)Y;7"?J M7'7_3D3VSG48%@+M%%Z0%THVV:>_!/73]@W= A=)4&X$>JX<& 8&@^-#!@I+ MW_^"G!K(3X!\;-"Q%O$K3)B^N<FO=J@-$GI>,'@R."_6K?#\8."7&K5C22.2Y=HZNC<6M):7MJT2EK1XN M+""_SPY6]_#%L6F7LDI/=075YND^M9^( LLV @*&8NC,EB9^45'H2 7&YO!J!84"60]RU'>)4'[^&N1NNY(Z?L*4ER.TJQT$$Z-X:?(JK7%?XO8[ MK&._D?R$]W]VM53!KQILWZ? &514NQKZZ>%K@H)ZO?C"-H"("*L$92LI#U::T MT >2MK1A>:3ZZX_ ;%,8U1' 8L);O)_@&F1UP>TN1;1G\*39AN 7Z5+$4VOL M)CSE9@B"JDW35KVR"QY*GJ*!'7*BP@V(;%ZA^QP\\#"IQ?UQQDL[\&52J> : M_3N+HD].71KZP^\TJ$#\*IUDT@&_^LBS4(&I.P1%1(FF%_N.B,8DOMM:$#+^ MCU<0#4DK,"#GC8K D#I0\*%_*>:^!MK>3.+G3>Z=0^"B0KWA0R\&JCYQ3N)Y MA'N@C^X!U1F3P$*\\6' _R?(8PC-L;^^#TUX<(60+HT$5Z"'BBT>\'(4'X]JU -%SY#"Z=^2GU,(P_?\FPOQ<\"V9T#+#O+6 M+1CAXR4P[;.O=W4)]Y4#[^?9/2X@Z.<-[;/)K? C)$V#U*I=S?C#BH,0XZ=> MS).GFP;7$R2?^\S4(S,P(FB($DY/VKV@AU\&P-QO!>:/6W-$!S Q#,9M>D%] MX#"HC,^!)(\"?2%_W2C[ON@HC0 M]Y4G0V4I43Q8N,'1(<>(O$KB\OD1"G(/[>CPK\=<-D*,#5T&O W-%K3NWLLM M<'U>,E%ZWF&_I=O$P@-L9G\K M^5QU=:)\\.EQUPN0-QY.$X8]T &F[*^%.+P7K!*?-3&=>+8U/VJ')JFD9_3* ML^T,X%0FP&.";7?W?XY2L0CQ;5\WOZ29 '?1O7B#HH2734)4=, 0S!]$R%J$ MXO'"?X4\\.11ZPAE\( MWU/A@M5M+]^ #W=/\LC2*?F=>M%C(ZF>!*)I]K[Q'G@! 7)JWBOG1XBA,'#PJ"'3<2@=&W['JY3B MZZL3OQH@LLK",CG!!B;2! G?K^VP$(9OA]\)X>X0IYIVW(]\!"B7M6?@>Z@ M_TFR17^)DH"F'V.'MRNN4%&(#:+F#1?AWUH$H 5 'MQ>HB*,DM<[!+$)6/,9U2F;ND%4 MY5*!]B[WN+L>0#B4"[Y/D('Z]A*)4?N-^WH2=&)_AQ;$?P["3M]F,RB9$!P( M@!7\CZ M6>GG5TS>5IDN>"XB.,=[Z_W&C-=7Y4Y+?ZCI[:Y&#G0(^*4JH4BBA5..80W* MUY=[D @Y.>BS/9R) /OY[BXL/:AY"=M[M[W$[O1 M V=H4/'2/+V1C[[MET;8#V(!CSC1*!XC^>F$)$?C='(\BH^GY"A-,L)H.DDE M!#XY3I.Q\3?O"?"^T1%& S8^49V!37/U>13QBW8@6N>0LW1O72Y5ARX8CCU:O#"IBO]54 ME^2J+>0;E";'5T(3C$R\'CD:L5UP'ZLFV1?&0V&\<)I="I]AVNG.US.T=B,RK%@9'#V*Y6)AP7( HVP M#W2478#?D3C@L-)P-:8K-E71!B#CN_3=YR23G\V@1PO.59_ZZR/I^OCBZX;2+$OUM$:ZE)[I MT/RVW&M=2@Z\D>W80HI%H PBQ2V*:G8L3?%'\$-XKU"<\!5"J%<(GCX2:+Y( M4^-M2P\^\/0T],F!-A?VPGICCI5ERP@VYB](>2>W)KOW%-IZ!%[Q >>=WY\E M"28)02%,*30X-D=#A%8 L^#WJ& ![/+T79CO\4N7T;P(M' SEQP#M M;4N\AO9)/I&)O?YYK'"B[WT<2T+6@__^VYI\X KFDB5&P00"U&LA]()3/Z72 M^%[N\5YH?"WW=RW,4P)?R_U="^9B]WDOF%SN\EHPN=SKO>!'_PZO!7.QN[P6 MS,7N\UXPN5SR6OYM&= 2FW=\$B: K\,/_^Y;^ M]H?@B:6>J"! 9&>N7&X(9! F IOR!<&WR_4X%3YS&I[O&>$'*$"*.ZA1XQG5 M8U0D9%W?01&3TWV1TXE,GX_?_KL.E9.$$_]3PJ$^&>% I\T1F#".8!PYQ!'Z MK[GGC<'QQX>O>@E2WU$U$=TV>6UB_O,H%',70@K]IW24>F)NCC=G)*,:0"-4 M>0ACSZ7$%*2"?AZ,^1?&%,QG,)_!?.:Z?.9/I+M=^LJ/_Q$$49Q.;XHPK&CH MZ-J(_X]7E_\A5_%3T(\9RME?PWJ^0CQH'+@^\*QNZ!K&(#?\+OPU(VV MWT[GJ*PLH"UF*TTU)]K?DBLF(T_=PJ);*[. MA)OU(?&I(7?VR_$,L[5F?GO M.4:^-E@T2XM%MDNGC 0YJ$UGT_+L$N^M35?B-\GJ\=>@GNN\M^WR@,J,9;(J1Z-4@]&U=6U PY1'F!U) MIT[4ZW]8_W;#ZZOLU8;1%5]MKXKP%WWF?CXKUO6DAJ]UY%\$H=TQ [R!MNY3 MG4]T.VKSV6![F.L_]\=RFI,V*R&;'KGE;;MY"2&"Y><5.I?8KLG5=%.,%SJ" M0HW940(J[>E(C#YN.X<9PA>CCENHXW]+'M>1$N*\E6KU*4LB"[GTJ)I+5 O& M $ ):N7,J5YOF'8>\S$-XI6^,!>X@8;]/A,PAJOFI)/*C+ALHZGGUW7*MF,7 M>2.?X[/L=J"V1T I*17C4ZG+)P0'D#E0M).1= K3.7XC;Z!"_RUY7.>-;#AM M*>J,JAS9CR^UO.N,E441OI%0DTXFWC5=/[XWO,*#[Q!MUP27:6+SVV>VR6,C MY*/IX(@X?=KTN69NO&H4BW-E1/)CD36W\7B.7E[$6\Y5MN/-=,M(O.GD^-W]I]F9U2%50K0?X_WG\XVU!@GTKIY) _)MH(>]X#MOW_D)(N%WN MQAV"Y-;I+/U2?8B@KF% M,O]'%'.E:/>VK"X';6M$JI8R39:WY9'4A/0$E?GXN8/=[\PNUM$M7L%&OTL[ M @[Y2 SPD8ENP\8K]R!C7#*?[N8'ORN1XZ--BRZ@GR\WR0J_,**DVNN4^]%Q MFF+2L),7T,\I.I*F<'[Z]5T!GY,XSJ;)_YHZKB,@C#;-"L.,:J1]#AV_7-8#T;S&.<)'0IEU)F;JIV&<=ZMJRO M9[6)+J^2,ED7Q4EQ/)\!I@ =ZV0D&;M@7/R7YPI?BSC.IJ__FCJN\Z *C>$L MQW4GMES(E!+C0H\;D@ZD'>0^_\6+BG3N?Z.VE0_>>O-U.^JK'.:X'7AG+A(J MO] -L%_8]!LV\\[J*MBF"S=-,?\Q"<.[8D(RB2FX9F+IWS-JZFWZ5TU8!J^9 M4]$P8&MOG1#\CKI@E$7PQ%*7- NUZ0;[1U]$W<%O9;0"4 3D7Y]V_$W7IP5= MG^P0%YFN=F/W!V.M!CQ'28.WX%NR6#;7;<;68X?CE?G$C?=*Q:1T8,FB+T]7 M-=XP1ARUR:GEAK3@LL71M"BEJY7!;KS[X%R2Q@)S =@D(+T0- M$#LCX$_F4A1@GQG%?2(Z>UH$?Q'TF0;H?$^.@*X@M1Y2%O@O>#B%.?I30(.$ M/K9X23/1+<)"%SZA^X1,@(WX9!SQOPU(?29JHL$KB@L^$K7=6$NRP).ZY$T3 MTKQ^N(Z]!.AESJ4E- _$26-4 .6( C"#P8'_&_/='!=S7=VO&,"()!B,_ M/^Z./ $8:TG*X5)S'D)"$ &L)N'#('XC@?\LYZX)I0I"T06$KD^WX[N7>D1V M?=4+3-MM: 8GR6ZVEBZW2L-VWYA!\@1K'71@-YSTI+/5U5BW/5"Z22X7>R8' MSH@^'JFT''4[&=<-F2XZTEQGT6Y_ZY)BIZUG!);.C&UG M%#N>4VW22GFY:KAU8:MUBR6Y=@ M&9JC.:7I8^-\S&S!8 MES:IJBQK?W]_A;'NW1%[1S1]&11UG1,[ A7G6='6+P0"(H* #"+^^K<*T-;6 MMH>E+6T3<6*?7EI"54Z5697Y9$E-=W[]>PJ^(P'8JD(20&)>F2XXR]CF>(IO M9IZR+$Z<3*9I+,PB]55T*0WM9MV:TD4%EY9ZM<&20G- 0;HM0!+ M$-C#.<_NMZ\WU[;V/7XF"HX*O-S=\O,.\*\UNP_#YV/+GT1'16Q1&6I*?F*; M3W.!PW($=27+?R-CY9\<;!\3'A@!"Z]RAB7^WOZQ/U=H=\+&D0MNC?ALTK9S M0U1Q:O_F'%O??N"?^P2?A$=,P9B],Z=P#/PD; 01](>TS>V\]AI5_GIO=D&: M>(S;DYYOW'"3]J3X(T'$?(D>7[#'9";F2_3XDGW$8WV)(%]B.Q9-OL1V+)I\ M 7;L+'!?S)>O[$O^EG=\_ZV4W[+?W[J=VJX97^JSS?APXC%-?K/F:J]V'/]D M@GJL)%=7DB_N)?WIWI08^IC^;LVD@Y[BL0Q<4@:^GPC@1^;OA9OUVF'A ='2 M.Z(=+.K_[LNF_NFV>[\*]KHZ_:F'$2E]^5L^;"__1XY#Q/)2NYR;@-=XILRI MEX"?#<0V8HN\14H^/&^(&!DND7(?'#S>"V37-6^D/Y)#O[MZ!.K8V&KCB83Z MQ4R2^C8V'RJM18HI,&0>*?A-IXA?_Z:QJR#5Q0I]]PI]&US.*"GTNU(IKJ'0 M*#^:L62%T%#N">$57>HFB1Y4:/+7O]@#2IYKKO3M?.RA;BHP\]8(VA(\@+]Y MU8%S "Z(YDS!"AV8%F]P9I@U#[.5= VB)'P'CSJR9NLNP'G>NO*\/ZMT/3<# M:F)%"]N#G#!+,[VQ:"@JVT2YL=YP"^6FJ7;=H.<;]I#%KM+S+=;/[ZZ?7]"# M*TKZ>3VOX2W]7//HD^&X QW-EUUKR7"SIV(=MLSQW08\:%0J8!> +)=/9>SI ^7K-_[DQV;],4[1.FR].? MAKA(=CK*8CX:B/23PG89*F@(0#Q@R7/&*U;I6*5?\51NO"-X \9_%R8\O6H32T"\'XG2?X"(> M,NRC)M9D%$]K-,@-)>90JG,*7$2?JR,ZN11<94$/,YGZ?,&8)>H4N(@V[>=0 MM[5V&=G3BRD\.37(#G4*7*3OM8V4Y#OA ,18$+$,?#\1B+$@OF[;O5\%^RE8$!4M6.^] D*TIE.9%W?5 MER#X,9\O:.*4ZKB>/ :(>$\BX;9ATZNWB3FO[QGB<_/W0._ B'RH=;N186\G M;("S]*:$=.DAZB2[\D#=U$:?;]OXZL1*IGZRYHPB5KW&JDQ54*Z3W-1;M;S> M&H78$]A#,I.."S!B:Q&C3WPJ1_'RUH*PQIFZ/"=19L&,:-);5J;R4OHZ:V%P M++E)*GR263+.*LLX5#M5[&R!+TR*A.L<^1LI7Y0DM697)5-E>85)66 M[-D#:K1>#D>=$ L#?TBFK@B[%2O^]U7\'P>&<6G%SS9&$L8H+*74/&O82Q85 ML97^?"W6AQ4?;19FO-&1>XP\R6 >:;0YU*9"D W\ 7N[EN.;'P751HK<7%1)*Z(K39"4=VM"\MCM(VH6-7/N5,[Q:WLZ6UH565$F0T,1L,5 MN==8TREFTT-G7^A.63W4[: ]7%'$/FY,FJCGVEDJ0/' 'XA,C.,1&YP8Q^.; MN7'G#$YA25=&2F]04EIE8UE M)3B>=Q:.RMFB R:80*;Y1=%^U=3W$(':]KX'\1A51Q6_=ASG"-R)/[^9EX' M]:SGA3TU!W^K(OP#."+4GK:_ZJ2<\$^R75P>LZMU0R%+Q567'4\(1:/8C.^? MI!Y0XAC^_9_8FL36Y,<>TGRY-;DXJMD5K4D/K?)8VB[E:2?%+T2>)%OHM .L M";Q&2SZD\>,#F#]-J?Y9!N/G!G8W1SK\HF3J6R_S9Q[?G 9X')@&UFQ0&YW) M8T0WI_1R(Y>DV&R0!HUGKWA_%:OX?:IXC-EZ9>_FHRH^;)FZKMM3-%\B"@Q" M;.A<'D(_!MUUDF_>&&TQ7".(&J%EBPH1HE((H)":>CX4(T_TY#?RMVT!HP8\,P]37,NS@K'J)_[VP7GX6 M4/%93=$/:.D^179:B09:V>1,DZV@SJ#WA*\VC"<7ITV71SJE)?7K7P+#'H"- M/-)*GZS7I@E^0!.<[;76HY4TFA&TS#.8AZF2EVE>CR;5U+BC$(JH*CULS#:6 MM4%I6NK\^A=/9E^G"7A] C+0_P><]0,0-,L0>0B+HWJ/B?Y,-,6$"_\3<9&" MUPZ0A!#BQQ*U+?U@DPRE: MB\/67+W+ RIJ^C$!IXX*5&UWM Z5T']PP@6OLT4MH4^GL,LI7,YCHOC::'WZ M347S@Z0UFBR+:MVDQ>#X7!?[XMSJ3X'2XD3JM(#Z4G=,2_PQ<4NTVOZ>\157 MG.H 7EH)&3#2")V+%U"V4,=D,%XV_7^Z,[ :$4+' ]:;"5XV>6=A 0[S\#&: M #Q&&U9=[_]FP8%WK67+?DSD.!\05P.;@&QM)P#(]7"P*P!A@ UUP4A[QMD/ M"Q5'>*M K5_%F-(?TVWPYF(PN-)#/<(. "Q+[/#^=K# M,>-5D3-AV#%[01("/O4:0&:O(BC@R6W4M'-[DNA+=++_=P#"MCOX?0'=O;>J M$)4$]T,A240"C#=N"E[\FU-=SK.V*,&91SRYC:U^[V(H2(=$ZC&3^2OQ_">D MQA$I(7SQ'L$.X(F#7QT"%(>?O0$T%W+%UHW?./9(7HDI+SQ/XID%_^42,Q/N M%__3;^5/JM2;E^E]'Q,:;&%YW0=WMG82R;U'*@^I>D2N!:#.%N$/>TP%D[XV M['=7]$^_VQPPY7V3TZQ@/[+.H>T777)H;PHH2SOZ:%@UIQW!65$W1]M/W0': M?LB.A,^/Q#Y#8M#]2X6@+2W1XFT=>@<8'G@'@3\!'$ '.&# ;_6]'*#GW,6= MU?#,!X6:ZJNI9=IL'EA^8,8-R/0F4,_G@G=J.@5$Y:#3F5?F]A[ M7Z)MZ@O9LG332S1U6PP!B_1$0+E$75[(\"=_0[G$T?\$'_O_P/[S3W 8<9_\ M1O?Y/36]=@YK%88H4G,5ELHW6)YTOXK?@M3)26XV(Z*+>J['K;'BH,"[D-_H MN_C]CN2[P41UF#78DA2\,=U4,6339:J=6R3?[1'G, 'O55$%\^.V(N [&H'H M^L&)R/$S$!@!Q\,/=?1$E=,<#CP!2_E6#/QW"AZ;H!P)&,7MITG_6 -&-F"% M$^"-@+ +2) (1H XZ9W2;@ _@!68BBJQ*5=4R'%:78W44=K$.U\O[MLOSXA> M^)CYW&%+A61S1B^[CE#(Z)UZ*W-PGHY_Z%!J8EZ#?P/FDXS&BI>. _F8SK\56D\^O?XZNSOQX3E1V3>!ZX M4U8@(1[@GQJ$W" >-C@O<$BUW=;UF& T$+X*.R:#:!C&N@E7MF<@9I/*:OJD_3:J<^SL$$'.$([ M*X/CFTS%HSH*)[8E!D7;&SO>7V0'JUY]E7+/;KF0698O=C^#C0<;9BXKI-IUC$7H7JTB60[2 M*B*V>W,V9IV6ITK9C$*3LKY@QQMJ)K'4V9W49^/AH?=#8!G\O05^#9ECR<"G M!C8#:/\[V6W- .F!9=ZTI;Y=T!B&:W94RZ'&G#GZ,,,O9/RW(WWC#,D8D!7: M,EV#5'WQO,5"UWHVB'/#W]>\0GIIJ:,6BC \368,JIAKGV7[N4/Y+6][/J4H M31@"'G)@%OEMWZ^*!FEZ^IP^3_&9,35 4:2<:JW']5*RC@*-!>LX9K+/"\@[ MWE\2\'? FCZBN]^?F2%MP]\BI4[*I(I+[9H%YAI!L\^#%!0^4,_P6V<[C_^CLLK#P%02QT&WE CO?? M6GV PT<.742TDRZ+>7WFC3@:M\;3Y"@SFG9ZG<^Z=F#KL*S6-&1ER^Q"/W[' MZ9T_E ?$%X6-%]]Q=U:05[(@^L%IR&-EB%BU@3@HHK6G O"%EV:M6WXK1OTY/*;7 MP&D'2MN&!-Y]:87?6MA)OLZK]%A"RK4EC4RKS+I8F8LHT)M_L<<3)0() ZBH MSXP@$ OUV(*Y#E!E 0\/ [;T8U0N_/Q XJMO:V\:, HS*XEFTF-,<8JH0(D$ M6ZFXAR@AJ0\US0Z"L#8@Y$Z2R#U)ZEJ94JXWL6P&+R+3^6)>[QG%SN[8_ZNR M#VY*:N7XGMY@(M--,2;G6JOY$"[Y5 MQD\DN+W49J"&*N2(?\^]C='U(.*U]@^J]B-BX_FT)PB9X:]]ESL,L&%<;YW/ M3:'\A9+OQ#D[QC MFON%&_OVO:,2*0H?3B:HUS_AVWBJ7FG876)-L.T>FNZR ^+:X2AX.[R MI$@V+QXY'K;GN&+;(91N$(:N!5TD[Z*2F!D:F7 M(Z>+<8=K/%EK=#FK=5$@<<@D+;'$\3,SYD2K=.ETFFDY)#>84O)\,(=XS.C+ MD2W%[4\J1DVC>]U2<6552T6L3X&1Q_/,-7.;.5(B:-+85*7.2GLB;/C,HWD2 M;'-6XTI]BG:,7*66K!?8ZL1E4\=O7RV;):.VR!#,DND7D6*GJLM)B-9S-'+: MZRNK2=;KTGFV/<:6R-!*Y24V?3R29<9R<=(H20J'MBHN7NIQ_9X+1AZM:(&, MR ;;\4KHTLT0 [V MJ.,TD^\];7"C)@]FZ-) MP=,D.>].E\.*VSG%][F7;ID(WQ\K^=G:P(WA(-V<2J?XSG2)E33DB@J-](W, M>I%U]*S1.<6CCFR(54G16TII9"P+]#Q53=HG><1E,J717/"HF/5G^WDN0\1S4S/#25&8LB L9S!K2.XH=?L,$?(.,D1\-B3@ M9H_TP6[O7Q_&R2%_$O*>I&C YO P?.NF!Y=?L C)G^^U-:['ST3!48'#Y_MT MT)DY5K4V,[.MHI<>*4-FUDZGE![%*NZ55.U&@N'7%>UR)8.:,:!2*F=8XN_M M'_MSA3P.4^E@VAT?I.MM$T/]1$;.L?7M!T$:H__)0;+C7ME9..8XE_2H;1P6 MK/S=A=N9N"MS!+LRXX]$,N9+]/@2=S&/)E^R?LYYS)>H\26V8]'D2VS'HLF7 MM_ F8[[\$5\^CFMTWCW^$9WFSQKP;]T7^F+-DK]5\_&S9U3;^XC@ (+ 'D[U MF8[5*')J=(%>XJ\<,YY4&/RS"H.AC^DCY)WOK##P0.V(3K&0_+&0W)F,X"S?=1M+_]XA_=L3A-L/ZYA--R V#D M@SN ]".^)5%XRX$$'YVC$?/8>TST%IRJ)G*.)6L0H9X2%K(F6W9P,Y2 J3I^ M-M@N3P603EPZG)I8@.G,5 ]\8-G@$8L />7K@7/>KJ%A+'^1VS4>+A'>HX7Y M/V&.$<>PR9Y;Q$>,/,AO6EW'JC<'G0_CV_EY^(=5-(V 9.!UI^!X@\I3PLXO M6U0;1>5.=V@568.H#J4OS[6\.%%=DBLAC)ETF&5GC9<5RG(6V,=! S]'U&IY MOES.=59!\^YLTQ$=$J8:P6+4F&Y$40!VB8WFF']ZY7J4Z\H MX\FIUMJ88X:AAUC9&6:IX33/'K#C(Q".?UISRAD]/<>*G0VZJ!@(4Q]WZ5:2 M>K?0?Y:N5Q#S.MK@LY0PRC$+,BWE-=60\Z9[*[HB UP@.6DT4)!I(;WLYB>S MK-;Y]6_R\1T9BW\%F%DP_Q_*/;#[50>8>T"W[./%?*JXH2W%#]O\$ -!<>H! M)T[UR?B&0?&KQ#?SV<*H3V=<%!F3.@M$O5GX6\2M42O7R(D*IP^JFDI: MI5'S_6<^UPQ_7Z5@/H=L,C,&-U#=6U'0)1P\A96F&,,M,B/& MFQL5IPQ!JQY/=>M].] -(W(^ $!(&+#9T:6:D,?G>'';X%>N M FZ]^DBU#;YX[\RCP[N7^";/)I*FE_2 P_6Y(@]3I&=OW'3=I5@2>CSIXQ#J M0@W%8\L06X:XH?@-6FY^P#(@TGC.>BK24+Q4WUJ;BIII4- R .>)S%RV.?AW M.]T7@,?[D!#7$-4)GAQ=RWWZD1;QUCUWOR@_XM;+C%),>3$/R,\2A'H*D5+V M[9QO^$Y8.08W+2+=RZT9QZA6I&YNDUFK%)N&_@^>/!*Z>+3I 3QY4C8FSC]WF[A$4 F.JQM_CQ.T5XA]^<7 M\X@>S<'_9*\[X".6%1DI8] MVFT[9P:"K+)>EG]:0"[L&?PDPUH;L6_H(F" MK_H)3M."%+&7234WFEN5)2J.5:T//:$*')VZA6;!;=9%EY)1?GK9J(& MH=VW+W\_0.079!"^[&\C..:+_C:G&07=P3TN]+0DHK&M>949*BMC)$_<_+SA MWF#;F0(7)0#.W[E@+\"YOYSW[ZKD?-Q-]\@5OBMT\>BAN?I-$L7]+H9?#./: M"+HTRJ+5FFXCK7/0KO1JG)8]Q%$>,,?T1AY+YI\R<9\B1Y?L.QC.E:8Z$ BOK6O?&O(G'<0X"W[_:W7_W[H MKH 6V&,F_9WP@4:P ;VH^9?Z>P=_OQ.?A0IZS6K]9#7YK.?SK4GRYZ!WH3+= M#^K=WQ4M"'POA<@5Z%3$,@M!))Z\F')$;&T72P<,G.N(K>X2&0&A=_K#\0XN MGN&\?SKU?&K5%8V@[-EJ3=NFK/&RP:D5K0EFU7=%=27ZB&'6B5R!=&>2%$BYM@(7=8( MP@SRU#57%@^G[DD'E0DO*CT77A17Z_% ML;L5FZDO,5-%W3F5%X[E^51+[:;SJ+Q@-*DG-5R[U0E*7B\*"A!5?RL3^UNQ MOQ7[6]_(D,FK4^Z6+=/-QFK<<6A.J1-EO(FNBT0GK%V[KT.K_DPT16YJB^9= M.%V7-E011@RXG=6*,)# 3S)A%-3:,U:,<]F4U[);+:5$-Y>%2:4PT:82FX%6 M+)F\=W?L)N%7]#RW6T6A;P*0W&&1\NM>W22C MYK5J9I8?=-@L-(91JUD^KFVX2M'RRZ*3NRI"X;:,+VX,!DCA1;]6YW*;2K*&[BG#7K),VTT6$)%GTYTJD.QPS2R"\5QQB, MTR/2:14T"HP\>KO7+LEV"L_,4;FS+!$5DQ:P)'SFT=NKJ$P48@ F(0EWF?&$#/EA!MGA5MQSS1,%.J5*5 MC*4E+M&:4&[WO!9;=-NA%90U\!S*/C..A<.P*Y7W'!2_^);E )SIA*TYEUF6 M?GRM&>U'_^LGI+W^*G^2P-[K 7M?H!>\_!:"AO\&&ZYHPK^.O@XJ^/PH!:QA MR^Q$R&T?JSSD=V*/X;N4N6]M"&^T8^V(;.P1F0N)+*X-4;/ !#A3!#JR,$P9 M(@?H4Q\G(*C1@R[0%U?IO<<*O%*QMQHVK?;0'6)*OC<:BBM!%8H%]]@ G!YW M50,0U_<9EZWO(Q[C:M12,R7+ZU2?L,[OFFIX1?=?YRWW_=1;)GZ=+$E\9@F[ZG8MF@90Q_3V#WI$3RR M.Z)3+"1_+"1W)B/XGU6R^P8T8CD:?9,31'@X_OJ)^19>U[J8=D2,!A%J$_3= MTU""@YTXM_BR228O+H=\G0U[_%":T-0U_M6&/Z,1TAZ.NGJ#SG-90Z^F5:D@ M=H(:^"2&7ZD51JSC]ZWCI[M\_20=OW@3KS_0\7+'Z&NDG;,4AQ)7.5?&:J@C M 1TG8;+MN0;'W^Z 99LJ ?P44U?5[^"O1]8TW46MQ%LW2?=G>:[A74"=ZG$J M9\JB]7KSP/EF83(;CQS2.).;#<4-S^:$$-,B>SU/(M;-[ZN;/ZZ-^N6]@O?I M)DLM)N1F4X:K3S!>B/@*F'$F^5X MW_&X9%?T )4=P_Z3T"&5XPCM3^Q;A.$9+NT&Q: +5RX@/J[U>3W2FU7'LY%1 ML=JTM[$];3/)58>F&R)=I<\!\L5:'FOY>QN<_VPMO[A_\V$M;ZEB/FN5YUDZ M7\]L^%&Y-Z!S4,M])X6X\P.=6R"'Q+';N=CMYB@B-\MZR;/5H?*TMETFF0W-6"):7(>+LEMA0?&'ZR\U7'B5#<>W\F \: MB@[*+YB1Q0W0I=(?]!J3;+EF0D,!W*GTV=/@KX=@.A3B\Y55UT-@"LJP]HK- M>%7D3*@=LQ=O)>!;KU%M]FKR-I[<*O=.G"$/#TO(_M]!I=Q.75^@N>RM*BR, MP7WUE$0D*,3S\4E_=86RB'SB">W =/OG5Y#.B12CYG,7XGG/R$UCD@) M,2;V"': (1'\ZA!%(OSLC6K D"NV;L"NQ]A!.(Q9+7?00.:R>QW'Z)X&M2>4C54^0"0A["HOCH+>4JCJP"ZYR53L%ZZ?ALN6):*8(9#LL> MFEXFARD+CDR^'*DL\H[T)->'C-,O+?.C@=NTI^XI6*^E)94["DZG9DUA M4J_P5?<45%AWG>E1JU0CA3I]LH=5FAP_XTY#A6T8"BW(C313RGA#KXO,T(8" M <".1EI5&EB$Z:S)]+)5I-.J9;ADRV4SQR.+F^4H61Z46:;&6X7QVLB,G\80 M\>]H9(FEZV(NZR05KNKV1V/7U9"6%& #'HYDN:*J*1M-05OCI2+V*@UQ++A@ MY!&/ULUR0Y)6I2E*#G+M5$I_(JL*?.81/77:2;=M4^ZACMLLI]*+L3;I7GJG3\JRZ35)5F;Z MF"GIO&3(F.0VB](I@+IFN\=2N5)%8?)E9#,EL4Q;K5&G)+G-UK*4EP:LXD9* M0W<2T!I6**&1-MB"?E#I]UG^VH::0%W#3$*&6U16YDH"YU2NJL M<@5K%E;%#%KC)\ETKRXO2EV)Q=#CH9/AJ%!GZPT*)3N99E=N<176HU@,.T&G MP6+%5)RTR. ]+.39A&^-VOWI&-HK=/CK@JM]7[)_'QO,]-NS98^O/1.!I!>ER@BPD--U.F) %0H)+A!?H"IFK&>A_K_=?H_?W@K[T+ZS(V$;&) M^"X"_6XLQC\)J>Y'_R^(T?G6*< WP>B,Y>(T+N?WW03>(1=_!D$:[!(1RUXN MAO=BSS=E\-;KFNU@[Z1LZT8]?Z^29VPXIL@*3$65V)0K*N0XK:Y&ZBAMXIU? M%[G3?,X[QC^0=OR>&T_*#B6XMQ7@@\&[=&0$W^4C8U4LY8U2PY[2DSN*/1YV MYPP!NV/BP*!=!9R"B*(N_'6XO\4J<1F5P ]4 F=[K?5H)8UF!"WS#.9AJN1E MFE%3B:G1;V#Y>6U) 4OB5T"^O'J7&LGW?F_#[9=M93I;%G-Y5Z%*',/-.<_"D MI3I MI-7DNVK1]K7*YF]BY [$ VX2Z\X-:QJXF"2*:?Q<>3]+<.,H^4F_OXY MVW=!G(HPMQP,HBQ+M*W!5JRIK50#NP?H!LS>*0/HU7/)2<9>LG2IC^9F$T-L M%DL42\+-/7,,"??/O0;DL8KLF3!7;C1&ML^9+2I:?Q+F#4_2R8ZK#Z6I4A876:;C#'Y\N7FZ#CX4\CM\O M*^-'HLTE=9J;>\:,'I:USF!2&HBI#!1ML#.?A0J,P_=O&KYW1=LQ-7BD_EQW MR@FPU!'"8]]K_/[U*&>O1C%1!DO]D?Y +"Z4X'SOL"('BW2G>Q8ICG*)EFO M:N4Q% *YP-OWGQ/LQ_H4NQ[O5Z_ MQ/)O'QZ_S"+; MB^1'F- -S.825UQ &USB\EXI-_ PV,LA/;&KL$@3TDH)7V M<;F@#_K@8UEMP<)FG) 0P0N 91:%Q#9_7Q/MA!Y864TZ"0&F3Q.<89CZVO^E MZB7^]]IP]>'NP.XV!*"7>CQ>!M* (%1_5,@P*\K$Q7_,Z)FF^O9B%]NBG1>:'"J M9A<*!NE^&5'1-HBATF65'N:,3M,U1DQ?HG[]FW[,O$K4AX0I6D;@7*C>@T_C M(+GU&TL\3,R&*.IU'1"IZIBR)C)@$_%=9/\M\C(:W1#D/F&@'&T.O4$YZPK#K]," MHF@EBQ550Q0_!9,T4?C=%^U6" M]9S)'"RRK]-K0PX"AI,DM%S-DI3]$'75SK\1OIU[_)6B5D=(YP 7\'!<6G)>8B#[EY0".%+XU ;VDJ0Q(Y1MY*YB!7[8 M/)\,^I>/^LFM?8S'\/Q#E1>R'61/FHXJW@ZD]*4O5X$UM1KPR;KB2M0,)00>QB);C]A8#_P04[-O!:-SNXTS,^'I1$OY]H@C=%0;9? M;H'N3(2V.:&[FFA:,]D(RS^ #%L)G^2 "1//?RL\4%(Y]R&A\[QC6H^)DJC! M]T*.V#/9"C\/GYF03!'(O@F^ L]/H0?@J)PD)@Q=UNSP=3#9]7D*V^?#MB(F MC,V"-X@)("P.6.>+Y<-O7EGZH0)#;%L?#S;$K=T*FT]@" JK:0Y<#I0K[FB^ M?T\X"PP*60 V#069FB*<.E@E\*7\P[9_MA.:6(?L^BO+3<.'@1?Z7,D>)T03/-9* '#=4<- (J!T0O(M[?2 MFZ(#;Q/K AQC/[4N\;?ZW)7FGP2@H@\+#!@*N1MRSP?UA:<"7PSB>Y0("-V4 MY^F^@M\K2,6!L#8Z0"3K8V2JMQE,H8CC2!?@B:=,5^BQI?8CD63+[$=BR9?@AZB,5\B JO\AG?\$Z 3S]OO M* "?O0,0;X>:FOHT:BKQF/YYJ*FQOD1-7_Z$ D=2\%GL8?RS6H2A0='$W6C1 M!;%'[\W4_I&0W)F,X!**\\L]'31$\9G6A.F#BCA*Z_S!, MBQ@9_O:#X;?A[E7J.:UZ<$Q](]CBZP(%=;,//Z+4A:I;8#764T@2@P:8# M7K)#>2CJ9D%W)O;444/M?DX2(9[SH-<4-QBX2E&1[6DN5R#$I.,W9R9^_8M= MI;HC-@9W;PSP'V\,<):QS?$4W\P\95F<.)E,TUB812K:QL 8C89DPU50E,P7 MY4Q>:O2GQ0XP!N0;QN#;1985;07\0!^#_-)NSD\T8W=2SW7^UNG^K-3%7!8_ MU^]S)FJGB2?LT1I7TF&O.AOIN$=Q-+Y,CP?C\M)CVQ308>!3D.0Y';Z'=;8*_5637[ALBGHA)#' MU62Q9L>:'1^31.:8Y)QF"R5]6BCI> U%RKW1.(=)G5(?:C9P3;+' %'?^+BC M(!HF(-AE78^?:(WNQ?3$!QUO>A ;T=0%SIJ]:6+:)BP7L[VVRFDVB(KHI2,; M$$[KA,F1)JVI:O-:C'R:[ABRQ)'0F=L D\:E&K+#QJ<:''8.K*&Q9 M:6:=^88K,4N\9SMS1UN5R Y06/(]"GL/1QCU8[B+.,:Y>HQS:Z3,VYYNW'KU M43*%US_]> >JR+-!U/'R=%C6I3&#".42LG[BADR.8M-^PLA#,A6?B,36XHM/ M3&Z]^BA9B^N?J'S(6FRF9:'GRE(9E4=F'LW7IJ:1A3T+@/N$/Z3(NSIE*9G0 M51*.<2+B".Y/S-T/L6W$[9<:)4-V?;?'5]=3%SZ3)9.:Z'6=6)Z#7:<30FP:8M,0\4R8+S<- MU_2'/FD:-(?KC/5D55)Z$UA:2#?- W?[NQFUR4[P6UKIN*H+H[J MOONIS5UY.&?ZV;\T7?B*F"&E8J-+D]*"G"D$G44,BL70X)H*Q:_3R#[6]WO7 M]XB?XMR5V_(!?5=KM6YY5<*R3,]NSCT!>5J-*QVH[_ZA#HX?'^K\J;<2,;^] M*=HGKI[B8.V+[]YOT/[N9N@N-U]YE,ZSK^_X T_E:#8P.>4/%@V%8_JY(AF M%='+&O!TL-#308_CM-@HQ$;ABY)Q?KA1N&H:\VE[H.&-I=Q0[2;C&-:TEQ9, MIXW[]N#]& MK<2N3Q-XT-Y,Q!68'PA$'A* >;/3$WN S<-41WB-5!!I4=OO-&6*EJ/:5M"> M2ES+E@U? 6?(.PLG /C>-B333;\QE6B%K^1,Q!;-!;0C(L]9MM_ *23QBUYF M?K\FV0JH#-]A)UP9+ *^U5 Y+7CDMNNKM<\8\"O'\M>CAQ\'+<2 O)BJ![^8 MP.]%"W"C$+2V@X[184]90'_8HBC!G5C6%J4\X4N./R,3T!KVQK-GL$&6WR$O M8/7>K_WO$/C=]D';]8&)0?[Y+=Y\GJR@)L@^/> R=YS; 2WS-:#\7T7,Q9-;EW+G1"7QE_C\_^^@#<'. M281=MG3S]]83W%M5V/X ]YU"242"+@?<%+SX-Z>ZG&=M^V1E'O'D]@SN]\Z; MA'1(I!XSF;\2SW]":AR1$C;PVB/808.NX%>'+;K"S]YHM1!RQ=:-WSCV2%Z) M*2^<>N*9!?_E$L ( @?T?_JM_$F7"?X-A SXF>H!='CXT:]__89P4"SSNM_> MS-IY'-R_>_Q]32H/J7J*7$#(0\,4Z';8<0[C*Y*3GU<&--[LI%F$[\W:/8F% M0[%KB//6UWE!S+VNFJOCN\!MK\:7=I)Y[#TFIF'3S.<.F4';Z!,&]+%_L!7R M.MA;-OYN>.FVKI]M)_C)SL2[/LE=L"B-!Z;9?WO>[P)9T3YRJKO?^)4OF$^9 MC"OPBH,/,K4^9A>LAOOKWSLA5@BIE0/;)MBF?_F^!GC625+TYH-N4P?38.0) M5N*\WQ15DBS=%.VC!.@G>N]TI?0\*[NU"8MM/(D%@#^%> M"3>UT$G=;EZG%"7 MN#N3>> 9>T8828 M'?H 0?M7;M_OA H/_3- F/UVII R.T_O18PBPSZJP(T' M^F'NMR$.K E\?O']_VN(:D%(+7P(]3&A@P@;E!>Z MJV#JX#^W/YY&#TP88HD\-&.PU90E:B]M&*,];U_ DH4FS.H#,@QA$]\*D'+> MIGUZ P< [@R "3O+ANY9-J]"I-LELC%C6KVT.4=8C1'-SJ]_-?W8CCE[K]VW M8:$0R/Y;(9\<,V2V'R%"58=;LM]._44O:,@ OQ=R D:\)A28X)=0&^%SG@5I MR]N';;3N]S<.0GA?WTT0H5FS!&S7945'S5I@$8:NRKQO=<+#F4!1=BVG_7!8 M!.&LKVJ^WP8IK#^'^ ;G^3H$STSVU=#?&&#?8UT[^AK&7:!C\!,:WP[ L>"\=HM&GU1HWVG"&S MZ96)ZZU)C3\M'%"A;9F7#?\ II&:,E>MY[^9K5WU*7"HRK@*<)#B] YT@!) M$Q@>.!4+0.)9*"[_]R*R^^:GZ]=NT5X +KBJ6XXIMJ;0&02VP']J-["Y>=VR MK1Y08C$'/8YVH*C6<:OVDEA$S(K"X_1RT'#M]=QPT5GGU_/I'V6?&1<&V-=I M['YPJN(K^C[CD&/5/]MR*?OX6K^J]_S7;];T^N/]B0E0^7PFO#BB>OFM"ORX MW\&!-_CKZ.O@E,5/!P/SAKG5MI?8YW&B;>J2R2W\[;9G W8B@5^Y/VC77NI; MJ]&EC[S 6[@_$H0#H=A?XQ5% (9;B3-R$%])7M+-U1)%<6(ZG.F!?C5&6:"V-+F4BX^0Q955]DC[F\X<[+[L]A=SG(66: MT&N#>^Q0MF<539 !D1U./=Z"F1V'' 9\Q?/-]N_$W_(_@44- M5 ?>%<& V]_:?"6"6J)R6GB6]HH(AZHC[WX?2.A6LD,U B_;?UO/,0S59QQ0 MGP^^\.#Y@7\,M!*XP)INPS.;]T_H8$;^(&I? ;N! N[-R#\J#7(1_/G LZ[= MC%Y1W@?PIM7>B[K/NAR^$^KRJ^M^^:ZM*? 7!L7<"NY]%L"K#Q]XTF) /;5. MZSF4KX=-FV17%[>'QLAA\3C&]8[!?/AP8HP4F2"6]B_=\[ M!C0Z[S0CP0I99].6^G9! W%?LZ-:#C7FS)'T1K 8.^O5O$J:IGDQ5W1-//A#/0!(7G ?5U!=J4;CDJ<6!*"D[6# M-\.'!1M^,-WMO8X0W-OO4GK"G0S^V]IN7#J8D SSOOSI[],!GM]8=O 0,'@O MCPFR\L3*7YDUV$_W24=<],;N0!GY;V?@#AR]\"0]-FI7-FK;VZXP5S'0TO#D MBM\WDN6T?.]UV@,^:[7=M/Z= R^L(5R%;H M;ZT[)7+@U18ZRHUENI&K3K-:6GK]MN"\MP6377AXR'O:[3IW,;1>9R>".ZX6 MZ-9Z4Q19+%>B^Q0$8DB?]IR@B;LVE?$#*N.?IO+08Y):LC&;T2VY4Q^0GI3' M]3-W,E>C"6#QF<(I))_>6P$ M-],JV$=[#HP*_8L@:^]>=)<7+&]3SS3?!G*[#!4_M( ;3>OY!AKF;N.E[1AX60)B$,!'*_QU09M[ HG@ M$[HWK&J+SG0^[$_.W.]>393DZUI]&)7HY],;53&N$D:W.EZ>NW88+7+=2 M6"Q$EV-*3W:Q49\3V%/U%EPH%,6RN< TFB$;]KR]T MX$:+)K__1GL]_BW'B+B4,O03G>?,BKL:)$%(0]V ?\1H4E]V.BZ)5R4O]N?\RSLYWS"2XODJV>C'Y5!9JQULR,M(]/B ME-I,5GA!1N:?=O9V[PF.*4[+2U/75B R%P5_KE8?1B'[W\,-K*G;(]'N[O)C M3@H7NE@W!K4.WJ:7B]*(SZ+C+-*#Q@$0_\N,PU&1\6%I@^ M5RHG!3[W:9O[M9Q8K;%NNT$+=:;72<[(SF:YZDC O<)?XP2\-MA/?SJ(6Z&_ M;#WX96_PX":L?O2/X*:B# O8K(?]I$CP9"18QXN;H>TECQGL[GPX?B+N5WOX MY8U<6$T(JS_ OV$U95 -YR/>EU>2@F-"C^C+9*'M MDZBHF^%'/>6&:;P;.M(Z_:TG9-- MOZA%/+XC#J^:MM&X[>H?B_EABGGT:KSP=]AW/\?@T_>$P55(10-NH^,?6 2J M8/FWA%9%"X1N&#*%"GCB?UD /"D"CL!2L=.NGM&N#>3\S*LP+?(IM6F,O">J M[0MD^KBQS$W\]%YK/5I)HQE!RSR#>9@J>9GF'7&@M5RWZNWUI$&+]5)#31.D MQ ]\#N#'6_#+@Z_]:BC'"O$9:T[1/\6[##5W*6Y4![PR7\BWN@P@E/%M6/9"@9P#%@ M!::B2FS*%15RG%97(W64-O'.W6XZQ-@Y(9Z<=5#:/_.K@NR$PX1!8<6>)HE]8'< @!!*X\PQ7.BS-\-$3Y"W:B%\D M!G\] Z&V;OI%9GOCX&6I8QYF0X1UBGM3GXBJ+*[$_9L;__L)O)_<;GC;(ZU7 MU6=[8?QB*YR(/.? N@ ;/'ZJ^@5U\#E@JU5$>W=IQ#M !#7[/B .B!CB((8X M>!/B@-NB<+&E60==:UQ*P9=,<[34\;Q;I:#M_Q6\;3>RN72U>7U)YI5:82#E M*+/]I!<[+'X\TEXH@]ZHGL'IY5,Q)\UG-6EF=ECB>.0FS0R3V-CEZ5)SU!7T M'C*NCB0P,OERY#S=:?+%>76E(,R28ELZL[*9#IMDT9ITWFB)A(>74VA20F,3+T:<\'(H[=O,BE<:38W&%.2-)8= MVYB(X7#DT=N')B%4EK-Y'\U;YL8HZE)77\+6SD=O)Z2!:[>+ZBD!N,[E!>1U8H MV$?U\.TLCPG85$@)K)C$LVR2X$DV0P*W04Q/,AR'8R*?/IJOX5:&Z^9T4U-J M0T5M5U:M,FJ[0/J.^)^OLJE6J<^F4$0J%NKJ9LU/LU!.TR]'+IH,/AY6>T-4 M%)FD7,8DO,SGKJF (CCY[YQ!G%5M&R.LR" MP5TK*?*C+NV>DM-5RRVU^N54EEZ,]/G,32LM"E"+.'XF6K,]6#,X.2A5 MB]E4OI.&LI\]DOV9AE8W9+J#ED8YH4H[\QZ#0#D]TJ="[PIXS8VF@*HFJU9B:+ M6GH&OOUHGC(UK$T4;H+1'OA/FU4V^KQV4DO::+*B]3BGSPRS5-40G#3"MJ'L M'ZU([8^).C-OD4K+X89]R5KGGU#@Q!ZOB))HLI1<*R6FY127LR=57"T\^/:C M%?$3NSVM9S""=F:$7!E1>P;R>Z1Y8*25I#"S/LVD:;DGM18-H=V"E"TUF)J1LU)%E1?9@0N''M&)SC_I MC)B?;.B65Y_ULV,^+W?]H4>$(DO#<9LUQT.ZEB[,7$T:]BC:AY(\FD"SQ!!4 M*U/),(L9YD[05F- E248X1P-G7/#5:Z4HY.,AXQ4C)>0W(($$R!.+*MGU M5JTHGHBF4[W9BN +X*DGMB=N-FN@6<1-,JW>).T,\@.;D"DX](@"F4:FVVYU M\KBRT%=]?6:EQV5@][$3JI?&64/LB%R2;HW;A*JR2ZIC^M ME:4P&!)IC#;S13O30%AVXG\ I4TOE*S@_4 M?>*W 58*XIXM5L(.H? YN@D1ZF1+0:80[\_';)"M0^P-'W.I#TN3'=,+0W80 M:_@P@EODAA"+ \0YAU%.@'4(@A_'A,&4X$,<'AZVBTL06N]!T061FBI/Q>U3 M@R?!W[X(Y_Q!QX'<\['^;N06>>=@82^S[L1G?!WPV[UPT$=HW#XJ).(N5A/7 MHLG+%HSU9MQ*ULV;G[A.=5CRXF-?#:T2(-+,EVO;?",3I_AV<+\#SN#=#^Y 7 M_HNW0[F)I:N.+7Y%E/\ZBOLAW/-[,=V?3VG^&.8>/=N7+.;+;?B2?40S,5^B MQQ;[EA-R-"Y@-$N*K#%9],:SN(R7:$2'WK;] M\,>5&9X67V#E;P7;,=LCQW;\'@SV.]A^R.3/6?2(-1?=)IV^2!:^F/F.V'(O MV#,=/=TB]5OV ;U8PO>'2S->:POZ]9G5?EX$NEEF9,FFY;'4KJJ%_-36.T'J MU-L]1O]PQXN8IOQUN+O%"G,9A?GC2II(*4QK\H32:4M[4EJY[)):=0MBW:6" M#,(K*DS@*T1-8;YSK$$_V8]D;;^<_2AX_OW=] 'UR:TMJ: MW)909$2@ Y8I;$R!"E+F,33Y2!Z7''^':/_ZVW7$W(_N+KMXUS\+IAG'@7P< ME]S97@\EO0@$?=MW[E7+QE2PT6;9+S_)(8K8I44)>V#X<3!_/?(IB'Y25Q&!_QL.4* MI3DG$+?. 9A,WK8RDX\$'7T@=MC.IN1=KDIS[7Y.*3VEEB3ER.C(A17A. PP M N#98QR-.PBY8Z']T#89*:'=K/"98Y1;;7I9&.98/=7*"W4)"&WRJD)[^[#X M(.GG(VD^_C;Y?WXMV[]'E(E ?=YAZG7$>UF<7\JM)W\P,^%[MUJA(&R;?]L1 ML_A/"J*I!+"H"]BB-*Q+?UGUO=\FZ!!WB[,"3#OAMU+V2I7S1!J0.$Y4#;HU3=7+!#KL$1GW&/K@]+BKMKR.:Z*- MEXA@?U84G7V)]B29?T+CX-I)\ M23]B,1A*!/D"[-C9VM>8+[?:]\_7),=\N9F^I&.^1(\O8-^/_>0(\B6.7Z($ MAO+F\T63$,'3.EC1O M.R,E+E2Z_E8<]:W%XSHA3%1%XG(2<392^($2\9:3_@-)\I/VWMA9C9V.6&%B MN8F=U0]Z)F'[SMA7C7W50XF(7=7858UWWMA5C5W56&%B5S5ZL:U$N',I)DBI(/UC*)/;!X)_U6'MB% M=:'I^'5>^O1RIO)^1>+G.5=M4^;]SK.Q[$$3A.WZH3QUERQ:)Q0C0NY4#=FYA\ M%^\JV@;DV[5C.TLN")"4^-M'Y?CGNSA:W\6*!"[5_-#?') U\. MV9W SUH0/,ABG4U;ZML%C6&X9D>U'&K,F2/I$("6LMC6]!FH"&-#*"(VV+0K MFB"N1:&O5RS+$4V+7CH0".\A:= ?4IWN8A,P4BJ/%OD=+ MB^&$1O1. /*,/6 I_($DT]>!K8V@CGT:O>\/T28B1H;_O<#" KB&;VYE@OY- M+-,K;.V,,D2LVD <%-':4Z%42"[-6K=,1Q,MOZES"W<'N3[Q\ZG[ ] M*Z?"=_MEG56X;SUFDL71BX70Q(]TW5V64\[)W.PP#R&6I^ ML@!"4&(=$6T->+65QI!6RM^XT\"JI1^35T'7A>%FQ'3G)EOV;?SG:V_9]Q48 MP$U[8'L#;E,KMVAQ->F1HE)?%*G([=;H;7;KW;V.?]IP8G^>5)"F@-1TDN'< MOJ6CE#F?,G!_QM!?_Y(D_I D4V?VZ,A=$+VI1"5 1;]\-_KG^U]]7/ M3< ' MS@;>0MV_L%' >TMM9"6+,WIA]C),R]R,N*<;'A7XDF]5M#9@CBZ%I@)4FTZEF8ALKEG-"J=@;KE.<""Y2"O;7P*YX6W,DV?N6T MM#C++^N5>5BB]C;QJ,1.SK67Z;(AF]A ]W5/%#=V;#I(6S7 N MHDK >OD7ND0FOM"]BPO=")BH^"HRNE>1MPKW[E9+OM]%&KTV9%,4_J^HFU-1 M#D"2[^ NX-)!WNWRU>,[MW<%?!O1U 7.FEWZNBW4"P=0BM($7UO\)YR]@2N7 MZKC:LU-HK3/:*!VA3.FRQ&9A:.AWB<7_$]_ 730.O+%Z1HLF85#XK4S63BWB MBZ#X(BB^"(HO@KZUL-_%1=!^X=[+KO1XXG2Y8_H1_/Z5^L;)47WC?1V"W_>] MT@VJ_BX>5CS-2D)9&B0IA:-Z3JOK9H2G32?:57_@54(GA32JM(,CVHCJ\9V% MVF$Q-"C[PS-D7/;W\VZ:XK*_2Y;]W<#0?(^R/W2&3>0LF9W1\F(S5*5*7[BFNA/ZOYN=!3X#>K^&H/!1/.&5)ZI=9?-/"I7NKF:"[4G M*/Q+X7'EWX^Z;HLK_RY4^7>##3NJE7^S59&TU_A:1A<]:=] MPQ.#-XO_5JTU4N/Q;(,ABTAGI&7(7J/383$LJ/Z+B__BXK^X^._CR:4W-S/? MI_B/[C#M!IV=CQ5'4MO"IIA*([0$+9!?_9?&X^J_^-(WOO2-+WVCX;3&E[YQ M]=_]',0<+?U,I.?M)IL \V23TL*4@%>RZ+9!X(@ MXOJ_'W8K&]?_Q2':=ZG_3T^ZHVEO^E3P[5=0 $C&-[MW<;,; M 1L5WTA&]T8R+@",1! 8J0+ N[@.^$'U?W',=_U[M\]4 >($,C7E'HK3#L]S M+N5D%0'ML!@!0\1,\F3:[N4BQ)^UJ\1E@/=1!A@'BE]MN#X8-VIF=;0NH/D- MWU>?+L7W^Y%\';O7$DG$9=T7CV*/%[= MH7M& /=,T)V)*GY+_^P"-9\7=\=6A=PP._:>)HS<+PT(KEG$DQDWVC6?7JM! M"ZE%)Z/D!Q8V:HRM6GM!L5@R;/6(Q:T>;W2[>'-UO5E1Z,U7?OM \O:FZGM4 MC6[F[;;2KLXXAAL3EMM;9RC%=*'Y"F+$<\4H\=WBQ^X6OY=:?J"L]$:G--^@ MK!1I:X*J(<*0YO1%LT"VZT^6[:L7+"LE'S.9N*STRR]Q;ZZ'-ZL[O?G*HU28 M>@.?(*J%J61WD>,Z+)55AH.QUW>>ZOVFY@I.CU!^WYGLZ5HP9'U=< M1KSB,@)$N/T%X"VL7'Q3&-\4_I UW].6?A$9'P<#.LAFKX6;$#T= MC._[XON^^+[OJ^_[]LS4!^_[)N5^NLBM/0*5T=:J-$4DEE-\X^7?]Y%Q,\'X MON^'W_>]KEROW?=A._6J$TS^_5E_Z/E0 $MW43;BJ0&6&=60+X=>*# M/U[SCSO@6L/% 3+ Y8(GVGIB)5IV0@[(8P&S!0D)_[9U&SQ0WRM5.'4 &=#I MR/$!_X;F6M8<+C0N@KSZ][_@/UN*\BKP[^#V-WNAT00D6>C]H.A?5]FP>""3 MHKGE I[<[MZ[_2J9#-;ES]K_[__;G_SS?HSPNJJ;O[>;[MZJ9KZ#^1OW]U]) M1":FR"D(-P4O_LVI+N=9VRT>1!G);87H[]W&#>F02#UF,G\EGO^$U#@BY8); M(WL$"W=[1!6G]N_@5]N/_(UZ^YENR9 WOTU1Y:#HPV__NW[5@C(/73J MH1G:&53NWSW^OB:5AU0]12YNN^GV7)ML)WDA3?>L+B'.G )5Q#JL#_?LOVTW M,J]UB2QM)*>H/*('Q5RG)@MSB<6/1^JE57)*-'-E9KGH,TNJSZA.3F*)$\_, M,/*ZT)WEE1;9UKR&,E?T$1R9?#D2'1O,)JEU;7I8G$UJZ;XLL<4.FV31ER,W M2WU!N.1@RG!E^W&&D5[LUE?<44B.UMW6/)X9!DG M:LT17J64'KXN#N8U=-.946SZ>&1_..IGUH4,I<@,F?G_[7U9DZK(MO#[_17$ MOJ&59E9K6M%^4E$)A M4I52M+6HU=$(KZ.E!9;FTRFU5LP5J)9*#,A,S5RBYKE'2]F",MS4+3V%D^-! M))YM4N6YT(*FZ>'2$<=,^#%-349"',='L03!C3BDF 5)X W>L)<%O<,SO?4ILB*,+5VHC5,KA>L5)+-(;CH1&+D>)5^N3%<' M[>G8?FJQ%6?1'#%679=J*4" 1\3"LU-#*76E9BXSF"1GLXFD::W6*;*B4AV9 MBJF;3$ZNFP+13A7'2R<%5M(O5ZH)XHEITFQ"Z0!^L1M/N:?N .Y)$"^7]FG% MR6K;E:30!E?AR,$BL^ZO :T>/;Y?ED>9K4YL\<9$9MJ]-#ND#0FL/'K\*I=. M&W5C4L8=LE-BL\.41,PA_1\_7IB-DK.*QC>52+J;XHH=(9WA6Z<8H+-*)A:J M4QNSG6G=[&DC0Q#JD%6.L,2FG_++B$%G<#J2CO3(&#Z-9-9@Y3%$I6DC04SK MDM))+WNZ@V^+4S8%5AX=:5IO.?.G6+V@+(O6JC[,/U69)_CT(\S')&*RF>MX M0^'X8G'6'ZWFV@R>Z/CP1C^^P,E!1\/G75&)YS;397F;.L733$Z0TWDE$V$C M9E(9*^G5:BA)(_KX\+0TPI.E;(S(S9N+.<4_K0=\'>YY='BREZB.&*(S8N55 M2E[GVK'22H42Y>CPE5@\WQ6 F%QX=7MZ:ZT9UU:DJF8U2 MP,L=VL[DX7L>'[Y"-7N%AH8O%:YH4;Q4GJX@-9\04_6%KBZU0DI1N/$6>''2 MJ"-TUV#ET8O2\^Q@V3U:<'U;[M@ML/+H\<:X,LOR9$?%R7B]'4NOE\I* M@WL>/SZ3IB*)M9G5<_.ELA19.6=RIG1*H!;5)-Z+9:NFTM%C-3&[*I.U)A2] M1X\?I_18O]6B2I,J+7&,2KQ8IO-^AF#7Z%GK>D75Z%<\0V?<'KF$7 M.D"ZJNIK:%X?^4S HHY ZUP47$]H9[Y+[N"5!\S]ZP,&#'3?]!?13]""=ST' M&$;%1/ &PHFKQO![<([/([*&OAXEKHSG8BG>(5A6'-8'Q63$3A7LEA\&D35# M^'9>I*YK/71:9-1UP9NE50"37S[.B[BXHB=.PI6X9@S I1#?!W$#@,#_4+F%*3[Z/^R_*Z0XSP^!YNS8-8-]APLY M")QMZ?X'KGN /CEP(O9BB-Z:9Q^-<;T!R_#?RWL>X1[\8\4W"3J*)]\J/-HS MT??VU\&>$\ ]/M#\WR,P@/KH.EQK *9W?1T/%^C!_E*.-W75ML1KN#VOA]0GX)\;+/+[&07RZ'EX_7VKY: M /6>!7#A&/!G(,5\ E(7E28WHQ4(@?V(*Z^KPF=! NQ5^.'_^T7]^BIXB&C\ MLI=RF,^3S&'KIGWX_/KMUYQ$.+?HQ*]3XK]4MAZR4LA*9V:E&W8I/3.KH=EY M$8&S/";+<[+A_H0*)[[*<]=DL!L14T#YBWD/(F]1PW%"_93H_:8W]G.8QPNY MG0DZ?SAIQ'X4:>R#Z.___',..1JPZM:ZKD7<2#,6PX]N6\4FP+Z=]-* M[BVYQL2=R'>BTC3.&:F>6*)Q7!29LI@LFMMI!B;3X8SS!/U )RXRY#R0''2V M*R>>PKAOQCC+1:^/L,:G;V:=@S%>7!U!KD86>!K0QWBM#1.3H&RB/]!5EA/* MZ3IEQ",Q(^46L^! %IZO_U( O)."FY^^!]OQFHS]=LHF>%Q\C@%%Y$&E #GJ M-#:#E3284CEYS!(.H4H.4[_A1"%$JKLI' 5#-T]INL2$VV2SK%G/19ABL3U3 M+3F?:+D57B2./P ;_G*:[H=0_]L)F.!1_WFFW'R>_J]YV?B0^K^BUQ*Y!)5C MFR,*%S?VV8E9WQHITOV?I@M7;+?@DJ_L"<&%U\CJEZ/YU-_ECG[P:* M\]M<\A6%V9CE*R(_7C:5959-*;VG>KT9\:K@\>B;$9/[XF&\D M),_1_S.0%G68D+Q50I(3N>0)HU!42JR0BPBT M5)&&"[J3A5>'DA@YVBE,5],66UL0RRS6FQG*" M\XR>@%?T48KSYV8X;Z4G[XE+SN.P?IY/[BL5FAE5*]LM<';93B;=$3OE)UZ/ MPW88*!6:>*MQ_(_P4W]V*C3T2&^7,[V*AKU\SK18$P5+TX9KMJ/WAL;,MM0* MNX8-R%$\^4!3UYR1-0P?U9^OBFV17!_QBN&@GE\!9E9(=LK!@)HLF8C'D MK9XH2KAG;_5GI5=OIF$#G%H*U>U9L[%:SJGF$VDAB=N-1J%9F$R'N6D*]O4$ M&IB)/=!TXH(*^$]CKC!O>W^J]ZS)6Z-#)N@1R57Q.6\MZA/!3%3'+[Q'NI6Y2L)OZ]R C'0-KWEZ\=_IDC4+XSPG&K=8S9)E$#7XKK3#?K&-/U'Y6XO7T_\HUCG3&,%WV>> MN\G91I9624C-FOE<@9ME%^2&(N81Q$U(\2;?&@5X,/WGY6"/ +3/W=MKMRY0 M W7N>AK0&PVKGR?5N$?I[H;$K#T2Q;R^9FZ#:@QV7WHQX,?O8.VUM19L W6^ MWF]6;;[;K?H!6W,F]I\SCQ3[Z"1$Q*2?&"6V:17HGE.9ZS@WE'.U='F2U!+2 MMT:)?27-Y8Y *VFF9=CP0[,!H&YTIYQV$'3S$V!=B-A714R=,XQ15Q-:C12E M+!3'(D; V*>;7%?Z]9LZG2U&Z+LTTEX6Q7X5:7V'C6FQVG2::\BM:H]VI RI M?V_^6S"09FG;G#[2UQVV;W=PC6PR>:><^O6;))B36'O8FXVE.M&+]HG?@6L\ M%05;%3US\0APKA&9LJVI;@!9)K!P8M@>#ILJIYEIYV!>;AN"^KAK_&HKT<4V ME>TI%:ZO;#:%B$))TFVZQG]L/H!IS\$:L*>)R9I+@9"/.%ZW+>QP3,![L[L> M[U\/!K$COM_)]WLM\>.Q:"QLB1_ 5M)$-!:V^ X@7A+1D%T"B):078*)%R9* M4B%>@H>7D%^"B1<\F@SY)8!XH:-X+,1+\/ 2RK%@XB4TDP.)EI!=@HF74.T' M$R]TE CQFKU!/[*O40]*V+B2])/5ZB$J:ROC5/)93"P6:;[TKA MBSA\?^(PP$!3R54@\%[T/VCRTB^"#+7KF0C@/;_VYT/@O%-%PDX/F#[Y$X3@S[2USTSS M;N^YD!Q"&]JEAPSX"+:WL3DU)(K0BCXF$+]Q4$@=H08)-4AH47]!6'S-I+[Q M_89OPP!#K=;NA4^^=63WYL;QOVPOG\.L80Z)M0QH8ZYJ@AQ;?*?0RHG1,@7#?9@S8UXI[OV9>87 M^) M>3JR(JZS/C\VY^B)3'C/CB^E7N_K'O21N5S3FY(Y5AW*=E@>5&J=4 MJIU9O&/WEK/N&K!J#$A<,DK'CV9:A7QZUFO2 0/#?\[6*B+H N@Z4_(";E%\ M?T3?I437P5?2(D CE&-I#FPW%HD31D?2,%:U5=U8*\[[7_8?B=)E:9L=<2^%B=+QGF+(E]5N E9.A_Q#: M)=_LRG+G(=;BE[T2O':GB'^SCIT6HZ8+3TI<8OMRN(4>ZAM)E0S/5 CZX Y M+1]*>CSQXS'%FPT9;^ K8ST7-JM\KC5B8-*#)A(/\9_*?K?*< 2*4>\KG?&^ MLKO3=$9\:,;*[6)]H$12/(73"R96W*X!$\)T!AW%DQ=+9_Q9''C[%J_G2U0$ M2H[\6.__,RK_!V4E4CDJ,=AL1C%V.>^G"M7&8$.5)2"04%8B088FP7U-@A:(=5)*0Q97?(>VOD?1U\PE4.-NKCE@5X5<85E>SF.= MM+JB)1AJ)O_L7,)]H/@CV816+I^)%VA!Q O-F)UHV#UNFT:G2@UT[-A+SX;X,Y623"U M2(<:B)!987:"B3*)\+)%6-087K:XJ^C$IZR*'Y38&/7*/$%L*Q)>B56XBEY< MDSK5 K(L 9V#>'A=.[QN$7H1 ? B/I0 25#3#,$MJ(I"5MIKEF [-,6M 3,G M 3/C^ -#A5Y$:)N$%RY"VR20N9-(H3%\>@W,G_6?#I%Z"^F6U:\L1Q/Y(!/#3KD:(/6.^ER-G;;+=NUT4,KO^H3'KI M2H+?(87*FLVY,+C*:?$W#_OUXWT]IE$9S\52O$.PK#BL#XK)B)TJV*V7))[C M#&@!FTU PI"NNV#[M IHV:,Z?I3L9^NQO-)GV,QT&YNEVMWR4P:( 1'0YP+L M9!FV> %1_5ZW-@*/OM;K[B/_HCYOK^^/4 ND@N[".#+65=UX]'O:O?RK*FOB MHPW% /SIZ,_H(8^H+1YX\;IH87]7==/\!RMI8WTN8@O1P!#P=\WG D"RSWLE MO\6?MY U2,T3^$[U 3T$F$=VH?VWBF /@0Y^GP-%B/0=)IOP]X4-!#+&.Y@ M]2'@#$P#^#K\*OBK-16QM2>^,-4'#.B?L:UR<%.P&#[$,D3.M W'^^9!TUAR1(#XDU=B-##4G0?@A^\, M0\.8"+XB8%EQC.PAC"(>,*@-'C .LW0+@ _ Y?PNZT?CZRE #$+76;CVG/]I MYADW=8B:)N= E'HF'6'UGBC&+BM*8Y!@,L-6T4STO^%^I@ 6?21VQ#$@.DL6 M@;T&*4T4\H8^SR#&0P<"CN4+!9E"]' RB?Q$L3%%+/$J+@N3_)*,9.NC4>K7 M;Q*FIQ[P$RFJDC.]A M)>VYSK5E&3)O(W>UJS_'$@ 7PL4I2(<2^MY1F ]1/5'-I89+-DOE*G)FV%LV M%T6Z*_WZ':< S2=.--%]U2#R2=C2#RC;,W?>D+LOZ-8G9]'#YP>H]_:6QL>, M"_+*Q@5YP%EDP#CK*^HD6VU51T3FR5 *O=7"D#:M4F[TC99&%^*J.#6CS7IL MWQO%A\[ZW1O_^S M__+/.>87&8F]4TW=- :)DLZ2&.$-D5,BW 0\^)%3UYQC^E6]3)2,^0-\'G>3 M>B RT_YENRI"H'A%Q M MZ!>Q_LBK!BZ8M'DHC2%T+*BW J]8R"_W+8U(!2[7^[C:E N+H,*(R11&P-+ M)7#9YGV@W#KA?/"JW+?0?T *^X>^(.*K(G!PD%WHH?_J*?E+%<0$(>/J0E?< MP)(PE*HW !XD#1:#P00R!U[1X" M(Z1A/&>"-?I*=$.I*OHV,,?FB"?!G_:] MO;%N6M!T,($)[S(M8%?1X%3T,R?,94V&VT-3P'\%TT]; ^&.* 9_:8?3D*! M$&"N(T(Q@Y.X3D&/0T9)?60@1O1)!+JNG&F*Z*6YQ<+0-\#WLD35>>]:]\_I8@>?U:K->8POKIQD> MR<=7PP&:"G?<2QD#^%(A#-;< ?6!WSA,@[*$,Z<>(*$J1/!:R]84D8D)$(;B M#F[I0]D&T"7C?C#?I4]P&$V U!/%,G"O!2>[E1Z[@H@7(8J%(9J0V(#O:8O^ MUKH/!6]75>9<'D'Z#0V@Y4TF%(Y>.A.*O6B2>1*W MO2XO;1;]ELARE55!W3*+)-.6=G<6+P6 CQITEP< W]C8);58V@ #.#/39^O, MI"ND4*?P$U6KKU&[5R(D"\TQT%;P'*H1"7J3'5O#-7;Q .'"\;EMN*17B1G0Z2YY[3/U\'(PS9%1V MM8MDPY@4ISE0LQ*)?\T](*#",&XAPZ TXE83BA.PW1%8'R]:F@K+O!^K(I!= MXB&!-<#[&Z5G," W^]C1:/7XJI.Q! E?VMNG,1%GI"(K7%+^*%AF"$8>Q&)GP[&_E)G&WI_@=NQ 9]_"/=>UAB"B3>*OIU%[49&]_:%U!BO>!YO\> M@?C"%>OH673W;I\_2]9\+XEM!B M@Z% !N9'PRYXE9)Y#T9OA89KG 43OPZTD]VP4-5W<7?QU_\V8]_[A M@4T*B09=P/PBWU)1FKXYI;R:S?T\[/Y&D1/=-H'G9?YS)G)Y3[H%@5P.C_I% M@1&L>^3 KXV=C=D#=K;KMPIP;=H0#*X)>>>=!;X8F-^+%VVUCC';)&HLR\7U MIF/UG,*R<%#@&J$^$;8\%5O::6T_BIFUQ8'(&=VUOHMG4KN;^/DESF_3NM' M.:%)S=?ULC*A6R/PQK]^4^2%F@(%L'O&EUGB:S+_Q@(^?@_67!#%F"O-;V>W M!1$FGFB_,5!".>_+>=A$YH2DWZRL"-X;M&:LK95R1BY1S$@-6+ &)#WQ9L>5 MX%KP01/K 5-J770M [R-;(YA<@T6=;R>),,6'B&%UO^/MO[/UAP]-.IO*NQ/ MR'BE$9DG$\NFS8I-11TT"\ME2X>EQD#&Q^@+M00,K?F[/&IH^)\Q-?DCS_Q> MVN]''CHT66]Z>JC\'C'9ZQ:;#VW &+0$4?PJ#LGV:@[0:E M[G=\@#7?<[#'U/P'B[R\'A_::#_:1OO32@C>N"'^8<_YQ ADQ#X?B97N&!#] M!F<4[_QEO5*=Z:23G>&W$=Q$3/.J X-!-O>=2L%RW' (&( MWLB:RPC?NT1H:#8&PFS\V89>S+ M(J.2R_0%_E[CL>Z)/CAN,W8#YL7\QFX3=_:%*U\^ MVF?HQ_6URKG0.-G5R3:W>)SE"@NEGR038Z:G#5O+U,]J:_76^6<]7IX^J9V$ M0HZ%:2>5U:IL>PV[6IU*N;S6U0JXA*BC%22QX'3GVV,2#,!0=SO &2+@$A&U M%L0L;N.U*)0U$Z!(&Z-V57/9GGN3&MRA@<#P-OUV79XK/.4LE^-@S[J+=OF[ M,N^T 7QR"#Q=")V4)I1\V)RDH%&N,2UD!MF1$E%C5GTE1OATK'7O'/19*!2% MS'"P)(=%Q:ZWV49JP%5J&=3ZD/@<'\$.VH<2^9P,=: ?^;MK"ML6+=F=CX$M MX(SJL"?LA<0E##M8X#_8C#.&$W\K_[B(-KF5.SH!0!_[&XI#>!@2_Q>.#$<_ M$O_^XS;95(&4!:^"QM.(WD@+$_L;&!>". &H?FZ[";[Z3Q2#C]]_%-P1[@)[ M #Y_W]*15$#34."\'/C!N1V,[XN:SXQHS[K0R/BG\N:OUSB@4.QY2M-L. OF M^8]P_(8_(N0U%P2)I,S*;!4LKC/#[60E62![A2P^14-?C@307YYRD]$,W]V< M>*\5,*=RA@/TIF"CU0]014: ZO3: KM(0%U9@;RT+1TL5N6Y;'FCK%Y!+-3' MAKZ2!8A5I$V?Z>\!\WZ'%8*&Z$_P@)^D=8!+U-,12((Q>)CY *@54JP%#!"? M4)Z)! T(X>&P'/2VTRDTAW4,Q([S3< :A%0_01R\,.SJCK%7>(';_]+/C_?:(%M9]] M!2<>V(V:!Z#]OYCZ4[K> M!]_'YF-]'8#NN+:3(%0%=H*?V M7LJ7_8%9#]AZ*@/EAZ@;SA)TYV7!KR%=^T)T42Z?^*8>[+UN"*:O;@_XP)NB MM3\ 4_->9Z]-?V>_33^"P%17@4%O>F^+N=,@O5[,Z#G0^48CN?:>Y[VR)SE= M*^%Y6(!N7')*UXW,_DL/MNF($L1+6USH!@P'O37=1B[*HOZ4)/**4TC'"WBM M.6\RGOR2-4!3*>N-=2.XC+B/63CDG<[":1HZ-,&Q#ARL\8#E=0,\5_-_A2(7 M_0@9J<;-@(V1 :2L ]H*U*"<'^,D[V2QN('LY6W'V#2L$:*\'>&AP990G8YV'T$K QX6'=,_I7=& M]X0I3=@=[\6 8:!WH,/KOD9;-I6TDQ:U\13 63D8HHDXH2VN1""YZJ+U_C;' M$X^]%SY:Z^VEQJF.,IDZ3:4O;>!_PB+[,CV\M,?^*'H8#MI$LUS:-I0( MQ57[O6*V,3XAAV:HG!?-H#",-;'"?QHUYZ"^B!2D2/;TBB@,_"TR?N MH"99.PP[ \/07(ACV/]9=8*9U)ER@O?R'X\"^G)XM$DV>TJ[,T[EE@,];PJB ME(G,/AG]>(O N_H"M>0Z_'MPZ3?5[%#$V,H NZXM\:IF"1EF\N8,=E3.!J@8 M-@TW1>W >P(V+=BT,3D\_4G'R!@\;==4*IUGQ4%VN)%J;7H##,_?%H3>B5P) M,FV>U:FG;\=(IZ)!,3#Z'%@]^//(XK)B36FE(N1JJN1PDH_$A(@EQ2P%4$?\ MM)KSI%@4:VCBCD@>8(C':WD&ATLOD+,Z]J2(:2\6*K3% ,G 6^ANAS3HUNON MR#I'%E4!T)W&N3/6,=,Q@<-K^N45F"G.9? %*$S!)T".@><:,(@]]MNOP95! MHL+#SP&L@DN 4MM@>\42);"-Q[3Y%R$/^J2LT?0:+PBQD8[46\C_UE^U(83#1T5CL$4G#OYT:-5 M($5U\*O[YH;HC>P2+V\R?IUHNVL]P$3;*^6!2-C.E 973Y+XPAE54]+UB+:V MR6UC92U29R,V/E@WRW4R$Y-@QB/*W,@Y^ :FD;X,+*YSO$S6!LPFS38F+584 MZIUL>WE%PU_I+.L+O<7W6<=J4W6!>3(SC1:*8H7LU#R9\\%09X"#": ZW@9XU%:]2WQTVE,"*YPJ0L6)7J%:W2 MX;(KRSFYBBL5(5M:I+-&_NU+P0YR7.XF9S;*5;J]0+Y:% M=9*_(DLW-EV;J<:T-FOGM/%(*:M],KE&N'Y+P4>QDPE3=]#9WCBWL2IR!KQ= M,OWW,#=#P8C;)>:YO3J!BHSYUTIV\;X8_7)(V_\/ CIZXYQ_0O^3%1,N:WA'KP [RENZW#B?/>I^],V_/PPHPR1Y)(DI?""DO0J[4,PK^RV& 00''_V^W MD3DY<0^E*37( >J_^QE1[Z-?O]&@8TB9L%S"[37OY?6X_2%\KU'E(51/@0L0 MN9>H=BL7WTQJ>\GJFQ7\9=TAX"_NW>PBV:?J/0)JC^8H?0Q&7-<_J]6E_GA:2:[8C2*U*+T\M:"WUZS>=C-)W8(K?#Z+?E^*7172E MS*7D_'RSP3O))BM5E_G86@'"G&9.(?IE?*T _J]Y%95[3WY.&'BE0!QFSN'E M&0V))E2-[*/&#W7DA&8=P.AHGDY1( M3>@1/L;Y42Q!BR,N$>=')$\*L81 C'&"^N6:J)Q_L[^4*J=2U*3RA(M"76B5 MUK%49KL&7(>_7#EEQY8CDK;*1AQA/A@U>:I'P0F+1RMKV7YD)D?T"CMG&P,\ MILSX:0%.Z#I:66++;5;K##2\,>]S3KNJ9A)S..?%7WGQ@E)8;^Q5][I5O77= M$M\J*^UW.[-82U\GV$I2S2ASMC[?&*D+%8I^H@B4NM,BT-?KJ\,BSU<(@;N[ M>ZZ9@YI[:"T:*Z^*8&+#O# J\X>7D4UX4^ZHF\,#JC_E8(4"ND#Y>-6B\_%4 M%&Q5;$R0M$@[&94SS6/)4*(RDXVE36A%3.1)8N*,2HMMZT*2X4;4C!J@[&)5 M;JMQ0"%L0(O7@7#'F,W7.('YE @B;,MW?_ #2.A3PZ"3?M5 M\^Z:YU@>XT:-+,-_+^]YA'OP#_;#HJ.Q^%O=9O9".7O[ZV#/":!('VC^[Q'8 MQ^;1#U;M?>\3/6:>PYO?[N"5B(5X M"1Y>"#R:>+,U5XB8;R'FL_W\7/D5L&Z&0,OB_FVY@XOXL$?"6=K[0>$0L$._ M;F-_OR6:RW1!;S-Z@:NR1TWR_"!+:@UVVH5>4 3();C,'KW!RYX&79 MMF6]OJ&L')GD\YMN9E:IEE*?OU?[''J!YBVR#C-N6:Y[;[;M&;IYW<@C,[?D M6;DO [+ %1YMBS-3,KLIQ4[&QN5TC(RDD2-._OI-/= X?O)B\M?[?[YG[UQ# M.!!7$ ZWEP3GX_N0R=]GF6>)Z1[8&U"4(+X!+"H:IK$NQ_E!5YZS@'\TQA^Y0'UWIR8KM:XK%UI(L*7A%:(PK*"?(A_@.-@3YG M&)QFF6X@$!77:)YX,+VLTI4DQX\2$P&>!ALT@\*GP))'@ TMLR._QF2?^/9D M"LP6^1EFG(QGXDR29-E^E8Z4EUI+F32^T*WGG(+$7C_C>P+F;"9E.<;8JX MO2& 8U0FEIOZ>A1'7L@#0Q,?\4.NV@O_[7368<#USAKCWU'>^?[Z*_LZ/>RK M_+T"[Y=-2BX[M9D_.N3T27Q_/\0.;(+K5;1P1SW.R MT>-46]0G>> Y:&.94TN::1DV;&]@CD@F3C)7*G0[]0)OE;FU.J5\?D-5>KE^ MN61*E:8G=:\P8) T.4 9ECAQIL#S?7+7[[0(^J MN6A-=<%M)L,!VW*^@ "UI8%80;7J'B90 UG8^Q_6(*( HH\,A OSM5@CV!-\'8A,TQTL MY9.]@,$RO'_G4BS<3A5 MBSS1?6<'N%=DT"4MOM?-N0#[5R_%WI?"E7=V"3YQSDOP^\7$[@WT@VKB@X_@ MI7/*#3^^O#F_TH%Q=OKB_.YN_/_QNN" _TVMN?K[_P-02P,$% @ ?79\ M6+J!S6'R P Y@X !@ !I;G)D+3(P,C,Q,C,Q>&5X,C-D,2YH=&WM5VUO MVS80_BLW%UM:P!+UXCB>[!AHG03KFA*%"@ZCO?K=Y3DS X& M; C:M!MFP+)T/-X]]^*'NLD/GG>J"JHRSN"7Q<4Y,)VM2JXL9(93B]*UL 4L M=%51!1?<&"$E?#""+3E &/B'?AA%?N!YTPG:FG6;M$H@)M&(1$$T@&"8Q$$2 M#V%^ 6]O%[-WC?;)U6QQ-S]MW3'O9*:I5">U17& M4MDQ[B2X_$SGT5L+9HLD#((?QQ5E3*BE)WENDT-_-/I39,2R>)+I-K3$<$FM M>.#.]H[53')JDE3;8OS.IC$\RQ^M1Z58HG&'==S&G^ :N&\8M3?.8[KG</A8B%1:BV \G),6D55\!8H8-R\T.QK^#-=.J=DVN<_BH&*\X7O#QFB]% MC9:P@^>K5(H,WF>97BF+-8,S8>8Z M'7Y=*0Y1U(&'B?(->F<;[!/S:XUF-PPC->IMQ '+9P_>^[S1P_-1:/ M>X[>'(_2% O664FU8=QXF9:25C5/MC>[R(;HO&C_E8[7L!(6P>VSI@.XSYE. MLD.!SK'!+WO"SPV6BR-$_J +=6'\_-YDVQBV9<(T;I3M*+&9?E5 MPWQ)@S4QDZ:V+ZFO.Z>_<7%?'/4_#_;?$<\+JOBJ@;7G1#1JB'?P?QV^56!N MVYTV]WVXO/N/5X$TI^5VA/A>X#5@VFMAGHYRFMTO#;X$,W><:Y-LR71G+ME? MZ YUG!#&4BCN=<];^MV=ASK)[CCT?-"JZ))[*U:;6_;.!+^*[PL[IH ?G?2"YPT M@.NZV&#;IDA3\:#R?@Y>_^6[7]8 MS X\]:N+V>+W]_-P[/L/+]^M]__QWC6[[]:O H3A[W!D"T,+ZQR2A<\ MZ_?G[_;87NI<.>GW5ZM5;S7N:7/=7USV4Y=GA_U,:RM[PHF]LU,:P5_)Q=EI M+AUG<[%WH?%Z^XQ*)QRF3P[[3>?@3;28GUV*M226;?.Y(N]G)MK572= M+B%+Z4ZPLH_I>S2WW942+IT,!X._GI1<"%5<=S.9N,E1[_CX;LBHZW0SIH-H M$R,S[M12TMZM7>-,]H:G_0@Z*[\#AS'\59H6BU]B:S:_7)R_/I]-%^<7 M[^![EUC-C%:[;X=^RC3N,)VP\\)PP2Y*IV+;P5/<.]F5F*,>>\FMAU\& M(]P4>I5) '4G2&N"F$*#@T(#X7$45P7CQ9I5A3.5!,N ;P__D(RS'$]&04,) MCS%DF,X1S$X'N@<$!11D+3=K(LGYC?0:W.QI,2; #([,R+GI#"*(E<&= S+< M0A:<"*AXE:HX9;:B/W?K5]+(>A,2(%<6V$B &FXI(VTI8\\@[5N"-2T@YA++ M!(O6;37LS$CCSQA)LD054 -I]$[L#BP$%:ELR M=F 69;(U*Z$9,BH9&]?WQFJUPNR]H^$8PE\L':*H,A# 5!KZ],=9ST_,;4(,0HS>A;*QIFV%=91 M\!F=!5V61B,!P[!E^U"=D+!%T,_\%@E+@5QK"K^^K#)0#,>\.SS:EP=^Z?!( MA*?PJ.B6*8(-:7]&SM\R;5 U\?+D@Y*M@Q(V:'6GSDX=T32I$'W@Q>I,"9];7U6154)QHT@ %5#5XTA!.U66 MD,Y[KO6PZ*,,&3$80H[K%Y4B3O$Q(J O^UK ]\B282(7ZR7 M8@?QVI@ZNF_J)[O] XL_/6">;'@XRU()LB='"L0)&;B%+]#]1D;F1C0*APLH M'JE,N36AZ&/'DOMYVWBU!\_9(FW=CQZ ;FN!RLJ@0( 9"/7C6!OA&? WY;4L M .89K(\969);$0FR@&!AN)\J@0$[M'%\P.9+GE7>YTD!,DEP5Z'**9!D/+QS M-J#]A!@.CX]?0]ZD6(CXL^&RBW3E/LW!4U"&;Z@EW>3)E],3%C4Y@O=2&30! M?DYH\]U912#R@L /%4=Y9'V)^)E'K?,5\4; J>.X,J2>%DH]LFNNK<,X%5G8 MR\;8Z&,%D,/6^Y]8DL#.B(1[U#7C2&ZD3X$I._8U0N#K('"5'#Q^J@#?XU$]T9F=3Y\C[[S7ZMH1[X0LJ:C/YHU^3I,-$[4N?-T"KRV(>^< MGDSQ%1#_X#[=L,9QISIM[ 95_0"VS%'8."D_ RN1!F[3O%#@SV^R#W,CBBVA M!#[I9F]\5'ZL%-CW_E@5L4^;#W:;'$V1^=/=I6 ,2MDH^8N5A/9J1-PD*2O) M;PCBPMWA0<[?>KX";*J K[))G4^$A/F1X. ""ZWI)>RA=[U-*DWJE/ M;FH51C"'--U89QDOK9PT7]K:(@VDH;-%O4PZ%Q)M=TI)H]M]4AIIM3WI8-.< M6N\V##TT)YKQ)<$/D+VV2Z2=TWF]RQ$V:34+Z\.:QF&K]=K:G%1#U>XD54+( M8O/<71E>3B)X]4UW!0U\L9T;. D'-Z0\0GI?.7E/RF_CG=MM49KC8Q[9^0J@S&R0"(-3<70]:[_.O%3Y[O0>=\9"H)OH_SO(/(KH-B$O>4& MH#\Z]MW2PR#)M_*8[VVGIUKF?\$:?UBP_S=Y?AKJI+ZE:T0>II&W39-4IE VO=L QU3& M-^/]_.;'EQDU(FSH)%,OR5GB,TDZK"K]+P8?*VE=[T%2F&[JH8C'-]=&5X6@ M2DR;28,8K==(MB?JA!L5ZDD& ;KUU:;6_;.!+^ M*[PL[C8!_.ZD%SAI -=UL<&V39&XN-N/E$A9O$BB2E)V?+_^GB$E1WEIF^ZU M=>_0 DTB%HU!MTNV>GV&M6+]+%A(W[H^/^:# Z9(-G MD_%@,G[&WKUA^^\7LP-/_?)BMOCCW3P<^^[]B]?G,[;7[??_,9[U^R\7+\/$ M86\P9 O#"ZN,L3KFQTCW?>[]XU3T&A5,NDV>G_>9WH(VTV)R="K5B MUFTR^7POYV:IBJ[3)60IW0E6]C%]C^:FNU;"I9/A8/#7DY(+H8IE-Y.)FQSU MCH]OAXQ:IMLQ'42;&)EQIU:2]F[M&F>2FTFD77IR_X#'5I;-ND07KIOP7&6; MR:\+E4O+WLHUN]0Y+W[MA!'\MM*HY-<33VW5OR6VAGA.WK@NS]02FQ.O)T'^ M">88_1^.PA]T8G3GQ+7TLD4Z$YB/G MV)K-+Q?GK\YGT\7YQ5LXW^75^^G;!5MOTB/5_.99W4\&+&+5VSQVYQ= M32]?3-_.K[H7_WP]_X--9PN:&0T&WU#1_ZJL4\GF$U*<=]@BE49:SJ8]]H)G M>MEAL32TC+F4N\FN.!OVV#E+^4HR(U=*K@%3+E6638NBXAF[E*4V#LC%7FF3 M ]JZO[-$&]!(MD$$,ED(+'DI8YE'TL"C.U#V:-QA.F'GA>&"791.Q;:#I[AW MLBLQ1Z1UZS&8Y1MV7>AU)H'6G2"M"6(*#0X*#9C'45P5C!<;5A7.5!(L \-] M#H!DG.5X,@H:2GB,(<-TCH!V.M ]("B@(&NYV1!)SJ^EU^!V3XLQ 69P9$8. M3F<00:P,$@_(D(HL.!%0\3I5<*6// M(.U;@C4M(.8*RP2+-FTU[,Q(XT\82;)$%5 #:?16[ XL!'),F]:\*N"BT#^2 M /Z.LXI<%*IMR=B!693)-JR$9LBH9&SD\*W5:H79>T?#,83/+AVBJ#(0P%0: M^O3'6<]/S&W*DDRO;6-'(Y?*.N1KQS@-!K[!9:=E#MLP\X#;G5GDL$>XU6+_ M;[\7=XM"\/_-+AD0A/X5%1IBF"#6E_1L[?,FU0-?'RY(.2.P-(03M5EI#.>Z[UL.BC#&4Q&$*AZQ>5'#X05QDG<(!8GHE;Q,2*@+_M MM(&_(DF$B%^LEV('\=J8.KIOZB>[_0.+/SU@GFQX.,M*";(GM[BV$#)P"U^@ M_$9&YD8T"H<+*!ZI3+D-H>ACQY+[>=MXM0?/N4/:RH\>@&YJ@ ML*BI$;R7RJ )\'-"F^_.*@*1%P1^J#BJ(^LDXF<>M>3H'7-N2MTY,IO@#B'^33+6L<.=5I8[>HZ@>P98Z+C9/R$[ 2:> VS0L% M_OPF^S WHM@22N W9?;&1^6'2H%][X]5$?NR^6"WQ=$4E3_E+@5C4,E&Q5^L M)+17(^*V2%E+?DT0%W*'!SF?]?P-L+D%?)%-ZGHB%,R/! <76&CE-C8^:K\Z M5V()C("4U@DX:P&RMLJA 2C("U-CTJ/WI>\?-X.[QF-Q.PZU2&L^!T+PR)?!8I[7U%7 M=QMU--EL2Q54,.\D54+( @3$ZV",*H0(0V.+VJ->U\_WJ+M*;5Q?8M6[1' * M:;JQSC)>6CEI_FCS089(0X^-VJHD/A1[MVE+#-YMV=)(JP-+!YOFU'JW89#* MB:U,!(+(+[5W1-HYG=>['&&3EC;JPQK-M+K K3"+%U MW5U# Y_M+ =.PL$-*8]PR:B[T'G?&0J" MKZ/\;R#R2X#IA+WA!JEG=.Q[MH=!DJ_E,3\()OY/6.-/"_;_)L]/0YW46;I& MQ&%YPWQ_B_TR\/^^K[Q]VW_PXNJGM1Y:BUZ []A4/\WTH\@S2Y5,V*OM9>$B MW/$[[$K&1CIZ"4C7L 5=]RHCS3U+]7W1WE03/XB^O\-M$ =/6=U!UKA7*+I_ M^::#PC7.4!.B:+V%-=1'J+N#5S*T$?R' -2!BB1HZV:S:)H>,YV7U(@CY:_I M@YV([G[T JKI,=ZE22I3*)O>;H!C*N/?$_CY[7NA&?5(;&AR4YO+6>(S23JL M*OW+C ^5M*[WH%),MY>DB,?72Z.K0M#U3)M) R&MSUSN3M15^ AZRR! MWYN M0*?]>4T]TOZZYOYW.R5NT-U0K_,$5]\)7VDEZ@ Z/NZ-#K=0%\8&_E.?\#V0 M_\#H[#]02P,$% @ ?79\6!$HK,=3!0 7A8 !@ !I;G)D+3(P,C,Q M,C,Q>&5X,S)D,2YH=&WM6&UOVS80_BNW%%L3P'JQG 2N[ 9P'0<-UL1!K&#K M1UJB+*X4J9)T'._7[TA)CNV]="C6)!AJP+)%'H_//4<>[SC\P?,FHB BI1F\ M3ZX^0";394F%@5118K!UQ4P!B:PJ(N"**L4XAW>*90L*T W]$[\;17[H>6=# MU#5N!DD10R^(^D$41L<0GL:],.Z=PLT5'-XEXR,G?3X=)Q]O)O6T-W?O/ER. MX< +@E]ZXR X3\[KCF,_[$*BB-#,,"D(#X+)]0$<%,94<1"L5BM_U?.E6@3) M;5"8DA\'7$I-_Q<9NNS8<;N09LUIV\/2J(63'A&5FA+908X,L#N/9D';\4R4\3=,/QQ4)$L M8V+A<9J;^,3O]Q^;%%L4FS99FQ8KRHEA]]3JWM*:F&.Q/\%.&G-?J>H<S],%XA+,% M*K=8![7],?:!_78C?/1._%Y-Q7QGTA5UYLTES[!S\E"P.4/IR.\.@SGR5GT# ME"FN6:JV8'X)UGARFUQ>7(Y'R>7T&M??[>QN=)U ,GU!&+M]N/-G_MB'V63L M<'9[)V'G!2$MX,<1+T.Y(RWAX 5GM%TJ3#HH.E$9#!YP'@J M\"C F4JFM46[#>#6(6WG1X0=&)5KF.A/C&LI.C N&,U1#:JU 0RF>\^(4R@]YAP M!K0D$*:0A4I1;>WMV&Z"V0@.0R!N7^@*"= =-PK5:,E9YA*2G E,]HPYXEKQF7%54.MM[7U^XO%& RV]+G.[+M">]8 M>GM@$P2;B9 YIZT+YE)E5'FIY)Q4FL;MGVVV3Y'"H@YP-C.PO.$$NWF'I7DW MZ[ M6TF$G5CA-VMGOK=;+26\\2$F'D:6S8@3'+!U.#2*VX/BOUD_.X?/N>4[ MABNBT@*BOHM*QXZ_P&0O%O70=FZ0,8WY#V=F'1*E^N.KS;L_V;/=T<-F@A5M\?=Z@%<@(17H?L\K;V!#G8RB^^>^K.G;.WZ MS&[Z[J*78,_?)-U[#@E:([LJRJ88RF*];VK7C?>.I2LE[9BM==,Q.[B]LC8NUQ-S65$WU@5KV M91X]W2CX3 L%A G'G>@66%B\$BI=K4[JXW6/TLU*8 (.FGA9)+D=DB M0*JX#=A;]X&['4TI@,75@*,!7O/>AOCM>\BF9?L:#,R9#(N:'1M[5AM;]LV$/XK MMQ1;$T!OEIW"E5T#CN.@P9HXB!5L_4A+E,6-)C62CN/]^ATIR7'2;06*M3&& M&I!MD^'P!]^?BI*(C.;P/KWZ +G,UBLJ#&2*$H.C&V9*2&55$0%7 M5"G&.9PIEB\I0"<*3H-.' >1[X^&R&O2+)(B@6X8]\,XBGL0O4FZ47+:@YLK M.+Y+)R>.^GPV23_>3.MM;^[./EQ.X,@/PU^ZDS \3\_KB5X0=2!51&AFF!2$ MA^'T^@B.2F.J) PWFTVPZ092+I2 MF0&N#''Z&,['T.2U,VIY[W'-."4J64A3#IYO\'>_4( M_FJJ6/%ZX*@U^Y,B:U3/T ?C$\Z6R-S*.JCU3W .[/,&G^YIC7$Y&:>7LVMTOMOY MW?@ZA71V0#)V^G 7S(-) //IQ,G9Z9Y&W@%).)[#^'QVDT[/7PA"YXJ=N/[S M.6E;%-]&;V!V >G[*U-JS8_HL6 MEP(R*03-[-FNXZ\I*1 AUH2#HI54!F0!ET*1'&:589GV\"T+X-@2_O2J'\?1 M8")7&+.W[JTS.,&8#!=2K3!H^S]#(95CNL78 E3D&+//:497"ZJ@V_$0@[CK M0<%XFP$L\9QF:X41!U4G(H?I P93@7D =UHQK:VT^P+<.DG;_5%"#]*2*JH) MC ,X(UPN/9B4C!9PP03F((;JS8J"92@$ZF=9-4IX@&,6-@^JM=)K@@G*2-@[ M(@U:[H@ 00%S6=E,M$_>$ED/:/C/B5H00;4_>^!T"^/,(6L]P,-Y8I*78VX MK*AR8NOG_-HSA@1,YGO\ @>V3?$.I7='MD*PI0A9<-J:8"%53I6?21J>?P"TU^L%(/[>1.,J:Q M!N+,;).2Y3D52&"C8M0=#$-+.'K4)W2F.%QS?+%B_S=]OAMJT$2H>CSI5 _@ M B2\BMSGV^H;ZO"3ZN*[M3ZUEFU@7]A4W\UT*/K\0_'MV8I144/4UI4^J:)$ MKQ55SRP5NH*EO0@Y$+R_00WK?)CIIB=!:[IJLL3Z<4&IP%I=":9++!/QD%%; ML'YI#Q)\0XT.%^LQ:)RSMXI8OZ*O\AHX-, &NQJL>%$*K!+=K673#^6PV+90 M:X?USCJ5DO?,]KMHC"?5O["=+G83"]M5-?T'&[0+* M610>K"MT "LIU:8V<7V"ZN]2[5H DOV^5'(M'-D4$L! A0#% @ ?79\ M6%)MS0" #@ =,H !4 ( !CA &EN&UL4$L! A0#% @ ?79\6.C4R^*&1 0M4$ !4 M ( !OZ0 &EN#$P M:RYH=&U02P$"% ,4 " !]=GQ8NH'-8?(# #F#@ & M@ &:[ ( :6YR9"TR,#(S,3(S,7AE>#(S9#$N:'1M4$L! A0#% @ ?79\ M6!VP>ZJ@" E20 !@ ( !PO " &EN&5X,S%D,BYH=&U02P$"% ,4 M" !]=GQ8$2BLQU,% !>%@ & @ %X @, :6YR9"TR,#(S M,3(S,7AE>#,R9#$N:'1M4$L! A0#% @ ?79\6).2D]!;!0 818 !@ M ( ! 0@# &EN XML 82 inrd-20231231x10k_htm.xml IDEA: XBRL DOCUMENT 0000719494 us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000719494 us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000719494 us-gaap:TreasuryStockCommonMember 2023-12-31 0000719494 us-gaap:RetainedEarningsMember 2023-12-31 0000719494 inrd:CapitalInExcessOfParValueMember 2023-12-31 0000719494 us-gaap:TreasuryStockCommonMember 2022-12-31 0000719494 us-gaap:RetainedEarningsMember 2022-12-31 0000719494 inrd:CapitalInExcessOfParValueMember 2022-12-31 0000719494 us-gaap:TreasuryStockCommonMember 2021-12-31 0000719494 us-gaap:RetainedEarningsMember 2021-12-31 0000719494 inrd:CapitalInExcessOfParValueMember 2021-12-31 0000719494 us-gaap:CommonStockMember 2023-12-31 0000719494 us-gaap:CommonStockMember 2022-12-31 0000719494 us-gaap:CommonStockMember 2021-12-31 0000719494 inrd:ExercisePriceRangeTwoMember 2023-01-01 2023-12-31 0000719494 inrd:ExercisePriceRangeThreeMember 2023-01-01 2023-12-31 0000719494 inrd:ExercisePriceRangeOneMember 2023-01-01 2023-12-31 0000719494 inrd:ExercisePriceRangeTwoMember 2023-12-31 0000719494 inrd:ExercisePriceRangeThreeMember 2023-12-31 0000719494 inrd:ExercisePriceRangeOneMember 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2021-01-01 2021-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2021-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2023-12-31 0000719494 inrd:EquityCompensation2010ProgramMember 2023-12-31 0000719494 srt:MinimumMember inrd:PropertyAndEquipmentExcludingLeaseholdImprovementsMember 2023-12-31 0000719494 srt:MaximumMember us-gaap:LeaseholdImprovementsMember 2023-12-31 0000719494 srt:MaximumMember inrd:PropertyAndEquipmentExcludingLeaseholdImprovementsMember 2023-12-31 0000719494 us-gaap:MachineryAndEquipmentMember 2023-12-31 0000719494 us-gaap:LeaseholdImprovementsMember 2023-12-31 0000719494 inrd:OfficeAndComputerEquipmentMember 2023-12-31 0000719494 us-gaap:MachineryAndEquipmentMember 2022-12-31 0000719494 us-gaap:LeaseholdImprovementsMember 2022-12-31 0000719494 inrd:OfficeAndComputerEquipmentMember 2022-12-31 0000719494 us-gaap:StateAndLocalJurisdictionMember 2023-12-31 0000719494 us-gaap:DomesticCountryMember 2023-12-31 0000719494 us-gaap:StateAndLocalJurisdictionMember 2022-12-31 0000719494 us-gaap:DomesticCountryMember 2022-12-31 0000719494 2019-07-08 0000719494 2023-10-12 0000719494 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-31 0000719494 us-gaap:RetainedEarningsMember 2022-01-01 2022-12-31 0000719494 inrd:AffiliateOfClarexMember us-gaap:ConvertibleSubordinatedDebtMember 2023-12-31 0000719494 inrd:AffiliateOfClarexMember us-gaap:ConvertibleSubordinatedDebtMember 2022-12-31 0000719494 inrd:AffiliateOfClarexMember us-gaap:ConvertibleSubordinatedDebtMember 2023-01-01 2023-12-31 0000719494 inrd:AffiliateOfClarexMember us-gaap:ConvertibleSubordinatedDebtMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember us-gaap:ConvertibleNotesPayableMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2022-12-31 0000719494 inrd:EquipmentFinancingMember 2023-01-01 2023-12-31 0000719494 inrd:EquipmentFinancingMember 2022-01-01 2022-12-31 0000719494 inrd:UsSmallBusinessAdministrationNotePayableMember 2023-12-31 0000719494 inrd:EquipmentFinancingMember 2023-12-31 0000719494 inrd:AffiliateOfClarexMember us-gaap:ConvertibleSubordinatedDebtMember 2023-10-12 0000719494 inrd:UsSmallBusinessAdministrationNotePayableMember 2022-12-31 0000719494 inrd:EquipmentFinancingMember 2022-12-31 0000719494 inrd:AffiliateOfClarexMember inrd:ConvertibleSubordinatedDebt1500000Member 2023-10-12 2023-10-12 0000719494 inrd:AffiliateOfClarexMember inrd:ConvertibleSubordinatedDebt1000000Member 2023-10-12 2023-10-12 0000719494 inrd:AffiliateOfClarexMember inrd:ConvertibleSubordinatedDebt1500000Member 2023-10-12 0000719494 inrd:AffiliateOfClarexMember inrd:ConvertibleSubordinatedDebt1000000Member 2023-10-12 0000719494 inrd:MajorCustomersTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:MajorCustomersThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:MajorCustomersOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:CustomerTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:CustomerThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:CustomerOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:MajorCustomersTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:MajorCustomersThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:MajorCustomersOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:CustomerTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:CustomerThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:CustomerOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 us-gaap:ConvertibleSubordinatedDebtMember 2023-12-31 0000719494 inrd:WarrantsIssuableOnConversionOfSubordinatedConvertibleNotesMember 2023-12-31 0000719494 inrd:EquityCompensationPlan2010Member 2023-12-31 0000719494 inrd:EquityCompensationPlan2000Member 2023-12-31 0000719494 us-gaap:ConvertibleSubordinatedDebtMember us-gaap:CommonStockMember 2023-10-12 0000719494 2021-12-31 0000719494 us-gaap:WarrantMember us-gaap:ConvertibleNotesPayableMember 2023-01-01 2023-12-31 0000719494 us-gaap:ConvertibleNotesPayableMember 2023-01-01 2023-12-31 0000719494 us-gaap:ConvertibleNotesPayableMember us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember us-gaap:CostOfSalesMember 2023-01-01 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-12-31 0000719494 us-gaap:EmployeeStockOptionMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember us-gaap:CostOfSalesMember 2022-01-01 2022-12-31 0000719494 us-gaap:EmployeeStockOptionMember 2022-01-01 2022-12-31 0000719494 inrd:CapitalInExcessOfParValueMember 2023-01-01 2023-12-31 0000719494 inrd:CapitalInExcessOfParValueMember 2022-01-01 2022-12-31 0000719494 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-12-31 0000719494 inrd:ScientificRdMember 2023-01-01 2023-12-31 0000719494 inrd:ProcessControlMetrologyMember 2023-01-01 2023-12-31 0000719494 inrd:LaserSystemsMember 2023-01-01 2023-12-31 0000719494 inrd:AerospaceDefenseMember 2023-01-01 2023-12-31 0000719494 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-12-31 0000719494 inrd:ScientificRdMember 2022-01-01 2022-12-31 0000719494 inrd:ProcessControlMetrologyMember 2022-01-01 2022-12-31 0000719494 inrd:LaserSystemsMember 2022-01-01 2022-12-31 0000719494 inrd:AerospaceDefenseMember 2022-01-01 2022-12-31 0000719494 us-gaap:ConvertibleSubordinatedDebtMember us-gaap:WarrantMember 2023-10-12 2023-10-12 0000719494 us-gaap:ConvertibleSubordinatedDebtMember us-gaap:CommonStockMember 2023-10-12 2023-10-12 0000719494 inrd:EquityCompensation2010ProgramMember 2023-01-01 2023-12-31 0000719494 inrd:TopThreeMajorCustomersMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:TopFiveCustomersMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000719494 inrd:TopThreeMajorCustomersMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 inrd:TopFiveCustomersMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000719494 2022-01-01 2022-12-31 0000719494 2023-12-31 0000719494 2022-12-31 0000719494 inrd:UsSmallBusinessAdministrationNotePayableMember 2023-01-01 2023-12-31 0000719494 inrd:UsSmallBusinessAdministrationNotePayableMember 2022-01-01 2022-12-31 0000719494 2023-10-01 2023-12-31 0000719494 2023-06-30 0000719494 2024-03-28 0000719494 2023-01-01 2023-12-31 shares iso4217:USD inrd:customer inrd:item pure iso4217:USD shares http://fasb.org/us-gaap/2023#RelatedPartyMember http://fasb.org/us-gaap/2023#RelatedPartyMember 15967537 P5Y P10Y 0000719494 --12-31 2023 FY false true http://fasb.org/us-gaap/2023#RelatedPartyMember 10-K true 2023-12-31 false 0-11668 Inrad Optics, Inc. NJ 22-2003247 181 Legrand Avenue Northvale NJ 07647 201 767-1910 Common stock, par value $.01 Per Share No No Yes Yes Non-accelerated Filer true false false false false 5762963 14250975 false false false false PKF O’Connor Davies, LLP New York 127 2973384 2003485 46000 46000 1591996 1389867 3148708 2825987 665262 309287 8379350 6528626 16330559 15967537 15034667 14723869 1295892 1243668 561909 561909 443532 737743 1000000 26993 26993 11707676 9098939 71362 67513 832149 741281 1067183 1065173 309618 295978 2280312 2169945 2500000 2500000 245379 316740 133915 444462 5159606 5431147 0.01 0.01 60000000 60000000 14235575 14092920 142357 140931 20135722 19925292 -13715059 -16383481 6563020 3682742 4600 4600 14950 14950 6548070 3667792 11707676 9098939 12909657 10631032 7984129 7529893 3111773 2782082 11095902 10311975 1813756 319057 -145333 -166482 -145333 -166482 1668422 152575 -1000000 0 2668422 152575 0.19 0.01 0.16 0.01 14196490 14018227 17231568 14724895 13967257 139674 19733996 -16536056 -14950 3322664 59663 597 50158 50755 116478 116478 66000 660 24660 25320 152575 152575 14092920 140931 19925292 -16383481 -14950 3667792 33322 333 54388 54721 117249 117249 109333 1093 38793 39886 2668422 2668422 14235575 142357 20135722 -13715059 -14950 6548070 2668422 152575 310798 249265 54721 50755 117249 116478 -1000000 -246888 -99662 202129 102214 75833 201454 61765 661190 -296906 596212 90867 186677 2010 488699 -1307876 623566 1360546 776141 363022 539116 -363022 -539116 39886 25320 -67512 -60048 -27626 -34728 969898 202297 2003485 1801188 2973383 2003485 168397 161948 879300 270320 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">1.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">a.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Nature of Business and Operations</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Inrad Optics, Inc. and Subsidiaries (the “Company”) was incorporated in the state of New Jersey and is a manufacturer of products and services for use in the photonics industry enabling key applications for the semiconductor metrology, life sciences, and aerospace and defense industries. The company’s products include custom glass, single crystal, metal optical components and assemblies, and x-ray imaging crystals and assemblies. Company’s principal customers include commercial instrumentation companies and OEM laser systems manufacturers, research laboratories, government agencies, and defense contractors. The Company’s administrative offices and manufacturing operations are in Northvale, New Jersey.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">b.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Principles of consolidation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiaries. Upon consolidation, all inter-company accounts and transactions are eliminated.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">c.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Use of estimates</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make certain estimates and assumptions. These estimates and assumptions affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates include, but are not limited to, determining our allowance for doubtful accounts, our allowance for inventory obsolescence, the fair value and depreciable lives of long-lived tangible and intangible assets, and deferred taxes and any associated valuation allowance. Actual results could differ from these estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">d.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cash and cash equivalents</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company considers cash-on-hand and highly liquid investments with original maturity dates of three months or less at the date of purchase to be cash and cash equivalents.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">e.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Accounts receivable</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Beginning in 2023, the Company adopted Accounting Standards Update (ASU) No. 2016-13, Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. ASU 2016-13 requires entities to use a forward-looking approach based on expected losses to estimate credit losses on certain types of financial instruments, including trade receivables.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company extends credit to its customers that satisfy pre-defined credit criteria. Accounts receivable are recorded net of an allowance for credit losses. The Company estimates the allowance for credit losses based on an analysis of the aging of accounts receivable, assessment of collectability, including any known or anticipated bankruptcies, customer-specific circumstances, and an evaluation of current economic conditions. Actual write-off of receivables may differ from estimates due to changes in customer and economic circumstances. During 2023 there was no change in allowances related to customer receivables and in 2022 a net reduction of $46,000 in allowances related to customer receivables was recorded due to a change in customers’ financial condition, actual and anticipated bankruptcies and other associated claims.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">f.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Inventories</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Inventories are stated at the lower of cost (first-in, first-out method) or net-realizable value. Cost of manufactured goods includes material, labor and overhead.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company records a reserve for slow moving inventory as a charge against earnings for all products identified as surplus, slow moving, or discontinued. Excess work-in-process costs are charged against earnings whenever estimated costs-of-completion exceed unbilled revenues.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">g.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Plant and Equipment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Plant and equipment are depreciated using the straight-line method over the estimated useful lives of the related assets which range between <span style="-sec-ix-hidden:Hidden_xAD2LFAdBUmwL7y9uGnpGQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">five</span></span> and seven years. Amortization of leasehold improvements is computed using the straight-line method over the lesser of <span style="-sec-ix-hidden:Hidden_5vDIHQHx5EuiVtCJwoAUIQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">10 years</span></span> or the remaining term of the lease including optional renewal periods, as appropriate, when failure to renew the lease imposes an economic penalty on the Company in such an amount that renewal appears to be probable. In determining the amount of the economic penalty, management considers such factors as (i) the costs associated with the physical relocation of the offices, manufacturing facility and equipment, (ii) the economic risks associated with business interruption and potential customer loss during relocation and transition to new premises, (iii) the significant costs of leasehold improvements required at any new location to custom fit our specific manufacturing requirements, and (iv) the economic loss associated with abandonment of existing leasehold improvements or other assets whose value would be impaired by vacating the facility.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Maintenance and repairs of property and equipment are charged to operations and major improvements are capitalized. Upon retirement, sale or other disposition of property and equipment, the cost and accumulated depreciation are eliminated from the accounts and a gain or loss is recorded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">h.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income taxes</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Deferred taxes are provided on the asset and liability method whereby deferred tax assets are recognized for deductible temporary differences and operating loss and tax credit carry forwards and deferred tax liabilities are recognized for taxable temporary differences. Temporary differences are the differences between the amounts of assets and liabilities recorded for income tax and financial reporting purposes. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion of the deferred tax assets will not be realized. Deferred tax assets and liabilities are adjusted for the effects of changes in tax laws and rates on the date of enactment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company recognizes the financial statement benefit of an uncertain tax position only after determining that the relevant tax authority would more likely than not sustain the position. For tax positions meeting the more likely than not threshold, the amount recognized in the financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company classifies interest and penalties related to income taxes as income tax expense in its Consolidated Financial Statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company had no unrecognized tax benefits or liabilities, and no adjustment to its financial position, results of operations, or cash flows relating to uncertain tax positions taken on all open tax years. The Company is no longer subject to federal income tax examinations by tax authorities for the years before 2020 and state or local income tax examinations by tax authorities for the years before 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">i.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Impairment of long-lived assets</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Long-lived assets, such as plant and equipment and purchased intangibles with finite lives, which are subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated future cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the assets. Long-lived assets held for sale would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">j.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Stock-based compensation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Stock based compensation expense is estimated at the grant date based on the fair value of the award. The Company estimates the fair value of stock options granted using the Black-Scholes option pricing model. The fair value of restricted stock units granted is estimated based on the closing market price of the Company’s common stock on the date of the grant. The fair value of these awards, adjusted for estimated forfeitures, is amortized over the requisite service period of the award, which is generally the vesting period.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">k.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Revenue recognition</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company’s revenues are comprised of product sales as well as products and services provided under long-term government contracts with its customers. All revenue is recognized when the Company satisfies its performance obligation(s) under the contract (either implicit or explicit) by transferring the promised product or service to its customer either when (or as) its customer obtains control of the product or service. A performance obligation is a promise in a contract to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. The majority of the Company’s contracts have a single performance obligation, as the promise to transfer products or services is not separately identifiable from other promises in the contract and, therefore, not distinct. For contracts with multiple performance obligations, the Company allocates the contract’s transaction price to each performance obligation using the Company’s best estimate of standalone selling price for each distinct product or service in the contract, which is generally based on an observable price. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Revenue is measured as the amount of consideration the Company expects to receive in exchange for transferring products or providing services. As such, revenue is recorded net of returns, allowances, customer discounts, and incentives. Sales, value added, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are included in cost of goods sold.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">l.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Internal research and development costs</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Internal research and development costs are charged to expense as incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">m.          <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Precious metals</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Precious metals, particularly platinum crucibles, are used in industrial applications for melting and fusing materials at high temperatures, especially in industries such as metallurgy, ceramics, glass and crystal manufacturing. The Company maintains certain platinum crucibles as a production tool. The Company’s precious metals are stated at cost. From time to time the quoted market values of these precious metals may be below cost. Management evaluates these market adjustments on a recurring basis and if it is determined that they are other than temporary the carrying value will be adjusted. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">n.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Advertising costs</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Advertising costs included in selling, general and administrative expenses were $16,000 and $25,000 for the years ended December 31, 2023 and 2022, respectively. Advertising costs are charged to expense when the related services are incurred or related events take place.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">p.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Concentrations and credit risk</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The concentration of credit risk in the Company’s accounts receivable is mitigated by the Company’s credit evaluation process, familiarity with its small base of recurring customers and reasonably short collection terms and the geographical dispersion of revenue. The Company generally does not require collateral but, in some cases, the Company negotiates cash advances prior to the undertaking of the work. These cash advances are recorded as current liabilities on the balance sheet until corresponding revenues are realized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company is subject to credit risk for cash accounts in a financial institution, which at times may exceed the Federal Deposit Insurance Corporation coverage limit of $250,000. In May 2023, the Company entered into an Insured Cash Sweep (“ICS”) agreement with Valley National Bank, where funds are placed at destination institutions through the service of the Promontory Interfinancial Network, LLC. Such funds placed into the deposit account will not exceed the Federal Deposit Insurance Corporation (“FDIC”) standard maximum deposit insurance amount, currently $250,000, at any one destination institution thereby eliminating credit risk on cash balances over $250,000.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company utilizes many relatively uncommon materials and compounds to manufacture its products and relies on outside vendors for certain manufacturing services. Therefore, any failure by its suppliers to deliver materials of an adequate quality and quantity could have an adverse effect on the Company’s ability to meet the commitments of its customers.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">For the year ended December 31, 2023, the Company had three customers who had sales representing 27.5%, 14.8% and 12.1% of total revenues. For the year ended December 31, 2022, the Company had three customers who had sales representing 19.7%, 15.3% and 15.1% of total revenues. Since the Company is a supplier of custom manufactured components to OEM customers, the relative size and identity of the largest customer accounts changes somewhat from year to year. In the short term, the loss of any one of these large customer accounts could have a material adverse effect on business, results of operations, and financial condition.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">q.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Fair value measurements</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company follows U.S. GAAP accounting guidance which establishes a framework for measuring fair value and expanded related disclosures. The framework requires fair value to be determined based on the exchange price that would be received for an asset or paid to transfer a liability (an exit price), in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The valuation techniques required are based upon observable and unobservable inputs. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company’s market assumptions. The accounting guidance requires the following fair value hierarchy:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 10pt 18pt;"><span style="font-family:'Times New Roman';">●</span>      Level 1 - Quoted prices (unadjusted) for identical assets and liabilities in active markets that the Company has the ability to access at the measurement date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 10pt 18pt;"><span style="font-family:'Times New Roman';">●</span>      Level 2 - Quoted prices for similar assets and liabilities in active markets; quoted prices for identical or similar assets and liabilities in markets that are not active; and inputs other than quoted prices that are observable for the asset or liability, including interest rates, yield curves and credit risks, or inputs that are derived principally from or corroborated by observable market data through correlation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 10pt 18pt;"><span style="font-family:'Times New Roman';">●</span>      Level 3 - Values determined by models, significant inputs to which are unobservable and are primarily based on internally derived assumptions regarding the timing and amount of expected cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Long-lived assets may be measured at fair value if such assets are held for sale or if there is a determination that the asset is impaired. Management’s determination of fair value, although highly subjective, is based on the best information available, including internal projections of future earnings and cash flows discounted at an appropriate interest rate, quoted market prices when available, market prices for similar assets, broker quotes and independent appraisals, as appropriate.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">r.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Recent Accounting Pronouncements</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses: Measurement of Credit Losses on Financial Instruments" (“ASU 2016-13”) which amended guidance on the accounting for credit losses on financial instruments within its scope. The guidance introduces an expected loss model for estimating credit losses, replacing the incurred loss model. The new guidance also changes the impairment model for available-for-sale debt securities, requiring the use of an allowance to record estimated credit losses (and subsequent recoveries). The new guidance is effective for interim and annual periods beginning in 2023, with earlier application permitted. The adoption of this guidance did not have a material impact on the Company’s consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">In August 2020, the FASB issued ASU 2020-06, Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity. This ASU update is intended to simplify the complexity associated with applying generally accepted accounting principles (GAAP) for certain financial instruments with characteristics of liabilities and equity. This guidance is effective for the Company for fiscal years beginning after December 15, 2023, including interim periods within those fiscal years. The Company does not expect the adoption of this guidance will have a material impact on the Company’s consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">s.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Subsequent events</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"> </span><span style="text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Management has performed an evaluation of subsequent events through the date that the financial statements were issued and has determined that it does not have any additional material subsequent events to disclose in these financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">a.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Nature of Business and Operations</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Inrad Optics, Inc. and Subsidiaries (the “Company”) was incorporated in the state of New Jersey and is a manufacturer of products and services for use in the photonics industry enabling key applications for the semiconductor metrology, life sciences, and aerospace and defense industries. The company’s products include custom glass, single crystal, metal optical components and assemblies, and x-ray imaging crystals and assemblies. Company’s principal customers include commercial instrumentation companies and OEM laser systems manufacturers, research laboratories, government agencies, and defense contractors. The Company’s administrative offices and manufacturing operations are in Northvale, New Jersey.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">b.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Principles of consolidation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiaries. Upon consolidation, all inter-company accounts and transactions are eliminated.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">c.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Use of estimates</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make certain estimates and assumptions. These estimates and assumptions affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates include, but are not limited to, determining our allowance for doubtful accounts, our allowance for inventory obsolescence, the fair value and depreciable lives of long-lived tangible and intangible assets, and deferred taxes and any associated valuation allowance. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">d.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cash and cash equivalents</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company considers cash-on-hand and highly liquid investments with original maturity dates of three months or less at the date of purchase to be cash and cash equivalents.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">e.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Accounts receivable</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Beginning in 2023, the Company adopted Accounting Standards Update (ASU) No. 2016-13, Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. ASU 2016-13 requires entities to use a forward-looking approach based on expected losses to estimate credit losses on certain types of financial instruments, including trade receivables.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company extends credit to its customers that satisfy pre-defined credit criteria. Accounts receivable are recorded net of an allowance for credit losses. The Company estimates the allowance for credit losses based on an analysis of the aging of accounts receivable, assessment of collectability, including any known or anticipated bankruptcies, customer-specific circumstances, and an evaluation of current economic conditions. Actual write-off of receivables may differ from estimates due to changes in customer and economic circumstances. During 2023 there was no change in allowances related to customer receivables and in 2022 a net reduction of $46,000 in allowances related to customer receivables was recorded due to a change in customers’ financial condition, actual and anticipated bankruptcies and other associated claims.</p> 0 46000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">f.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Inventories</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Inventories are stated at the lower of cost (first-in, first-out method) or net-realizable value. Cost of manufactured goods includes material, labor and overhead.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company records a reserve for slow moving inventory as a charge against earnings for all products identified as surplus, slow moving, or discontinued. Excess work-in-process costs are charged against earnings whenever estimated costs-of-completion exceed unbilled revenues.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">g.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Plant and Equipment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Plant and equipment are depreciated using the straight-line method over the estimated useful lives of the related assets which range between <span style="-sec-ix-hidden:Hidden_xAD2LFAdBUmwL7y9uGnpGQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">five</span></span> and seven years. Amortization of leasehold improvements is computed using the straight-line method over the lesser of <span style="-sec-ix-hidden:Hidden_5vDIHQHx5EuiVtCJwoAUIQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">10 years</span></span> or the remaining term of the lease including optional renewal periods, as appropriate, when failure to renew the lease imposes an economic penalty on the Company in such an amount that renewal appears to be probable. In determining the amount of the economic penalty, management considers such factors as (i) the costs associated with the physical relocation of the offices, manufacturing facility and equipment, (ii) the economic risks associated with business interruption and potential customer loss during relocation and transition to new premises, (iii) the significant costs of leasehold improvements required at any new location to custom fit our specific manufacturing requirements, and (iv) the economic loss associated with abandonment of existing leasehold improvements or other assets whose value would be impaired by vacating the facility.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Maintenance and repairs of property and equipment are charged to operations and major improvements are capitalized. Upon retirement, sale or other disposition of property and equipment, the cost and accumulated depreciation are eliminated from the accounts and a gain or loss is recorded.</p> P7Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">h.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income taxes</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Deferred taxes are provided on the asset and liability method whereby deferred tax assets are recognized for deductible temporary differences and operating loss and tax credit carry forwards and deferred tax liabilities are recognized for taxable temporary differences. Temporary differences are the differences between the amounts of assets and liabilities recorded for income tax and financial reporting purposes. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion of the deferred tax assets will not be realized. Deferred tax assets and liabilities are adjusted for the effects of changes in tax laws and rates on the date of enactment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company recognizes the financial statement benefit of an uncertain tax position only after determining that the relevant tax authority would more likely than not sustain the position. For tax positions meeting the more likely than not threshold, the amount recognized in the financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company classifies interest and penalties related to income taxes as income tax expense in its Consolidated Financial Statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company had no unrecognized tax benefits or liabilities, and no adjustment to its financial position, results of operations, or cash flows relating to uncertain tax positions taken on all open tax years. The Company is no longer subject to federal income tax examinations by tax authorities for the years before 2020 and state or local income tax examinations by tax authorities for the years before 2020.</p> 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">i.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Impairment of long-lived assets</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Long-lived assets, such as plant and equipment and purchased intangibles with finite lives, which are subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated future cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the assets. Long-lived assets held for sale would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">j.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Stock-based compensation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Stock based compensation expense is estimated at the grant date based on the fair value of the award. The Company estimates the fair value of stock options granted using the Black-Scholes option pricing model. The fair value of restricted stock units granted is estimated based on the closing market price of the Company’s common stock on the date of the grant. The fair value of these awards, adjusted for estimated forfeitures, is amortized over the requisite service period of the award, which is generally the vesting period.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">k.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Revenue recognition</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company’s revenues are comprised of product sales as well as products and services provided under long-term government contracts with its customers. All revenue is recognized when the Company satisfies its performance obligation(s) under the contract (either implicit or explicit) by transferring the promised product or service to its customer either when (or as) its customer obtains control of the product or service. A performance obligation is a promise in a contract to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. The majority of the Company’s contracts have a single performance obligation, as the promise to transfer products or services is not separately identifiable from other promises in the contract and, therefore, not distinct. For contracts with multiple performance obligations, the Company allocates the contract’s transaction price to each performance obligation using the Company’s best estimate of standalone selling price for each distinct product or service in the contract, which is generally based on an observable price. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Revenue is measured as the amount of consideration the Company expects to receive in exchange for transferring products or providing services. As such, revenue is recorded net of returns, allowances, customer discounts, and incentives. Sales, value added, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are included in cost of goods sold.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">l.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Internal research and development costs</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Internal research and development costs are charged to expense as incurred.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">m.          <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Precious metals</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Precious metals, particularly platinum crucibles, are used in industrial applications for melting and fusing materials at high temperatures, especially in industries such as metallurgy, ceramics, glass and crystal manufacturing. The Company maintains certain platinum crucibles as a production tool. The Company’s precious metals are stated at cost. From time to time the quoted market values of these precious metals may be below cost. Management evaluates these market adjustments on a recurring basis and if it is determined that they are other than temporary the carrying value will be adjusted. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">n.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Advertising costs</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Advertising costs included in selling, general and administrative expenses were $16,000 and $25,000 for the years ended December 31, 2023 and 2022, respectively. Advertising costs are charged to expense when the related services are incurred or related events take place.</p> 16000 25000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">p.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Concentrations and credit risk</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The concentration of credit risk in the Company’s accounts receivable is mitigated by the Company’s credit evaluation process, familiarity with its small base of recurring customers and reasonably short collection terms and the geographical dispersion of revenue. The Company generally does not require collateral but, in some cases, the Company negotiates cash advances prior to the undertaking of the work. These cash advances are recorded as current liabilities on the balance sheet until corresponding revenues are realized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company is subject to credit risk for cash accounts in a financial institution, which at times may exceed the Federal Deposit Insurance Corporation coverage limit of $250,000. In May 2023, the Company entered into an Insured Cash Sweep (“ICS”) agreement with Valley National Bank, where funds are placed at destination institutions through the service of the Promontory Interfinancial Network, LLC. Such funds placed into the deposit account will not exceed the Federal Deposit Insurance Corporation (“FDIC”) standard maximum deposit insurance amount, currently $250,000, at any one destination institution thereby eliminating credit risk on cash balances over $250,000.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company utilizes many relatively uncommon materials and compounds to manufacture its products and relies on outside vendors for certain manufacturing services. Therefore, any failure by its suppliers to deliver materials of an adequate quality and quantity could have an adverse effect on the Company’s ability to meet the commitments of its customers.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">For the year ended December 31, 2023, the Company had three customers who had sales representing 27.5%, 14.8% and 12.1% of total revenues. For the year ended December 31, 2022, the Company had three customers who had sales representing 19.7%, 15.3% and 15.1% of total revenues. Since the Company is a supplier of custom manufactured components to OEM customers, the relative size and identity of the largest customer accounts changes somewhat from year to year. In the short term, the loss of any one of these large customer accounts could have a material adverse effect on business, results of operations, and financial condition.</p> 3 0.275 0.148 0.121 3 0.197 0.153 0.151 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">q.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Fair value measurements</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company follows U.S. GAAP accounting guidance which establishes a framework for measuring fair value and expanded related disclosures. The framework requires fair value to be determined based on the exchange price that would be received for an asset or paid to transfer a liability (an exit price), in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The valuation techniques required are based upon observable and unobservable inputs. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company’s market assumptions. The accounting guidance requires the following fair value hierarchy:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 10pt 18pt;"><span style="font-family:'Times New Roman';">●</span>      Level 1 - Quoted prices (unadjusted) for identical assets and liabilities in active markets that the Company has the ability to access at the measurement date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 10pt 18pt;"><span style="font-family:'Times New Roman';">●</span>      Level 2 - Quoted prices for similar assets and liabilities in active markets; quoted prices for identical or similar assets and liabilities in markets that are not active; and inputs other than quoted prices that are observable for the asset or liability, including interest rates, yield curves and credit risks, or inputs that are derived principally from or corroborated by observable market data through correlation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 10pt 18pt;"><span style="font-family:'Times New Roman';">●</span>      Level 3 - Values determined by models, significant inputs to which are unobservable and are primarily based on internally derived assumptions regarding the timing and amount of expected cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Long-lived assets may be measured at fair value if such assets are held for sale or if there is a determination that the asset is impaired. Management’s determination of fair value, although highly subjective, is based on the best information available, including internal projections of future earnings and cash flows discounted at an appropriate interest rate, quoted market prices when available, market prices for similar assets, broker quotes and independent appraisals, as appropriate.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">r.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Recent Accounting Pronouncements</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses: Measurement of Credit Losses on Financial Instruments" (“ASU 2016-13”) which amended guidance on the accounting for credit losses on financial instruments within its scope. The guidance introduces an expected loss model for estimating credit losses, replacing the incurred loss model. The new guidance also changes the impairment model for available-for-sale debt securities, requiring the use of an allowance to record estimated credit losses (and subsequent recoveries). The new guidance is effective for interim and annual periods beginning in 2023, with earlier application permitted. The adoption of this guidance did not have a material impact on the Company’s consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">In August 2020, the FASB issued ASU 2020-06, Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity. This ASU update is intended to simplify the complexity associated with applying generally accepted accounting principles (GAAP) for certain financial instruments with characteristics of liabilities and equity. This guidance is effective for the Company for fiscal years beginning after December 15, 2023, including interim periods within those fiscal years. The Company does not expect the adoption of this guidance will have a material impact on the Company’s consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">s.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Subsequent events</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"> </span><span style="text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Management has performed an evaluation of subsequent events through the date that the financial statements were issued and has determined that it does not have any additional material subsequent events to disclose in these financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">2.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Revenue</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="9" style="vertical-align:bottom;white-space:nowrap;width:38.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:18.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:18.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:60%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Market (In thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">%</b></p></td></tr><tr><td style="vertical-align:bottom;width:60%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Aerospace &amp; Defense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,540</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,008</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 28.3</p></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Process Control &amp; Metrology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,325</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 65.7</p></td></tr><tr><td style="vertical-align:bottom;width:60%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Laser Systems</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 53</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 188</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.8</p></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Scientific / R&amp;D</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 992</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 454</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4.3</p></td></tr><tr><td style="vertical-align:bottom;width:60%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,631</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100.0</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The majority of the Company’s revenue is from products and services transferred to customers at a point in time and were 100% of revenue for 2023 and 2022, respectively. The Company recognizes revenue at the point in time in which the customer obtains control of the product or service, which is generally when product title passes to the customer upon shipment. In limited cases, title does not transfer, and revenue is not recognized until the customer has received the products at its physical location.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="9" style="vertical-align:bottom;white-space:nowrap;width:38.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:18.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:18.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:60%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Market (In thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">%</b></p></td></tr><tr><td style="vertical-align:bottom;width:60%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Aerospace &amp; Defense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,540</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,008</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 28.3</p></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Process Control &amp; Metrology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,325</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 65.7</p></td></tr><tr><td style="vertical-align:bottom;width:60%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Laser Systems</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 53</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 188</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.8</p></td></tr><tr><td style="vertical-align:bottom;width:60%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Scientific / R&amp;D</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 992</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 454</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4.3</p></td></tr><tr><td style="vertical-align:bottom;width:60%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,631</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100.0</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p> 2540000 0.197 3008000 0.283 9325000 0.721 6981000 0.657 53000 0.004 188000 0.018 992000 0.077 454000 0.043 12910000 1.000 10631000 1.000 1 1 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">3.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Inventories, net</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">Inventories are comprised of the following and are shown net of inventory reserves of approximately $2.1 million and $2.4 million at December 31, 2023 and 2022, respectively:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">December 31, </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2022</p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">(in thousands)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Raw materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 718</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,065</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Work in process, including manufactured parts and components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,915</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,282</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Finished goods</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 516</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 479</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,826</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 2100000 2400000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">December 31, </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2022</p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">(in thousands)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Raw materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 718</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,065</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Work in process, including manufactured parts and components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,915</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,282</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Finished goods</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 516</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 479</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,826</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 718000 1065000 1915000 1282000 516000 479000 3149000 2826000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">4.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Plant and Equipment</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">Plant and equipment are comprised of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">December 31, </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2022</p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">(In thousands)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office and computer equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,487</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,487</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Machinery and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,458</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,126</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,386</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,354</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,331</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_0hI5Q0SeEUODbNfX5D_zpA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> 15,967</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less accumulated depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (15,035)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (14,724)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,296</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,244</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Depreciation and amortization expense recorded by the Company totaled approximately $311,000 and $249,000 and for 2023 and 2022, respectively. There were no fully depreciated assets written off in 2023. Fully depreciated assets of $235,000 were written off in 2022. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The Company evaluates its property and equipment for impairment when events or circumstances indicate an impairment may exist. Based on this evaluation, the Company concluded that, at December 31, 2023 and 2022, its long-lived assets were not impaired.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">December 31, </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2022</p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">(In thousands)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office and computer equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,487</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,487</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Machinery and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,458</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,126</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,386</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,354</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,331</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_0hI5Q0SeEUODbNfX5D_zpA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> 15,967</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less accumulated depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (15,035)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (14,724)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,296</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,244</p></td></tr></table> 1487000 1487000 12458000 12126000 2386000 2354000 16331000 15035000 14724000 1296000 1244000 311000 249000 0 235000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">5.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Related Party Transactions</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">On October 12, 2023, the maturity dates of a $1,500,000 Subordinated Convertible Promissory Note to Clarex Limited (“Clarex”) and a $1,000,000 Subordinated <span style="-sec-ix-hidden:Hidden_VbluUxduvk2MfzJ1-zRUJQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Convertible</span></span> Promissory Note to an affiliate of Clarex were each extended to January 15, 2025, from August 15, 2024. The notes bear interest at 6%. Interest accrues yearly and is payable on maturity. Unpaid interest, along with principal, may be converted into securities of the Company as follows: the notes are convertible in the aggregate into 1,500,000 units and 1,000,000 units, respectively, with each unit consisting of one share of common stock and one warrant. Each warrant allows the holder to acquire 0.75 shares of common stock at a price of $1.35 per share. The warrants expire on August 15, 2027.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The Company paid $0.2 million for interest on the subordinated convertible promissory notes for each of the years 2023 and 2022, respectively. Accrued interest of $37,500 is included in Accounts payable and accrued liabilities as of December 31, 2023 and 2022, respectively.</p> 1500000 1000000 0.06 1500000 1000000 1 1 0.75 1.35 200000 200000 37500 37500 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">6.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Other Long-Term Notes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">Other Long-Term Notes consist of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029.</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 160</p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 176</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 225</p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (71)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (68)</p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt, excluding current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 245</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 317</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">The Company purchased certain equipment in the 12 months ended December 31, 2022, financing approximately </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$282,000</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> at a fixed annual interest rate of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">6.1%</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> for </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">five years</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> payable in equal monthly installments.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">Other Long-Term Notes mature as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:21.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ending December 31: </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 71</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 75</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 80</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 317</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029.</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 160</p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 176</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 225</p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (71)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (68)</p></td></tr><tr><td style="vertical-align:bottom;width:73.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt, excluding current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 245</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 317</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">The Company purchased certain equipment in the 12 months ended December 31, 2022, financing approximately </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$282,000</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> at a fixed annual interest rate of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">6.1%</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> for </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">five years</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> payable in equal monthly installments.</span></td></tr></table> 1922000 1922000 0.040 0.040 140000 160000 5236000 5236000 0.061 0.061 176000 225000 71000 68000 245000 317000 282000000 0.061 P5Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:21.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ending December 31: </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 71</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 75</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 80</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44</p></td></tr><tr><td style="vertical-align:bottom;width:76.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 317</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 71000 75000 80000 25000 21000 44000 317000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt;"><b style="font-weight:bold;">7.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Accounts Payable and Accrued Liabilities</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">Accounts payable and accrued expenses are comprised of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr style="height:16.15pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade accounts payable and accrued purchases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 412</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 446</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued payroll</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued 401K company matching contribution</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 137</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued expenses – other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 270</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 741</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr style="height:16.15pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade accounts payable and accrued purchases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 412</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 446</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued payroll</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued 401K company matching contribution</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 137</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued expenses – other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 270</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 741</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 412000 446000 9000 25000 141000 137000 270000 133000 832000 741000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">8.            </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income Taxes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company did not record a current provision for either state tax or federal tax due to loss carry forwards incurred for both income tax and financial reporting purposes.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">A reconciliation of the income tax provision computed at the statutory federal income tax rate to our effective income tax rate follows (in percent):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Federal statutory rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Reduction in state rate due to tax rate change</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Change in valuation allowance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (87)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (106)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Permanent differences</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Return to provision adjustment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Effective income tax rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (60)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">At December 31, 2023 and 2022, the Company had estimated Federal net operating loss carry forwards of approximately $6.0 million and $7.8 million, respectively, and state net operating loss carry forwards of approximately $3.0 million and $5.0 million, respectively. Approximately $4.0 million net operating loss carryforwards expire during various years through 2037, and approximately $2.0 million may be carried forward indefinitely, subject to the 80% of taxable income limitation rule.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Internal Revenue Code Section 382 places a limitation on the utilization of Federal net operating loss and other credit carry forwards when an ownership change, as defined by the tax law, occurs. Generally, this occurs when a greater than 50 percentage point change in ownership occurs. Accordingly, the actual utilization of the net operating loss and carryforwards for tax purposes may be limited annually to a percentage (based on the risk-free interest rate) of the fair market value of the Company at the time of any such ownership change. The Company has not prepared an analysis of ownership changes but does not believe that a greater than 50% change of ownership has occurred and such limitations would not apply to the Company.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">Deferred tax assets (liabilities) are comprised of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Account receivable reserves</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory reserves</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 597</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 667</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory capitalization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 92</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Loss carry forwards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,458</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,562</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross deferred tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,136</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,334</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liability- depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (110)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (110)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Valuation allowance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,026)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (3,224)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net deferred tax asset</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">In evaluating the Company’s ability to recover deferred tax assets in future periods, management considers the available positive and negative factors. The Company periodically evaluates the realizability of its net deferred tax assets based on all available evidence, both positive and negative, including the Company’s recent operating results, the existence of cumulative income or losses and near-term forecasts of future taxable income that is consistent with the plans and estimates management is using to manage the underlying business. During 2023, the Company reached a cumulative income position over the previous three years. The cumulative three-year income is considered objective, verifiable and positive evidence and thus received significant weighting. Additional positive evidence considered by the Company in its assessment included recent utilization of tax attribute carryforwards and future forecasts of continued profitability. The realizability of the Company’s net deferred tax assets is dependent on its ability to generate sufficient future taxable income during periods prior to the expiration of tax attributes to fully utilize these assets. Therefore, during the fourth quarter of 2023, based on all available positive and negative evidence, the Company determined that it was appropriate to release a portion of the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">valuation allowance on the Company’s U.S. federal and other state deferred tax assets.The Company recognized a $1.0 million discrete tax benefit during year ended December 31, 2023, as a result of the valuation allowance release.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company files income tax returns in the United States, which typically provides for a three-year statute of limitations on assessments. The Company is no longer subject to federal, state, or local income tax examinations by tax authorities for the years before 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The guidance for accounting for uncertainties in income taxes requires that we recognize the financial statement effects of a tax position when it is more likely than not, based on the technical merits, that the position will be sustained upon examination. There were no unrecognized tax benefits that impacted our effective tax rate and accordingly, there was no material effect to our financial position, results of operations or cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Our policy is to recognize interest and penalties related to the underpayment of income taxes as a component of income tax expense. To date, there have been no interest or penalties charged to us in relation to the underpayment of income taxes.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">We do not anticipate that our unrecognized tax benefits will significantly increase in the next 12 months.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Federal statutory rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Reduction in state rate due to tax rate change</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Change in valuation allowance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (87)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (106)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Permanent differences</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Return to provision adjustment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Effective income tax rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (60)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table> 0.21 0.21 0.09 0.09 -0.87 -1.06 -0.01 0.33 -0.02 0.43 -0.60 6000000.0 7800000 3000000.0 5000000.0 4000000.0 2000000.0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Account receivable reserves</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory reserves</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 597</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 667</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory capitalization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 92</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Loss carry forwards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,458</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,562</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross deferred tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,136</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,334</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liability- depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (110)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (110)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Valuation allowance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,026)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (3,224)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net deferred tax asset</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr></table> 13000 13000 597000 667000 68000 92000 0 0 1458000 2562000 2136000 3334000 110000 110000 1026000 3224000 1000000 0 1000000.0 -1000000.0 0 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt;"><b style="font-weight:bold;">9.          </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Equity Compensation Program and Stock-based Compensation</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">a.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">2020 Equity Compensation Program</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">On February 12, 2020, the Inrad Optics Board of Directors adopted the Inrad Optics, Inc. 2020 Equity Compensation Program (the “2020 Program”) and received shareholder approval on June 23, 2020. The 2020 Program provides for grants of options, stock appreciation rights and restricted stock awards to employees, officers, directors, and others who render services to the Company. The 2020 Program is comprised of four parts including: (i) the Incentive Stock Option Plan which provides for grants of “incentive stock options,” (ii) the Supplemental Stock Option Plan which provides for grants of stock options that shall not be “incentive stock options,” (iii) the Stock Appreciation Rights Plan which allows the granting of stock appreciation rights and, (iv) the Restricted Stock Award Plan which provides for the granting of restrictive shares of Common Stock and restricted stock units. The 2020 Program is administered by the Compensation Committee of the Board of Directors. Under the 2020 Program, an aggregate of up to 4,000,000 shares of common stock may be granted.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">b.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">2010 Equity Compensation Program</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company’s 2010 Equity Compensation Program (the “2010 Program”) provided for grants of options, stock appreciation rights and restricted stock awards to employees, officers, directors, and others who render services to the Company.  The 2010 Program expired on March 23, 2020. All outstanding grants of options, stock appreciation rights and performance shares issued under the 2010 Program will remain outstanding and shall expire on the date determined by the terms of the original grant.  The latest date of expiration for outstanding grants under the 2010 Program is March 23, 2030.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">c.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Stock Option Expense</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company’s results include stock-based compensation expense for stock option grants totaling $117,000 and $116,000 for the years ended December 31, 2023 and 2022, respectively. Such amounts have been included in the Consolidated Statements of Operations within cost of goods sold ($13,000 for each of the years 2023 and 2022, respectively), and selling, general and administrative expenses ($104,000 and $103,000 for 2023 and 2022, respectively).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">As of December 31, 2023 and 2022, there were $122,000 and $222,000 of unrecognized compensation costs, net of estimated forfeitures, related to non-vested stock options, which are expected to be recognized over a weighted average period of approximately 1.30 and 1.54 years, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The weighted average estimated fair value of stock options granted in the two years ended December 31, 2023 and 2022, was $1.72 and $1.20, respectively. The Company uses the Black-Scholes option pricing model to calculate the grant-date fair value of an option award. The Company assumes a dividend yield of zero, as the Company has not paid dividends in the past and does not expect to in the foreseeable future. The expected volatility is based upon the historical volatility of our common stock which the Company believes results in the best estimate of the grant-date fair value of employee stock options because it reflects the market’s current </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">expectations of future volatility. The risk-free rate is based on the U.S. Treasury yield curve in effect at the time of the grant with maturity dates approximately equal to the expected life at the grant date. The expected life is based upon the period of expected benefit based on the Company’s evaluation of historical and expected future employee exercise behavior.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The following range of weighted-average assumptions were used for to determine the fair value of stock option grants during the years ended December 31, 2023 and 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Years Ended </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">December 31, </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 92.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 104.62</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Risk-free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.86</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.54</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected term</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">d.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Stock Option Activity</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">A summary of the Company’s outstanding stock options as of and for the years ended December 31, 2023 and 2022, is presented below:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price per</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Stock Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Option</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Value</b><sub style="font-size:6pt;font-weight:bold;vertical-align:sub;">(a)</sub></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding January 1, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,152,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 662,465</p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (66,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.38</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expired/Forfeited </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding December 31, 2022 <sub style="font-size:7.5pt;vertical-align:sub;">(b)</sub></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,286,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.71</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7.52</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,214,875</p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (109,333)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.36</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expired/Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (84,667)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.74</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding December 31, 2023 <sub style="font-size:7.5pt;vertical-align:sub;">(b)</sub></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,112,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.75</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6.88</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,214,875</p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercisable at December 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 905,992</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,085,699</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 36pt;">(a)   Intrinsic value for purposes of this table represents the amount by which the fair value of the underlying stock, based on the respective market prices as of December 31, 2023, exceeds the exercise prices of the respective options.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 36pt;">(b)   Based on the Company’s historical forfeiture rate, the number of options expected to vest is the same as the total outstanding at December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The following table represents non-vested stock options granted, vested, and forfeited for the year ended December 31, 2023 and 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted-average </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Grant-date Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">  ($)</b></p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-Vested - January 1, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 276,670</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.66</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.09</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vested</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (135,836)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.70</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-Vested - January 1, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 340,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.89</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.72</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vested</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (109,333)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.36</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (84,667)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.74</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-Vested – December 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 166,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.98</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The total weighted average grant date fair value of options vested during the years ended December 31, 2023 and 2022, was $30,000 and $218,000, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The following table summarizes information about stock options outstanding at December 31, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="6" style="vertical-align:bottom;white-space:nowrap;width:26.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options Exercisable</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Range of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life in Years</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$0.18 - $0.35</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 247,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.65</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 247,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$0.50 - $1.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 617,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6.09</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 557,497</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.73</p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$1.20 - $1.80</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 247,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8.87</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.55</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100,830</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.35</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 4 4000000 117000 116000 13000 13000 104000 103000 122000 222000 P1Y3M18D P1Y6M14D 1.72 1.20 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Years Ended </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">December 31, </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 92.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 104.62</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Risk-free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.86</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.54</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected term</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 0 0 0.9200 1.0462 0.0086 0.0154 P10Y P10Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price per</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Stock Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Option</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Value</b><sub style="font-size:6pt;font-weight:bold;vertical-align:sub;">(a)</sub></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding January 1, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,152,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 662,465</p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (66,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.38</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expired/Forfeited </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding December 31, 2022 <sub style="font-size:7.5pt;vertical-align:sub;">(b)</sub></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,286,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.71</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7.52</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,214,875</p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (109,333)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.36</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expired/Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (84,667)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.74</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding December 31, 2023 <sub style="font-size:7.5pt;vertical-align:sub;">(b)</sub></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,112,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.75</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6.88</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,214,875</p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercisable at December 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 905,992</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.42%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,085,699</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 36pt;">(a)   Intrinsic value for purposes of this table represents the amount by which the fair value of the underlying stock, based on the respective market prices as of December 31, 2023, exceeds the exercise prices of the respective options.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 36pt;">(b)   Based on the Company’s historical forfeiture rate, the number of options expected to vest is the same as the total outstanding at December 31, 2023.</p> 1152667 0.60 P7Y4M24D 662465 200000 1.20 66000 0.38 0 1286667 0.71 P7Y6M7D 1214875 20000 1.72 109333 0.36 84667 0.74 1112667 0.75 P6Y10M17D 1214875 905992 0.68 P6Y1M17D 1085699 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted-average </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:21.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Grant-date Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">  ($)</b></p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-Vested - January 1, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 276,670</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.66</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.09</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vested</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (135,836)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.70</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-Vested - January 1, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 340,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.89</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.72</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vested</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (109,333)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.36</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (84,667)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.74</p></td></tr><tr><td style="vertical-align:bottom;width:76.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-Vested – December 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 166,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.98</p></td></tr></table> 276670 0.66 200000 1.09 135836 0.70 0 0 340835 0.89 20000 1.72 109333 0.36 84667 0.74 166835 0.98 30000 218000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The following table summarizes information about stock options outstanding at December 31, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="6" style="vertical-align:bottom;white-space:nowrap;width:26.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options Exercisable</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Range of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life in Years</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$0.18 - $0.35</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 247,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.65</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 247,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$0.50 - $1.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 617,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6.09</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 557,497</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.73</p></td></tr><tr><td style="vertical-align:bottom;width:54.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$1.20 - $1.80</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 247,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8.87</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.55</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100,830</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.35</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 0.18 0.35 247667 P2Y7M24D 0.29 247667 0.29 0.50 1.00 617500 P6Y1M2D 0.72 557497 0.73 1.20 1.80 247500 P8Y10M13D 1.55 100830 1.35 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">10.          </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Net (Loss) Income per Share</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:9pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Basic income (loss) per common share is computed by dividing net income (loss) by the weighted average number of common shares outstanding. Diluted income (loss) per common share is computed by dividing net income (loss) by the weighted average number of common shares and common stock equivalents outstanding, calculated on the treasury stock method for options, stock grants and warrants using the average market prices during the period, including potential common shares issuable upon conversion of outstanding convertible notes, except if the effect on the per share amounts is anti-dilutive.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">For the year ended December 31, 2023, a total of 2,500,000 common shares issuable upon conversion of outstanding convertible notes have been included in the diluted computation of net income per share. 1,875,000 common shares underlying warrants issuable upon conversion of outstanding related party convertible notes have been excluded from the diluted computation of net income per share because their effect is anti-dilutive. A total of 535,078 common stock equivalents related to outstanding options have been included in the computation of diluted earnings per share because their effect is dilutive.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">For the year ended December 31, 2022, a total of 2,500,000 common shares issuable upon conversion of outstanding convertible notes have been included in the diluted calculation. 1,875,000 common shares underlying warrants issuable upon conversion of outstanding related party convertible notes have been excluded from the diluted computation of net income per share because their effect is anti-dilutive. A total of 706,678 common stock equivalents related to outstanding options have been included in the computation of diluted earnings per share because their effect is dilutive. 30,000 common stock equivalents related to outstanding stock options have been included the computation of diluted earnings per share.</p> 2500000 1875000 535078 2500000 1875000 706678 30000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt;"><b style="font-weight:bold;">11.          </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Commitments and Contingencies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-weight:bold;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">a.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Lease commitments</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Lease expense is recognized on a straight-line basis over the lease term and is included in cost of sales and general and administrative expenses on the consolidated statement of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">An initial right-of-use asset of approximately $0.9 million was recognized as a non-cash asset addition with the signing of the July 25, 2022, lease amendment. Cash paid for amounts included in the present value of the operating lease liability was $0.2 million during each of the years ended December 31, 2023 and 2022, and is included in operating cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The following table presents information about the amount and timing of cash flows arising from the Company’s operating and capital leases as of December 31, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:81.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Maturity of Lease Liability</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 325</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 135</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total undiscounted operating and capital lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 460</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Present value of lease liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other Information</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remaining lease term (in months) - operating lease</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">17</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Discount rate for operating lease</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5.80</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company’s total rent expense for the years ended December 31, 2023 and 2022, was $0.3 million in each year.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company also paid real estate taxes and insurance premiums under the terms of the lease that totaled approximately $0.1 million in both 2023 and 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">b.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Retirement plans</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company maintains a 401(k) savings plan (the “Plan”) for all eligible employees (as defined in the plan). The 401(k) Plan allows employees to contribute up to 70% of their compensation on a salary reduction, pre-tax basis up to the statutory limitation. The 401(k) Plan also provides that the Company, at the discretion of the Board of Directors, may match employee contributions based on a pre-determined formula.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">In 2023, the Company’s 401(k) matching contribution for employees was $141,000 and funded in cash in February 2024. In 2022, the Company’s 401(k) matching contribution for employees was $137,000. The 2022 matching contributions were funded by way of a contribution of cash of $82,000 and 33,322 shares of the Company’s common stock, which were issued to the Plan in February 2023. The Company records the distribution of the common shares in the Consolidated Statement of Shareholders’ Equity as of the date of distribution to the 401(k) Plan administrator.</p> 900000 200000 200000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:81.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Maturity of Lease Liability</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 325</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 135</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total undiscounted operating and capital lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 460</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Present value of lease liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other Information</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remaining lease term (in months) - operating lease</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">17</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:81.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Discount rate for operating lease</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5.80</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p> 325000 135000 460000 17000 443000 P17M 0.0580 300000 300000 100000 100000 0.70 141000 137000 82000 33322 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt;"><b style="font-weight:bold;">12.          </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Product Sales, Foreign Sales, and Sales to Major Customers</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company’s export sales, which are primarily to customers in countries within Canada, the Czeck Republic, Germany, Israel, and Singapore, amounted to approximately 44.4% and 37.7% of product sales in 2023 and 2022 respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The Company had sales to three major customers which accounting for approximately 54.4% in 2023. One customer, a capital equipment company supplies process and control and yield management systems for the semiconductor industry, accounted for 27.5% of sales in 2023. The two other customers included a foreign-based manufacturer of process control and metrology equipment and a U.S.-based customer in the aerospace defense industry whose sales represented 14.8% and 12.1% of sales, respectively. For 2022, the top three customers represented 19.7%, 15.3% and 15.1% of sales. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">During 2023 and 2022, sales to the Company’s top five customers represented approximately 69.6% and 68.6%, respectively. Given the concentration of sales within a small number of customers, the loss of any of these customers would have a significant negative impact on the Company and its business units.</p> 0.444 0.377 3 0.544 0.275 0.148 0.121 3 0.197 0.153 0.151 5 5 0.696 0.686 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">13.          </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Shareholders’ Equity</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">a.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Common shares reserved for future issuances at December 31, 2023, are as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:86.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2020 Equity compensation plan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,600,000</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2010 Equity compensation plan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 886,667</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subordinated convertible notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500,000</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Warrants issuable on conversion of Subordinated convertible notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,875,000</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,861,667</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">b.            <span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Warrants</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">The Company had no outstanding warrants as of December 31, 2023 and 2022.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:86.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2020 Equity compensation plan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,600,000</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2010 Equity compensation plan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 886,667</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subordinated convertible notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500,000</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Warrants issuable on conversion of Subordinated convertible notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,875,000</p></td></tr><tr><td style="vertical-align:bottom;width:86.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,861,667</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:10pt;visibility:hidden;">​</span></p> 3600000 886667 2500000 1875000 8861667 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">14.          </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Fair Value of Financial Instruments</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The methods and assumptions used to estimate the fair value of the following classes of financial instruments were:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Current Assets and Current Liabilities: The carrying amount of cash, current receivables and payables and certain other short-term financial instruments approximate their fair value as of December 31, 2023, due to their short-term maturities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">Long-Term Debt: The fair value of the Company’s long-term debt, including the current portion, for notes payable and subordinated convertible debentures, was estimated using a discounted cash flow analysis, based on the Company’s assumed incremental borrowing rates for similar types of borrowing arrangements. The fair value of long-term debt is estimated to be $2.4 million compared to its carrying amount of $2.8 million as of December 31, 2023.</p> 2400000 2800000

@G@!*SX_\T;NS0E:84+['! MTJ8$PC.2\*JF;/M)$DDQ#62UQ22+9VQ*BJUVC/EI[/.SR'>#&_*__K^!BET! M$$P?5"L0)H5[ YU*_<%B:>.Z>&!$Y;R1E*7RLK/[CJJEN8+]SL>3NEL0W*2( MG-.JOL'#,YP8T%E\(/Y@&+J=[(WMJYXR&+AN=" 9V0&9"YZ E.0.BUI@/[:X MCZ %OMZ^"7T\"/QA)UWYMM<)H\$XZDE#//H;3A!!EENIH))OL(9!MW3M\$ Z M.G#T[(@LDP*8*K(B(0Y9&(+W;WF-_0.K7M#A\ <8KQ/7-&R=R6>/QA[O0MS M7=OMJ]W!*/".JX\UA=.;316(M9G $@N^8:H=4]UN-^1OV]EV,&]?"*R<=<$D M*2%#5]>^&EI$M%.W%12OS:1;<85STRQS?*A : /49YRKO: /Z)Z^^"]02P,$ M% @ >W9\6)SCW$^. @ ]P4 !D !X;"]W;W)K&ULK9113^,P#,>_BE40 FFB;;J- 5LE!H?@ 0G!W?&D>[J6)7?N7OYO:T[4VK[9 =/!>2F5G0>%<=1&&-BNPY/945ZCH MS5*;DCLRS2JTE4&>-TFE#%D4C<.2"Q6DT\;W:-*IKIT4"A\-V+HLN?F8H]3K M61 '&\>36!7..\)T6O$5/J/[43T:LL*>DHL2E15:@<'E++B*+^9#']\$_!2X MMEM[\)4LM'[UQGT^"R(O""5FSA,X+6]XC5)Z$,GXU3&#_DB?N+W?T&^;VJF6 M!;=XK>6+R%TQ"R8!Y+CDM71/>GV'73TCS\NTM,T3UFUL0B=FM76Z[)+)+H5J M5_[>?8>MA$GT10+K$EBCNSVH47G#'4^G1J_!^&BB^4U3:I--XH3RE_+L#+T5 ME.?2>_6&RFDCT Y T4]P_)TO)-J3:>@([X/"K$/-6Q3[ A4S>-#*%1:^J1SS M/P$AZ>K%L8VX.=M+O,'L%))X "QBR1Y>TA>;-+SD'XO=56-+&.XF^!:YL!7/ M!"-1_!"+4RE0V5TAI9N2:A,UKE0*T*H>DE-7!O,H>+&62 ^9+JLM*)/ M]8F.!^?Q:,MB$P:W0@GJDAQ66N>?H:-XW.^'9^=_57P(R2 >GF_9;#!A??JI=M&PO=V]R:W-H965T,$5[ PQ#92,O,\!Z'7LR .MHE;OJJ<3X39 MM&8KN /WLUX8C,*>I> 2E.5:$0/E+#B/3^>IKV\+?G%8VYTY\4Z66M_[X+J8 M!9$7! )RYQD8#H]P 4)X(I3QL.$,^B4]<'>^9?_2>DKY<"]L^R;JK36A \L8Z+3=@5""YZD;VM-F''< D^@! M-P#:ZNX6:E5>,L>RJ=%K8GPULOE):[5%HSBN_*'<.8-O.>) M&E[C=CMR^(,M!=BC:>AP!5\7YANV><=&/V"+*;G1RE667*D"BM<$(4KK]=&M MOCG=RW@)^3%)X@&A$4WV\"6]WZ3E2_[=[WLV.Y+T?1)_44YMS7*8!7@3+)A' M"+*#3_$H.MLC,>TEIOO8LSN\>$4C@.B2U+UCKXOI(!U.=L.8CL@WP M;:5$0+FNC'\%C[(OF03(9[4;#](W9 M>#1(DO@E' Y.1F,DMA8[2M[(1C '!38"_!)RSKI6@Q*9U,;Q/UVBWQ*$1\GP M:">1#L8T/7JSK/=-3T:OXS1][_,*=VZ_!+-J>YS%36Z4ZQI!G^W;Z'G7/5[* MNQY\P\R**TL$E B-CL?#@)BNKW6!TW7;2Y;:86=JIQ7^"L#X GQ?:NVV@5^@ M_[ED?P%02P,$% @ >W9\6!M@8?.G P :@D !D !X;"]W;W)K&ULK59M;]LV$/XK!S4K$L"S7BR_-+4-Q&F'=>A+4*<; M]I&6SA91BE1)*H[__8Z4(RN+XV7#OD@\ZNZYY]Y(3;=*?S<%HH7[4D@S"PIK MJ\LP-%F!)3-]5:&D+VNE2V9)U)O05!I9[HU*$291- I+QF4PG_J]&SV?JMH* M+O%&@ZG+DNG= H7:SH(X>-CXRC>%=1OA?%JQ#2[1?JMN-$EABY+S$J7A2H+& M]2RXBB\70Z?O%7[GN#6=-;A(5DI]=\*'?!9$CA *S*Q#8/2ZPVL4P@$1C1][ MS*!UZ0R[ZP?T7WSL%,N*&;Q6X@^>VV(63 +(<N*$NKZ2LG.SO_8@O4\%')S<^WJ$OXK"P:.+]E*X'F8AI:\N$T MPVR/MVCPDF?PX@0^*6D+ ^]ECOEC@)#(M0R3!X:+Y"3B.\SZ,(A[D$3)X 3> MH(UXX/$&_R;B8X$V,.EQ&#M7\2AZ>X)DVI),3Z'/ MES1\>2T0U!J4)RP<8>L(R^<(GX9\_6J21(.W\'^]J2Y8KHB9J\W#IJN1>R1/ MU,^Y!%NHVC"9FPOXUE_V85DR(6!1&Z)J#%SEU.#<6,W\P+;!0L5VKA^!(/!' MS024KL7$CC:,)0@Z)*QQJ3J+>V_(-[F %3+-Y8;6I$50:"P0L,]HVH]^\DIX M7W&O1-X:D2%5\XUK+ED,MOC- R?,!OVDL'H M'YF-^O$19DS6=& ZIW4LJK2ZI[308Q4J+-DDO2B* )F@9'6 M/9DS*9O4'TLJW5^D=H>PH_2;E[54_\0D#]M)'KYXDHE[K;GEZ%OB!1-]&OJ_ M3NZ?E &7<9?53LHOG\[LATCCV*T.;3 >.OG0B9.HZ=2_HR5>;W*0 M8]QIB2TNVGZQ/!1GQTK2=BY_TK4&W_+TR2H6MKF*FQWVQ^)J^;^/*@W M?R&?F-Y0"X# -9E&_3&50#R-85?G;=*4LWW9\6%C[MGB1 @ 6P8 !D !X;"]W;W)K&ULK55M;],P$/XK5I@FD-#RVK5L;:1U X%@4K4-^.PD MU\::8P?;6;=_S]E)W2"Z?H$OL7V^Y[E[;-]EOI7J4=< ACPW7.A%4!O37H2A M+FMHJ#Z3+0C<64O54(-+M0EUJX!6#M3P,(FB\["A3 3YW-E6*I_+SG F8*6( M[IJ&JI!%?Q MQ3*S_L[A!X.M'LV)55)(^6@77ZI%$-F$@$-I+ /%X0FN@7-+A&G\&C@#'](" MQ_,=^R>G';445,.UY#]99>I%, M(!6O:<7,GMY]AT#.Q?*7DVGW)MO>=1 $I M.VUD,X Q@X:)?J3/PSF, +/7 ,D 2%S>?2"7Y0TU-)\KN27*>B.;G3BI#HW) M,6$OY=XHW&6(,_E56&@29O'^RV?C*$W$IA:DT^B@JJ/PE"S-R27B9'&6^@/"-I_)XD M49(>X4O](:2.+_W'0SBDO6?.#C/;DKK0+2UA$6#-:%!/$.2G;^+SZ/)(WIG/ M.SO&GM]CB58=YBO7^+P'#>U( QTTP#,6L3XLX'B(TS>S)$HOR?\:\>J@*4"Y MZ]L9[37:3T(>%*W@N):V4V6-=:@]_(1D^,9&J^SL>.U2ZCOG5=\P]NY]V[VE:L.$ M)AS6"(W.II. J+Z5]0LC6]<^"FFP&;EIC=T?E'7 _;649K>P ?S_)/\-4$L# M!!0 ( 'MV?%CV24(NA , #() 9 >&PO=V]R:W-H965T,=[YW(Z4[IKV8-8,E3*:2916MK-Y=Q;/(U ME,RAXS!)CCC0VH'ZN,-"/LKWS++Y5*L=T0Z-;&[@4_7> M&!R7KBB/5N-;CGYV?B=S50+YS)[ D-YGMA!@^M/8(K4#Q'E-\C/2)8."$UH=H(O:Q/-/%_V XD>RB]X M#P][N]:X-!N6PRQ"[1O06XCF[]ZDX^3J1&S#-K;A*?;Y([9:40D@:DE@N02O M5,)#Q)8]$S.A279%_NO_7\!T7>=7[[!J4"Y M^\HUDZZ"[D')1RA ,T&,9;:R2C^'S&A*WH;' ^Y#:%<%?G28S('T)N=]TDN3<;]UN ?L:@G2DH+CIFM M'/9 VB=9UH(>P%9:NK4W6FVY_Q:QXF]LS-)Y-K >W?,.]]X?CA:S-T[ZF*\# MIO2*O#VAHE&KHM$/JPB_2Z U%L@MR(P!BYFA;A.?F%YQ:8B );HF9^O%W5RRHO6X,+ ;N7@ M0LQUQ@MV*XF:YSF5JRN6B>5ERV^M 7=\,M4(Z PN9G3"[IG^>W8KX:]384EY MS@K%14$D&U^V7OEG5S'N-QL^<;94M3E!289"/.#/V_2RY2%#+&,CC1@H# MV MS;(,$0$;7TJMI$52-J;S3-^)Y1^L ME*>'^$8B4^9+EG9O!)M'V)$^EGJH'4B\ P>"\D!@^+:$#)>O MJ::#"RF61.)NP(83(ZHY#T2,F]%J.'4Y0[W=[4_DB'&5,G%QT-;""RSJ@D>65)!@=(^@%Y)PH]5>2F M2%FZC: #_%="!&LAKH*C&%^SD4M"WR&!%X1'\(654D*#+_S!2FG2A:74;::$ M(7>F9G3$+EL04XK)!6L-7O[B1][Y$3FZE1S=8]@']Q#"Z3QC1(S)F'))%C2; MFS^%$A Q,Z*!7(563,_C,K2&?;6P+0L'S)IS+L&HIGQ M$Y";QQF$-YQ+^8*G#&RSXBRS:/S@G/Q:FU5[%R(#AZL^5[7C0*8 MW''U<#J6C!%>: 8FT412S8CG)A'NG+P M_[GCS2.3(ZXV".X85CO4?45B,I%L@GZR>_C]W'@O6&\-N95\Q,@,@&O(-61# M">5I3K,*]A9 '$K?R"8;\L':=VD(^U/SC3UK,H=P2 MFQX#&/U>X$117-%Z =X=>21VNS50% 5.-^J1WS$Y@#6@RCL>Q,JN@+X;[ ,/ MJ3 E[2A"-"=[6SPW3)Z 9\8E2SM0D,>,KYT$P[OIQ"%X?:QK:BO7&%VUAR>@ MKR")]O05^Z"O7E"#P3Z_ZR1Q764'-!8'S]&8[_6=, P;519]@\K:21?%:<(7 M=[]+86&I,-_?=S#02^0F2:/"?E9N*96(C0JANH'=OM=S^OU@B]$H 4;]<(M1 M+^DY4;^_1P!C;1.IMKI"HTQFSWEBFC#@V2FR$.Q!2BPE(MYH$V6=(^4VJ@JM=&3 M2VTABE/D"'C;JJ^V5V*I0^RJ8_K!\3JVFLKO<:(_JGR>T@-5SB2CTQ1KTQOT M+5LDJF@NQ6J_."'O0>9/5N;3O:I1M5XQY,+8PSB)]FJ#[WI]4J)H^V'/2<+H M!&/?(\T9&\U?G_T)J> ;MQA ]^]]:S%UGKY>PW;5ZR7AVZ_JS MQMT.]JN$G\Q90RO[E6YYO7Y'BPFK][5EI[O^;6IJ]SKIG3/5>C6QS7+=8'_Q M,=[-RDOC_KJ%O/!*LO"=QHLXBU/^@?W%LN \*>AXA]O#A& M?NST:BDGP@2XU?5L,F>O%SO=_DY3%"*BH$28>(9J'6'B)O436-L$V9IU-[)\J9G)C7, 7W2FA#[)-1!:T>W%[9=Z;-=OM:]X[*"70])&-C M.(KM78M(^P)F?[28F5>GH=!:Y&8Z911:&=P ZV,A]/H'"53/D(/_ %!+ P04 M " ![=GQ8T[:TXM " #U!@ &0 'AL+W=O1)+&?\FFUDT^!R2KC%6B,48&@LEZ MI4]-'K8,QM$>@[@QB#WOVI%G>4DM3:=:;8AVVHCF-CY4;XWDF'1%N;,:;QG: MV?1""<$L9MD:0F5.+I2T3*Y!9@P,.;ZG2PZF-PTM^G(68=;@SFO<> _N("8W M"%48\D7FD/\-$"+)CFG<,IW'!Q$O(>N39/"1Q%&<',!+NL@3CY?\3^2[ J[A MAKOA7/-,3$DSF 78'0;T(P3IT;O!271V@.RP(SL\A)[>83/F%0>B5D39 C1A MLNY(_+5WD3T,=_1N'$?)&7GK>D-MI9E]=NZO 9N 7#.Z9-P='3-);*$J@TDT M/5>=X2O[)!YU>U08O5(8)"]G]\I23BJ9,Y.I2EK("*:]\06H> MO,F(ZYM6]3T9#I-_)O/=%_CJIC[(7 M]?I!N*%ZS:1!"BLTC?JGHX#H>LC6@E6E'VQ+97%,^FV![Q)HIX#W*Z5L*S@' MW4N7_@%02P,$% @ >W9\6%3:48-S @ G@4 !D !X;"]W;W)K&ULE91=;YLP%(;_BD6E;I-0,9!0U"9(3=MINZ@4-=MZ M[!_PB\/.'/2)JV2MU+,;?*_F 76"0$!I'8%A\PJW((0#H8R7@1F,6[K$ MP_Z>_M77CK6LF8%;)9YX9>MYD >D@@WKA'U4NV\PU#-UO%()X[]DU\>FTX"4 MG;&J&9)10<-EW[*WX1P.$G+Z04(R)"1>=[^15WG'+"MF6NV(=M%(.!:>>E_Y' MPU7'%)]FGI_E"4VOR49V&679)5MU:ZXI)9J#!,OH*V'/\I(I7%,I)P.N">F-9,6D.X,9W[ MZPBB^@3O>SR!?[#B,+^<>M:^E#S,L]C+&&:.74ETX)D&]-:_# ;YG;2]?<;9 M\?&YZ3WW)[Q_N1Z8WG)IB( -IM*+2_2Z[E^#?F!5ZQVX5A;][+LU/J"@70"N M;Q16,@S&PO M=V]R:W-H965TUW4C MRF)G-$CO3<5HP!,5LABF LDDBJAX&D/(MT,'.[L;]VRY4N:&.QJLZ1)FH![6 M4Z%;;H$2L ABR7B,!"R&S@V^GI K,R#M\2>#K=R[1B:5.>=?3>-3,'0\$Q&$ MX"L#0?6_#4P@# V2CN-;#NH42C3OVB;]_4O=+2C*0OE^X"H=K9G3]?/(QEEDY(7(,$%W/%8KB3[$ 015 M %>G6>1*=KF.B17Q%OQ+U,(7B'BDA1YFM^C=S^]SDD'41#AY/1[Y#EXEX%91 MG%8Z0>M_*4Y=2;)XVO7QF"WE6JZI#T-'[QD2Q :@<4$"399J&IH:'>L6CL:Q8$A#K_ "E>%*N6C&R&3CJ#V0XWHW;7 M\[R!N]G/\GN]*N%WBO [UO ?8@$^U\7\Q\1)']$<8E@P51MG!M7=B^ P1NMD M)U:B6Z32M:9R$VQ *";-0H1'_?J14)=$]UD2N(;L[C.R2>=%LGM%A#U[A)E2 M)+H'']B&SD.X0#>[]8+TNQ)-]%IB"GWF4EZ@*0C& _0I]O6+4X+9Y+*KVEVN M]RSDPZ2LT9U8G7Z1>]^:^Q]\C=1* .B7RM\ZT4(0Z%\THV&JE@W$">CV)'^& M?*YYB56V"2'!Y->ZQ*T3'[N7- 16X>BJX.CJS+;AJR:I:PBL0AWV2G_AV3?B M))KK):-9>;[ +*_><0Z[OR&T#G1C[5(-=\\.86NXDV=+&^DRFUO:U-;&F>'U M]_5]V6FW#V.U3GMJ%4B9%K&GM9,NC^''E6V?[-CUV11:E9K28^%S,UFX49?5 M%%J5OM)G8;O1.EXP[1K!D%[G4#!UW?!5[P6!E\8*VYU5L=35EC>@A(:<59[S M6_@T7!HUW#TW)5BMX]'T-816I:]TD=AN(X]70J]NB;?[ATJH[=9YZ557.C]L MMWZE$E+_]^-::-3P-856):>T?/CBHT<5I9@^ MOUXK#7U1S EXB^^3I+2II']N6FG4R#:%5J6O-++$ZO1.THH=$7L6L31J.]V] MK!_3&^GF0'PR5,=DY]1\62Z344PD)# M>I<]O;.)[.@W:RB^3D]/YUSI'T/IY0IH ,)TT,\7G*M=PTQ0',"/_@-02P,$ M% @ >W9\6*Z&ULM5AKC^(V%/TK5EIM=Z5V$CL0DEE FH%9M5*G&@V:[6=/N$ T24QM M \N_K_,@+XQ54#H?ACC<>WR.XY-[\?C ^(?8 $CT(XE3,;$V4F[O;5N$&TBH MN&-;2-4W*\83*M60KVVQY4"7>5(2V\1Q/#NA46I-Q_F]%SX=LYV,HQ1>.!*[ M)*'\^ @Q.TPL;)UNO$;KCYA!'&=(BL<_):A5 MS9DE-J]/Z-]R\4K,.Q4P8_'?T5)N)I9OH26LZ"Z6K^SP.Y2"AAE>R&*1_T>' M(M93,X8[(5E2)JMQ$J7%)_U1+D0C 7L7$DB90+H)@PL);IG@YD(+9KFL.95T M.N;L@'@6K="RBWQM\FRE)DJSQ[B07'T;J3PY?84]I#M OZ$92[8T/?XBD* Q M"/1^5//P#[63J-H?Z/,<)(UB\46%OBWFZ///7\:V5 PR'#LL9WLL9B,79L,$ M/;-4;@1Z2I>P; /8BGK%GYSX/Q(CXAS".^3B7Q%QB*LA-/OOZ<1 QZV6T\WQ MW$O+^?3]Z:^W)]W*%(D#?6+FUGNQI2%,+&5' 7P/UO333]ASONI4]036TCBH M- Y,Z* M@(>02O4"0FRE7C/%YEYQEJ M9\M=* 5BZBVFEB0*0>@T%!,$36H=\J:(%FNO M8NT963\ 9_GS0I]HLOV*YK!2+TKM"AN!KMU%/8&U-(\JS:-;G3+J4V-/8"V- M?J71O]4I_ID!R'#@J+_.7CN/XI M,_O2V1-:6R>I=9);'51F-JT1N&1X;B%-H!?X^**'<%WLL;'.]N&B#V8IF1Q@N.,^A*T(9A M_X*"NJ9C&PO=V]R:W-H965T MU!)I94%7ZX6 P]BO*N)?$=FTIDU@T6#(.2TE4 M4U54_IA!*393+_"V"[=L5:!9\).XIBNX [ROEU+/_(XE8Q5PQ00G$O*I=Q&< MSR#*3ZVSJ#8P@*"%%PT#U8PUS*$M#I&5\;SF];DL# MW!UOV3];[]K+(U4P%^4WEF$Q]3YX)(.<-B7>BLT5M'Y&AB\5I;*_9.-BASHX M;12*J@5K!17C[DF?VSSL (+Q$4#8 L*7@.$10-0"(FO4*;.V+BG2))9B0Z2) MUFQF8'-CT=H-X^8KWJ'4;YG&87(+:^ -D/?D(LN8R2PMR35WQ\/D^AO[J/..SS"'83D1G L%%GP#+)] E\+[=2&6[6SL)?Q$M(S$@7O M2#@(HP."YG\.#WOD1%WR(LL7'4O>XF'QY7YQ*#,..#P,-%?S7-4TA:FG[YX" MN08O>?TJ& \^'7)U(K(]C\/.X["//5F"3(&COM%$Y/K>NN.22U&16HJL25$1 MHI5_552KG*0A"*I!>-( M&">HR\\A?;U4?_NM3D2VYWK!NDW88:$;.4@3H-_G0N!V8C;H_AHD/P%02P,$% M @ >W9\6$*0O::1 @ !@< !D !X;"]W;W)K&ULK55=;YLP%/TK%INF5NK*5R!I1Y#61-7Z,*EJU/79A4MBU=C,-DG[[W<- M%*6%1'G8"_CCGG//L7WM9"?5B]X &/):*Z+HLJ7J[ 2YW<\=W MW@<>V'IC[(";)A5=PPK,8W6OL.?V+#DK06@F!5%0S)V?_O4BMO%-P!\&.[W7 M)M;)LY0OMG.7SQW/"@(.F;$,%'];6 #GE@AE_.TXG3ZE!>ZWW]EO&^_HY9EJ M6$C^Q'*SF3LSA^10T)J;![G[!9V?R/)EDNOF2W9M;(P9LUH;679@[)=,M'_Z MVJW#'L"?' $'2 X%1!V@+ QVBIK;"VIH6FBY(XH&XULMM&L38-&-TS875P9 MA;,,<2:]$UL01BH&^H((/#7?R0I/2EYS(+(@K)M^(V=+,)1Q?8X1CZLE.?MZ MGK@&%5@>-^NRW;39@@/9EI!=DM"_(($7A"/PQ>GPX"/<1=^]^: W'S1\X8GF MQPRU#)-Q!EMCU[JB&;'B,/7V@.SPX M!A2C7(\Y;>%1 [?%OTVG_LSSO,3=[GL8AOE>'.W'?9 WZ>5-CLI[PFK'XT8J M)3/0N!],9+S.F5BC:E$76.^U@IQ45!E-J,A))LM*"MS 43=MMGA?YI4?#>V, MQ 6SX*"=J+<3';5SRP3#JLS)6LI\5& T2!SA3@_T#<,FTZN#\N)>7GQ4WBDG M/QYL=.A/9E-O]DGA, X7,+J:33])=/=N*?M"_*9JS80F' I$>I=3I%#MK=MV MC*R:B^M9&KP&F^8&'RI0-@#G"RG->\?>A?W3E_X#4$L#!!0 ( 'MV?%CR M-F^D! ( .L$ 9 >&PO=V]R:W-H965T!!["OG#UB1 M-7P/:W"/SF:>K]32AB]I.]\91BP/UNFZ!Z-="]6M_+FOPPD@GGX 2'I M+S.B6&.^-;'X3:A/0J$8H_Q?7SN"M0)PK[M01E--& M@+TF"KOF<@F."VFOR!?RN%Z2RXLK-KDD1).@)?G ]/WL,9JATD)X/D)/"E9TH>$]0Q3,<9_&3-;<-+R"F. MC@5S!%I\_A3?1-_'Y/TGLG=BTT%L^B_V0>P+Z;E'_U_'$4>!Q _^L4@F<<:. MIS)&G::#4Y<>.VE%_PS<<[,7RA().T1%DZ\S2DPW6IWA=!.Z+_3VKT9ON&']ZUX!5!+ P04 " ![=GQ8Y3([:T@# !=#@ &0 M 'AL+W=O>T$#-K)65Y;-LB74&.Q1$KH5!/EHSG6*HNO[%%R0%G-2BGMN8_YP I1M9I9K/0Y54NN.K9 M'4M&6:L5O=^9'-+$E>1 M4KT@B0[1IH;V/^U-;*CF:U$[;J4^: MJ;T7ICZ#] CY[@'R',\WP$_?#O?Z<%LM0K<27K<27LWGOWTE3)X:DL!,HC?= ML2AQ"C-+[2H!? W6_-,'-W(^FQR.1-;SZW=^_2'V+;_=>SU 6**4":/QABVL MV?3AL)Z[D>\[83B9VNMM4X; M-PF3B/5-KB@O\*$K,6J-.:S2H]==R25*H9:8L+RL) M?%CO(-U[]\9(9#WG<><\'N,LB,?T.Q)9SV_2^4U&/0N2W80+DMAQG&>)^7I< M3^ZDDSL9E'N.TY4:X@^O;Z%!HO>^HI'(>IY=Y^E+[8R1E"W+2);'8NM[WJI. MW%$3LZ5[=A2&R6YJ&B-=+WHQ.=VG0L(=_&ZK#Y6J*U>,9HCD)6=KT+*%4>ZH MU<18;'W;3_6$ZX^2GX-ER;L]C\36]_Q4DKC#-&ULK57);MLP%/P50BV*!&BCS4[;5!80VRG: M0P C0=HS(SU91"A2(9^MI%]?+K+J> ERZ,7B\F8X\V2.LDZJ!UT#('EJN-"3 MH$9L+\)0%S4T5)_)%H39J:1J*)JI6H:Z54!+!VIXF$31>=A0)H(\DSJA7YFS-*=(\ M4[(CRE8;-CMPO7%HXX8)^Q9O49E=9G"8+S@52*@HR=7CBK7F_2 YF0-2QO4I M^43N;N?DY/UI%J(YS$+"HB>>>N+D"'& M99Q#<4;2^"-)HB0](&CV=GCRBIQTZ%SJ^-*W=^Y0ESS)Z#")O:,7NJ4%3 )S M"36H-03YAW?Q>?3MD,/_1/;"[VCP.WJ-W?3/D!:,^MMG;--&*F1__ (\F5S1 M<*@#GG;L:&VHK/,TCJ,HRL+UMK?]LF3T=;OLA>KQH'K\-M5@!&L-J$D'"DBG M&"(((JOJD.;QGIA=N?L523K>EQMN7&PO=V]R M:W-H965T4E;VV71&K#G78? M>JO:N]V':1\<? #61PHN^=[ M0@1ZS-*<+YV]$,6%Z_)H3S+,3VE!ZL%OK8#5LM:"G2)"+ N_('1%? MBQLF]]R&$B<9R7E"<\3(=NE<^A=A,%45=(D_$G+@G6VDAK*A]%[M?(J7CJ=Z M1%(2"87 \N.!K$F:*I+LQ_<:ZC1MJHK=[6?Z1SUX.9@-YF1-TV])+/9+Y\Q! M,=GB,A6W]/ ;J0>D.QC1E.O_Z%"5G4\<%)5[P23WR:RGEC=DA0+$J,;S,03^L)PSK$^(QP=AT3@).4G"U?(EE1Y-ZJI MZXH:O$'U W1-<['GZ$,>D]@$N+*+33^#YWY>!5;B[Y$X17XP0H$7C-'7NQ = M'YV@1) ,'2$7\3UFA-OIX5;$F_2P51RYX@2.R=&2@X(0]$&?U\T_^S/NUSQLD+ 2"&0XGC<.)C;[Z M3(6<(#?X"6]2,D*?:1Z5C)%>-P;H\#I9KBB&[KFX5[P$R*%%Q.TZQ@"9=^$[D>066>"'0L-ZMR)W+6OGE[ MN:K:G.DVU5+K8>4OW(>N0&NOA@H$@AD"SQJ!9X,$JJVHJ:=_OB/1.Y],7+JT='.H2"&:X/&]#NI85 B(6DA%,T4&;0B@__AGE(W:KNIV/LUV"(0S;38)CF^ M=?W_[D5^N=TF:2*_5:+7J=3VV*L--/\!I850---PFP+Y$\@+WIH_#!8)20NA M:*;(-KOQ[>G-Q^117]*"2+I ,C(4.N_=L3O%3,'W*[^??OR?]T)S+P;L6.R$2-TY(]D(R-I=D#$AES/KT%I M(13-M-WF!_XY9,2&7/*O06DA%,U\>MQF$($]@[!.VSZ7-:][_?C3GM"RMC<\ M5!,4S=34I@2!=:6\"J4->5_C@I69?C;:68>-4-ZL<\GW,I$3LBW)Y>6NGL;W MJO1?+V3[58(F!5 T4V6;% 3VI.#]0.D-#93V%H=>WZ"T$(IFVFZ3AP#R%4D MFB. TD(HFBFRS1$"^VN!X8%R\CI0>KU7-V@& $4S-;490&#/ /Z;0#E]'2C[ M58*F#%"T2J7;>1F=$;;3+_75DY R%]7[WN9H\\.!2_VZ_,7QM7\15J__6TSU M:X1KS';2*$K)5B+5 V('L>H%?[4C:*%?>6^H$#33FWN"8\)4 ?G]EE+QO*,: M:'YFL?H'4$L#!!0 ( 'MV?%A4JR_)8@, "X- 9 >&PO=V]R:W-H M965TX+7JJY ML]&ZNG!=E6Z@8&HB*BCQSDK(@FGEW CB:J+@LF'2^!B.W>H\WCP.5]OM#EPDUG%UK ?5O=2-RY+4N6%U"J M7)1$PFKNO*875]0"K,77'+9J;TV,E*40W\SFGVSN>,8CX)!J0\'P<@=7P+EA M0C^^-Z1.^TP#W%\_LK^QXE',DBFX$OS?/-.;N7/FD Q6K.;ZL]B^A490:/A2 MP97])=O&UG-(6BLMB@:,'A1YN;NR^R80>P Z?0+@-P#_N8"@ 016Z,XS*^N: M:9;,I-@2::R1S2QL;"P:U>2E2>-"2[R;(TXGG_0&)'DORO7I%Y %^2@T*')T M#9KE7!V34W*[N"9'KXYGKL;'&9";-M27.VK_">IK2"\1.F0JAW-=)C&M-6%JE@*7\/:1R) MK*,X:!4'A]B3V\EB0A8%XYQ9UA$N=*2V2[2)A(E1H)4[($M.9"\ M)/"]9IP4HM0;_H '2B,%MJY61*S(*WIR[ON$E1E9 I-YN<8U6B$5*$V0&(S9 M=.+]:8W@OLJM%3*_JY$0\WD^&0K\3DUHU9C7SUT2T-CSO)E[MQ_2@Z)_,Z33 M-J33@R%];V*8UE)B-$@EI GBD)0=2[0GY32F0>3_)&7:4WP:Q2$-6K..DV'K M9'C825/C-K,9+/4)9B#E=692\ S/PY[G_C3L)Z%O]E.N.IY'K>?1KRM6V8I= M/E8LZU;L?K$.^7_P 2_MWI'(.K&(VUC$X[ROXC$5CT3647S6*C[[7[VOSGH] M0*=>OU4&S"+OR58Y;X-U_LPF1_EY9>2255ZR,D7?A[P]2/?2,AF)K*.<>C]F M%F^&PO=V]R:W-H965T4"6\^=6M7:CZ5A>%,P)4BNL@RJAXO@,O-S N]IX5KMDZ-7?#G MTYRNX0;,;7ZE<.;7* G+0&@F!5&PFGGGX=EE&%D'9_&+P49OC8F5LI3RCYU\ M269>8!D!A]A8"(J/>[@$SBT2\KBK0+WZ3.NX/7Y"_^3$HY@EU7 I^6^6F'3F MC3V2P(H6W%S+S6>H! TM7BRY=K]D4]D&'HD+;616.2.#C(GR21^J0&PYA*,] M#E'E$.TZ#/8X]"N'OA-:,G.R%M30^53)#5'6&M'LP,7&>:,:)NPUWAB%NPS] MS/R'24&1KU*L3WZ"RLAW:4"3$W*>),S&F7+"1)DM-NIO%V HX_H=FMS>+,C; MU^_(:[0@/U-9:"H2/?4-TK+@?EQ1N"@I1'LHA!'Y)H5)-?DH$DB: #[JJ45% M3Z(NHD[$!<0]T@_?DRB(^BV$+O_?/>J@TZ]CW'=X@SUXM[V;'M$9Y9PL"XV; M6A.:X&4R;5095X%A)SE]I$L.;1'L/,"6^IG.:0PS#VM9@[H';_[F53@*/K2I M/Q)8(Q:#.A8#A]Y_2;ZU*1X<4_&1P!J*A[7B8>?MN]SFCU@DVF *X"O0V)NV MSS;=)=C0@=EW\/T\G-@LO-_6<\"HP7-4\QQU\OS$'B!!E@8P!H9@8K9F8@DR MV3HZZ 6#'7X'C!K\3FM^IYW\7,X8FS-P5[#/CU,SXF(J/!-90/*D53SKO^N-=X3X\=<6TJ9W\4P3#J#_:R<0#1@UV M8?#\T0R.42L5RKA9!Z-PA^-!LR;+K4][V,ER 4OSGJSPD@C-9-$>Q6Z,ER9- MA;8=[VB,+66P1TOTK"4ZJ(78ZF_5T.G[8@W=3(;D$:C2;5GN;_5A&:BU:T\U MB6WLR^ZE7JU;X'/7^.VL7]C6V/5WSS!E7_V-JC76!>&P0LB@=XJA5F6K6DZ, MS%VWMY0&>TU13>P!]1^&^5]02P,$% @ >W9\6+T7 M'BAN @ M 8 !D !X;"]W;W)K&ULE95M;YLP M$,>_BL6JJ9760DB )"-(:Z-ID_90->WVVH$C6#68V2;IOOW.AJ)L(8GV)OCA M_O?[7XR/>"?DLRH -'DI>:463J%U/7==E1904G4C:JAP)Q>RI!JG[A3-R7A<>V*;09L%- MXIIN8 7ZJ;Z7.'/[+!DKH5),5$1"OG ^C.:W,Q-O WXPV*F],3&5K(5X-I// MV<+QC"'@D&J3@>)C"W? N4F$-GYU.9T>:83[X]?L'VWM6,N:*K@3_"?+=+%P MI@[)(*<-UP]B]PFZ>@*3+Q5?M9P("(GPL9P$Z--3(4QZ$$WDFF&T9=+T)1Q=44N"*O( M8R$:1:M,Q:Y&AX;CIIV;V]:-?\3-$M(;,AZ]([[GC\G3:DDN+Z[^3N-B@7V5 M?E^E;_.._Z?*(7MMFLEP&G-!YJJF*2PB]/V%RW)L M8,V3(4^M*K J<\>V232*W>T :=*3)N=(P1"I587[I&"8%/2DX!PI'"(%!Z2I M-TP*>U)XCA0-D<(#DG^DIJ@G1>=(TR%2=$@Z.IJ#1G!2PE456>4_ET"USL9I9K'1;NV";3 M9L&.IR7=P#WHAW(I<69W*BG+H5!,%$3">F;=N-?SR,37 3\9[%1O3(R3E1"/ M9O(EG5F. 0(.B38*%/^V, ?.C1!B_&XUK6Y+D]@?']0_U=[1RXHJF O^BZ4Z MFUF7%DEA32NN[\3N,[1^)D8O$5S5OV37Q(:X8U(I+?(V&> MCF^21%2%5F1)G^B* Z%%2G!15I"2;XRN&&>:@2)G"]"4<75./I"'^P4Y>WL^ MM342&!T[:7>[;7;SCNRV@.2"^.Y[XCF>/Y(^/SW=>YYNH^_.O->9]VH]_Q_- MCQEME(-Q97/VKE5)$YA9>+@4R"U8\;LW;NA\'+/]G\2>%<'OBN"_IA[_D#1% MYX=2E+U2T+849263#,_*:"$:]4FM;GK&-@Y<["'.U-[V+8Z$!6$_[!E\T,$' MK\(?7A922\'Y&%\C$/8VOAK2#8.\R5&X20 T/H'YLED+WW)HE)04P23A# K*9<^U? M+28FW@;\)+"3)VUDG#QR_F0Z=^G,\8P@H) HPX#UWQ860*DATC+^'#B=>DH# M/&T?V6^M=^WE$4M8P5E 05OWC_6$=3@!^U ((#H#@-:!MAO "*W12IFU=8,5CJ>"[Y P MT9K--.S:6+1V0YC9Q0B<2J^8PDO 'W'>Y#H,UI!PEE"*,%VD7F&2!6@ M\!YM!-\2NWV]&U"84/EQZBHMPE"YR6'">35AT#*A'Z![SE0NT5>60GI.X&KU MM87@:&$>=#+>0-)'H?\)!5X0-@A:O!T>=,@)ZQ4-+5_XAA5M6IX*/6A&FTM[ M)3+B&0FL MH,ERQ3.Q/":M;&.O'_A3=WMJY4+0F<1A+7'8*7$%:5FE"\*L3K :45KJ$\WM MH;;]),=LW2A]V*#*F[R2?B'H3'I42X\ZI2^L)*-[BVE974=,==+%+&E4VDW7 M&X_ZGO>^Z<(N+B!]+VJ GID:U:9&G5Q+T)F7 5,H)5D& K27QDO23=/S6[V, M&K8B#)NW8ERK'E\X1:H4S!R8EPR(T]\Z.>MRIIKD=_/U@E;YXP;Y@Q;YDUK^ MI'.ZKWJE;;$\S>5M5[6;JA=YK=([D?^:BMR3BE: 6-M"+U'"2Z:JRE"/UF^) M:UM"7XW/]1NC>A*\T%0/E'LLUH1)1"'3E%Y_I&^QJ(I^U5%\8^OF(U>Z"MMF MKM])($R _IYQKHX=,T']\HK_ E!+ P04 " ![=GQ8=!.W(!4# @"@ M&0 'AL+W=OXX1V MBDEF1>/BW3V/QFPE*R6$K]PH[&.5[ (\CG M_)ZKF5U[24@*F2 L0QSF$^O:O;IU"T%A\4)@(_;&2(5H(J 0 M2^T"J\<:;H%2[4EQ_*Z<6O6:6K@_WGG_4@2O@IEA ;>,_B*)7$ZLH842F.,5 ME0]L\PVJ@ +M+V94%+]H4]DZ%HI70K*T$BN"E&3E$V^K1.P)W/X1@5<)O%,% M?B7PBT!+LB*L*98X&G.V05Q;*V]Z4.2F4*MH2*:W\5%R]94HG8SNLIBE@)[P M%@3JH2G,@7-(D,1;A(4 *= Y)7A&*)$$Q 4ZGX+$A*I1#ST_3M'YV04Z0R1# M3TNV$CA+Q-B6"DR[M^,*XJ:$\(Y 3"&^1+[["7F.YQODMZ?+O4.YK=)1Y\2K M<^(5_OP3!KL**/']S0^6P*[3\Y.PC4KP/U MN[Q'UW',5IE4QS$&LL8S"JA:Q!AWZ2PHG.GK81VY:K?6^]%TFAPP]FO&?B?C M7;:&3#+^UHE6^@CWU@U&@P9;VR8,!V:XH(8+3H2+<4XDIN0/UK>3"3%H+S]L M$+9-1IX9,*P!PT[ *:B_34R.0H6M%9T&4Y?% =*@1AIT(GUG0JAT<94T584V MF)MOC$%K7; 2?LB-%$.VP"N'S8HVT:^[_?- ME*.:](6MV]>NAV4OY4K5-[\XV@;ONR^5;]TX_,%^03" *W9\6/\IK9CV P FA !D !X;"]W;W)K M&ULM9C;J*XO8;(I80$!%0 .KA/WP5(491%,[:L^,(BJ=W%_RV!Q4*CM50_]!S D$W. MA1Y[NR%WO;!5S:;&_O CT<+.H,)F/O%G<([OXJ2 MLAR$9E(0!=G8^Q!>7H=]Z^ L_F:PUK5K8E&F4OZP-[?IV NL(N"0&!N"XL<* MKH%S&PEU_%L&]:HQK6/]>AO]DX-'F"G5<"WY/RPU\[$W]$@*&5UR\U6N/T,) MU+/Q$LFU^T_6I6W@D62ICOGDW\@V.8FW]I(QX542,GH@81N2+%&:NR4>10KH?P$=Y ME<9HJ_$J:HUX \DYZ81G) JB3H.@Z^>[1RUR.E7*.BY>YQDI:TI/X=UM]K;+ M\E(O: )C#]>=!K4"+_[]M[ ?_-&$=J)@>Z#="K3;%CW^$ZL(U@M%#1,SPJ76 M)*%*/6#Q6%.5XM*??L?52(PDL%DP:R=%4T:*87IN&%M75G$W<'\C?U6';95S M)&RO@NV]"E9(\WS@8JA^#3AJ!&Z5="1POP+NMP)_S#)P-92P8D(;NB&(!%B= M$RD2QIGC.R/)G(J9-;/U$92"U-E2K<%HLJ)\28N2S'%3H"*!,T)SN12F*37] M@]2$C:EI%7]D:@95:@:MJ;D7-@4SP?XK4:<@(&,(:^;4X,:TY"EA.8YO"%1I MW.:OB7IP0/V8MU71D;S#BG=X'.]9?6Y@YT"Y8;A/4('XP@ J,78EX*[>2#W\ M*76KKB.I+RKJBU;J"4/BC"54F-H47S[Y[IG&E4&U%'3*'\@"*P2;\FJN$YF5 MO@IWO:U74U8N?IJ55MU'9B4,=AU!T)J7V]TK;Z$H@]0QWC>OY-*RUPB\K['6 MM82M&C]!BJ6:-PIK]7SI_GNJ:/NE6O4;J?"O9$T?9A=WU5V-K-Q'\] MO?TVPW<.IF"_>08>&@Z&^X;[DG<=4MC>(DV,W3!M/>0RH9Q\7RJF4Y8\U1BT MAWOQ^_H5#5.XZYC"WNLFYXG:FQ+V5S1+X:Y;"MO;I1=/SOY!U>LT3\Y#PU[0 M-#G]VBDO!S5SAU]48G>?XC!5/:T.V!_4<*-9B:X#?9U*:[8T=H/HY(OX?4$L# M!!0 ( 'MV?%@^PVKF^ ( *$+ 9 >&PO=V]R:W-H965T&ELY][C,GXO4@")'G-"Q<1*I2S.;5M$*>18G+ " MJ'JS8CS'4DUY8HN" XY-4DYLSW$".\<9M<*Q65OP<,S6DF04%AR)=9YC_C0% MPK83R[5V"S=9DDJ]8(?C B>P!'E;++B:V35*G.5 1<8HXK":6!?N^3W[&$\O1C(! )#4$5H\-S( 0C:1X/%2@5KVG3FR.=^A7 M1KP2Q(@POVA;Q3H6BM9"LKQ* M5@SRC)9/_%@9T4AP@S<2O"K!>YDP>"/!KQ)\([1D9F3-L<3AF+,MXCI:H>F! M\<9D*S49U<>XE%R]S52>#"\?UIE\0C.6J\(0V%B[X"SA.$>8QF@I671_K(V* MVT$'NA:T9E*M EC2%N ]A*8JW3V^F<>GL1YQ"=(-\]0I[C^1V$9O^?[NVAX]>V M^P;/[]GV+BO+G0;=.^EKX%P4.(*)I?[G O@&K/#;%S=POG?9T!-8RY1!;D)K&6*ZSRW",X'%G8%WKIQ MG<'KTNZ,ZRANN]'LY, 3TP,*16=-9=D/U*MUGWEANJL7ZU/=?YHFZAFF;%ZO M,4\R*A"!E8)T3D:*%"_[P7(B66%:JCLF58-FAJGJH8'K /5^Q9C<3?0&=5<> M_@502P,$% @ >W9\6/%\JD*] @ ] < !D !X;"]W;W)K&ULK55=;]HP%/TK5B9-FS3(%X2V"Y$*[;0]5$*MMCZ[R858 M.'%JFU#^_:Z=D %-437U!?QQS_$YU\Z]\5;(M*FF3JYU=>6Z*LVA MH&HH*BAQ9RED035.Y@K'22V*XM9!*+C>:LA(4D:E,4 M5.YFP,5VZOC.?N&>K7)M%MPDKN@*'D#_KA829V['DK$"2L5$220LI\ZU?S6? MF'@;\(?!5AV,B7'R),3:3'YE4\0=*.T M*%HP*BA8V?S3ES8/!P _>@,0M(#@%#!Z Q"V@- :;9196S=4TR268DNDB48V M,["YL6ATPTISBP]:XBY#G$YNGS=,[\A<%/@N%+6I74BQDK0@M,S(@Q;I>F 2 ME1T'#EX8/(CM*RJA+RN@< M>W+[4N&7C8XS5K,,, T[!CSK\]P075HB4Z7JQ(O=^M#(N8@C=>-.W?A]ZFK! M\2XXWE^?LO'K7P8FX)NCB(,@?>J,HZ%<8=0JCLPKOF5H/EA* L%(#WH\F MDFKH4QF]$N -/>\B.M'9&^:/1_TZ)YW.R?LRB2*+/G7GX;Y'=D"EZGN^_X-L M/+@'!;0 N;)]19%4;$K=E)ENM6M=U[9BGZS/L*4U'>@?3=,/[ZA<,2R,')9( MZ0TG^ QDTV.:B1:5+=-/0F/1M\,W9\6(2%%OP0!0 IAH !D !X;"]W;W)K&ULM5E1P\WETEZ=\\*R#830)PDQ\F_ MKP08# @9N]R+#7CWV_T^).W*FN\(?64;C#EXCZ.$+8P-Y^F-:3)_@V/$KDF* M$_'+BM 8<7%+UR9+*49!YA1'IFU9KAFC,#&6\^S9(UW.R99'88(?*6#;.$;T MXPY'9+> MG3ED%M]#O&,'UT!2>2'D5=Y\#A:&)3/"$?:YA$#BZPW?XRB22"*/GP6H4<:4 MCH?7>_2_,O*"S MB^)Y$/\* ;Q;&U !7J%MQ)_([A]<$!I+/)]$+/L$N\+6 M,H"_99S$A;/(( Z3_!N]%T(<.-ANAX-=.-A-!Z?#850XC)H.XPX'IW!P,F5R M*ID.'N)H.:=D!ZBT%FCR(A,S\Q;TPT2^]V=.Q:^A\./+AY_;D'^ >Q*+D<10 M]BX>*5E3% .4!."9$__U2BH;U(RN\E_ US1SN96O3P)=>)BC,&*?P!5XB-.( M?&!<-[T"WYX]*A.[[N]L*=Z^_.]2P&94OM/E8I#@GD#@=44=DJ%'1WZ,A_##'S= MRJ\^J2O\9J5 MO&8G#5WT$F%)[*&3V*R5R,P:SV9V@Y'@OYXT1YS:S&Y*HDWY7$GL M2A)[,$FTU:2(4V-K78_.$UU M!NTWAT*KBUAUG%#?[L7^FB*? M;U$$_L4TOCQ: I6:ZN.[X /+ 0DM$.?[>3@! ?I@JKWC$:Q)@>7NH3J1O)Y( MSA[)=A10=O=#.D7OJJ^'^L;^)+U[-\E' M@I8ZYXRT*FN13EY/!D*KBUUM-J!^MW&[7E.\1AR#ST+:,&&A#[ZC:(N/KQZ' M!4I=EO+0X]I."CK3=F%J&[JN[;CC9FGZ%;L.N]IUV/I=Q^E:M2NY4J@BKGM4 MJ,+PJ**>PK"A:%V#:@-AZS<0/33H/26+4#4VUG3LSF9-V@/M$ IM!MUOF =_ MX,>8KK.#$ 9\LDUX_F=V^;0\;+G-CA@:S^_@C9".5_4$L#!!0 M ( 'MV?%CEP9)/=P, %$, 9 >&PO=V]R:W-H965TLI2*N;66LK\W+9%O(8,BR'+@:HW M2\8S+-60KVR1<\")4IZX):NUU!-V-,OQ"NY _LYON!K9E96$9$ %811Q6,ZM+^[YPO6U@I&X M)[ 3M6>D0WE@[%$/OB=SR]%$D$(LM0FL?K:P@#35EA3'W]*H5?G4BO7G9^O7 M)G@5S ,6L&#I'Y+(]=P*+93 $F]2>%LQ7&&,$W0G63QXT G M*CD4&J"?C ZV(*1Z([048OE^9;31CY<@,4G%F1)^CVPDUIB#F-E2<6OO=EPR M7A2,7@^CZZ$?C,JU0%30@*T"KJ+VGJ.^\(Y:O(1XB'SW$_(XNN3\ M<>@'W6"3"FQR%$P=O4L@/6R3ML]PI-:H@=86Z\E66$&%;U)I83K%)#ZZWQ_5. MVXGN[T?WZ$WSVN('FKRN\DNALU(NZ3"9BG9M>8L M [XR/:M ,=M0670LU6S5%W\QW6!C_D+WRZ;IVYLIFNT?F*M=+E *2V52K8FZ M57C1OQ8#R7+3 CXPJ1I*\[A6/3]P+:#>+QF3SP/MH/H7$?T'4$L#!!0 ( M 'MV?%CT?*#H2P0 /04 9 >&PO=V]R:W-H965T& MVB"?\6\$&[%SCW0J,\:>]>"?<&PY&A'$$$CM@JK+&NXACK4GA>-;Z=2J8FK# MW?NM][_RY%4R,RK@GL5?HU NQ]; 0B',Z2J6CVSS-Y0)];6_@,4B_T6;6 MRJ5 [],0PGT'MDJLRHYLL[LCK1X?(+A&+KY"Q"$N^A792"PI5RB+2TL$MZJ? MFT?H-=5O+WW$:;H Q%*HR[[5D]Y^-R*C 8PMM;\$\#58D]]^P9[S9PO.7H6S MEWMWS[S.=7GT+I!'O\JC?UB]I[K>5^@#VP!'C[KL=5 +9W[N3!/4>N)C2#"LV@'8U!4;*"N$)?$5C]"&: XI2]!]07@NY/31!K]H0^2@IF(/T4$A?VW;VL,IJ>(:L M]INA+H%AS?J387W%L6-HVSFH \KX=!9#U0&[R-NZH0QQ:#O@'4W!QX,[H71E MF -K1PP\.]Q6_@ M36SD Q^G'QWD77KK[X# #1",?.!V_3B5O$NWN]O5PW[?<1H &3'!'6IR2?[N MB.V5!(X+ D>DB[ZQ425\#EDZ@(4&-2SDDX:J&WG!'?IR#@8?OFF)?M_O#1L8 MG!AY(2?(RPFU*\/\4#NW 9X1&-(N,/4,ON10#Z+5V8G$1XS<$/+3.)Q<0HZ( MD2-RX-?.81Q>>MOC<'S=L'.(41)RG))T<'CIS=\#T? -0(R0D'8A.97%2[<_ MO'0ULC@QLD(Z9.62+-X1>[!E<6?['H[=+B(G1I_(.?3I #+R:QJAW_!*08S. MD Z=.0.1ER%VNP([SL!MZ@JC,N0$E3FE=F\_8_#;SUA[YR J ;[(C]L$"M@J ME<695/6T.M*[+0ZRS/3B// CY8M( 8]AKDR5:*A]PXLCMF(@698?:\V8E"S) M;Y= 0^!Z@OI_SIC<#G2 ZJ!S\AU02P,$% @ >W9\6.U&CI%E! @1$ M !D !X;"]W;W)K&ULO5C?;]LV$/Y7#MHPI$ : M_;!C)YEMP'8R; _IC&9='X8]T-)9)B*)*DG;\= _OB0ERY(M+K38,/XLU@B2GA)DTP,G:64^9WKBG")*1%7+,=,W5DPGA*I+GGLBIPC MBQ2E/"MQ-,V&;H^,YNXB.-EU)/ MN*-!3F)\0ODIGW%UY58H$4TQ$Y1EP'$Q=,;^W=3OZ07&XF^*&U$;@Z8R9^Q9 M7_P1#1U/>X0)AE)#$/6SQBDFB492?GPI09UJ3[VP/MZA_V;(*S)S(G#*DL\T MDLNA<^- A NR2N1'MOD=2T+7&B]DB3#_85/:>@Z$*R%96BY6'J0T*W[)2RE$ M;4&G>V)!4"X(#A8$IQ9TR@4=0[3PS-"Z)Y*,!IQM@&MKA:8'1ANS6K&AF7Z, M3Y*KNU2MDZ.'+RLJMS!EJ0H,08RT,\YB3E(@601/DH7/[[504=/H/8RCB.HA M28!F14#I&Q?W* E-Q+N!*Y6#>ALW+)V9%,X$)YSQ WADF5P*>,@BC)H KF)6 MT0MV]":!%?$>PROH^)<0>$$'/CW=P\7/[X!*3$$L"4?1XN3T]9#!#M+B:J=Z M$AV#VSF!^Z3]:5-ZS#G)8E1G1\)\"W6[&=F:Z?&&\*A-[V++;ON6.D7S6(_^J'PS<=9URF]'> MIL'DNF)R;67R\)*K%*;\CNB:1JC.V)9BTNIB 71;V]T[\,]FT?"N5WG7LWO7 MD@\"S_>JI/#/(Z9SY/^V^6N%_MYH.Q-80X5^I4+_QY_%_CG5.1-80YV;2IT; M:XQ\6.D(T(32?.$;1&+X@7^-.\":^*R W[OV3P76I-^L*YY M+H7.A-94:%]I^=92931.$A::VD'4- CK6N&+'F.K% 7X=;TH\/O')[K5KE>W M:[J_+X5\>RU4Q;=6AH9XDL4EK#*.(8LS^M\AP9 )*2XA4YVB2F>U:HKQ!5*Y M.I'.2M<:I(*@A?RQ7="T:Y+?5T_^_Y1/KR>/NZ0F&0]3?)QX)#RFJCM(<*$@O:N^H/KJ,OH&4$L#!!0 ( 'MV?%CL M"Y%^[@, 'X7 9 >&PO=V]R:W-H965T^7SS ^.W8@L@T5V>%6+A;:4L+WQ?Q%O(B3AC)13J3LIX M3J0:\HTO2@XD,4%YYH=!$/DYH86WG)NY:[ZD@W<@/RSO.9JY#\4P<>7S^@_V;( M*S)K(F#%LB\TD=N%-_-0 BG99?(S._P.-:&)QHM9)LQ_=*B?#3P4[X1D>1VL M,LAI47V2NUJ(HP D+ MHXV)5FQHH;_&&\G57:KBY/*C6BFO_V!"_(S>%S'+ 97 TG'-?YEA1^>P,A%?$* MXC,TPK^@, A'/0FMGA\>6M(9-0*.#-[X!-Z[O,S8/0"ZD2R^19]*O3K[=++" MZ&J]$"6)8>&I6,DHYRY'B7^XD,5L22U&AM*&M**9JT!IBLA. Y!8H M1Y"F:@M#5"!22/HFH=E.[V1]TEGS&2I=!189,+VY[Y>C0/W-_7V/)E&C2?0< M313E2A-:_"=%;&)8$QDJ1O1$C&D01=-9OQK31HVI58T5RW/%6IB=X!_T[*W! MBCJ4FB.PC@"S1H"9RZUAYI*W([ .[_.&]_F/4@;G3U;N9#0)CE9NI88UWV]4 M P>MJ0B^4@C%'KBDZPS01R:5--?DGJA1KX&P8@U=!J[0NLR/[!1V60$UFBON MCM"ZW,.6>_B#'9!U0L?5$$Z"SK%6*V/-_%N5:3TBMIO$D_4PY)2POV/P6GD) M"XE;#XF=FDCLU$6Z0NMR;WTD?I:1_#]."WLF@W5[ZB$?EUM7DM9&8KN/M!7( M%\*YV@EZZ3DUA:[0NAJTYA%/G9:$4]?H"JW+O?6-V&K/OL?1,7NREO%L.NDY M.E["6.+666*[M;15QO'OC5Z.CEQ@+<1+>,JP]91AX+(\0J>NTA5:EWOK*D.K M<_L.Y6%/:+!\^*O%5BGC'W4R<^ ;T^ 5BNJND%6+L)EMFLAO3>OTT?PEOEA5 MK> 6INI,?R!\0PN!,D@59' V58<:KYJ]U4"RTO1+UTQ*EIO++9 $N'Y W4^9 M*L-ZH%_0M-R7_P)02P,$% @ >W9\6,,X/M;S @ J0@ !D !X;"]W M;W)K&ULM99M;]HP$,>_BI554RNUY(D 8Q!I!4V; MU&JH#]MKDQS$:F)GM@/MM]_923.VAK2:M#<0.[[__"8JG3,.*TE45114/EU"+O9SQW>>)V[8-M-FPHUG)=W"+>C[R*[PSVZN"9F%#60CR8P==T[GB&"')(M)&@^+>#!>2Y M44*.GXVHT_HTAH?/S^J?;? 8S)HJ6(C\!TMU-G M(G)E?\F^6>LY)*F4%D5CC 0%X_4_?6PVXL @"(X8!(U!8+EK1Y9R236-9U+L MB32K4 %(;F_79+3D[,_95P,K(TN:*,+K&[X+]%U8=9RPVXY4R%3 M5=($Y@Z6@ *Y R=^_\X?>1][8,,6-NQ3CS'V81=3;159*U-DNS@,HIF[ZW U M;%T-7W,5=;FJK48'KOSPB*NH=17UNKH3FN:DXBE3B:BXAI3@E2*I.0=[)@DM MF5F2V^PJZ9,]KBZZZ 7=<.1UTXU:NE$OW14H-26L*"L#QA /SU5W.1^]<'[A MC[N=CUOGXU[G*Y-#7),=S2LP!59O0=X4V)$4';](A^$P[ :9M""3WC*QA7V. MU=$=^N0_%,6'%NU#[QY]:W/%;DX77K^ /R8%5GVF>F!\[_=MZ?6JW8#I="T. MP7PIR"E>?K6/,[PQQ>O$KSAY$_+!!>_WJBV;PB-(!03[^)L(:\W)099Y R^: M_)5G[D'C,4W\FLHMXPIU-VCG#<:8IK+NB_5 B]+VHK70V-GL8X;?$B#- GR_ M$4(_#TQ[:[].XE]02P,$% @ >W9\6,Z>_N:B P )PX !D !X;"]W M;W)K&ULK5=M;]LV$/XKA#8,*=!$K[;LS#;06"VV MH4&#!-T^,]+9(BJ*&DG%SK_?49)5*U*TQ' ^Q")U]]P]#X\GXTQM3EENK1;5 MW)U<+42I,Y;#G22JY)S*YQO(Q&YIN=9AXIYM4VTF[-6BH%MX /V]N),XLEN4 MA''(%1,YD;!96I_A?AA!G\F2\LQ&4$&L380%'^> M8 U99I PCW\;4*N-:1R/GP_H7RKR2.:1*EB+[!^6Z'1IS2R2P(:6F;X7NS^@ M(30Q>+'(5/6?[&K;:6"1N%1:\,89,^ LKW_IOA'BR,&=ON+@-0[>2X?7(OB- M@_]6AZ!Q""IE:BJ5#A'5=+608D>DL48T\U")67DC?9:;=7_0$M\R]-.KM>"< M:5Q(K0C-$[(6N6;Y%O*8@2(7$6C*,O6!7)+O#Q&Y^/7#PM88UCC;<1/BI@[A MO1+"]<@MHJ:*?,X32+H -N;;)NT=DK[Q1A$CB*^([WXDGN/Y PFMW^[N#;A' MX^Y_E=D5<6;&W9V/L/';)? K//^4)1B2NX8+AN%,H[A6!8UA:6$G4""?P%K] M]HL[=7X?DNJ<8-&9P#HR!JV,P1CZZBO@]B?2[/-+L;DL%7PD.>@A 6N@205D M&N/3*@C\B8^U\'0L3=\L],,P\+MF4=]L[IB_UJQ#9]+2F8S2N<=Z(+#'_JY@ MB$/M/3V*ZG>CUAS>9A:-YG+BPDU;IM-1IM\*D-14/,FJ)2SH<[49AEA/>W2\ M(=9O,XM&\SJ1==BR#O]G?6E&0&FJ@6BZAWKOLUR5DN8QJB"!LY(/JA#V*LX= M4B'LJ3!D%HWF>:(*LU:%V:@*MW3/>,F1>UZB'C&V/LD>2W,D4 3K@@ O,O$, MN)=Q%&-9#.E1QY@?$76NPA=BC.;QWCYW)K".9/-6LOFY)*-2CA('$22>E727W!&PO=V]R:W-H M965T^3#!YM[#.?:U?>3%D8LWN0=0Z%.>,;GT M]DH5][XOXSWD5-[Q IA^L^4BITHWQ0?U1/ O=\EN4),V! MR90S)&"[]#[@^S4A)J&*^#.%HSQ[1D;*AO,WT_B8++W ,((,8F4@J/XYP!JR MS"!I'O\TH%[[39-X_GQ"_[D2K\5LJ(0US_Y*$[5?>C,/);"E9:9>^/%7: 2- M#5[,,UG]1\N1*KI:"'Y$PD1K-/-0C4V5K=6DS$SCJQ+Z;:KSU.I9\*2,%7JE&<@1 MTD.CA;.ZB2A+FB?%T1/]FPNTKBB!D.B[1U TS>3WZ(.%-[B7YB"21] %]+;_63 MD_X'8D5\A/@.A7B$2$#" 4+K+T\G%CIA.QUAA1==P>N&-V5H31E-Z BI/:#U MOQ"_H1UG0&):> MW@XDB -XJV^_P9/@QZ%1<036&Z.H':.H0@^OC5&OIEYT30W)C5S*=036DSMN MY8[M)?%^"14@3)?>9H>4UW"S"L[LXH=5MJJG#@IRZE*N([">W%DK=^:V M(&<#I39^5Y#6C_Y/2?-6TMPJZ;7Y*VA?0Y=A8" M6X_L=_L[9\/#ZM1%N$+K:^Y\!)ZY6$>.C$$C^6O8#-SY#&PW&K>OH_G B'3 M=R4Y%(;G5^P\Z6P'N=%V'/D02SO*K7/D"JVON3,=Q(7I($Y-ARNTON3.=!#' MIH,,NHEH=E&6PV'C2S?LG]U?Z3+;5==Z$L6\9*J^RFE[VZO##]6%V47_ [Y? MUQ> '4Q]'_E$Q2YE$F6PU9#!W50?/**^XJL;BA?5+=F&*UWKU>,>: +"!.CW M6\[5J6$^T%ZTKOX#4$L#!!0 ( 'MV?%A8SJRK9P, / 1 9 >&PO M=V]R:W-H965T @;?W_<[SOC,:$/9/0\Q%N Q MCA(^-D(ATBO3Y'Z(8\0O:(H3>6=)68R$;+*5R5.&49 ;Q9%I6Y9KQH@DAC?* MK\V8-Z*9B$B"9PSP+(X1>[K&$=V,#6@\7[@AJU"H"Z8W2M$*S[&X36=,MLQ* M)2 Q3CBA"6!X.3:^PJL)=)5!WN,/P1M>.P<*94'IO6K\#,:&I3S"$?:%DD#R ML,83'$5*2?KQ4(H:U9C*L'[^K/X]AYM"V=ZC/,7^!7#@9V!; MMM-B/GF]N=TT-R5C!6I7H':NY^S1*]$F-)8S@*,\AV:,KAB* 4H",!?4OS]7 M&1$T.K6!%R/UVD=2$^^*I\C'8T/.+([9&AO>AW?0M;ZTA:$CL490G"HHCD[= MDZ"QC -72882'_.V.!3B;BZNWA=K;SATH>L.1N:Z MCJAUXDC$7H78TR+^S@07\@&39 4VB#&4B%:60J5?8[%>4.AZ-%SK5Z[UM:[) MS+:>IYQ?S\LT0JUYIY4[-.\Z$FN0NQ6Y>[+)Z'89E([$&D$95$$9O.5D'.Q, M1L>UU.]%&FN=.!)Q6"$._Y'Q\+",U\H=^G [$FN07U;DER?+^,LN@]*16",H MT-I6']9;YGRI_F(%VEV ]%X<2UFKL:"6\JY<=PJ8182!9/9ILI9%ETH$N@3S M;$&97*20D/C%+4%4SX2*/>S:,0]-@Z[4FA':%F?P=-49[+0\ZTJM&9AM@0;? MM$*#NR4:' [ZNZN"WHUC,;=%&M17:=KT;P73ZAW\D#M2:])OZT#8/UWV=UHD M=J76#,RV3(3:@NN_L]_=R7Z[WU83Z=TX%-.L;NAC( MH++B\T+1$#3-=^@+*N1^/S\-,9);W9\6)>T&'D: @ K@0 !D !X;"]W;W)K&ULG51-;]LP#/TK@E8,+;!%CN-F168;6!($ZZ% T*#=67%H6Z@^/$E.VG\_ M27:,;'![V,4B);['1YE4>E+ZQ=0 %KT*+DV&:VN;!2&FJ$%0,U$-2'=2*BVH M=:ZNB&DTT$, "4[B*)H309G$>1KVMCI/56LYD[#5R+1"4/VV!*Y.&9[B\\8C MJVKK-TB>-K2"'=BG9JN=1P:6 Q,@#5,2:2@S_&.Z6"8^/@0\,SB9"QOY2O9* MO7CG_I#AR L"#H7U#-0M1U@!YY[(R?C=<^(AI0=>VF?V3:C=U;*G!E:*_V(' M6V?X#J,#E+3E]E&=?D)?SZWG*Q0WX8M.7>P\PJAHC56B!SL%@LENI:_]/5P MXO@=0-P#XJ"[2Q14KJFE>:K5"6D?[=B\$4H-:">.2?]3=E:[4^9P-M]0IM$S MY2T@5:(-DU06C')T+XW5K;M]:]#U&BQEW-R@*\0D>F">?/TWGT?3Y*4'$T#W'FIE#T[OLF')RK_ M U!+ P04 " ![=GQ8W7G7)SX" "6!0 &0 'AL+W=O)2ZWKJ>2HO@1$U M$C5P<[(1DA%M0KGU5"V!% [$J!?Z_L1CI.(X2]S>4F:):#2M."PE4@UC1#[/ M@(HVQ0'>;]Q7VU+;#2]+:K*%%>B'>BE-Y TL1<6 JTIP)&&3XNM@.H]MODOX M7D&K#M;(.ED+\6B#VR+%OA4$%')M&8CY[& .E%HB(^-GSXF'*RWP<+UG_^*\ M&R]KHF NZ(^JT&6*KS J8$,:JN]%>P.]G['ERP55[A>U76[L8Y0W2@O6@XT" M5O'N2Y[Z.AP @LD)0-@#PM> ^ 0@Z@&1,]HI<[861),LD:)%TF8;-KMPM7%H MXZ;B]E]<:6E.*X/3V9(\HYU"2Y#N1? $\\ZXO $<1"B.\%UJ=!G7D#QDL S*@>IX5[J+#S+N(!\A*+@ PK],#HB M:/[W\/",G&BH7.3XHG^IW+%Z=73Q<3K;K5-5DQQ2;-I1@=P!SMZ]"2;^IV-> M_Q/9"^?QX#P^QYY],\/EEN>" ;KX*I0Z^CHZBK&CL*-DEX63R55L2[\[-/)G M7C .QY?C(:V3Z!T\<09RZSI?H5PT7'=/:-@=ALNUZZE7^S,S=+H9\9NFFUAW M1&XKKA"%C:'T1Y=&E.RF0!=H4;M&6@MMVM(M2S,X0=H$<[X10N\#>\$PBK-? M4$L#!!0 ( 'MV?%AD.J)K0P( (H& 9 >&PO=V]R:W-H965TNJY,2ZBPG/ : MF'Z2B<&4M &>RL_.5Z8>)MP"\" MK3P9(U/)GO-G,]EDL>,9(:"0*D/ ^G: .Z#4@+3&GY[I#%N:Q-/QD?[-UJYK MV6,)=YS^)IDJ8^>3@S+(<4/5CK??H:]G9G@II])>4=O%AI\=E#92\:I/U@85 M8=T=O_3G<)*@.><3@CXAL-[=1M;R'BN<1(*W2)AH33,#6ZK-UG*$F9?RJ(1^ M2G2>2C;Z>#,0Z$G@C+ "K83 K !][$I&KM([F#@W[6GKCA9X)TK\P;M7]&&9>1 ML@;3? MW?JGVFB5\5K]?\B=[C@PQU3"B-AL$)N-_ZM2>0.BO M"%]P&V>^Y[88W!97']RXWSCWHI][TA\J$(7M@A*EO&&J:Q7#ZM!H5UU_^1O> M=>D'+ K")**0ZU1OLM"O4W2=KYLH7MMNL^=*]RX[+/7/ H0)T,]SSM5Q8C88 M?C_)&U!+ P04 " ![=GQ8EDC1^2T# #J$@ #0 'AL+W-T>6QEUY-B9X["67X]O MG*8?^"+&PU;6"F+?XW/NL7V#+4:560EVLV#,!,M"R"HE"V/*3V%8S1:LH-69 M*IFT2*YT08WMZGE8E9K1K )2(<)!KQ>'!>62C$>R+JX*4P4S54N3DO,N%+C' MURPE_?@C"9S<1&4L)7_N]'(_?M( IR3TBIZ_0/2L MA^M:#)..=Z77PX^M5L<]QL@7'O*&B=*&+YK.,[-IA,-V0\:C7,G-OD3$!6QF M6K#@GHJ43*C@4\V!E=."BY4+#R P4T+IP-B"L%;Z$*D>'-QW/:B55J?@4NDF MM\O@?D_;X7O N@<&N1"=P0%Q@?&HI,8P+:]LIQG<+>!I5A@ :HPK;R#B=*TD;#VM&V["R M,R;$#;Q(/_,=[66^M:<]V%'9-:VAMNED7 ?TM]6<]K;LX%6Z0T34O6"C-'VPV*)69 M#3!-@GNF#9]M1WYK6MZRI5F7TS+'/0_>H.>_N\YS)IFF8MNTK?U#7N57.VY/ MGG_AN?FSLN_8:S*Z.'R/[6E[Z";CMV#R36SW\/!-1LE!>@S;\WOKDK!S1>BB M 5S%4O(#+GUBDS28UEP8+MO>@F<9DT]N"E;>T*F]R._HV_$9RVDMS&T'IF33 M_LXR7A=)-^H:%J(=M6E_@^GUX^X>:'-QF;$ERR9M5\^G33.P#9NU_0!A'[EJ M/GX$XSC,CP"&Y<$<8!S'PO+\3_,9HO-Q&.9MZ$6&*&>(8&"[@-4.Y/?G@9KRW9\6)>*NQS $P( L !?3T\ M$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5* M(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'#08V/8B"VS_U42BXLM.FX Y.S7Y@CT;PS!Z$<$4^"(;#\T'!I>I]^7RJ MZ\8,_!/M1.JD5E!8%=Q)\6A_7J].V8.T\E[FTCV/>_7?N>BQ0BI9R.\B&_>& M/68/^O%:&_E=*\?S)#4ZS\>]47/A3A@GT]^*DPIRR^]M7>+X_2T'D''O? @5 M[J2QKKZCKI\#XX. FYNSTNF%S)TP,^[$7T:71ZGV537P% /O,>HXG(Y-$*_, M_PFCWNUD*F8Z+0NA7!-'(_(*4-F#/-H>4[P0X][I%L95QN;*09#84C55P;W5 MD\)/+[/FJ1W@>C$T5Q(NF&56@]-!3C?K9+-:SB;;^8Q]G:PFZ^F<)=?S^3;Q M ,$," 'G,W7"=!UHGJ0(0(9OF$4DRT<_IZOMPG;+-CF9G[K048(9/1ND,GU MQ(>,$'*\EK&UB=$Q4%LCHT[",-66NW[6V$*MH9TH06' M26-$;(U)FNI2.0OQ>^;PTW4C0Z$I(:8KZ6-BVA@1>V.I4ET(MN5/[=!AEA@1 M:Z+J"O#*374!E=CZ.H-<<&]X4471Q\0\,2(6Q1KJ/5MI:S^RERC"Z,N2 S?^ MD#?"+#$BU@2$L)"NNJGQPQ0R8$A&A4IEN[DQ2XR(-0%-FY6I8PG/J[%YH8V0 M>]6< K6/B?EC1"R0NF$/.L^$L1]8\X[Z;)A%1L0:67!IV!W/RSHE6$C%H85Y M#N^E=:8L_#P:4TI K!0T:_DG\#$QKP3$7GG)6]C9MAJX[4>?"YV'$"OEUQ2F M$Q"324 LDXYLII,1DTM +)?.I*&3$G-+0.P6-'MH]Q3,+P&Q7_SLH3.&F%<" M8J^@:40[AIA7 F*OH(YF9SXFIIB 6#%=^NMJ\A 33/BN@@E]3$PPX1L)IE^_ MG%P]?[#,UNG._3,KN(^)^28D]LU/S$F6R>IRG5*S#IA,32Z=*W%TL?$Y-.2"R=SBRC*Y:8 M?$+RM:_75D]J5A\3DT](+)]7LJ&N:&+R"8GETXWYW[CDKVYC^HF(]?,:YDL7 M\C$Q_43$^L&32]^2$::?B'RZXR67?78K4@TY42Z;3*[5Z)A^HC=<00/,F=@) M8R"0CC\Q;OU5E@C=>B'7CY^J=W3P"%-/1*P>/%=OO9*8>B)B]>"8D8^)R2=Z MUYE/[&-B\HF(Y8-CGON8F'PB8OG@F!?^KB4FGYA8/CCFI8^)R2M,?G97W?4Q,/C'UMC^&V5KCB#'YQ,3R09?XVYCHSC^QA;K7.#I< M&6,2BHDEA"[VMX.)22BFWM;AS^P!&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/-VKM.ZT 4A>%7 MB?P 3/8MP!&AHJ%%O( 5)A>1Q)8]"'A[HE"$95&KU;Y8=N]7;(Q_++X/3>#:_C-N?2S)[; M89/+LDD?^\OI,9T/7Y;-\/@B3:H=I!"D]8,,@JQ^D$.0UP\*"(KZ M00L(6M0/NH:@Z_I!-Q!T4S_H%H)NZP?)'&6<$R1-L";06I!K(?!:$&PA$%N0 M;"$P6Q!M(5!;D&TA<%L0;B&06Y!N(;!;$&\AT%M1;R706U%O)=!;)R_;!'HK MZJT$>BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$>AOJ;01Z&^IM!'H; MZFT$>MMDLX1 ;T.]C4!O0[V-0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T>]G4!O M1[V=0&]'O9U ;T>]G4!OGVQV$^CMJ+<3Z.VHMQ/H[:BW$^CMJ+<3Z.VHMQ/H M':AW$.@=J'<0Z!VH=Q#H':AW$.@=J'<0Z!V3CY4$>@?J'01Z!^H=!'H'ZAT$ M>@?J'7^I]U@^]WF\]'RO\3OW7U)=3O?FR^//R^^3B//BC'."'V7NOP!02P,$ M% @ >W9\6!?(S!O; 0 T2( !, !;0V]N=&5N=%]4>7!E&UL MS=I=3X,P% ;@O[)P:T;7K_D1YXUZJU[X!RJ<#3*@3=O-^>\M3$TT2EQFXGL# M@;;G/;3)<\7EXXNC,-FU31<6616CNV L%!6U)N3649=&EM:W)J9'OV+.%&NS M(B9FLSDK;!>IB]/8U\BN+F]H:39-G-SNTNM0VVZ1>6I"-KG>3^RS%IEQKJD+ M$],XVW;EEY3I6T*>5@YS0E6[<)(F9.S;A'[DYX"W=?=;\KXN:?)@?+PS;9K% M=@T+\:6AD(^7^*9'NUS6!96VV+1I21Z<)U.&BBBV3;XO>C*>'-,.T_[*C\X? MRHP%IID/WKJ03LS3X7'O1]*OGKI4B'RLQS_Q(S&5/OK[J#_MDLI?9J?M?;9^ M/9Q'8,/M^#W^?,8?]0_L0X#T(4'Z4"!]:) ^YB!]G(+T<0;2QSE('WR&T@B* MJ!R%5(YB*D=!E:.HRE%8Y2BN&UL4$L! M A0#% @ >W9\6-KG&/CO *P( !$ ( !KP &1O M8U!R;W!S+V-O&UL4$L! A0#% @ >W9\6)E&PO=V]R:W-H M965T&UL4$L! A0#% @ >W9\6,Y:GW4D!P 51T !@ M ("!M@\ 'AL+W=OI"B N0( - ' 8 " @1 7 !X;"]W M;W)K&PO=V]R:W-H965T&UL M4$L! A0#% @ >W9\6/4Q;/AF!0 SB !@ ("!HAX M 'AL+W=O 8 " @3XD !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\ M6,EAIK6S P Y@@ !@ ("!(T, 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ >W9\6-@!GDZ> P .@D !D ("!ZU 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\ M6!!*YI.L"@ B2, !D ("!;V$ 'AL+W=O&PO=V]R:W-H965T0+XP4 "@/ 9 " @3!P !X;"]W;W)K M&UL4$L! A0#% @ >W9\6 'X$! HPD M !D ("!2G8 'AL+W=O@ M>&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\6/]AEGG!& 6DL !D M ("!%H$ 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ >W9\6'8TT#"M @ : 8 !D ("!YY\ 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\6/9) M0BZ$ P ,@D !D ("!<:D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\6%3:48-S @ G@4 !D M ("!>[8 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ >W9\6%U1&W>/ @ )@@ !D ("! MQ\( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ >W9\6.4R.VM( P 70X !D ("!D,H 'AL+W=O&UL4$L! A0#% @ >W9\6%2K+\EB M P +@T !D ("!(-8 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\6.;C,FNK @ Y0< !D M ("!Y-\ 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ >W9\6/\IK9CV P FA !D ("!2^D M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M>W9\6(2%%OP0!0 IAH !D ("!F_, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\6.U&CI%E! M@1$ !D ("!$@$! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\6,Z>_N:B P )PX !D M ("!_0P! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ >W9\6)>T&'D: @ K@0 !D ("!LA@! 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ >W9\ M6)9(T?DM P ZA( T ( !\A\! 'AL+W-T>6QE&PO=V]R:V)O;VLN>&UL4$L! A0#% @ >W9\6%EV M ?CU 0 .", !H ( !5RD! 'AL+U]R96QS+W=OW9\6!?(S!O; 0 T2( !, M ( !A"L! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4& $, 0P!,$@ &D"T! end XML 73 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 74 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 76 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.1 html 121 282 1 false 49 0 false 6 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS Sheet http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations CONSOLIDATED STATEMENTS OF OPERATIONS Statements 4 false false R5.htm 00300 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY Sheet http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY Statements 5 false false R6.htm 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 10101 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates Sheet http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimates Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates Notes 7 false false R8.htm 10201 - Disclosure - Revenue Sheet http://www.inradoptics.com/role/DisclosureRevenue Revenue Notes 8 false false R9.htm 10301 - Disclosure - Inventories, net Sheet http://www.inradoptics.com/role/DisclosureInventoriesNet Inventories, net Notes 9 false false R10.htm 10401 - Disclosure - Plant and Equipment Sheet http://www.inradoptics.com/role/DisclosurePlantAndEquipment Plant and Equipment Notes 10 false false R11.htm 10501 - Disclosure - Related Party Transactions Sheet http://www.inradoptics.com/role/DisclosureRelatedPartyTransactions Related Party Transactions Notes 11 false false R12.htm 10601 - Disclosure - Other Long-Term Notes Notes http://www.inradoptics.com/role/DisclosureOtherLongTermNotes Other Long-Term Notes Notes 12 false false R13.htm 10701 - Disclosure - Accounts Payable and Accrued Liabilities Sheet http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilities Accounts Payable and Accrued Liabilities Notes 13 false false R14.htm 10801 - Disclosure - Income Taxes Sheet http://www.inradoptics.com/role/DisclosureIncomeTaxes Income Taxes Notes 14 false false R15.htm 10901 - Disclosure - Equity Compensation Program and Stock-based Compensation Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensation Equity Compensation Program and Stock-based Compensation Notes 15 false false R16.htm 11001 - Disclosure - Net (Loss) Income per Share Sheet http://www.inradoptics.com/role/DisclosureNetLossIncomePerShare Net (Loss) Income per Share Notes 16 false false R17.htm 11101 - Disclosure - Commitments and Contingencies Sheet http://www.inradoptics.com/role/DisclosureCommitmentsAndContingencies Commitments and Contingencies Notes 17 false false R18.htm 11201 - Disclosure - Product Sales, Foreign Sales and Sales to Major Customers Sheet http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomers Product Sales, Foreign Sales and Sales to Major Customers Notes 18 false false R19.htm 11301 - Disclosure - Shareholders' Equity Sheet http://www.inradoptics.com/role/DisclosureShareholdersEquity Shareholders' Equity Notes 19 false false R20.htm 11401 - Disclosure - Fair Value of Financial Instruments Sheet http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstruments Fair Value of Financial Instruments Notes 20 false false R21.htm 20102 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Policies) Sheet http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Policies) Policies http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimates 21 false false R22.htm 30203 - Disclosure - Revenue (Tables) Sheet http://www.inradoptics.com/role/DisclosureRevenueTables Revenue (Tables) Tables http://www.inradoptics.com/role/DisclosureRevenue 22 false false R23.htm 30303 - Disclosure - Inventories, net (Tables) Sheet http://www.inradoptics.com/role/DisclosureInventoriesNetTables Inventories, net (Tables) Tables http://www.inradoptics.com/role/DisclosureInventoriesNet 23 false false R24.htm 30403 - Disclosure - Plant and Equipment (Tables) Sheet http://www.inradoptics.com/role/DisclosurePlantAndEquipmentTables Plant and Equipment (Tables) Tables http://www.inradoptics.com/role/DisclosurePlantAndEquipment 24 false false R25.htm 30603 - Disclosure - Other Long-Term Notes (Tables) Notes http://www.inradoptics.com/role/DisclosureOtherLongTermNotesTables Other Long-Term Notes (Tables) Tables http://www.inradoptics.com/role/DisclosureOtherLongTermNotes 25 false false R26.htm 30703 - Disclosure - Accounts Payable and Accrued Liabilities (Tables) Sheet http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables Accounts Payable and Accrued Liabilities (Tables) Tables http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilities 26 false false R27.htm 30803 - Disclosure - Income Taxes (Tables) Sheet http://www.inradoptics.com/role/DisclosureIncomeTaxesTables Income Taxes (Tables) Tables http://www.inradoptics.com/role/DisclosureIncomeTaxes 27 false false R28.htm 30903 - Disclosure - Equity Compensation Program and Stock-based Compensation (Tables) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables Equity Compensation Program and Stock-based Compensation (Tables) Tables http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensation 28 false false R29.htm 31103 - Disclosure - Commitments and Contingencies (Tables) Sheet http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesTables Commitments and Contingencies (Tables) Tables http://www.inradoptics.com/role/DisclosureCommitmentsAndContingencies 29 false false R30.htm 31303 - Disclosure - Shareholders' Equity (Tables) Sheet http://www.inradoptics.com/role/DisclosureShareholdersEquityTables Shareholders' Equity (Tables) Tables http://www.inradoptics.com/role/DisclosureShareholdersEquity 30 false false R31.htm 40101 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Details) Sheet http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Details) Details http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies 31 false false R32.htm 40201 - Disclosure - Revenue - Company's sales by market area (Details) Sheet http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails Revenue - Company's sales by market area (Details) Details 32 false false R33.htm 40202 - Disclosure - Revenue - Additional Information (Details) Sheet http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails Revenue - Additional Information (Details) Details 33 false false R34.htm 40301 - Disclosure - Inventories, net - Schedule of inventory (Details) Sheet http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails Inventories, net - Schedule of inventory (Details) Details 34 false false R35.htm 40302 - Disclosure - Inventories, net (Details) Sheet http://www.inradoptics.com/role/DisclosureInventoriesNetDetails Inventories, net (Details) Details http://www.inradoptics.com/role/DisclosureInventoriesNetTables 35 false false R36.htm 40401 - Disclosure - Plant and Equipment - Schedule of plant and equipment (Details) Sheet http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails Plant and Equipment - Schedule of plant and equipment (Details) Details 36 false false R37.htm 40402 - Disclosure - Plant and Equipment (Details) Sheet http://www.inradoptics.com/role/DisclosurePlantAndEquipmentDetails Plant and Equipment (Details) Details http://www.inradoptics.com/role/DisclosurePlantAndEquipmentTables 37 false false R38.htm 40501 - Disclosure - Related Party Transactions (Details) Sheet http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails Related Party Transactions (Details) Details http://www.inradoptics.com/role/DisclosureRelatedPartyTransactions 38 false false R39.htm 40601 - Disclosure - Other Long-Term Notes (Details) Notes http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails Other Long-Term Notes (Details) Details http://www.inradoptics.com/role/DisclosureOtherLongTermNotesTables 39 false false R40.htm 40602 - Disclosure - Other Long-Term Notes - Additional information (Details) Notes http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails Other Long-Term Notes - Additional information (Details) Details 40 false false R41.htm 40603 - Disclosure - Other Long-Term Notes - Schedule of other long-term note maturities (Details) Notes http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails Other Long-Term Notes - Schedule of other long-term note maturities (Details) Details 41 false false R42.htm 40701 - Disclosure - Accounts Payable and Accrued Liabilities (Details) Sheet http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails Accounts Payable and Accrued Liabilities (Details) Details http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables 42 false false R43.htm 40801 - Disclosure - Income Taxes - Reconciliation of income tax provision (Details) Sheet http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails Income Taxes - Reconciliation of income tax provision (Details) Details 43 false false R44.htm 40802 - Disclosure - Income Taxes - Deferred tax assets (liabilities) (Details) Sheet http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails Income Taxes - Deferred tax assets (liabilities) (Details) Details 44 false false R45.htm 40803 - Disclosure - Income Taxes (Details) Sheet http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails Income Taxes (Details) Details http://www.inradoptics.com/role/DisclosureIncomeTaxesTables 45 false false R46.htm 40901 - Disclosure - Equity Compensation Program and Stock-based Compensation (Details) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails Equity Compensation Program and Stock-based Compensation (Details) Details http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables 46 false false R47.htm 40902 - Disclosure - Equity Compensation Program and Stock-based Compensation - Weighted-average assumptions (Details) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationWeightedAverageAssumptionsDetails Equity Compensation Program and Stock-based Compensation - Weighted-average assumptions (Details) Details 47 false false R48.htm 40903 - Disclosure - Equity Compensation Program and Stock-based Compensation- Stock Option Activity (Details) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails Equity Compensation Program and Stock-based Compensation- Stock Option Activity (Details) Details 48 false false R49.htm 40904 - Disclosure - Equity Compensation Program and Stock-based Compensation - Non-vested stock option activity (Details) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails Equity Compensation Program and Stock-based Compensation - Non-vested stock option activity (Details) Details 49 false false R50.htm 40905 - Disclosure - Equity Compensation Program and Stock-based Compensation- Option exercise prices (Details) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails Equity Compensation Program and Stock-based Compensation- Option exercise prices (Details) Details 50 false false R51.htm 40906 - Disclosure - Equity Compensation Program and Stock-based Compensation - Additional information (Details) Sheet http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails Equity Compensation Program and Stock-based Compensation - Additional information (Details) Details 51 false false R52.htm 41001 - Disclosure - Net (Loss) Income per Share (Details) Sheet http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails Net (Loss) Income per Share (Details) Details http://www.inradoptics.com/role/DisclosureNetLossIncomePerShare 52 false false R53.htm 41101 - Disclosure - Commitments and Contingencies - Maturity of Lease Liability (Details) Sheet http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails Commitments and Contingencies - Maturity of Lease Liability (Details) Details 53 false false R54.htm 41102 - Disclosure - Commitments and Contingencies (Details) Sheet http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails Commitments and Contingencies (Details) Details http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesTables 54 false false R55.htm 41201 - Disclosure - Product Sales, Foreign Sales and Sales to Major Customers (Details) Sheet http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails Product Sales, Foreign Sales and Sales to Major Customers (Details) Details http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomers 55 false false R56.htm 41301 - Disclosure - Shareholders' Equity (Details) Sheet http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails Shareholders' Equity (Details) Details http://www.inradoptics.com/role/DisclosureShareholdersEquityTables 56 false false R57.htm 41401 - Disclosure - Fair Value of Financial Instruments (Details) Sheet http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstrumentsDetails Fair Value of Financial Instruments (Details) Details http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstruments 57 false false R58.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Uncategorized 58 false false R59.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Cover 59 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 4 fact(s) appearing in ix:hidden were eligible for transformation: dei:CurrentFiscalYearEndDate, us-gaap:PropertyPlantAndEquipmentGross, us-gaap:PropertyPlantAndEquipmentUsefulLife - inrd-20231231x10k.htm 9 [ix-0514-Hidden-Fact-Not-Referenced] WARN: 1 fact(s) appearing in ix:hidden were not referenced by any -sec-ix-hidden style property: us-gaap:NotesPayableNoncurrentRelatedPartyTypeExtensibleEnumeration - inrd-20231231x10k.htm 9 [dq-0712-Presentation-Base-Set-Order] Role '41401 - Disclosure - Fair Value of Financial Instruments (Details)', a level 4, Detail role, appears before '995410 - Disclosure - Pay vs Performance Disclosure', a level 1, Note role. https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd 30, inrd-20231231.xsd 357 inrd-20231231.xsd inrd-20231231_cal.xml inrd-20231231_def.xml inrd-20231231_lab.xml inrd-20231231_pre.xml inrd-20231231x10k.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 79 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "inrd-20231231x10k.htm": { "nsprefix": "inrd", "nsuri": "http://www.inradoptics.com/20231231", "dts": { "schema": { "local": [ "inrd-20231231.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd" ] }, "calculationLink": { "local": [ "inrd-20231231_cal.xml" ] }, "definitionLink": { "local": [ "inrd-20231231_def.xml" ] }, "labelLink": { "local": [ "inrd-20231231_lab.xml" ] }, "presentationLink": { "local": [ "inrd-20231231_pre.xml" ] }, "inline": { "local": [ "inrd-20231231x10k.htm" ] } }, "keyStandard": 265, "keyCustom": 17, "axisStandard": 17, "axisCustom": 0, "memberStandard": 18, "memberCustom": 28, "hidden": { "total": 12, "http://xbrl.sec.gov/dei/2023": 6, "http://fasb.org/us-gaap/2023": 6 }, "contextCount": 121, "entityCount": 1, "segmentCount": 49, "elementCount": 507, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 488, "http://xbrl.sec.gov/dei/2023": 36, "http://xbrl.sec.gov/ecd/2023": 4 }, "report": { "R1": { "role": "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation", "longName": "00090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets", "longName": "00100 - Statement - CONSOLIDATED BALANCE SHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical", "longName": "00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_kW-sKVeVF0KXDGD4qrKRHA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R4": { "role": "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations", "longName": "00200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS", "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R5": { "role": "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity", "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY", "shortName": "CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_h2eaa0sL206268Wypx3c3w", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_h2eaa0sL206268Wypx3c3w", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows", "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R7": { "role": "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimates", "longName": "10101 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates", "shortName": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R8": { "role": "http://www.inradoptics.com/role/DisclosureRevenue", "longName": "10201 - Disclosure - Revenue", "shortName": "Revenue", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.inradoptics.com/role/DisclosureInventoriesNet", "longName": "10301 - Disclosure - Inventories, net", "shortName": "Inventories, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.inradoptics.com/role/DisclosurePlantAndEquipment", "longName": "10401 - Disclosure - Plant and Equipment", "shortName": "Plant and Equipment", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactions", "longName": "10501 - Disclosure - Related Party Transactions", "shortName": "Related Party Transactions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.inradoptics.com/role/DisclosureOtherLongTermNotes", "longName": "10601 - Disclosure - Other Long-Term Notes", "shortName": "Other Long-Term Notes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilities", "longName": "10701 - Disclosure - Accounts Payable and Accrued Liabilities", "shortName": "Accounts Payable and Accrued Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.inradoptics.com/role/DisclosureIncomeTaxes", "longName": "10801 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensation", "longName": "10901 - Disclosure - Equity Compensation Program and Stock-based Compensation", "shortName": "Equity Compensation Program and Stock-based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShare", "longName": "11001 - Disclosure - Net (Loss) Income per Share", "shortName": "Net (Loss) Income per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingencies", "longName": "11101 - Disclosure - Commitments and Contingencies", "shortName": "Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:CommitmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:CommitmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomers", "longName": "11201 - Disclosure - Product Sales, Foreign Sales and Sales to Major Customers", "shortName": "Product Sales, Foreign Sales and Sales to Major Customers", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.inradoptics.com/role/DisclosureShareholdersEquity", "longName": "11301 - Disclosure - Shareholders' Equity", "shortName": "Shareholders' Equity", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstruments", "longName": "11401 - Disclosure - Fair Value of Financial Instruments", "shortName": "Fair Value of Financial Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies", "longName": "20102 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Policies)", "shortName": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "21", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.inradoptics.com/role/DisclosureRevenueTables", "longName": "30203 - Disclosure - Revenue (Tables)", "shortName": "Revenue (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.inradoptics.com/role/DisclosureInventoriesNetTables", "longName": "30303 - Disclosure - Inventories, net (Tables)", "shortName": "Inventories, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentTables", "longName": "30403 - Disclosure - Plant and Equipment (Tables)", "shortName": "Plant and Equipment (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesTables", "longName": "30603 - Disclosure - Other Long-Term Notes (Tables)", "shortName": "Other Long-Term Notes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables", "longName": "30703 - Disclosure - Accounts Payable and Accrued Liabilities (Tables)", "shortName": "Accounts Payable and Accrued Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.inradoptics.com/role/DisclosureIncomeTaxesTables", "longName": "30803 - Disclosure - Income Taxes (Tables)", "shortName": "Income Taxes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables", "longName": "30903 - Disclosure - Equity Compensation Program and Stock-based Compensation (Tables)", "shortName": "Equity Compensation Program and Stock-based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesTables", "longName": "31103 - Disclosure - Commitments and Contingencies (Tables)", "shortName": "Commitments and Contingencies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "inrd:LesseeOperatingLeaseOtherInformationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "inrd:LesseeOperatingLeaseOtherInformationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.inradoptics.com/role/DisclosureShareholdersEquityTables", "longName": "31303 - Disclosure - Shareholders' Equity (Tables)", "shortName": "Shareholders' Equity (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfStockByClassTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ScheduleOfStockByClassTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "longName": "40101 - Disclosure - Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Details)", "shortName": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:UnrecognizedTaxBenefits", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:IncomeTaxPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R32": { "role": "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails", "longName": "40201 - Disclosure - Revenue - Company's sales by market area (Details)", "shortName": "Revenue - Company's sales by market area (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_StatementBusinessSegmentsAxis_inrd_AerospaceDefenseMember_sl47HXt09USC4Qe9TSknMA", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R33": { "role": "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails", "longName": "40202 - Disclosure - Revenue - Additional Information (Details)", "shortName": "Revenue - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "inrd:PercentageOfRevenueFromProductsOrServices", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember_Ev0bL2YKM0q8yb-Uh2leCw", "name": "inrd:PercentageOfRevenueFromProductsOrServices", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "inrd:PercentageOfRevenueFromProductsOrServices", "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R34": { "role": "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails", "longName": "40301 - Disclosure - Inventories, net - Schedule of inventory (Details)", "shortName": "Inventories, net - Schedule of inventory (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:InventoryRawMaterials", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:InventoryRawMaterials", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.inradoptics.com/role/DisclosureInventoriesNetDetails", "longName": "40302 - Disclosure - Inventories, net (Details)", "shortName": "Inventories, net (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:InventoryValuationReserves", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:InventoryValuationReserves", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails", "longName": "40401 - Disclosure - Plant and Equipment - Schedule of plant and equipment (Details)", "shortName": "Plant and Equipment - Schedule of plant and equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_us-gaap_PropertyPlantAndEquipmentByTypeAxis_inrd_OfficeAndComputerEquipmentMember_1V2_EzG-REW0u4RiVlzKYQ", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R37": { "role": "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentDetails", "longName": "40402 - Disclosure - Plant and Equipment (Details)", "shortName": "Plant and Equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:Depreciation", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:Depreciation", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "longName": "40501 - Disclosure - Related Party Transactions (Details)", "shortName": "Related Party Transactions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "Duration_10_12_2023_To_10_12_2023_us-gaap_LongtermDebtTypeAxis_us-gaap_ConvertibleSubordinatedDebtMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_KyD7qslYO0-UcE68pAFBPw", "name": "inrd:NumberOfSharesAndWarrantsComprisedInUnit", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_10_12_2023_To_10_12_2023_us-gaap_LongtermDebtTypeAxis_us-gaap_ConvertibleSubordinatedDebtMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_KyD7qslYO0-UcE68pAFBPw", "name": "inrd:NumberOfSharesAndWarrantsComprisedInUnit", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails", "longName": "40601 - Disclosure - Other Long-Term Notes (Details)", "shortName": "Other Long-Term Notes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:OtherNotesPayable", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "inrd:LongTermNotesPayableOther", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R40": { "role": "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails", "longName": "40602 - Disclosure - Other Long-Term Notes - Additional information (Details)", "shortName": "Other Long-Term Notes - Additional information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_LongtermDebtTypeAxis_inrd_UsSmallBusinessAdministrationNotePayableMember_w6aG-Ur4uUqQx2HkAsum1A", "name": "inrd:DebtInstrumentMonthlyPayment", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "inrd:DebtInstrumentMonthlyPayment", "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_LongtermDebtTypeAxis_inrd_UsSmallBusinessAdministrationNotePayableMember_w6aG-Ur4uUqQx2HkAsum1A", "name": "inrd:DebtInstrumentMonthlyPayment", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "inrd:DebtInstrumentMonthlyPayment", "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails", "longName": "40603 - Disclosure - Other Long-Term Notes - Schedule of other long-term note maturities (Details)", "shortName": "Other Long-Term Notes - Schedule of other long-term note maturities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails", "longName": "40701 - Disclosure - Accounts Payable and Accrued Liabilities (Details)", "shortName": "Accounts Payable and Accrued Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:AccountsPayableTradeCurrentAndNoncurrent", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:AccountsPayableTradeCurrentAndNoncurrent", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails", "longName": "40801 - Disclosure - Income Taxes - Reconciliation of income tax provision (Details)", "shortName": "Income Taxes - Reconciliation of income tax provision (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails", "longName": "40802 - Disclosure - Income Taxes - Deferred tax assets (liabilities) (Details)", "shortName": "Income Taxes - Deferred tax assets (liabilities) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails", "longName": "40803 - Disclosure - Income Taxes (Details)", "shortName": "Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "inrd:NetOperatingLossCarryforwardSubjectToExpiration", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "inrd:NetOperatingLossCarryforwardSubjectToExpiration", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails", "longName": "40901 - Disclosure - Equity Compensation Program and Stock-based Compensation (Details)", "shortName": "Equity Compensation Program and Stock-based Compensation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_xQG6VyKmo0aZiEMBJf9n7g", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aRIDmmewaUGXtFMLj31XJQ", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "us-gaap:AllocatedShareBasedCompensationExpense", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R47": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationWeightedAverageAssumptionsDetails", "longName": "40902 - Disclosure - Equity Compensation Program and Stock-based Compensation - Weighted-average assumptions (Details)", "shortName": "Equity Compensation Program and Stock-based Compensation - Weighted-average assumptions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R48": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails", "longName": "40903 - Disclosure - Equity Compensation Program and Stock-based Compensation- Stock Option Activity (Details)", "shortName": "Equity Compensation Program and Stock-based Compensation- Stock Option Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "As_Of_12_31_2022_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_XhGdHgV4AkaASuORw8dXzQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_3MKq7xOTcE-AeQtbZJjQPQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R49": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails", "longName": "40904 - Disclosure - Equity Compensation Program and Stock-based Compensation - Non-vested stock option activity (Details)", "shortName": "Equity Compensation Program and Stock-based Compensation - Non-vested stock option activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "As_Of_12_31_2022_UtrZf2zhykqFbu88NpmrFA", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "inrd:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2021_KZeG9F5wRkufFc7AyE3LTw", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "inrd:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R50": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails", "longName": "40905 - Disclosure - Equity Compensation Program and Stock-based Compensation- Option exercise prices (Details)", "shortName": "Equity Compensation Program and Stock-based Compensation- Option exercise prices (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_inrd_ExercisePriceRangeOneMember_RBhhh39DaU6bAUWTD9jmwQ", "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit", "unitRef": "Unit_Divide_USD_shares_kW-sKVeVF0KXDGD4qrKRHA", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_inrd_ExercisePriceRangeOneMember_RBhhh39DaU6bAUWTD9jmwQ", "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit", "unitRef": "Unit_Divide_USD_shares_kW-sKVeVF0KXDGD4qrKRHA", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "longName": "40906 - Disclosure - Equity Compensation Program and Stock-based Compensation - Additional information (Details)", "shortName": "Equity Compensation Program and Stock-based Compensation - Additional information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "inrd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "inrd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "longName": "41001 - Disclosure - Net (Loss) Income per Share (Details)", "shortName": "Net (Loss) Income per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_wneSdbajdEumWuMG1chkoQ", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_wneSdbajdEumWuMG1chkoQ", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails", "longName": "41101 - Disclosure - Commitments and Contingencies - Maturity of Lease Liability (Details)", "shortName": "Commitments and Contingencies - Maturity of Lease Liability (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "inrd:LesseeOperatingLeaseOtherInformationTableTextBlock", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "inrd:LesseeOperatingLeaseOtherInformationTableTextBlock", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails", "longName": "41102 - Disclosure - Commitments and Contingencies (Details)", "shortName": "Commitments and Contingencies (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_7_8_2019_3KnF6Ai7KE-XVXB7kFwddg", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "unique": true } }, "R55": { "role": "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails", "longName": "41201 - Disclosure - Product Sales, Foreign Sales and Sales to Major Customers (Details)", "shortName": "Product Sales, Foreign Sales and Sales to Major Customers (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_srt_MajorCustomersAxis_inrd_CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_l53SkfhyPkWgzm0bkUhX0A", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_srt_MajorCustomersAxis_inrd_CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_l53SkfhyPkWgzm0bkUhX0A", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Unit_Standard_pure_dUIlg_5wek6Z7lvYlY7r2Q", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails", "longName": "41301 - Disclosure - Shareholders' Equity (Details)", "shortName": "Shareholders' Equity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:CommonStockCapitalSharesReservedForFutureIssuance", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfStockByClassTextBlock", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:CommonStockCapitalSharesReservedForFutureIssuance", "unitRef": "Unit_Standard_shares_uzPgTtDnUUaNQlsuAZarYg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfStockByClassTextBlock", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R57": { "role": "http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstrumentsDetails", "longName": "41401 - Disclosure - Fair Value of Financial Instruments (Details)", "shortName": "Fair Value of Financial Instruments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:LongTermDebtFairValue", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:FinancialInstrumentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_znSrjx7MUUa5oPytVyGqGw", "name": "us-gaap:LongTermDebtFairValue", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:FinancialInstrumentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } }, "R58": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Uncategorized", "order": "58", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_KcmeI5S1UUeZNYH9-uAGuQ", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_VtyVazKHOEevbS6ekLmFAA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true }, "uniqueAnchor": null }, "R59": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Cover", "order": "59", "firstAnchor": { "contextRef": "Duration_10_1_2023_To_12_31_2023_SQj9xP1-lEeFeS0pnR4wfw", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_10_1_2023_To_12_31_2023_SQj9xP1-lEeFeS0pnR4wfw", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "inrd-20231231x10k.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 }, "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Payable and Accrued Liabilities, Current", "totalLabel": "Accounts payable and accrued liabilities", "verboseLabel": "Accounts payable and accrued liabilities", "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits." } } }, "auth_ref": [ "r16" ] }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilities" ], "lang": { "en-us": { "role": { "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "terseLabel": "Accounts Payable and Accrued Liabilities", "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period." } } }, "auth_ref": [ "r15" ] }, "us-gaap_AccountsPayableTradeCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableTradeCurrentAndNoncurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Payable, Trade", "verboseLabel": "Trade accounts payable and accrued purchases", "documentation": "Carrying value as of the balance sheet date of obligations incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r76" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Net, Current", "terseLabel": "Accounts receivable, net of allowance for credit losses of $46,000 in 2023 and 2022)", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r244", "r245" ] }, "us-gaap_AccruedSalariesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedSalariesCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Salaries, Current", "verboseLabel": "Accrued payroll", "documentation": "Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r18", "r564" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "negatedLabel": "Less: Accumulated depreciation and amortization", "negatedTerseLabel": "Less accumulated depreciation and amortization", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r40", "r155", "r459" ] }, "inrd_AcquisitionOfAssetsByIssuingNotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "AcquisitionOfAssetsByIssuingNotesPayable", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "The amount relates to acquisition of assets by issuing a note payable.", "label": "Acquisition Of Assets By Issuing Notes Payable", "terseLabel": "Acquisition of equipment by issuing a note payable" } } }, "auth_ref": [] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r643" ] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquityBeforeTreasuryStock", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid in Capital, Common Stock", "verboseLabel": "Capital in excess of par value", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r83" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r649" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r649" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r649" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r649" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition", "verboseLabel": "Stock-based compensation expense", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r61", "r62", "r335" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities", "totalLabel": "Total adjustments and changes", "documentation": "The sum of adjustments which are added to or deducted from net income or loss, including the portion attributable to noncontrolling interest, to reflect cash provided by or used in operating activities, in accordance with the indirect cash flow method." } } }, "auth_ref": [ "r101" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Adjustments to reconcile net income to net cash provided by (used in) operating activities" } } }, "auth_ref": [] }, "us-gaap_AdvertisingCostsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdvertisingCostsPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Advertising Costs, Policy [Policy Text Block]", "verboseLabel": "Advertising costs", "documentation": "Disclosure of accounting policy for advertising cost." } } }, "auth_ref": [ "r136" ] }, "us-gaap_AdvertisingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdvertisingExpense", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Advertising Expense", "terseLabel": "Advertising expense", "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line." } } }, "auth_ref": [ "r381" ] }, "inrd_AerospaceDefenseMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "AerospaceDefenseMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to aerospace & defense.", "label": "Aerospace & Defense [Member]", "verboseLabel": "Aerospace & Defense" } } }, "auth_ref": [] }, "inrd_AffiliateOfClarexMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "AffiliateOfClarexMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to affiliate of clarex.", "label": "Affiliate Of Clarex [Member]", "terseLabel": "Affiliate of Clarex" } } }, "auth_ref": [] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r613", "r625", "r635", "r661" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r616", "r628", "r638", "r664" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r649" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r656" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r620", "r629", "r639", "r656", "r665", "r669", "r677" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r675" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Allocated Share-based Compensation Expense", "verboseLabel": "Allocated share-based compensation expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r368", "r380" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss, Current", "terseLabel": "Net reduction of allowances related to customers", "verboseLabel": "Allowance for credit losses", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r158", "r248", "r253" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease)", "terseLabel": "Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease)", "documentation": "Amount of increase (decrease) in allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r700" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "verboseLabel": "Shares excluded from computation of net income per share because their effect is anti-dilutive", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r206" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r29" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "verboseLabel": "Net (Loss) Income per Share", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesNameDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities, Name [Domain]", "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented." } } }, "auth_ref": [ "r29" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets", "totalLabel": "Total Assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r124", "r157", "r177", "r215", "r230", "r236", "r250", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r410", "r412", "r424", "r454", "r514", "r592", "r604", "r702", "r703", "r718" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "verboseLabel": "Assets" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current", "totalLabel": "Total current assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r150", "r162", "r177", "r250", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r410", "r412", "r424", "r592", "r702", "r703", "r718" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "verboseLabel": "Current assets:" } } }, "auth_ref": [] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r607", "r608", "r621" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r607", "r608", "r621" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r607", "r608", "r621" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r672" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r673" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r668" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r668" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r668" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r668" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r668" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r668" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails", "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r339", "r340", "r341", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r363", "r364", "r365", "r366", "r367" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r671" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r670" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r669" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r669" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Nature of Business and Operations", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "inrd_CapitalInExcessOfParValueMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "CapitalInExcessOfParValueMember", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "documentation": "This member represents capital in excess of par value.", "label": "Capital In Excess Of Par Value [Member]", "terseLabel": "Capital in excess of par value" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, at Carrying Value", "verboseLabel": "Cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r27", "r153", "r562" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "verboseLabel": "Cash and cash equivalents", "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value." } } }, "auth_ref": [ "r28" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of year", "periodStartLabel": "Cash and cash equivalents at beginning of year", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r27", "r99", "r175" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Net increase in cash and cash equivalents", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r2", "r99" ] }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]", "terseLabel": "Significant non-cash activities:" } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r647" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Class of Warrant or Right, Exercise Price of Warrants or Rights", "terseLabel": "Common stock at a price", "documentation": "Exercise price per share or per unit of warrants or rights outstanding." } } }, "auth_ref": [ "r316" ] }, "us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Class of Warrant or Right, Number of Securities Called by Each Warrant or Right", "terseLabel": "Number of shares of common stock to be purchased by each warrant", "documentation": "Number of securities into which each warrant or right may be converted. For example, but not limited to, each warrant may be converted into two shares." } } }, "auth_ref": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r648" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r648" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments and Contingencies" } } }, "auth_ref": [] }, "us-gaap_CommitmentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "Commitments Disclosure [Text Block]", "terseLabel": "Commitments and Contingencies", "documentation": "The entire disclosure for significant arrangements with third parties, which includes operating lease arrangements and arrangements in which the entity has agreed to expend funds to procure goods or services, or has agreed to commit resources to supply goods or services, and operating lease arrangements. Descriptions may include identification of the specific goods and services, period of time covered, minimum quantities and amounts, and cancellation rights." } } }, "auth_ref": [ "r109" ] }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Common Stock, Capital Shares Reserved for Future Issuance", "terseLabel": "Common shares reserved for future issuances", "documentation": "Aggregate number of common shares reserved for future issuance." } } }, "auth_ref": [ "r24" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "terseLabel": "Common stock", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r594", "r595", "r596", "r598", "r599", "r600", "r601", "r697", "r698", "r713", "r729", "r730" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Par or Stated Value Per Share", "verboseLabel": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r82" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares Authorized", "verboseLabel": "Common stock, shares authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r82", "r502" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Issued", "verboseLabel": "Common stock, shares issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r82" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquityBeforeTreasuryStock", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock, Value, Issued", "terseLabel": "Common stock: $.01 par value; 60,000,000 authorized shares; 14,235,575 shares issued at December 31, 2023, and 14,092,920 shares issued at December 31, 2022", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r82", "r455", "r592" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r653" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r652" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r654" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r651" ] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r31", "r33", "r69", "r70", "r243", "r558" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r31", "r33", "r69", "r70", "r243", "r482", "r558" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r31", "r33", "r69", "r70", "r243", "r558", "r685" ] }, "us-gaap_ConcentrationRiskCreditRisk": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskCreditRisk", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]", "terseLabel": "Concentrations and credit risk", "documentation": "Disclosure of accounting policy for credit risk." } } }, "auth_ref": [ "r79", "r139" ] }, "us-gaap_ConcentrationRiskLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails", "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk", "terseLabel": "REVENUE", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r558" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk, Percentage", "terseLabel": "Concentration risk percentage", "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division." } } }, "auth_ref": [ "r31", "r33", "r69", "r70", "r243" ] }, "us-gaap_ConcentrationRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails", "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Table]", "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r30", "r31", "r33", "r34", "r69", "r123", "r558" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Domain]", "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r31", "r33", "r69", "r70", "r243", "r558" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Consolidation, Policy [Policy Text Block]", "verboseLabel": "Principles of consolidation", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r66", "r568" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Current", "terseLabel": "Contract liabilities", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r318", "r319", "r329" ] }, "us-gaap_ConvertibleNotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConvertibleNotesPayable", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Convertible Notes Payable", "terseLabel": "Related party convertible notes payable", "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of a written promise to pay a note, initially due after one year or beyond the operating cycle if longer, which can be exchanged for a specified amount of one or more securities (typically common stock), at the option of the issuer or the holder." } } }, "auth_ref": [ "r12", "r127", "r726" ] }, "us-gaap_ConvertibleNotesPayableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConvertibleNotesPayableMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Convertible Notes Payable [Member]", "terseLabel": "Convertible Notes Payable", "documentation": "Written promise to pay a note which can be exchanged for a specified quantity of securities (typically common stock), at the option of the issuer or the holder." } } }, "auth_ref": [ "r80", "r125" ] }, "us-gaap_ConvertibleSubordinatedDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConvertibleSubordinatedDebt", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Convertible Subordinated Debt", "terseLabel": "Convertible subordinated debt", "documentation": "Including the current and noncurrent portions, the carrying value of convertible subordinated debt, as of the balance sheet date, initially scheduled to be repaid after one year or beyond the normal operating cycle if longer. This form of debt can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder, and places a lender in a lien position behind debt having a higher priority of repayment in liquidation of the entity's assets." } } }, "auth_ref": [ "r12", "r127", "r726" ] }, "inrd_ConvertibleSubordinatedDebt1000000Member": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ConvertibleSubordinatedDebt1000000Member", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Debt with original amount of $1,000,000 that places a lender in a lien position behind debt having a higher priority of repayment in liquidation of the entity's assets which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder.", "label": "Convertible Subordinated Debt, $1,000,000 [Member]", "terseLabel": "Convertible subordinated debt, $1,000,000" } } }, "auth_ref": [] }, "inrd_ConvertibleSubordinatedDebt1500000Member": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ConvertibleSubordinatedDebt1500000Member", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Debt of $1,500,000 that places a lender in a lien position behind debt having a higher priority of repayment in liquidation of the entity's assets which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder.", "label": "Convertible Subordinated Debt, $1,500,000 [Member]", "terseLabel": "Convertible subordinated debt, $1,500,000" } } }, "auth_ref": [] }, "us-gaap_ConvertibleSubordinatedDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConvertibleSubordinatedDebtMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Convertible Subordinated Debt [Member]", "terseLabel": "Subordinated convertible note", "documentation": "Debt that places a lender in a lien position behind debt having a higher priority of repayment in liquidation of the entity's assets which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder." } } }, "auth_ref": [ "r110" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Cost of Goods and Services Sold", "verboseLabel": "Cost of goods sold", "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities." } } }, "auth_ref": [ "r94", "r450" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfSalesMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Cost of Sales [Member]", "terseLabel": "Cost of goods sold", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "us-gaap_CostsAndExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostsAndExpenses", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Costs and Expenses", "totalLabel": "Cost and expenses, Total", "documentation": "Total costs of sales and operating expenses for the period." } } }, "auth_ref": [ "r93" ] }, "us-gaap_CostsAndExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostsAndExpensesAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Costs and Expenses [Abstract]", "terseLabel": "Cost and expenses:" } } }, "auth_ref": [] }, "srt_CounterpartyNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CounterpartyNameAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Axis]" } } }, "auth_ref": [ "r179", "r180", "r288", "r305", "r444", "r565", "r567" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Document and Entity Information", "documentation": "Cover page." } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk [Member]", "terseLabel": "Customer concentration risk", "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer." } } }, "auth_ref": [ "r32", "r243" ] }, "inrd_CustomerOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "CustomerOneMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for customer one.", "label": "Customer One [Member]", "terseLabel": "Customer one" } } }, "auth_ref": [] }, "inrd_CustomerThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "CustomerThreeMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for customer three.", "label": "Customer Three [Member]", "terseLabel": "Customer three" } } }, "auth_ref": [] }, "inrd_CustomerTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "CustomerTwoMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for customer two.", "label": "Customer Two [Member]", "terseLabel": "Customer two" } } }, "auth_ref": [] }, "inrd_CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "CustomersInCanadaCzeckRepublicGermanyIsraelAndSingaporeMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Customers In Canada, the Czeck Republic, Germany, Israel, and Singapore.", "label": "Customers In Canada, the Czeck Republic, Germany, Israel, and Singapore [Member]", "terseLabel": "Customers in Canada, the Czeck Republic, Germany, Israel, and Singapore" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentCarryingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentCarryingAmount", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Gross", "terseLabel": "Carrying amount", "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt." } } }, "auth_ref": [ "r12", "r127", "r302" ] }, "us-gaap_DebtInstrumentConvertibleNumberOfEquityInstruments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentConvertibleNumberOfEquityInstruments", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Convertible, Number of Equity Instruments", "terseLabel": "Debt instrument, convertible, number of equity instruments", "documentation": "The number of equity instruments that the holder of the debt instrument would receive if the debt was converted to equity." } } }, "auth_ref": [ "r22", "r46", "r113", "r114", "r287" ] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Face Amount", "terseLabel": "Debt, face amount", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r72", "r73", "r285", "r431", "r577", "r578" ] }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateStatedPercentage", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Interest Rate, Stated Percentage", "terseLabel": "Fixed interest rate", "documentation": "Contractual interest rate for funds borrowed, under the debt agreement." } } }, "auth_ref": [ "r21", "r286" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Line Items]", "verboseLabel": "Other Long-Term Notes", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r181", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r431", "r576", "r577", "r578", "r579", "r580", "r695" ] }, "inrd_DebtInstrumentMonthlyPayment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "DebtInstrumentMonthlyPayment", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of monthly installment payment.", "label": "Debt Instrument, Monthly Payment", "terseLabel": "Monthly installment payment" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentPeriodicPayment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentPeriodicPayment", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Periodic Payment", "terseLabel": "Equal installment", "documentation": "Amount of the required periodic payments including both interest and principal payments." } } }, "auth_ref": [ "r23", "r78" ] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Long-term Debt Instruments [Table]", "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r23", "r46", "r49", "r71", "r72", "r73", "r77", "r112", "r114", "r181", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r431", "r576", "r577", "r578", "r579", "r580", "r695" ] }, "us-gaap_DebtInstrumentTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTerm", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Term", "terseLabel": "Debt term", "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Axis]", "documentation": "Information by type of deferred compensation related to equity-based payment arrangements. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes broad group equity-based compensation plans, defined benefit pension plans, defined benefit other postretirement benefit plans and other deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan." } } }, "auth_ref": [ "r54" ] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred tax asset", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r387", "r388" ] }, "us-gaap_DeferredTaxAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGross", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Gross", "totalLabel": "Gross deferred tax assets", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r397" ] }, "us-gaap_DeferredTaxAssetsInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInventory", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Inventory", "verboseLabel": "Inventory capitalization", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory." } } }, "auth_ref": [ "r65", "r711" ] }, "us-gaap_DeferredTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Net of Valuation Allowance", "totalLabel": "Net deferred tax asset", "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r710" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Operating Loss Carryforwards", "verboseLabel": "Loss carry forwards", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards." } } }, "auth_ref": [ "r65", "r711" ] }, "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Property, Plant and Equipment", "verboseLabel": "Depreciation", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Allowance for Doubtful Accounts", "verboseLabel": "Account receivable reserves", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r65", "r711" ] }, "inrd_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsInventory", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Deferred tax assets tax deferred expense reserves and accruals inventory.", "label": "Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Inventory", "verboseLabel": "Inventory reserves" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsValuationAllowance", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Valuation Allowance", "negatedLabel": "Valuation allowance", "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized." } } }, "auth_ref": [ "r398" ] }, "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDeferredTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Property, Plant and Equipment", "negatedLabel": "Deferred tax liability- depreciation", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment." } } }, "auth_ref": [ "r65", "r711" ] }, "inrd_DefinedContributionPlanEmployerMatchingContributionInCash": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "DefinedContributionPlanEmployerMatchingContributionInCash", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "documentation": "It represents employee contributions of cash during the period.", "label": "Defined Contribution Plan Employer Matching Contribution In Cash", "verboseLabel": "Employer matching contribution in cash" } } }, "auth_ref": [] }, "inrd_DefinedContributionPlanEmployerMatchingContributionInShares": { "xbrltype": "sharesItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "DefinedContributionPlanEmployerMatchingContributionInShares", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "documentation": "It represents employee contributions of shares during the period.", "label": "Defined Contribution Plan Employer Matching Contribution In Shares", "verboseLabel": "Defined contribution employer matching contribution (in Shares)" } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount", "terseLabel": "Maximum annual contributions per employee, amount", "documentation": "Maximum amount the employee may contribute to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent", "terseLabel": "Maximum annual contributions per employee, percent", "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Depreciation", "terseLabel": "Depreciation and amortization expense", "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation." } } }, "auth_ref": [ "r5", "r39" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation, Depletion and Amortization", "verboseLabel": "Depreciation and amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r5", "r220" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "REVENUE", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r328", "r582", "r583", "r584", "r585", "r586", "r587", "r588" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r328", "r582", "r583", "r584", "r585", "r586", "r587", "r588" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueTables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Schedule of company's sales by market area", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r706" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensation" ], "lang": { "en-us": { "role": { "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]", "terseLabel": "Equity Compensation Program and Stock-based Compensation", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r333", "r338", "r369", "r370", "r372", "r590" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "Equity Compensation Program and Stock-based Compensation" } } }, "auth_ref": [] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r607", "r608", "r621" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r607", "r608", "r621", "r657" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r642" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Domestic Tax Authority [Member]", "verboseLabel": "Federal", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "lang": { "en-us": { "role": { "label": "Net (Loss) Income per Share" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "terseLabel": "Net income per common share - basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r170", "r187", "r188", "r189", "r190", "r191", "r196", "r198", "r203", "r204", "r205", "r209", "r422", "r423", "r451", "r463", "r571" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "terseLabel": "Net income per common share - diluted", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r170", "r187", "r188", "r189", "r190", "r191", "r198", "r203", "r204", "r205", "r209", "r422", "r423", "r451", "r463", "r571" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShare" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Text Block]", "terseLabel": "Net (Loss) Income per Share", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r195", "r206", "r207", "r208" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Percent", "totalLabel": "Effective income tax rate", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r390" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "terseLabel": "Federal statutory rate", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r178", "r390", "r406" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent", "terseLabel": "Change in valuation allowance", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets." } } }, "auth_ref": [ "r709", "r712" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Change in Enacted Tax Rate, Percent", "terseLabel": "Reduction in state rate due to tax rate change", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates." } } }, "auth_ref": [ "r406", "r709" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Percent", "terseLabel": "Return to provision adjustment", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments." } } }, "auth_ref": [ "r709", "r712" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationPriorYearIncomeTaxes": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationPriorYearIncomeTaxes", "calculation": { "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesReconciliationOfIncomeTaxProvisionDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Prior Year Income Taxes, Percent", "verboseLabel": "Permanent differences", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to revisions of previously reported income tax expense." } } }, "auth_ref": [ "r709", "r712" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized", "verboseLabel": "Employee service share-based compensation, unrecognized compensation costs, net of estimated forfeitures", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r371" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition", "verboseLabel": "Employee service share-based compensation, expected to be recognized over a weighted average period (in years)", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r371" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails", "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r605" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r605" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r605" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r682" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Public Float", "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r605" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r605" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r605" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r605" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Voluntary Filers", "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Well-known Seasoned Issuer", "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A." } } }, "auth_ref": [ "r683" ] }, "inrd_EquipmentFinancingMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "EquipmentFinancingMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to equipment financing.", "label": "Long-term Equipment Financing [Member]", "terseLabel": "Long-term equipment financing" } } }, "auth_ref": [] }, "us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Domain]", "documentation": "Deferred compensation related to equity-based payment arrangements. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes broad group equity-based compensation plans, defined benefit pension plans, defined benefit other postretirement benefit plans and other deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan." } } }, "auth_ref": [ "r54" ] }, "inrd_EquityCompensation2010ProgramMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "EquityCompensation2010ProgramMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for equity compensation 2010 program.", "label": "Equity Compensation 2010 Program [Member]" } } }, "auth_ref": [] }, "inrd_EquityCompensationPlan2000Member": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "EquityCompensationPlan2000Member", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "2010 Equity compensation plan" } } }, "auth_ref": [] }, "inrd_EquityCompensationPlan2010Member": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "EquityCompensationPlan2010Member", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "documentation": "Equity Compensation Plan 2010", "label": "2020 Equity compensation plan" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r9", "r147", "r166", "r167", "r168", "r182", "r183", "r184", "r186", "r192", "r194", "r210", "r251", "r252", "r317", "r373", "r374", "r375", "r402", "r403", "r414", "r415", "r416", "r417", "r418", "r419", "r421", "r425", "r426", "r427", "r428", "r429", "r430", "r439", "r477", "r478", "r479", "r491", "r544" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r650" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r613", "r625", "r635", "r661" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r610", "r622", "r632", "r658" ] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r656" ] }, "inrd_ExercisePriceRangeOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ExercisePriceRangeOneMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "documentation": "Exercise Price Range One", "label": "Exercise Price Range One [Member]", "terseLabel": "Exercise price range one" } } }, "auth_ref": [] }, "inrd_ExercisePriceRangeThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ExercisePriceRangeThreeMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "documentation": "Exercise Price Range Three", "label": "Exercise Price Range Three [Member]", "terseLabel": "Exercise price range three" } } }, "auth_ref": [] }, "inrd_ExercisePriceRangeTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ExercisePriceRangeTwoMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "documentation": "Exercise Price Range Two", "label": "Exercise Price Range Two [Member]", "terseLabel": "Exercise price range two" } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementPolicyPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Fair Value Measurement, Policy [Policy Text Block]", "verboseLabel": "Fair value measurements", "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities." } } }, "auth_ref": [] }, "us-gaap_FinancialInstrumentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentsDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstruments" ], "lang": { "en-us": { "role": { "label": "Financial Instruments Disclosure [Text Block]", "terseLabel": "Fair Value of Financial Instruments", "documentation": "The entire disclosure for financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures." } } }, "auth_ref": [] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r607", "r608", "r621" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]", "terseLabel": "Impairment of long-lived assets", "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets." } } }, "auth_ref": [ "r0", "r108" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r1", "r91", "r129", "r215", "r229", "r235", "r238", "r452", "r461", "r573" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF OPERATIONS" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r267", "r269", "r529" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r269", "r529" ] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r8" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Domain]", "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Taxes" } } }, "auth_ref": [] }, "inrd_IncomeTaxDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "IncomeTaxDisclosureLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for income taxes.", "label": "Income Tax Disclosure [Line Items]", "terseLabel": "Income Taxes" } } }, "auth_ref": [] }, "inrd_IncomeTaxDisclosureTable": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "IncomeTaxDisclosureTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "documentation": "A table or schedule providing information pertaining to income taxes.", "label": "Income Tax Disclosure [Table]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "terseLabel": "Income Taxes", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r178", "r383", "r391", "r395", "r400", "r404", "r407", "r408", "r409", "r487" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 1.0 }, "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense (Benefit)", "negatedLabel": "Income tax (provision) benefit", "terseLabel": "Income tax benefit", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r134", "r145", "r193", "r194", "r223", "r389", "r405", "r464" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income taxes", "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." } } }, "auth_ref": [ "r165", "r385", "r386", "r395", "r396", "r399", "r401", "r484" ] }, "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount", "terseLabel": "Effective income tax rate reconciliation, change in deferred tax assets valuation allowance, amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets." } } }, "auth_ref": [ "r709" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities", "verboseLabel": "Accounts payable and accrued liabilities", "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Contract with Customer, Liability", "terseLabel": "Contract liabilities", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r448", "r693" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "verboseLabel": "Changes in operating assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingLeaseLiability", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Lease Liability", "terseLabel": "Change in lease obligations", "documentation": "Amount of increase (decrease) in obligation for operating lease." } } }, "auth_ref": [ "r686", "r693" ] }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherOperatingAssets", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Other Operating Assets", "negatedLabel": "Other current and non-current assets", "documentation": "Amount of increase (decrease) in operating assets classified as other." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements", "verboseLabel": "Shares included in computation of net income per share because their effect is dilutive", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r199", "r200", "r201", "r205", "r337" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r620", "r629", "r639", "r656", "r665", "r669", "r677" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r675" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r609", "r681" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r609", "r681" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r609", "r681" ] }, "us-gaap_InterestIncomeExpenseNonoperatingNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestIncomeExpenseNonoperatingNet", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Interest Income (Expense), Nonoperating, Net", "verboseLabel": "Interest expense-net", "documentation": "The net amount of nonoperating interest income (expense)." } } }, "auth_ref": [] }, "us-gaap_InterestPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaid", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Interest Paid, Including Capitalized Interest, Operating and Investing Activities", "terseLabel": "Interest paid", "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities." } } }, "auth_ref": [ "r694" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Interest Paid, Net", "terseLabel": "Interest paid", "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount." } } }, "auth_ref": [ "r171", "r173", "r174" ] }, "us-gaap_InterestPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPayableCurrent", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Interest Payable, Current", "terseLabel": "Interest payable", "documentation": "Carrying value as of the balance sheet date of [accrued] interest payable on all forms of debt, including trade payables, that has been incurred and is unpaid. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r18" ] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventories, net" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNet" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "terseLabel": "Inventories, net", "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." } } }, "auth_ref": [ "r254" ] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoods", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Finished Goods, Gross", "verboseLabel": "Finished goods", "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer." } } }, "auth_ref": [ "r689" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 }, "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Net", "totalLabel": "Inventories, net", "verboseLabel": "Inventories, net", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r160", "r563", "r592" ] }, "us-gaap_InventoryNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNoncurrent", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Noncurrent", "verboseLabel": "Precious metals", "documentation": "Inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle." } } }, "auth_ref": [ "r688" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Inventory, Policy [Policy Text Block]", "terseLabel": "Inventories", "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost." } } }, "auth_ref": [ "r135", "r152", "r159", "r254", "r255", "r257", "r449", "r569" ] }, "us-gaap_InventoryRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterials", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Raw Materials, Gross", "verboseLabel": "Raw materials", "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r691" ] }, "us-gaap_InventoryValuationReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryValuationReserves", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNetDetails" ], "lang": { "en-us": { "role": { "label": "Inventory Valuation Reserves", "terseLabel": "Inventory reserves", "documentation": "Amount of valuation reserve for inventory." } } }, "auth_ref": [ "r38", "r692" ] }, "us-gaap_InventoryWorkInProcess": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcess", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNetScheduleOfInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Work in Process, Gross", "verboseLabel": "Work in process, including manufactured parts and components", "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r690" ] }, "us-gaap_InventoryWriteDown": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWriteDown", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Inventory Write-down", "terseLabel": "Change in inventory reserve", "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels." } } }, "auth_ref": [ "r256" ] }, "us-gaap_InvestmentsAllOtherInvestmentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsAllOtherInvestmentsAbstract", "lang": { "en-us": { "role": { "label": "Fair Value of Financial Instruments" } } }, "auth_ref": [] }, "inrd_LaserSystemsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "LaserSystemsMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to laser systems.", "label": "Laser Systems [Member]", "terseLabel": "Laser Systems" } } }, "auth_ref": [] }, "us-gaap_LeaseCostAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostAbstract", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Lease, Cost" } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Leasehold Improvements [Member]", "terseLabel": "Leasehold improvements", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r107" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetailsCalc2": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total undiscounted operating and capital lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r438" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2025", "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)." } } }, "auth_ref": [ "r438" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2024", "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)." } } }, "auth_ref": [ "r438" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less: imputed interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r438" ] }, "inrd_LesseeOperatingLeaseOtherInformationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "LesseeOperatingLeaseOtherInformationTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesTables" ], "lang": { "en-us": { "role": { "documentation": "The tabular disclosure of other information regarding lessee, operating lease.", "label": "Lessee Operating Lease Other Information [Table Text Block]", "terseLabel": "Schedule of other information" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseRemainingLeaseTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseRemainingLeaseTerm", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Operating lease", "verboseLabel": "Remaining lease term (in months) - operating lease", "documentation": "Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r716" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities", "totalLabel": "Total liabilities", "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future." } } }, "auth_ref": [ "r17", "r177", "r250", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r411", "r412", "r413", "r424", "r501", "r572", "r604", "r702", "r718", "r719" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity", "totalLabel": "Total Liabilities and shareholders' equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r87", "r128", "r457", "r592", "r696", "r699", "r714" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "verboseLabel": "Liabilities and Shareholders' Equity" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current", "totalLabel": "Total current liabilities", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r20", "r151", "r177", "r250", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r411", "r412", "r413", "r424", "r592", "r702", "r718", "r719" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "verboseLabel": "Current liabilities:" } } }, "auth_ref": [] }, "us-gaap_LoansPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansPayable", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails" ], "lang": { "en-us": { "role": { "label": "Loans Payable", "verboseLabel": "Long-term equipment financing in equal installments of $5,236 and bearing an interest rate of 6.1% and expiring in January 2027 (1)", "documentation": "Including the current and noncurrent portions, aggregate carrying value as of the balance sheet date of loans payable (with maturities initially due after one year or beyond the operating cycle if longer)." } } }, "auth_ref": [ "r12", "r127", "r726" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebtFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtFairValue", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureFairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Fair Value", "terseLabel": "Fair value of long-term debt", "documentation": "The fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same submission." } } }, "auth_ref": [] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": "us-gaap_OtherNotesPayable", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal after Year Five", "verboseLabel": "Thereafter", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)." } } }, "auth_ref": [ "r7", "r181", "r705" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": "us-gaap_OtherNotesPayable", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months", "verboseLabel": "2024", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r181", "r296" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": "us-gaap_OtherNotesPayable", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Year Five", "verboseLabel": "2028", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)." } } }, "auth_ref": [ "r7", "r181", "r296" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": "us-gaap_OtherNotesPayable", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Year Four", "verboseLabel": "2027", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r181", "r296" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": "us-gaap_OtherNotesPayable", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Year Three", "verboseLabel": "2026", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r181", "r296" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": "us-gaap_OtherNotesPayable", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Year Two", "verboseLabel": "2025", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r181", "r296" ] }, "inrd_LongTermNotesPayableOther": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "LongTermNotesPayableOther", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of long-term notes payable other.", "label": "Long Term Notes Payable, Other", "totalLabel": "Long-term debt, excluding current portion" } } }, "auth_ref": [] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r23" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r23", "r41" ] }, "us-gaap_MachineryAndEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MachineryAndEquipmentMember", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Machinery and Equipment [Member]", "terseLabel": "Machinery and equipment", "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment." } } }, "auth_ref": [] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r243", "r584", "r706", "r727", "r728" ] }, "inrd_MajorCustomersOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "MajorCustomersOneMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Major Customers One", "label": "Major Customers One [Member]", "terseLabel": "Major customers one" } } }, "auth_ref": [] }, "inrd_MajorCustomersThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "MajorCustomersThreeMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Major Customers Three", "label": "Major Customers Three [Member]", "terseLabel": "Major customers three" } } }, "auth_ref": [] }, "inrd_MajorCustomersTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "MajorCustomersTwoMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Major Customers Two", "label": "Major Customers Two [Member]", "terseLabel": "Major customers two" } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "auth_ref": [ "r272", "r273", "r274", "r275", "r332", "r447", "r476", "r493", "r494", "r551", "r552", "r553", "r554", "r555", "r559", "r560", "r574", "r581", "r589", "r593", "r704", "r720", "r721", "r722", "r723", "r724", "r725" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r648" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r648" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "auth_ref": [ "r272", "r273", "r274", "r275", "r332", "r447", "r476", "r493", "r494", "r551", "r552", "r553", "r554", "r555", "r559", "r560", "r574", "r581", "r589", "r593", "r704", "r720", "r721", "r722", "r723", "r724", "r725" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r668" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r676" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r243", "r584", "r706", "r727", "r728" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r649" ] }, "inrd_NatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimateLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimateLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "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": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimate [Line Items]", "terseLabel": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates" } } }, "auth_ref": [] }, "inrd_NatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimateTable": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimateTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about the nature of business and operations and summary of significant accounting policies and estimates.", "label": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates [Table]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash (used in) financing activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r172" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "verboseLabel": "Cash flows from financing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash (used in) investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r172" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "verboseLabel": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r99", "r100", "r101" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Cash flows from operating activities:" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 }, "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "verboseLabel": "Net income", "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r92", "r101", "r130", "r149", "r163", "r164", "r168", "r177", "r185", "r187", "r188", "r189", "r190", "r193", "r194", "r202", "r215", "r229", "r235", "r238", "r250", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r423", "r424", "r462", "r522", "r542", "r543", "r573", "r602", "r702" ] }, "inrd_NetOperatingLossCarryforwardNotSubjectToExpiration": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NetOperatingLossCarryforwardNotSubjectToExpiration", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of Net operating loss carryforward not subject to expiration.", "label": "Net Operating Loss Carryforward Not Subject To Expiration", "terseLabel": "Net operating loss carryforward not subject to expiration" } } }, "auth_ref": [] }, "inrd_NetOperatingLossCarryforwardSubjectToExpiration": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NetOperatingLossCarryforwardSubjectToExpiration", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of Net operating loss carryforward subject to expiration.", "label": "Net Operating Loss Carryforward Subject To Expiration", "terseLabel": "Net operating loss carryforward subject to expiration" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recent Accounting Pronouncements", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "dei_NoTradingSymbolFlag": { "xbrltype": "trueItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "NoTradingSymbolFlag", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "No Trading Symbol Flag", "documentation": "Boolean flag that is true only for a security having no trading symbol." } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r648" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r617", "r629", "r639", "r656", "r665" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r646" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r645" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r656" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r676" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r676" ] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "Supplemental disclosure of non-cash investing and financing activities" } } }, "auth_ref": [] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense)", "totalLabel": "Nonoperating Income (Expense)", "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)." } } }, "auth_ref": [ "r97" ] }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpenseAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "terseLabel": "Other expense:" } } }, "auth_ref": [] }, "us-gaap_NotesPayableNoncurrentRelatedPartyTypeExtensibleEnumeration": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NotesPayableNoncurrentRelatedPartyTypeExtensibleEnumeration", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Notes Payable, Noncurrent, Related Party, Type [Extensible Enumeration]", "documentation": "Indicates type of related party for notes payable classified as noncurrent." } } }, "auth_ref": [ "r717" ] }, "inrd_NumberOfMajorCustomers": { "xbrltype": "integerItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NumberOfMajorCustomers", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the number of major customers.", "label": "Number Of Major Customers", "terseLabel": "Number of major customers" } } }, "auth_ref": [] }, "inrd_NumberOfPartsOfEquityCompensationProgram": { "xbrltype": "integerItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NumberOfPartsOfEquityCompensationProgram", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of parts of the equity compensation program.", "label": "Number Of Parts Of Equity Compensation Program", "terseLabel": "Number of parts of the 2010 Equity Compensation Program" } } }, "auth_ref": [] }, "inrd_NumberOfSharesAndWarrantsComprisedInUnit": { "xbrltype": "sharesItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "NumberOfSharesAndWarrantsComprisedInUnit", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Number of shares and warrants comprised in one common unit.", "label": "Number Of Shares And Warrants Comprised In Unit", "terseLabel": "Number of shares/warrants comprised in a unit (in shares)" } } }, "auth_ref": [] }, "inrd_OfficeAndComputerEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "OfficeAndComputerEquipmentMember", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for office and computer equipment.", "label": "Office and Computer Equipment [Member]", "terseLabel": "Office and computer equipment" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Operating Income (Loss)", "totalLabel": "Income from operations", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r215", "r229", "r235", "r238", "r573" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseExpense", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Expense", "terseLabel": "Rent expense", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r715" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability", "verboseLabel": "Present value of lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r433" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current", "terseLabel": "Current portion of lease obligation", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r433" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Lease obligation, net of current portion", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r433" ] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Payments", "terseLabel": "Operating lease payments", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r434", "r435" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Lease right-of-use, net", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r432" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesMaturityOfLeaseLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Discount rate for operating lease", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r437", "r591" ] }, "us-gaap_OperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Loss Carryforwards", "terseLabel": "Operating loss carryforwards", "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r64" ] }, "us-gaap_OptionIndexedToIssuersEquityTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OptionIndexedToIssuersEquityTypeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Option Indexed to Issuer's Equity, Type [Axis]", "documentation": "Information by type of freestanding contracts issued by an entity that are indexed to, and potentially settled in, an entity's own stock." } } }, "auth_ref": [ "r42", "r67", "r68", "r122" ] }, "us-gaap_OptionIndexedToIssuersEquityTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OptionIndexedToIssuersEquityTypeDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Option Indexed to Issuer's Equity, Type [Domain]", "documentation": "Description of the type of freestanding contract issued by a Company that is indexed to, and potentially settled in, a Company's own stock. Specifically, the pertinent rights and privileges of the securities outstanding." } } }, "auth_ref": [] }, "inrd_OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesAbstract", "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates" } } }, "auth_ref": [] }, "us-gaap_OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimates" ], "lang": { "en-us": { "role": { "label": "Organization, Consolidation, Basis of Presentation, Business Description and Accounting Policies [Text Block]", "terseLabel": "Nature of Business and Operations and Summary of Significant Accounting Policies and Estimates", "documentation": "The entire disclosure for the general note to the financial statements for the reporting entity which may include, descriptions of the basis of presentation, business description, significant accounting policies, consolidations, reclassifications, new pronouncements not yet adopted and changes in accounting principles." } } }, "auth_ref": [ "r102", "r103", "r104", "r121" ] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Other Accrued Liabilities, Current", "verboseLabel": "Accrued expenses - other", "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r18" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Current", "verboseLabel": "Other current assets", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r161", "r592" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Noncurrent", "verboseLabel": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r156" ] }, "us-gaap_OtherLiabilitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Other Long-Term Notes" } } }, "auth_ref": [] }, "us-gaap_OtherLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotes" ], "lang": { "en-us": { "role": { "label": "Other Liabilities Disclosure [Text Block]", "terseLabel": "Other Long-Term Notes", "documentation": "The entire disclosure for other liabilities." } } }, "auth_ref": [ "r19" ] }, "inrd_OtherLongTermNotes.Table": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "OtherLongTermNotes.Table", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about other long term notes.", "label": "Other Long-Term Notes. [Table]" } } }, "auth_ref": [] }, "inrd_OtherLongTermNotesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "OtherLongTermNotesLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails" ], "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": "Other Long-Term Notes.", "verboseLabel": "Other Long-Term Notes" } } }, "auth_ref": [] }, "us-gaap_OtherLongTermNotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLongTermNotesPayable", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Notes Payable, Noncurrent", "terseLabel": "Other long term notes, net of current portion", "documentation": "Amount of long-term notes classified as other, payable after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r23" ] }, "us-gaap_OtherNotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNotesPayable", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails", "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesScheduleOfOtherLongTermNoteMaturitiesDetails" ], "lang": { "en-us": { "role": { "label": "Other Notes Payable", "terseLabel": "U.S. Small Business Administration term note payable in equal monthly installments of $1,922 and bearing an interest rate of 4.0% and expiring in July 2029.", "totalLabel": "Total", "documentation": "Amount of long-term notes payable classified as other." } } }, "auth_ref": [ "r12", "r127", "r726" ] }, "us-gaap_OtherNotesPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNotesPayableCurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Notes Payable, Current", "negatedLabel": "Less current portion", "verboseLabel": "Current portion of other long term notes", "documentation": "Amount of long-term notes classified as other, payable within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r18" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r648" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r615", "r627", "r637", "r663" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r618", "r630", "r640", "r666" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r618", "r630", "r640", "r666" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r644" ] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "label": "Accounts Payable and Accrued Liabilities" } } }, "auth_ref": [] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Capital expenditures", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r98" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r647" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r647" ] }, "us-gaap_PensionAndOtherPostretirementAndPostemploymentBenefitPlansLiabilitiesCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementAndPostemploymentBenefitPlansLiabilitiesCurrentAndNoncurrent", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Liability, Retirement and Postemployment Benefits", "verboseLabel": "Accrued 401K company matching contribution", "documentation": "Amount of liability, recognized in statement of financial position, for pension, other postretirement and postemployment benefits." } } }, "auth_ref": [ "r52", "r53", "r126" ] }, "us-gaap_PensionAndOtherPostretirementBenefitExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitExpense", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Pension and Other Postretirement Benefits Cost (Reversal of Cost)", "terseLabel": "401(k) common stock contribution - non cash item", "documentation": "Amount of cost (reversal of cost) for pension and other postretirement benefits." } } }, "auth_ref": [] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r646" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r656" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r649" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r645" ] }, "inrd_PercentageOfRevenueFromProductsOrServices": { "xbrltype": "percentItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "PercentageOfRevenueFromProductsOrServices", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "documentation": "The percentage of revenue from sale of products or rendering of services.", "label": "Percentage of Revenue from Products or Services", "terseLabel": "Percentage of revenue from products or services" } } }, "auth_ref": [] }, "inrd_PreciousMetalsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "PreciousMetalsPolicyPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for precious metals.", "label": "Precious Metals, Policy [Policy Text Block]", "verboseLabel": "Precious metals" } } }, "auth_ref": [] }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Issuance of Common Stock", "verboseLabel": "Proceeds from issuance of common stock", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r3" ] }, "us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromRepaymentsOfOtherLongTermDebt", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from (Repayments of) Other Long-term Debt", "terseLabel": "Principal payments on notes payable-other", "documentation": "Amount of cash inflow (outflow) from other long-term debt." } } }, "auth_ref": [] }, "inrd_ProcessControlMetrologyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ProcessControlMetrologyMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to process control & metrology.", "label": "Process Control & Metrology [Member]", "terseLabel": "Process Control & Metrology" } } }, "auth_ref": [] }, "inrd_PropertyAndEquipmentExcludingLeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "PropertyAndEquipmentExcludingLeaseholdImprovementsMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for property and equipment, excluding leasehold improvements.", "label": "Property And Equipment Excluding Leasehold Improvements [Member]", "terseLabel": "Property and equipment excluding leasehold improvements" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "Plant and Equipment" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r6" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipment" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment Disclosure [Text Block]", "terseLabel": "Plant and Equipment", "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." } } }, "auth_ref": [ "r106", "r140", "r143", "r144" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Gross", "terseLabel": "Plant and equipment, at cost", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r107", "r154", "r460" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Line Items]", "verboseLabel": "Plant and Equipment", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails", "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net", "totalLabel": "Total plant and equipment", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r6", "r453", "r460", "r592" ] }, "us-gaap_PropertyPlantAndEquipmentNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNetAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net [Abstract]", "terseLabel": "Plant and equipment:" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "terseLabel": "Plant and Equipment", "documentation": "Disclosure of accounting policy 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." } } }, "auth_ref": [ "r6", "r140", "r143", "r458" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentTables" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule of plant and equipment", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r6" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Type [Domain]", "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [ "r107" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Useful Life", "terseLabel": "Plant and equipment useful life", "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment." } } }, "auth_ref": [] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r644" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r644" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Range [Axis]" } } }, "auth_ref": [ "r272", "r273", "r274", "r275", "r331", "r332", "r364", "r365", "r366", "r446", "r447", "r476", "r493", "r494", "r551", "r552", "r553", "r554", "r555", "r559", "r560", "r574", "r581", "r589", "r593", "r596", "r701", "r704", "r721", "r722", "r723", "r724", "r725" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Range [Domain]" } } }, "auth_ref": [ "r272", "r273", "r274", "r275", "r331", "r332", "r364", "r365", "r366", "r446", "r447", "r476", "r493", "r494", "r551", "r552", "r553", "r554", "r555", "r559", "r560", "r574", "r581", "r589", "r593", "r596", "r701", "r704", "r721", "r722", "r723", "r724", "r725" ] }, "us-gaap_RealEstateTaxesAndInsurance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RealEstateTaxesAndInsurance", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Real Estate Taxes and Insurance", "verboseLabel": "Real estate taxes and insurance premiums", "documentation": "The aggregate total of real estate taxes and insurance expense." } } }, "auth_ref": [ "r63", "r96" ] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r610", "r622", "r632", "r658" ] }, "us-gaap_RelatedPartyTransactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction [Line Items]", "terseLabel": "Related Party Transactions", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r525", "r526", "r529" ] }, "us-gaap_RelatedPartyTransactionsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsAbstract", "lang": { "en-us": { "role": { "label": "Related Party Transactions" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactions" ], "lang": { "en-us": { "role": { "label": "Related Party Transactions Disclosure [Text Block]", "terseLabel": "Related Party Transactions", "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates." } } }, "auth_ref": [ "r440", "r441", "r442", "r443", "r445", "r488", "r489", "r490", "r527", "r528", "r529", "r548", "r550" ] }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RepurchaseAgreementCounterpartyNameDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Domain]" } } }, "auth_ref": [ "r179", "r180", "r288", "r305", "r444", "r566", "r567" ] }, "us-gaap_ResearchAndDevelopmentExpensePolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchAndDevelopmentExpensePolicy", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Research and Development Expense, Policy [Policy Text Block]", "terseLabel": "Internal research and development costs", "documentation": "Disclosure of accounting policy for costs it has 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." } } }, "auth_ref": [ "r382" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r611", "r623", "r633", "r659" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r612", "r624", "r634", "r660" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r619", "r631", "r641", "r667" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquityBeforeTreasuryStock", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "verboseLabel": "Accumulated deficit", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r84", "r115", "r456", "r480", "r481", "r486", "r503", "r592" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "terseLabel": "Accumulated Deficit", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r147", "r182", "r183", "r184", "r186", "r192", "r194", "r251", "r252", "r373", "r374", "r375", "r402", "r403", "r414", "r416", "r417", "r419", "r421", "r477", "r479", "r491", "r730" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenue" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Text Block]", "verboseLabel": "Revenue", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r146", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r330" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue Recognition, Policy [Policy Text Block]", "terseLabel": "Revenue recognition", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r523", "r561", "r570" ] }, "us-gaap_Revenues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Revenues", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Revenues", "terseLabel": "Revenue", "verboseLabel": "Total revenue", "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)." } } }, "auth_ref": [ "r169", "r177", "r216", "r217", "r228", "r233", "r234", "r240", "r242", "r243", "r250", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r424", "r452", "r702" ] }, "us-gaap_RevenuesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenuesAbstract", "lang": { "en-us": { "role": { "label": "Revenue" } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "terseLabel": "Lease right-of-use asset", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r436", "r591" ] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r676" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r676" ] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesRevenueNetMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Sales Revenue, Net [Member]", "terseLabel": "Sales revenue", "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r243", "r684" ] }, "us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accounts Payable and Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of accounts payable and accrued expenses", "documentation": "Tabular disclosure of the (a) 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 (accounts payable); (b) other payables; and (c) accrued liabilities. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). An alternative caption includes accrued expenses." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities." } } }, "auth_ref": [ "r29" ] }, "us-gaap_ScheduleOfDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDebtTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Debt [Table Text Block]", "terseLabel": "Schedule of other long-term notes", "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "terseLabel": "Schedule of deferred tax assets (liabilities)", "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets." } } }, "auth_ref": [ "r119" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "terseLabel": "Schedule of effective income tax rate reconciliation", "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r118" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureInventoriesNetTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Inventory, Current [Table Text Block]", "terseLabel": "Schedule of inventory reserves", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r14", "r88", "r89", "r90" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]", "terseLabel": "Schedule of maturities of long-term notes", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentScheduleOfPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table]", "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Related Party Transactions, by Related Party [Table]", "documentation": "Schedule of quantitative and qualitative information pertaining to related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates." } } }, "auth_ref": [ "r74", "r75", "r525", "r526", "r529" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r334", "r336", "r339", "r340", "r341", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r363", "r364", "r365", "r366", "r367" ] }, "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table]", "documentation": "Details comprising a table providing supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices." } } }, "auth_ref": [ "r54" ] }, "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table Text Block]", "terseLabel": "Schedule of information about stock options outstanding", "documentation": "Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms." } } }, "auth_ref": [ "r54" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Stock Options, Activity [Table Text Block]", "terseLabel": "Schedule of company's outstanding stock options", "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value." } } }, "auth_ref": [ "r10", "r11", "r55" ] }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "verboseLabel": "Schedule of fair value of stock option grants", "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions." } } }, "auth_ref": [ "r117" ] }, "us-gaap_ScheduleOfStockByClassTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfStockByClassTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquityTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Stock by Class [Table Text Block]", "terseLabel": "Schedule of Common shares reserved", "documentation": "Tabular disclosure of an entity's stock, including par or stated value per share, number and dollar amount of share subscriptions, shares authorized, shares issued, shares outstanding, number and dollar amount of shares held in an employee trust, dividend per share, total dividends, share conversion features, par value plus additional paid in capital, the value of treasury stock and other information necessary to a fair presentation, and EPS information. Stock by class includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. Includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity. If more than one issue is outstanding, state the title of each issue and the corresponding dollar amount; dollar amount of any shares subscribed but unissued and the deduction of subscriptions receivable there from; number of shares authorized, issued, and outstanding." } } }, "auth_ref": [ "r13", "r43", "r44", "r45", "r46", "r47", "r48", "r49", "r81", "r82", "r112", "r114", "r115" ] }, "inrd_ScientificRdMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ScientificRdMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to scientific member.", "label": "Scientific / R&D [Member]", "verboseLabel": "Scientific / R&D" } } }, "auth_ref": [] }, "dei_Security12gTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12gTitle", "presentation": [ "http://www.inradoptics.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Title of 12(g) Security", "documentation": "Title of a 12(g) registered security." } } }, "auth_ref": [ "r606" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r212", "r215", "r216", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r238", "r243", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r270", "r271", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r575", "r687", "r727" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "Product Sales, Foreign Sales and Sales to Major Customers" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomers" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "Product Sales, Foreign Sales and Sales to Major Customers", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r211", "r212", "r213", "r214", "r215", "r227", "r232", "r236", "r237", "r238", "r239", "r240", "r241", "r243" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expense", "verboseLabel": "Selling, general and administrative expenses", "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc." } } }, "auth_ref": [ "r95" ] }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpensesMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative [Member]", "terseLabel": "Selling, general and administrative expenses", "documentation": "Primary financial statement caption encompassing selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation", "verboseLabel": "Stock based compensation", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r4" ] }, "inrd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The weighted average fair value at grant date for options issued during the period.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Options Grants In Period Weighted Average Grant Date Fair Value", "terseLabel": "Weighted average estimated fair value of stock options granted" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value", "terseLabel": "Total weighted average grant date fair value of options", "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash." } } }, "auth_ref": [ "r358" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "verboseLabel": "Expected dividend yield", "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term." } } }, "auth_ref": [ "r365" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate", "verboseLabel": "Expected volatility", "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period." } } }, "auth_ref": [ "r364" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "verboseLabel": "Risk-free interest rate", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r366" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award", "terseLabel": "Equity Compensation Program and Stock-based Compensation", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r334", "r336", "r339", "r340", "r341", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r363", "r364", "r365", "r366", "r367" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "terseLabel": "Aggregate shares of common stock", "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable." } } }, "auth_ref": [ "r54" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number", "periodEndLabel": "Options, Exercisable at Ending", "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan." } } }, "auth_ref": [ "r345" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price", "periodEndLabel": "Weighted Average Exercise Price per Option, Exercisable at ending", "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan." } } }, "auth_ref": [ "r345" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period", "negatedLabel": "Option, Expired/Forfeited", "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired." } } }, "auth_ref": [ "r707" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price per Option, Expired/Forfeited", "documentation": "Weighted average price of options that were either forfeited or expired." } } }, "auth_ref": [ "r707" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures, Total", "verboseLabel": "Options, granted", "documentation": "Net number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r708" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Granted", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r347" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "verboseLabel": "Granted (in dollars per share)", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r357" ] }, "inrd_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedTableTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the total compensation cost related to non-vested stock options granted, vested and forfeited during the period.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested [Table Text Block]", "verboseLabel": "Schedule of non-vested stock options granted, vested, and forfeited" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value", "periodEndLabel": "Aggregate Intrinsic Value, Options Outstanding at Ending (in dollars)", "periodStartLabel": "Aggregate Intrinsic Value, Options Outstanding at Beginning (in dollars)", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r54" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number", "periodEndLabel": "Options Outstanding at ending", "periodStartLabel": "Options Outstanding at Beginning", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r343", "r344" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "periodEndLabel": "Weighted Average Exercise Price Options Outstanding at Ending (in dollars per share)", "periodStartLabel": "Weighted Average Exercise Price Per Options Outstanding at Beginning (in dollars per share)", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r343", "r344" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationDetails", "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r339", "r340", "r341", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r363", "r364", "r365", "r366", "r367" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price per Option, Exercised", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r348" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price per Option, Granted", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r347" ] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Option and Incentive Plans Policy [Policy Text Block]", "terseLabel": "Stock-based compensation", "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." } } }, "auth_ref": [ "r333", "r342", "r361", "r362", "r363", "r364", "r367", "r376", "r377", "r378", "r379" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Exercise Price Range [Axis]", "documentation": "Information by range of option prices pertaining to options granted." } } }, "auth_ref": [ "r59" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]", "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices." } } }, "auth_ref": [ "r60" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]", "terseLabel": "Equity Compensation Program and Stock-based Compensation", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Lower Range Limit", "verboseLabel": "Exercise Price, Lower Range", "documentation": "The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range." } } }, "auth_ref": [ "r60" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Exercisable Options", "verboseLabel": "Options Exercisable, Number Outstanding", "documentation": "The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied." } } }, "auth_ref": [ "r58" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Outstanding Options", "verboseLabel": "Options Outstanding, Number", "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices." } } }, "auth_ref": [ "r56" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Upper Range Limit", "verboseLabel": "Exercise Price, Upper Range", "documentation": "The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range." } } }, "auth_ref": [ "r60" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term", "verboseLabel": "Expected term", "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r363" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value", "periodEndLabel": "Aggregate Intrinsic Value, Options Exercisable at Ending", "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable." } } }, "auth_ref": [ "r54" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term", "verboseLabel": "Weighted Average Remaining Contractual Term, Exercisable at Ending", "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r54" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares", "periodEndLabel": "Options - Non-vested", "periodStartLabel": "Options - Non-vested", "documentation": "Number of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Number of Shares", "negatedLabel": "Forfeited", "documentation": "Number of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value", "verboseLabel": "Forfeited (in dollars per share)", "documentation": "Weighted average grant-date fair value of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Weighted-average Grant-date Fair Value - Non-vested at ending balance (in dollars per share)", "periodStartLabel": "Weighted-average Grant-date Fair Value - Non-vested at beginning balance (in dollars per share)", "documentation": "Weighted average grant-date fair value of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted Average Remaining Contractual Term, Options Outstanding at Ending", "verboseLabel": "Weighted Average Remaining Contractual Term, Options Outstanding at Beginning", "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r116" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares", "negatedLabel": "Vested", "documentation": "Number of options vested." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationNonVestedStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value", "verboseLabel": "Vested (in dollars per share)", "documentation": "Weighted average grant-date fair value of options vested." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price", "verboseLabel": "Options Exercisable, Weighted Average Exercise Price", "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding." } } }, "auth_ref": [ "r57" ] }, "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Exercise Price", "verboseLabel": "Outstanding Options, Weighted Average Exercise Price", "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices." } } }, "auth_ref": [ "r56" ] }, "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationOptionExercisePricesDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Remaining Contractual Term", "verboseLabel": "Outstanding Options, Weighted Average Remaining Contractual Life in Years", "documentation": "Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r116" ] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares, Outstanding", "periodEndLabel": "Ending balance (in shares)", "periodStartLabel": "Beginning balance (in shares)", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_SignificantChangeInUnrecognizedTaxBenefitsIsReasonablyPossibleAmountOfUnrecordedBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantChangeInUnrecognizedTaxBenefitsIsReasonablyPossibleAmountOfUnrecordedBenefit", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Significant Change in Unrecognized Tax Benefits is Reasonably Possible, Amount of Unrecorded Benefit", "terseLabel": "Significant change in unrecognized tax benefits is reasonably possible, amount of unrecorded benefit", "documentation": "The amount of the unrecognized tax benefit of a position taken for which it is reasonably possible that the total amount thereof will significantly increase or decrease within twelve months of the balance sheet date." } } }, "auth_ref": [ "r120" ] }, "us-gaap_StateAndLocalJurisdictionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StateAndLocalJurisdictionMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "State and Local Jurisdiction [Member]", "verboseLabel": "State and local jurisdiction", "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueCompanySSalesByMarketAreaDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r148", "r212", "r215", "r216", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r238", "r243", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r268", "r270", "r271", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r575", "r687", "r727" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r9", "r25", "r147", "r166", "r167", "r168", "r182", "r183", "r184", "r186", "r192", "r194", "r210", "r251", "r252", "r317", "r373", "r374", "r375", "r402", "r403", "r414", "r415", "r416", "r417", "r418", "r419", "r421", "r425", "r426", "r427", "r428", "r429", "r430", "r439", "r477", "r478", "r479", "r491", "r544" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "terseLabel": "Accounts Payable and Accrued Liabilities", "verboseLabel": "Statement", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r182", "r183", "r184", "r210", "r450", "r483", "r492", "r495", "r496", "r497", "r498", "r499", "r500", "r502", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r515", "r516", "r517", "r518", "r519", "r521", "r523", "r524", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r544", "r597" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "verboseLabel": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r182", "r183", "r184", "r210", "r450", "r483", "r492", "r495", "r496", "r497", "r498", "r499", "r500", "r502", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r515", "r516", "r517", "r518", "r519", "r521", "r523", "r524", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r544", "r597" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r614", "r626", "r636", "r662" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, New Issues", "verboseLabel": "401K contribution (in shares)", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r9", "r81", "r82", "r115", "r485", "r544", "r556" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.inradoptics.com/role/DisclosureEquityCompensationProgramAndStockBasedCompensationStockOptionActivityDetails", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "negatedLabel": "Options, Exercised", "terseLabel": "Common stock options exercised (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r9", "r81", "r82", "r115", "r348" ] }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueNewIssues", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, New Issues", "verboseLabel": "401K contribution", "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering." } } }, "auth_ref": [ "r9", "r81", "r82", "r115", "r491", "r544", "r556", "r603" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Stock Options Exercised", "verboseLabel": "Common stock options exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r9", "r25", "r115" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets", "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Ending balance", "periodStartLabel": "Beginning balance", "totalLabel": "Total shareholders' equity", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r82", "r85", "r86", "r105", "r504", "r520", "r545", "r546", "r592", "r604", "r696", "r699", "r714", "r730" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "verboseLabel": "Shareholders' equity:" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityBeforeTreasuryStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityBeforeTreasuryStock", "crdr": "credit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity before Treasury Stock", "totalLabel": "Stockholders' equity before treasury stock", "documentation": "Total amount of stockholders' equity (deficit) items including stock value, paid in capital, retained earnings and including equity attributable to noncontrolling interests and before deducting the carrying value of treasury stock." } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteAbstract", "lang": { "en-us": { "role": { "label": "Shareholders' Equity" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Note Disclosure [Text Block]", "terseLabel": "Shareholders' Equity", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r111", "r176", "r303", "r304", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r317", "r420", "r547", "r549", "r557" ] }, "us-gaap_SubsequentEventsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsPolicyPolicyTextBlock", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Subsequent Events, Policy [Policy Text Block]", "verboseLabel": "Subsequent events", "documentation": "Disclosure of accounting policy for reporting subsequent events." } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "verboseLabel": "Supplemental disclosure of cash flow information:" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r655" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceAxis", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Timing of Transfer of Good or Service [Axis]", "documentation": "Information by timing of transfer of good or service to customer." } } }, "auth_ref": [ "r587", "r706" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceDomain", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Timing of Transfer of Good or Service [Domain]", "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time." } } }, "auth_ref": [ "r587", "r706" ] }, "inrd_TopFiveCustomersMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "TopFiveCustomersMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to Top Five Customers.", "label": "Top Five Customers [Member]", "terseLabel": "Top five customers" } } }, "auth_ref": [] }, "inrd_TopThreeMajorCustomersMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "TopThreeMajorCustomersMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails", "http://www.inradoptics.com/role/DisclosureProductSalesForeignSalesAndSalesToMajorCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "This member represents the top three major customers.", "label": "Top Three Major Customers [Member]", "terseLabel": "Top three major customers" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r647" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r654" ] }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeAndOtherAccountsReceivablePolicy", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Trade and Other Accounts Receivable, Policy [Policy Text Block]", "terseLabel": "Accounts receivable", "documentation": "Disclosure of accounting policy for accounts receivable." } } }, "auth_ref": [ "r131", "r132", "r133", "r246", "r247", "r249" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r675" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r677" ] }, "us-gaap_TransferredAtPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredAtPointInTimeMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureRevenueAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Transferred at Point in Time [Member]", "terseLabel": "Transfer at point in time", "documentation": "Contract with customer in which good or service is transferred at point in time." } } }, "auth_ref": [ "r587" ] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r678" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r679" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r677" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r677" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r680" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r678" ] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Common [Member]", "terseLabel": "Treasury Stock", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r50" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.inradoptics.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Shares", "verboseLabel": "Treasury stock, shares", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r50" ] }, "us-gaap_TreasuryStockCommonValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonValue", "crdr": "debit", "calculation": { "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Value.", "negatedLabel": "Less - Common stock in treasury, at cost (4,600 shares)", "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r26", "r50", "r51" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r674" ] }, "us-gaap_UnrecognizedTaxBenefits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefits", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits", "terseLabel": "Unrecognized tax benefits", "documentation": "Amount of unrecognized tax benefits." } } }, "auth_ref": [ "r384", "r393" ] }, "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense", "crdr": "debit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense", "terseLabel": "Unrecognized tax benefits, income tax penalties and interest expense", "documentation": "Amount of expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return." } } }, "auth_ref": [ "r392" ] }, "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate", "terseLabel": "Unrecognized tax benefits that would impact effective tax rate", "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate." } } }, "auth_ref": [ "r394" ] }, "inrd_UsSmallBusinessAdministrationNotePayableMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "UsSmallBusinessAdministrationNotePayableMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesAdditionalInformationDetails", "http://www.inradoptics.com/role/DisclosureOtherLongTermNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to U.S. small business administration note payable.", "label": "U.S. Small Business Administration Note Payable [Member]", "terseLabel": "U.S. small business administration note payable" } } }, "auth_ref": [] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.inradoptics.com/role/DisclosureNatureOfBusinessAndOperationsAndSummaryOfSignificantAccountingPoliciesAndEstimatesPolicies" ], "lang": { "en-us": { "role": { "label": "Use of Estimates, Policy [Policy Text Block]", "verboseLabel": "Use of estimates", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r35", "r36", "r37", "r137", "r138", "r141", "r142" ] }, "us-gaap_WarrantMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WarrantMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureNetLossIncomePerShareDetails", "http://www.inradoptics.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Warrant [Member]", "terseLabel": "Warrant", "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount." } } }, "auth_ref": [ "r594", "r595", "r598", "r599", "r600", "r601" ] }, "us-gaap_WarrantsAndRightsOutstanding": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WarrantsAndRightsOutstanding", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "label": "Warrants and Rights Outstanding", "terseLabel": "Outstanding warrants", "documentation": "Value of outstanding derivative securities that permit the holder the right to purchase securities (usually equity) from the issuer at a specified price." } } }, "auth_ref": [] }, "inrd_WarrantsIssuableOnConversionOfSubordinatedConvertibleNotesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "WarrantsIssuableOnConversionOfSubordinatedConvertibleNotesMember", "presentation": [ "http://www.inradoptics.com/role/DisclosureShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "documentation": "Warrants Issuable On Conversion Of Subordinated Convertible Notes", "label": "Warrants Issuable On Conversion Of Subordinated Convertible Notes [Member]", "verboseLabel": "Warrants issuable on conversion of Subordinated convertible notes" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted", "verboseLabel": "Weighted average shares outstanding - diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r197", "r205" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.inradoptics.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Weighted average shares outstanding - basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r196", "r205" ] }, "inrd_WriteOffOfFixedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.inradoptics.com/20231231", "localname": "WriteOffOfFixedAssets", "crdr": "credit", "presentation": [ "http://www.inradoptics.com/role/DisclosurePlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount represents written off of fully depreciated fixed assets.", "label": "Write Off Of Fixed Assets", "terseLabel": "Depreciated assets were written off" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482338/360-10-05-4" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19,20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20,24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.30)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "330", "SubTopic": "10", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB TOPIC 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-5" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "55", "Paragraph": "63", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481620/480-10-55-63" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480244/480-10-S99-1" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481142/505-10-45-2" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-10" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-4" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-5" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-2" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)-(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "720", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483384/720-30-45-3" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "40", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-4" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "40", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "850", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "850", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.15(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "825", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "250", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.CC)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480091/360-10-S99-2" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481284/470-20-25-11" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//505/tableOfContent" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(f)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-3" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-15" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-6" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r135": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "270", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "35", "Topic": "720", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(e)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-1" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-2" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481569/310-20-50-1" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-2" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-16" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.C.Q3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "35", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "730", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483044/730-10-05-1" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-10B" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-6" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//850/tableOfContent" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r561": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r562": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8" }, "r565": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-16" }, "r566": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-21" }, "r567": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-22" }, "r568": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r569": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r570": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r571": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r572": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r573": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r574": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r575": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r576": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r577": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r578": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r579": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E" }, "r580": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F" }, "r581": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r582": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r583": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r584": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r585": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r586": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r587": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r588": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r589": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r590": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r591": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r592": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r593": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r594": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r595": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r596": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r597": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r598": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r599": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r600": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r601": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r602": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r603": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r604": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r605": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r606": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "g" }, "r607": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r608": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r609": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r610": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r611": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r612": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r613": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r614": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r615": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r616": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r617": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r618": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r619": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r620": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r621": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r622": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r623": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r624": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r625": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r626": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r627": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r628": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r629": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r630": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r631": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r632": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r633": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r634": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r635": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r636": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r637": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r638": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r639": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r640": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r641": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r642": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r643": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r644": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r645": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r646": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r647": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r648": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r649": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r650": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r651": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r652": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r653": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r654": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r655": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r656": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r657": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r658": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r659": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r660": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r661": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r662": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r663": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r664": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r665": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r666": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r667": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r668": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r669": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r670": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r671": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r672": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r673": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r674": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r675": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r676": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r677": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r678": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r679": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r680": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r681": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r682": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r683": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r684": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r685": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r686": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r687": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r688": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r689": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r690": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r691": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r692": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r693": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r694": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r695": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r696": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r697": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r698": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r699": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r700": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r701": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r702": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r703": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r704": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r705": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r706": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r707": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r708": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r709": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r710": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r711": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r712": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r713": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r714": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r715": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r716": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r717": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r718": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r719": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r720": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r721": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r722": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r723": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r724": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r725": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r726": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r727": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r728": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r729": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r730": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" } } } ZIP 80 0001410578-24-000337-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001410578-24-000337-xbrl.zip M4$L#!!0 ( 'UV?%@H1U1*7Q )6M 1 :6YR9"TR,#(S,3(S,2YX M<7IK.5)9LQVGB2=*1;;GQC&WY+*7I/74@$I+04*0* M@+;43W^[("F1(@F2^N,H<[RY:2QBL=C%;[$ %DOB_:_SJ4.>F)#</M\3V+'_*7$4LP:AB-GGF:D(& MWFQ&77+'A.".0RX$M\>,D./VT=E1^^@M:38_:A875$(5SR6:U\G1<51P&7+S MW'-RVCIYVSIIG[PF;\Y/V^=GOY"'NXCN#B0;\2+"N;3/I35A4TI /5>>SX?" MX1\:$Z5FYZW6\_/S$3XY\L08ZK=/6]R5BKH6:T3T#G>_)NB?3S7U\;MW[UJZ M-"*U?"&@QQ9+:LU9,NMH[#VUHE(4\W19Q?-=)?)J!(6)"FQN3;*IL21!.G<, M:OYQ&Q,4SC*IL2!!+(5*$\+#)!&WV)Z14;4=\!8?[VJ:-M/29B MGO[+HJ0M2#O+A@&SX]8?=[=]/4(B8EN)->X)H*&XA<78P$FS?=I$L8.:H)9= M4L_0G%U_>I)E>"=M,&C%7,F'#FLB&1-4@6>2S1/T3$M?DF($N2?2"8*-< MVWW3@M)X_^8P7A8E#4R)7,[O6E"ZM'(V1N]F($;FK9 LJD65$GSH*Y8P"]]- M&<9<\F*/6R@(-&AMK%#[56':O?$,WW7 MF\!W\:6Q67:.Z[3LI).U[*;TA[G$6!A4^/@#(7J.H:[K*6V@^"AZ.)MQ=^0% M3^ 9>L=S[)(!#!^"?WQ^O#&.%]U_5UQ:CB=]P?H FTV%W7'M2U\J;]J9M=79K#?FP!NBY'_7?8%@2')_N0YRC<=NXONZ3_J=L=]&N02H"T?"A[H]XLFHH,:.54,,)V8H:M/X!_[KKW M@S[I79/>0_>Q,[@!@AK B@!>4CFY=KSGLOBMZ(WPO:X"WV6G_XE/U>2_&^&<" MJQJ$.^1.O!'A$7_R*FSAIQK>.!TQ,[SW%Y JH5-D=5;X 09G, M@7Q+;D9#>-,^73<$S9(@SR8R);K%-6OP-(V#- II8'W(R'39=&TCQ3;2L70( M1#[0!85M(*PVX8GPF7W+Z9 [)H.H4M6(_B]I-Q#Q)B%S JMA$K(G,?XUQ&5\ M/#QD SIG\I%9GFM!WVD-T%V'10_">^(8EB6X&?R88" M[Z\)%)V36=18;0&5+ #VC4P(9L./CI2PS2D>YQ5K%Z!^4H!ZU(1&F>I&R"MG MU#%@%]ZTRE7>FV-00G/5=P=,QA,3(8S\Z(WNF54L@C O(7>%IQ,AG!\ MG![^L::TNT\T!N51>^@)=(O+B:!>#>[5)BY!VY/=&4; SF@=)WNR#H)MDY/: M2/*W\S9SH:GQ^ZEW>]5][/](NO_Y M?#/X;PUMGJN_1U\(V_(+7W*72730JP I_.C[TRD5X)_[?.SR$0P45X4[+G"I M#X N.E4@[$K%83^=NS3<7T/&563&XB&0!)U_)(N>)5;2Z)^A/$@6DXBL1"*1 M3)I\*56]OB@VND?VQ%P?UP4SZB[Z?>HP>;&XH^(K4QW!:(X)E:UF-(B,]4+( M-U@Y(.L?)9'(G P79*K9$W!8M(:V-+0=V]8"4.?&'7EBJI4PPVJL4@!I:J>X M@G3%EL3XUE!6#?B7BNZ7#.5G;.S70ODU/(7P/#@X0\)\" NH&2Z+5C'V5%$. M>)NP,$+[.NU<-:-@BHQ8K87F9TL*MJ2H\:^.?UF02R*9&J192-8XE9@1'=S_ MP%Y3+0:"NI):>I69.QN:R8VHG64M;C0_HAF2.,<:O$W.14L?>98\S4P!EGV: M66.U 5955J$5:Q>@FG*>>6?4L>4IKY>G&Y]4%9]&E3IQ2J46)$Z<:E *00FB M>;B-9C#/H P/PAL+.L4(C_*LK_I%DWAY#G:;,S)"_"[M;X.62)P5"=L* D'8 M6G.H7Y!)$-7FL =S^,+X> +KEH<<"<9I/6AXBM:5Y@:71VM+V:&D![-TY M$Q:7[$%P*W?9NUOF!99UMCN_%7HL%HI!9EJ.VISV84Y5=L8[YEY@4&]VZ*KJ MS?7&:0%,W7I2!MO?!R9TQD;>R;Z)UIB[U,D\E2N7@W8^H1'/ MC!?KXIQ^C.;?&JH\J,(/[T3_XE$K^#NUB*U]0JS*4!H3(6%]A&!%G_J)_:F/ M936S>)I+C=7+Y3WN/^'19!O'+Y_I6!M701)<3J*;&<;\_,2ZO\MEJIE3U,R] M7^(U\QJ&TAE)A:E(9C#*99/5>%3-/"J;R5 M#@]*G1H8P:MX7%#CL\$A0873 3-653_:4*.UJ\. ;4\!S+CN,OQ?8UX^Z%\< M[3?C5C+,7T.2!\DUY>)WZOBL-[KF+@6GA=D-4@D=?T^-NB)R(U@9@0_D1S1# MC-,N69(8SQJ[EPOV1\_V'_1?MF2P&'#*Z5/X?7_F('I>'P@6G0,,<.N>]]I[ M6&A ][1]DDX/CEYP?Q74KT$H>3B0C44FC1&2TZQWA=9?8J^QJ7IBD U/'ID1 MH==IA#+?8*Y!JARASD8IE\X(4^GO^=9 [2)LG0U=A9I&,'])@UG^\[PUON5C MV7G3V#J!$:W"]UUK1'8>X,X&;F,^1GQW^%99;0O;1%6S02^N8$+W^#B-;D'B M=0UAY;!;-G*Y=$; ,K8,V9FV-4[;Q>)R$J1+UC)@^'K#R-S_2_(T_@?GCD\RYS7@+(?#)AC*L+DHNUWY$'[2-M^MN[@$2 M5[-NX'N@;F;KX9W,NOD/C4LZXPH73GX)VY9P^"NKX(D]-<[CBX.(]H M<8&)\\F?A5* ,E)QY2.?WX3GSSXT@H8X")*EW9*UWB.D7[$7@L+.#DDO%BN2 M![K0;Y8]4V$'WU.0R\^'Z&W%@,W5A0.;_$;8?_MCO]97ZSBHB'0%14$GF9#) M,X\.$YZVT2LVP@LG7M0J\AJO; R!+@_"0^/"73WXI3N&__7&BQ=5J4"$[ M!>,2_068T52^J#I9#6^H0]_B\ ,/T!_M%]4AJ^'-WFNXB)]WPZK"\>T((PP8WDSQ6L/@0IW(AI:SQ*;U"[I@?404Z%]EP!CZ M8^#-!K!S9\DLU:3.!30'J5:#T//% DMS13EU \5[$QS -[=G4]F TMI@^_IC-?,;%T6$DL2M = M)#!?!,>9?H0'#G-F!_>@1DKE%1I@F7HN3&%BL1-<@K)A<.?>AX8EF,V5>;1X M[A,&+4&ZOC_T!$PH&#.Z8D-U?-;&_ZT-H?+T!PF?2?YV17W;WX&^D:?0^WT\ MD_Y",0R@) X[P6'_?^-^=M%(DIZE!+W!J*6NO6]7\UGVI]1QEGG9]I2[''L- M:V*"69B>E$2T0=;]XFS"$,YD:8%--_(*=EL6."3EBE/JS-9 MO66)]#*4FVQ2"5@L%VIDJ_/) C>M_I#=[!*Q#*EOP0*Q#6G0+$ZSO78[M\*U M"\%1]/!9=XZ11_;()!-/VI7H#$'8K45)U8N5H6[+9K^V'!PBJ0U,.?']W4<, MOZ:V!F:2@W0^:9%3VP4SR?>B57H+441TF)JE4A'Q[:(P1W!-OU*D!ZEEM'3! M+]7(WB@W_W)]J5."_MMOJS8^T@G4BB4NA6<\O^E5W8W[H"59NS]#%U[!0G>9 M7[7UT=+NY#C8=M$E/^":" M@]1HX,VN^1/+CZIGEQZD+AES,HPZ7)$4K5I2=-^5?NM1J!)T!ZE?%#RZD=)' MZ7IN$$^34+$WB@?48G$V_6I@4O\=\#G(_DF\61G&G?1I[?(XUT#P;?:\^3'E M<%7-U.KTV9/R$J!;C#R!:T ZB]FJ8$'FWH>=<]J_5ZUYE8:KW>?H0=68(^H M(UGY%4!QCP"NFW=*7N7OI%^6!S[A^Q7N.!JL"?^83;+E^"W6??&P5QK(L%>BP0.SY^XZDCI:OL&=,L;;-!+1K_Z3?&CP9K6N>3["1> MNP]L>V),7?Z/K@53C/0<;NL?L,_EF!H:>W$E.EFX8M(2/+C:348*E)N8M^7S;V3MX M]RIX>>'C_P!02P,$% @ ?79\6%)MS0" #@ =,H !4 !I;G)D+3(P M,C,Q,C,Q7V-A;"YX;6SM76USXC@2_GY5]Q]\N2^[54=XS9"D9G:+$#*;JB2D M@+G9^S3EV"+QC;%8V81PO_Y:P@8;6[:$P58@53-),%)+3_U$0XZ!3^__?UOG_]1J?QY-;C33&S, M)LCQ-(,@W4.F-K>\%VV$IU/=T>X1(99M:U?$,I^1IM5KIV>GM=-SK5+Q95SI M+N3!CL:$-4[KJV^ZOCSL7&K-:N.\VJ@U6MJGRV;M\JRM/=ZO$MY#_<969DK; MTA]/4*0&0!WWR\F+YTTOJ]7Y?'[Z]D3L4TR>(7>M60T2GBQ37KZY5B3U MO!FDK5?_O+\;&B]HHE:KQZZ/;'_2DB MS*BYJ\Z3NG\,7=U]N;'Q?*<00D)S([BV7,/&[HR@6^<5Q&-B(?;19FC,; M]=YA,CD 7O(71<<^^Y>]V;$\J"">7#F M+7*'Z#N&@6? ET=]H3_9J..8\(3,D'EGZ4^6G1NJE/R=\A0J@T;Z&W('R,". M 66Q!DW9Y'_U2/"K18?B?)S=IJ#](+U&8W (D D?.JX+'?".C"A;Q [1=?%D M8GFL2P/N0%_G@:\$/A,4YS>,17]\AV P#2J2JP?*4YP2J+NZ;30*ANZ7Z>,W MX-/,9DW@#M#ZF&EANW$IPGI%;QYR3&2NGEH>+0:>CVM.$?O=YHN'2KH.HV-B+B;>HO8A*U&\7@ @CFHHUU]XGY M:>"\/^OZE+K&S2JR/3=XPDS,S.L_^+%L-X%06W]"-BOJQV:":AGUZLZ@>3O> M1O42T_SXU#QOM1NM=NOLK-4^K[4:M5"E0SSHD&C]=6($\N'/BSJ^?HNK. M)A,FK6*!48/\8X(GR=KS"\0REZ@*VCQPFL"A0 %_"9PAS,:9DJ6P["P-$+?L V%#+N:R$#5.88,)SD,PV4B M\@W53#/4E%B8NB#,G@5;C4W)1$;'>,+#L* @+M^.+84:',R\IHAXBT=P(3T8 M'^C8,*4>(;\!IF51QYQB'H\T%@7[3"Z&KP2[FVZT6"9US+BUH21LS8>LINLS MFU#M(_,:30DREHLI\+>-F$4D%(="HB-!:(01+RQHAVPY6Z,\\R6GP:T&OWQ-Q3 BOEB9/G6PCKQ:6EZ"Y[ME_ SOS9B22'Q+GJG4'M?S@,S'M M>S.9. C?6I\4LE9HAP9&Z:&'C9\OV(9JNG3$]A8I*]'96A>#BPG3 [HT2X,: M_#U_WN9$F6Y*:/ J[76N?-=V=+.7 *3IY"D--7K^,) M#\%^@J@47+MFS LS3F#S(2&YTD9,JR.G+8I"?#\^489=4S,=DG7E@8H,GF5Z M1"+1CV+[^@(2#H@*>5$K. S3@#JB&]YWRWOISEP/3\"M$.L!1+(>D/&WAJO@ M&)ZYVL)/&(78J#7;*NPO;+-Z(8A-P9E0O.97:(P)&A$8HF9DP;X7MFA"7G6, M+&DL$2N+XE704Z/!T-AA54X-L-Q(]A[,*6J5I(Y9 *V"QNR8IK6LQ:-NF;=. M5Y]:GFZ'X/",,T)X.!O$.[(:USCTAU$@_ M(30 R5'\70>YLB MQT57R(%^@1]'E9@ZRKAFK?FI77*C2E1\-)Q*'$FF3U1*[%N [@: +X_[S:"' M7S>DY: 1.OO9>X-Y.6"Q')TL;D%U+!B"SM:Q#55[OG4\1)";;ON]E/AN^5.< M-A1TRJ#V.%CS7<+TVQ*OH^.E5\_\15LWSB\Y92DX:POP1BH?1I5VABH[JWJ< MD;-84H^R)6H%C=^/*B+%^TE(J9YIR^\.1-6DX##1Q2Z[DL!G-(\(F\G48X&H M#9)6W@2PJ>AETHKWQU\Q-MEV 2*OEH'<(4Q64ZR8G"&*N06STK+M*6259&-* M0%2P=QXBU@5]A2D/T6VZ.VM.+,=R/4KOUPPO3BSSP5@[!UP%^^(!>D7.C-L' M!U^K9[WM^]Y43.(F*F-1+'0%G-":6$MF3:S;&?ZAW=SUOQ>])D91;=SS,0!' MB%@&P/?O 8D^"*5\1,3"].@-7?M$UVCY&S[;,WH+9^_->-&=9S0 %?3&8V1P M8S(*KD314W/DT3JSB\N *5>+;RX]L+1J11T#.J^T8QCB M3K*\HA6&3RGD][ M<@<%FF6P2VY56SV.Y+10HLDS\"KH"';,_\[RRR*. M@$9[5Y>"3ND>MJ!4X,;>3;GEII:ZW='P12>(W7C>Q1,*@*F8-P]-3!R%>@90 MZ\=' PG5J!Z!O[KUXCO4 %WC.8\.\80?5!!7B]P5;JWB+Y$"$B]OL&%GB!XQ M>._(LPB;Y_J]7/JRE82$#^+L0%]R%Y@4SRB1&Y(X5!+)^L&A/(H2N3.EW%%I M;$LWZ0)H^B?+ZT5=J&C8,)O6I% MF"FA/!\4V4I#/C?.U>8&<]C6:DEZ78%8 M3*E2HJKZ!*HJ^Z8@)5@EK[-@):_V+ER-&$?_-JMZ@*:J;1BS-E_ MN;$<'72[_3YW@@#UZ*3L/K>H]E1?? 9\4NT9/*:\B M$,NO'K=R6C9A/3&7+A3AQ1=C 2U9[<%ECQ<[1'O\L_ MJ%\+#B>6?R=;N]8ZJ[7;\+_6N+BHM\L+:ACH\WOHTXBEV_RY;T+:*"?;P,E6 MR0TT4\4IH0F9R!3T_M9Q%9C\O'680\.-A4U.?%A&S(:F9.2A7_L;>J0'>C5V MJBO+BI'$AV7%;&CB-P/M=>"+7^N]'OQBW_GOOPZ_XEQH.(3!?G,X9+(U*KQ" MI6NLZ(TQ$;,T-DWCT30.I-$FJSJ4-E+&KE_F$#TA7=%WGH?6 ];&"R\;/!(+ MIIY3W;YU'L!^HSFR7]$]=KP7[HM%\LA4KY5SC1FY/'WGF!4MU97T%E'0TI>%@5?$.B!+C.&)S\W?$B(N[PJ9$-5SQ^ M=Z\33I&P";G993N^V!H4HOFE:+IC:GXY6JB@TJ:01;\09;UX43\_:S6*WW79 MJ.X(.!*\M0BJGODV1-'LZC7TO':*]PJY=*'@O-/7QU"W=2)"^X3$1V)V4>0* M3B53C\'!4_H 3:8V7H3.Q=$]1#>N,)$.8V_E'0/5BE6>@A/.'DBYOY30,&0$%-_3DJD4-TO%ND$DO M+:07PLWH[EXDL11H*2J$NX=]J41!GU8$:I?%XMTZ/4>G MH7SYZ90L\!A9)*$)N6#8XB?.,G"OT1C!4$OQ+D_1T=?8+&UKVWA.HX-W0"^! M4HZ9<]NJ1RYNMOBH;!$=/-+ZT57(D#^5@W%)XHZ16L)ZD+LL1DT.+2<1ZQ-^ M.?BS*>H8N2.D@RWOB2EJ2A;K4K?>*SBO-3(F8T%9;/*EL]*T7^QU>;^6-@^+ M:8$?J)V4-#*';S3/6I^*;_^Q>GTE_)MODQ-'^'M1J[7JYR6W86%EQQNP!$0% M)SFQVL,?P3/_2K,!_(9NM"NNVNO* ;3*[Q[,D;S^Q@*4J4";D+>@5*'@EE,,INQ! M/W$!!\*.'0%7<$,GAHC75V1G.'1;"[5SE0(/8PC6MQJ"&KHZ(8LQ)G.=<$\D M24@X=.M+(EU!4X MOK++>:D@WLR1OZ#C_/0&%&NYW@5,72ZG/2/' !K[<;2+_CAZYZW4.E*]'M_4 M#Y7)PDTCI<+W0<%T?Y\5O0I$+>_,_QT"ZR+.+<#!U0[7,VXXMG#VHL/.!2N6 M>69)5HYZO8"LB2/QYSN!+_<6KN(7):50\H\\RDDY8J)PP&]Y*Y6BXT@7RF\( M#B:-/0TF&JV$UCC,,>5'\:$8J57[YIA@0+IV2A?1Z.4=G0G]M U,GJSWVVG\ M2(P7W9T2%-P=D7N3A&UL[3UK M<]NXM=\[<_\#K^^'MC/7\2.;[2;3;$=^9*N.8_E:2K?]E*%)2.*&)%2 M*W] M]1< *8D4\>(3D.-\<&SI #A/X.#@X."O?WN.0N<1(!S ^./1V9O3(P?$'O2# M>/'Q*$WFQS\=_>WG__K#7__[^/A?%_WIAW=_<>X^;^ ^$\SF@0HP#.)O'^B/!S*>0RB, M\<>C99*L/IRG;DPW@40;YX1D')>BGMQO8LY-_?;Z9 M>DL0N<=!C!,W]G:M:#>\=F?OW[\_8=]N0)0D.$((^M?Q!NR8?G1\=G[\]NS-,_8W>%4H4/")?!M(X+<<^OD/CI/) M!,$0W(.YP]CQ(5FOP,OST[SU#\GVE"](,J MWB6,,0P#GZK+]D,\F4^7+@)+&/I$EZ__DP;)^LBAPWVY'Y=P)%V[/EPE@8?? M># ZH3 GC7H_Z8*NJP![(<0I K=N0GY.YA?&R "C@-4Z"B*".KT#B!B&NP8=!L.F8;_?@ M$<0IN(01F8+6TZD; GRQ_NRB;R 9D6FE#1>T^^Z'II'O!Y3A;CB.YQ!%C/L= MT"/OMV-:[D*J&D01B-FLJ#G1"=1/0Z)D?36.]Z=FT_=(3JF<$P\8 ^/\Z7R&ZQJ%KGUDD-Q C+,9 M[ X@YI:W%/G@(R MQ''L(@2? #I2LH"W"0X1VO9'!SS._R"L.OOI^.SL^#QCUOY8' DT8179>_LN M\HG ,R&/G@-\!2,W(-8Y=],PP36DJ-]9F4<-M(F2B#=AD;F+'Q@S4WR\<-T5 M#?>\/0%D//H)[1(SG!F^ /A15:TJ760"(; GU\\)F<:"AQ!MO(,X.?&#:"MS-PR;*4XA#D0C->\8<:RW]DB1WRG),#[V,\%UB"*G[TX1 M9OK6#[YYUQV@RWHZCD#TT'3>X.-:[K<]HDN"$_+2!W"\94.'Z')[+R!-%"2( M@\S/C.H= M*1]DJ#HSZ,A1A(CX&Q^/R&\K%$!$G*B/1Z<;ZSSAF&<=L^W6,Y':\?OW[T]/ MG6-GUS/Y8].Y0WIWLNX=VO_&O+X8P]0#Q\ )( M<=G3?"%<1?&ED%T9M8JB?-@O,5X!CQW&<20D'H% EAN61)H=LX15*V0HW!!_6(>-ANW"$IED:7@$L8$U 13X*6(4 OP];,7IC[P/Q$ITJ4O3;+CW?FUB^(@ M7N#-X=_%FM^!Q%Y['%&HXSV/:8WD0-/L'T MRH7BW*1#O=&Y* ;^#(XQ3KHT; MLZ6[B:"F]& 3' >W:SVBB@:J3XQ1,\W2@;9;ZLT%#(EU2EH(M4_1QAZZI28H M;5.7]NX,3D\@L 9&@YN7E(2B52E1-^N//[G(5RQN)1BQQ[8/92*JRSR22A(D M0FZ\R"X+7:QW,'?NFG[&$-]A'_OT0H+2L^UC*'$,N:?!6GO0 LV _:,^O)]< MIK5HXGW1:/:$9 E10J]27(&'1#%#<&$EVBR MH%*A=%SH?4I[? \1,%RJ(7% M\"-,>G.M=PH6D>Z9-*^-^DQ:U,H$]1D*\OFW"".F;A^JL[-G M!9.A! =S9\Y\I$LS[CZR1LU@%D1!O)C,V77:.4"3^2\0^A,T!>@Q\&1NB$9+ MH=)HMK6/'U*#T6K;E"?=&5@]P<$&& YN?EHD%8U0FQ2CQGD%"&I(N-'Y-4B6 MX]@/'@,_=(7L) M%J.OD3+6Q0"*/+.NAF@[?PVGGY7TMJY8,/@$V3O/JEEU7?&JLQD8 ^_- CZ> M^"#(#)?\LK-7\L?7&[!PP^N8L''-F1\Y$!6+$<#TCGDV''>>V/^:B_,^0%,; ME?,(\@<;S!JXV%'-Y6%E=G>:/F#PGY0FL3Z2'ZJ((!]:O&<3P]M!JWQ?*H*O M0V^'^U4E\Z$F)L/O6D6HE_:K,I2-&@DM/Y3HQ#@9VUU6DBP8@ M0]:H&=PAN +$*BM502]4.;@:+87ZH]G6)GXH?2^-EO7YT:U75D]DL#9^@YN= M%D%%.]0DQ+:+<@I3E+2H*&2WX R;E)0 Z=TW MBTSH$Z4*W 2/P!_'B1LO:(&K$<8@817+Z>586B-!8E(U>A"J6LT^[.+3#C^E M^UBSER;\$O73UER;B1FVPGEPDZY%9-'$&Q!GP565F?L\2I,E*^:EO*6R#ZRX MI,$#MX)0C6LI5? :Q'9]&47"]\H]%#X>AJZ@5!&OWC[A(VS4-+[$*4[=<(+& M\1QEP?QQ B*)?4A:"/5&T<8>NJ7F(FU3E_;N#$=/(+ &1H.;D)2$HATI43=\ M5X-W 85]BG/#_QWX7V*"8N%% ;KG) MNJ7R^*.&]QY%JWGIJ/=9AR:=*1X-K M::U&ZD,^LK':WXSI4T655]M:TV_@3DX/#%/?CVO-**-3;GZ"-(K]6QBCPG$2 MS;M/93MYC99"D]-L:Q\_=$IFR]LVY4EW$TL]P56+4:LQ-'5^*B>)5 +Z'^:A/S MUK8L[H,).PWG>B%<093W/!(5:)[54FU?=!- 4BTSAE^5@;Y$)0BO*G MX:2/-7#@^I0'X\_V=02Y,*2J53Z-JM#06@#5MY3H)U\OW560T(?2KI\]0.M5 MDW7MGVZ8\F]4ZS49G-_G#?FM1XYYW;^G+XK%P-^4H5.\5L(''EPJ;UM:@8@0 M\_*8(>#B%*V9A6;&*A6)!'YPJ?S04BH26LP+9E=PBB@.#54JO:H"8(^B8"^E M::[4%=2Y[E/N8.WOG=B;5Q\\&"?$P;\.&>C'(YQ===]]'T(,_(]'"4I-.<)$ M>;B[DXJ!%FARC))COS?4IRPH-H,[AZ6OG,#?QSG6P=&P\-^I/\>D-D>!PG( M:UED]-X##RXR03$=%NA _\,.KCT_MM&>_OEAF=[)YKW"<='VJ,AOL"@(^AE< M,_[2UP(A(/ P1)W-C!W(6MK1X,+^J;=%Y#"D?0N2+#WM!F*1![ ',[B,WK>1 MT1[R2O8/\;[KK9N0GY/YIBK<*/8GJ_R59?K'-(TB%ZTG\VE 5H5YX-%[*9Y' M+WQ2)8-AX-'7'6+_&B=!1+B KVAP*M1[%?:'T[/3L_U783.4'#AW-D@Y9$_B M[-!B?^:(4; ":LX.-V>#' /?HN?\*4?PS_6/XP21XLYYR#NLZW4DF\JGVG)R M-X!H2T50>SWFZZI2K!5'>%Q5XA24-<7-SX0G41H)^;GWO>E#.($";!BZAZTA MEKK/=>KUUO6QB;TBW.6"SZ+BZ46[%<-%#RFG?+ M^TM"V Q>'#=[BXUHXPUP,<@CHFZ&S M)ZAF: '(= Y(,X86".B=HELFT^2>;ET6@G/V-SYSK:YTZ;P:*=%_VR?+&5A4"E9%L@I][,J:,JO MQ*E:63MMRJ-C2KKZA_-S)V7@9BXW9[T-<\?Z.V;41C")Y?8 MS"=(-G3I0S)/PYQ):A0)HT\$L M ](6\L(R"8_\1Z*4 6')XOJ97IH0WTBI IJ^@61B5N>PH5N1BGS.E')B+QS+ M]Q<%D*9O_ SN]0GX8)D%5G8O=P#1#]P%.!/8HKR)Z?L[!JQ2SA#+!*[G&&8W M6\:Q1^LM@"N0_=_*&Q=U:?H.D+7.N8AA5MQIR4/%]*ZC&Z^G+'Q,"\FC;R 9 M$43KW5 YK]Y0R0>@%>"R,?Z('4Q'<1[63L3&<5PR4)N[)NW?V JPNU@@L&"* M,IGG2,L*P2/,JD].7BC@"">.5Z@#Y$3CQK<AYC#/"C3,3$]MO(P M[XN74^+2$?>..'OWOIB7/"C3$2<]7O(P-[^X"5;KBC^MYU;=F#YLJDM6Z753 MJ>-RH,<_.1'B2NV;KVV9YYM(;D?%(-&Y7;QAB]XG0@-9@_S42_ $Y=5GN &[ M&HUM62/JB*0NC3;MKG>EAL;Q'**(D5MW9WTNWEGO^G<* QC=45>3,"1[:1&P MB:*L013$B\FJPYQYIT.!9K2G;9F M6XMVX#5TM88L[$OAI2-"O?%7/W?RA M>I##>LSJ@VWZI$_\Y"/2VF*K+0380ICT00O<$%ZM1J9Z-=/,@;6&+0].P"HR4-O/".O22/8(0YP&5[.EBM5+M]'0:FMWQZ9-6 MRFW0]E .]+A'2-8O2%R!6M7(^AE5*G,5=;8EC'I>&J7LU=DKL$+ "_)CB%4( M&-=C?Q1!E 2_L\^%U(F21SOKWOJI6ZH5W?'!,OT18GH+1#HA;V)+=D7'UL]H MLR(\=%]X8YI%C5V/Y4'7"P6]X^7TLHX=UK-3[-J2>(^(\HMUZ1NMX$^MODPX MSC!>D/U7= 4>$D7HAP]J:ZRG@1!++C276//SZ#Y>TN"."-BB>(Y,_V3RL.>< M\1+&[#H>4:1I^D"H#>)L^7Z01PLTVMD2XI$KW=X9EHJHWBK=B8<^>W=*_TG* MWVFWM673H19)3<),B.6TA5A.S8I%X/5W();3;L72J%CO);V$!M"*+I&T J.@ MQ#(?S(XW"#KS",2$&GI!!JQ2Y"U=#$8+!%C$9Q\]86'E&FTM\!%4FKA]B$:? MJMZN#1 MW\:.0O*=[WH45)L7Y1Y>TMV/ -:"B:V68A;E(R#)O%P(2A&,V>N7BDU/!<[T MM*>E6N4]3H4&\P+XU47$W.4[SCT86[8RVHS?P]\\TP6S;27R6[G=I&IF]A!3 MERS^$6:M)>A SS,E^[?ZT1Y[++&)X*6$678(=0L3@._<-=6]6QA[6=W#$M5D M]&MZEH$I0==Q&N7E7P1B;=6C+4&+)F)O1;AE:D%U=1QC,IO0669,=SL )_>$ M$N:@^;O$;H$6U.G EG/+)D*O0Z?5,BY,6IL*;9D7L@,17C%OT)'I&H7=R5R/ MWD&+$4Z7+F)%MW+W$%-/$@7$01C'7PBC>3$8_;:F"Q8V$5U-$BVSU,O0Q7@R MS]&=H/M@L4RVU "RTA ) 'Q)'%G@7ZRO76]9AA5Y8.W[-5W5L)6?UI[\0U"4 MZV>R!A'MOD.!![9?XOQ;+*QFV:POTU4+.U<(-,EW"E@+DK4.-+E.2PBOR7/?8?*F2L;OA*UPN#O3(AQ%4C'H+ ME@T.G&G[J",\"1F6[3=N(/'*Y;(H@Y@^;FDBAC(%EDF@HB/R/9\8W/292"<& MTM,K:J(2ST5$9:/D*3/8O @+=@H'NC&74, K]OVUVW[Z[;]==O^76_;.U[A1)M[);3AQPGD M1(B30FRL4UK&\#-!8AFNB7ER:I!HP-MB*AHBTJ#&LFUD&=GLO;O X\M*LXWI MK7YKDZI09+7,OI.4R<;2/.!,R4^N!T81O0*H)<@BN.G00FNQ%8FQ6D@T *"W MHV: MN0T-GTBBVJ.X&%:91 MB&&-9!;ER(S29,E$+HG'B(#MB,AH":*<4\0GQ_P45,5,&I<1@UL4F9%KFEPN M]ES&)9@09R/PV,U]Q']C4P%K2V!&I62E-8)/BGEY,)=O%/LWI/?P'RD*,/'L M*3Y2R2A;V;(IK2,C)5%]A0;1Q O-(<:A;&BETBC!;5)-"Z[6YAT(#Y1+Z9C.-U*4$2E95&"+;WW@,SL'JO/1+"Y7+KQ M@NQ%^ F,@BP;.EF_P*4_:&A.LEU_,YT?;@D=%.?#B!8C3MS'1(JI$R M-"7V,!1@RXT[0#"C=T.)W[Z)9)-)CVRL:VJ!7H^F+]EVJ0IZ%%NF#]. T#$/ M/#=.-O.:B#Q\#UQ,$'T(UW=DB:1E ;* ^62>-2$<]G-HT3:WK]%,W\UMI$>] M<<,R'=OR)3<"N8X(H4U?YFWG0^Q38\6!QJX:&\%M\\C( KD1F;E8S;L+%P._ M^'V]'GF[!Z,'0DQ#Y] MS$98?KK?H2PZ0^*J?FF-[X4#YI7H.EJ%< T FZXG*^4!AP3>EN.G/NVB5-=7 MS KS8 >YGDI'ZP5K,8QOK"-1?.PAMIJR,J> MZ?428K*UF[HAD#]LRX&S93K54KAR<=D*+>8%,04AZ6[Q"]FV(3>D+S(6[H$\ M@GQ7)Q=2S3Y,GU0V%F!-.BT0KFH5$"T"E2U_7;]7HV.S]T.Z8PV_<'CK!?A M8W'6QN(R28V)8CP#?P;'&*< X4S^BA"=7M/O*'*GQQ#S;HP* M3^D>3[>Q19N].CI>1Y[V;/]>8'2MGI(>3+SL=0OQNH4X%)7+; =/T@0GQ.LC M6_6L)'S7&B@>YV5O3'I@F&69'&TI_(45F!_'V8WWGO1N?Q#3^>1V*]T^MVS3 M.+KH,V?!OTH1L8P,S^RADX)'@#>/&0BUJD%'IO/8>]:M308^,)4-3="=_L85T^JR1G'=+Z^W:K(8=@+ M4[V"7_HKH$\# 7_T")"[ *47A/K?1LA'-WV7P&XUU6;CH2FO<)?/=7#[4. N M,3!]D<&P$G?)RI>FR!ORC.IR321,W]FP7)UKZ T%!]MU-X'-=T/M3<4]X!*E7Q^">,$N5Z2 MNB&MXG@NT^2A,1E>JX<_BQJ:IR],P\66+>*!Z,5I(Y@,K^'#'WP-S5,;-;R; MH-"8D!K$./!H%9L!8GG[XPVOK<,>MO7'.1MULAN[+%,ZP.1:&7!XK1S^&*XG MUAUH^GU&6Y#C0[GJM2L8WGL"?I9 D->'_1WX7PB7 M4"&?@-Z0QA?K$HOOJ<*URDAV(V]O:8767$22QY8E *;LO-AAXM9O<>GHP1 MPPEK]@3K"*L ;G?F=]_"*C!B0&$1^%JV56I@=]9T[P(KLN*%+1NF)AG1M*;5W1%W5MJ:D X!- N2@B<;G97H=\D4M:@R!F5_RT,8[9%;%? M5JNA];4RY(MD%0/8V7U1K#>#L('UW[7!E)I<@$404R9=N"%]^*;>6:TI%.V^ MV';XIJ/BOXWVT_5"6S@B-^!!\4:W^Y[OCEV=@@YP0XCJ[. ON\R MG*]/XKP^B=,PA?KU29S7)W'L3FWYSI[$V;SS*V#!KT&R')--\&/@IVY8X0;A M$&7#9,[M1KPZ]#[J=_0T3^^\-*^DF7/)T"ZR:D?6)GJ)Q;1(UZTN![!HM1K( MN$N378><["V;K+)G.C\].\UW*Y*<,IUFMBQNW9O,+J%,AP_F)XWN+A6]%J_6 MNV]UZ,6K!=/%)B9ZYZ($3^;"B MOSM!O:W?"55/=J,D$&T/,37BQH3@/13ZZ M04@5^Q-$K,97UQ.+E6]L_>U#F0FXI86['K^ M$0QB=_*.Z:('EM>FWT:M 'H,/,"G]A;&CP#3(S)*&)[!A&XL=M_35T]O8?)O MD-P##RYB>ARG"AAV/Y[=F3!M];!'QGTO*IF9(%GV\X\HG.B,?V@D[$YHL59Y M!=SL5J,%&\;&K,IV1N,8DQTLVR;K% 9F7UX1E^:3&R!>?2-+<+([/:75!M<\ M^U\T@KSE\;7+XNA3T:R+?:R+? MRT[DNZ2;:90$]$4OF !,,*<&($WF4[2Q)>=AJ(0^!3O,RWA*YCI&\.ZH%<:4 M?ED917D;6Q/J^IK\%>PP+^,]O#32VRJP%DW'6AI;S3.KD&1>+@2E",8LUUG]'5Y(.Y"O.K2W<*B50N>S"V)&TVD<4>*>;YWW+: MJ$2 NUVE;VQ)WNZ:3?P4[FZ6]P.MYMF2^%$$4V&2;T=]VSWS=*.-';'*L@/' M<>PAIO@LB27:UJM($A0\$&*(XW<( M^JF73-T0T,=G0;"(V>^T] ?]?P8_N[]!=)GB!$8 U7OIY^R\>NB7#^BPWO_7 MRR)@,Y'Z,BH7ZPL0 M>\O(1=\DT0AU,[L.\N3BV8N[*R@S/[M7<=Q@*-W?JYM9M+_754RY[/8)-"\[ M-GO=@T<0IS1K0KH1%,#:LCG75<.2\\\GR;Q<./JFR%R0MK#K**O5]&=3=D*5 M$#)8O4FOV,+N^4Z6.2 ERP(YY4Y9!4WY<96JE;4S7U4-2\)2T=63P#!*"L(B M?^T$1?[X6G;<.3.=",BNXR+UY":BPPS;:<1T,B_APYW!%+ 6S%UR)=IP7D)# M7Y=CMOB,XTLW=GWW\G?@?;L'J_0A#+Q? (K<>#W&R 4AW<>27;V[(OM,<5F6 MEAV:GK>TU&Y[TZ0EL7T)=097V:-B)8T3RTP.;SJV64\D?@D>@I^%<2-/5%6KK-I>*8119^GJJ$-1TU8$V2CS NZ=[ M5B-[\U0(:OI"?:MYHL/72KO?,]\H#K%E#