0001558370-24-011092.txt : 20240806 0001558370-24-011092.hdr.sgml : 20240806 20240806161533 ACCESSION NUMBER: 0001558370-24-011092 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 51 CONFORMED PERIOD OF REPORT: 20240630 FILED AS OF DATE: 20240806 DATE AS OF CHANGE: 20240806 FILER: COMPANY DATA: COMPANY CONFORMED NAME: COMPX INTERNATIONAL INC CENTRAL INDEX KEY: 0001049606 STANDARD INDUSTRIAL CLASSIFICATION: CUTLERY, HANDTOOLS & GENERAL HARDWARE [3420] ORGANIZATION NAME: 04 Manufacturing IRS NUMBER: 570981653 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-13905 FILM NUMBER: 241179467 BUSINESS ADDRESS: STREET 1: 5430 LBJ FREEWAY STREET 2: SUITE 1700 CITY: DALLAS STATE: TX ZIP: 75240-2620 BUSINESS PHONE: 9724481400 MAIL ADDRESS: STREET 1: 5430 LBJ FREEWAY STREET 2: SUITE 1700 CITY: DALLAS STATE: TX ZIP: 75240-2620 10-Q 1 cix-20240630x10q.htm 10-Q
0.330.390.820.7012310000123160001230900012315000DE0001049606--12-31Q2false0001049606us-gaap:CommonClassAMemberus-gaap:CommonStockMember2024-06-300001049606us-gaap:RetainedEarningsMember2024-06-300001049606us-gaap:AdditionalPaidInCapitalMember2024-06-300001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-300001049606us-gaap:CommonClassAMemberus-gaap:CommonStockMember2024-03-310001049606us-gaap:RetainedEarningsMember2024-03-310001049606us-gaap:AdditionalPaidInCapitalMember2024-03-310001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-3100010496062024-03-310001049606us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-12-310001049606us-gaap:RetainedEarningsMember2023-12-310001049606us-gaap:AdditionalPaidInCapitalMember2023-12-310001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-310001049606us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-06-300001049606us-gaap:RetainedEarningsMember2023-06-300001049606us-gaap:AdditionalPaidInCapitalMember2023-06-300001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-300001049606us-gaap:CommonClassAMemberus-gaap:CommonStockMember2023-03-310001049606us-gaap:RetainedEarningsMember2023-03-310001049606us-gaap:AdditionalPaidInCapitalMember2023-03-310001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-3100010496062023-03-310001049606us-gaap:CommonClassAMemberus-gaap:CommonStockMember2022-12-310001049606us-gaap:RetainedEarningsMember2022-12-310001049606us-gaap:AdditionalPaidInCapitalMember2022-12-310001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001049606cix:SecurityProductsMember2024-04-012024-06-300001049606cix:MarineComponentsMember2024-04-012024-06-300001049606cix:SecurityProductsMember2024-01-012024-06-300001049606cix:MarineComponentsMember2024-01-012024-06-300001049606cix:SecurityProductsMember2023-04-012023-06-300001049606cix:MarineComponentsMember2023-04-012023-06-300001049606cix:SecurityProductsMember2023-01-012023-06-300001049606cix:MarineComponentsMember2023-01-012023-06-300001049606cix:ValhiIncMemberus-gaap:UnsecuredDebtMemberus-gaap:RelatedPartyMember2024-06-300001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-04-012024-06-300001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-06-300001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300001049606us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-06-300001049606us-gaap:OperatingSegmentsMembercix:SecurityProductsMember2024-04-012024-06-300001049606us-gaap:OperatingSegmentsMembercix:MarineComponentsMember2024-04-012024-06-300001049606us-gaap:CorporateNonSegmentMember2024-04-012024-06-300001049606us-gaap:OperatingSegmentsMembercix:SecurityProductsMember2024-01-012024-06-300001049606us-gaap:OperatingSegmentsMembercix:MarineComponentsMember2024-01-012024-06-300001049606us-gaap:CorporateNonSegmentMember2024-01-012024-06-300001049606us-gaap:OperatingSegmentsMembercix:SecurityProductsMember2023-04-012023-06-300001049606us-gaap:OperatingSegmentsMembercix:MarineComponentsMember2023-04-012023-06-300001049606us-gaap:CorporateNonSegmentMember2023-04-012023-06-300001049606us-gaap:OperatingSegmentsMembercix:SecurityProductsMember2023-01-012023-06-300001049606us-gaap:OperatingSegmentsMembercix:MarineComponentsMember2023-01-012023-06-300001049606us-gaap:CorporateNonSegmentMember2023-01-012023-06-300001049606cix:ValhiIncMembercix:NLIndustriesMember2024-06-300001049606cix:NLIndustriesMembercix:CompXInternationalIncMember2024-06-300001049606cix:ContranCorporationMembercix:ValhiIncMember2024-06-300001049606cix:CurrentAssetsMember2024-01-012024-06-300001049606cix:CurrentAssetsMember2023-01-012023-12-310001049606cix:ValhiIncMemberus-gaap:UnsecuredDebtMemberus-gaap:RelatedPartyMember2024-01-012024-06-300001049606cix:ValhiIncMemberus-gaap:UnsecuredDebtMemberus-gaap:RelatedPartyMember2023-01-012023-06-300001049606us-gaap:RetainedEarningsMember2024-04-012024-06-300001049606us-gaap:RetainedEarningsMember2024-01-012024-06-300001049606us-gaap:RetainedEarningsMember2023-04-012023-06-300001049606us-gaap:RetainedEarningsMember2023-01-012023-06-300001049606us-gaap:CommonClassAMember2024-06-300001049606us-gaap:CommonClassAMember2023-12-310001049606cix:S2024Q3DividendsMemberus-gaap:CommonClassAMemberus-gaap:SubsequentEventMember2024-07-012024-08-0600010496062023-06-3000010496062022-12-310001049606us-gaap:EstimateOfFairValueFairValueDisclosureMember2024-06-300001049606us-gaap:CarryingReportedAmountFairValueDisclosureMember2024-06-300001049606us-gaap:EstimateOfFairValueFairValueDisclosureMember2023-12-310001049606us-gaap:CarryingReportedAmountFairValueDisclosureMember2023-12-310001049606us-gaap:CorporateMember2024-06-300001049606cix:SecurityProductsMember2024-06-300001049606cix:MarineComponentsMember2024-06-300001049606cix:SecurityProductsMember2023-12-310001049606cix:MarineComponentsMember2023-12-3100010496062024-07-300001049606cix:CurrentAssetsMember2024-06-300001049606cix:CurrentAssetsMember2023-12-310001049606us-gaap:UnsecuredDebtMembercix:ValhiIncMember2016-08-012016-08-310001049606us-gaap:UnsecuredDebtMembercix:ValhiIncMember2016-08-310001049606us-gaap:AdditionalPaidInCapitalMember2024-04-012024-06-3000010496062024-04-012024-06-300001049606us-gaap:AdditionalPaidInCapitalMember2024-01-012024-06-3000010496062024-01-012024-06-300001049606us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-3000010496062023-04-012023-06-300001049606us-gaap:AdditionalPaidInCapitalMember2023-01-012023-06-3000010496062023-01-012023-06-3000010496062024-06-3000010496062023-12-31iso4217:USDxbrli:sharesiso4217:USDxbrli:sharesxbrli:pure

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

FORM 10-Q

QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF

THE SECURITIES EXCHANGE ACT OF 1934

For the quarter ended June 30, 2024

OR

TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF

THE SECURITIES EXCHANGE ACT OF 1934

For the transition period from _________ to _________

Commission file number 1-13905

COMPX INTERNATIONAL INC.

(Exact name of Registrant as specified in its charter)

DELAWARE

    

57-0981653

(State or other jurisdiction of
incorporation or organization)

(IRS Employer
Identification No.)

5430 LBJ Freeway, Suite 1700

Dallas, Texas 75240-2620

(Address of principal executive offices)

Registrant’s telephone number, including area code (972) 448-1400

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

Title of each class

    

Trading Symbol(s)

    

Name of each exchange on which registered

Class A common stock

CIX

NYSE American

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 and (2) has been subject to such filing requirements for the past 90 days.   Yes      No  

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

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.

Large accelerated filer

Accelerated filer

Non-accelerated filer

  Smaller reporting company

Emerging growth company  

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

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

As of July 30, 2024, the registrant had 12,318,557 shares of Class A common stock, $.01 par value per share, outstanding.

COMPX INTERNATIONAL INC.

Index

    

Page

Part I.

FINANCIAL INFORMATION

Item 1.

Financial Statements

Condensed Consolidated Balance Sheets – December 31, 2023 and June 30, 2024 (unaudited)

- 3 -

Condensed Consolidated Statements of Income and Comprehensive Income (unaudited) – Three and six months ended June 30, 2023 and 2024

- 4 -

Condensed Consolidated Statements of Stockholders’ Equity (unaudited) – Three and six months ended June 30, 2023 and 2024

- 5 -

Condensed Consolidated Statements of Cash Flows (unaudited) –Six months ended June 30, 2023 and 2024

- 6 -

Notes to Condensed Consolidated Financial Statements (unaudited)

- 7 -

Item 2.

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

- 12 -

Item 3.

Quantitative and Qualitative Disclosure About Market Risk

- 18 -

Item 4.

Controls and Procedures

- 18 -

Part II.

OTHER INFORMATION

Item 1.

Legal Proceedings

- 20 -

Item 1A.

Risk Factors

- 20 -

Item 6.

Exhibits

- 20 -

Items 2, 3, 4 and 5 of Part II are omitted because there is no information to report.

- 2 -

COMPX INTERNATIONAL INC.

CONDENSED CONSOLIDATED BALANCE SHEETS

(In thousands)

December 31, 

June 30, 

ASSETS

2023

2024

(unaudited)

Current assets:

 

  

  

Cash and cash equivalents

$

41,393

$

70,172

Marketable securities

35,354

11,934

Accounts receivable, net

 

17,061

 

15,435

Inventories, net

 

30,712

 

27,363

Prepaid expenses and other

 

2,110

 

1,768

Total current assets

 

126,630

 

126,672

Other assets:

 

  

 

  

Note receivable from affiliate

 

10,600

 

9,200

Goodwill

 

23,742

 

23,742

Other noncurrent assets

 

769

 

723

Total other assets

 

35,111

 

33,665

Property and equipment:

 

  

 

  

Land

 

5,390

 

5,390

Buildings

 

23,239

 

23,262

Equipment

 

74,315

 

74,651

Construction in progress

 

676

 

770

 

103,620

 

104,073

Less accumulated depreciation

 

77,757

 

79,336

Net property and equipment

 

25,863

 

24,737

Total assets

$

187,604

$

185,074

LIABILITIES AND STOCKHOLDERS' EQUITY

    

Current liabilities:

 

  

Accounts payable and accrued liabilities

$

15,745

$

13,164

Income taxes payable to affiliate

 

1,460

 

560

Total current liabilities

 

17,205

 

13,724

Noncurrent liabilities:

 

 

Deferred income taxes

1,509

1,141

Other

41

26

Total noncurrent liabilities

1,550

1,167

Stockholders' equity:

 

  

 

  

Preferred stock

 

 

Class A common stock

 

123

 

123

Additional paid-in capital

 

53,275

 

53,396

Retained earnings

 

115,457

 

116,665

Accumulated other comprehensive loss -
  unrealized loss on marketable securities

(6)

(1)

Total stockholders' equity

 

168,849

 

170,183

Total liabilities and stockholders’ equity

$

187,604

$

185,074

Commitments and contingencies (Note 8)

See accompanying Notes to Condensed Consolidated Financial Statements.

- 3 -

COMPX INTERNATIONAL INC.

CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME

(In thousands, except per share data)

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(unaudited)

Net sales

$

36,616

$

35,887

$

77,767

$

73,858

Cost of sales

 

26,343

 

24,722

 

54,790

 

53,026

Gross margin

 

10,273

 

11,165

 

22,977

 

20,832

Selling, general and administrative expense

 

5,906

 

6,084

 

11,570

 

12,036

Operating income

 

4,367

 

5,081

 

11,407

 

8,796

Interest income

 

992

 

1,295

 

1,939

 

2,519

Income before income taxes

 

5,359

 

6,376

 

13,346

 

11,315

Provision for income taxes

 

1,287

 

1,532

 

3,206

 

2,717

Net income

$

4,072

$

4,844

$

10,140

$

8,598

Other comprehensive income (loss), marketable securities adjustment:

Unrealized income (loss) arising during year, net

(72)

10

(102)

5

Comprehensive income

$

4,000

$

4,854

$

10,038

$

8,603

Basic and diluted net income per common share

$

.33

$

.39

$

.82

$

.70

Basic and diluted weighted average shares outstanding

 

12,310

 

12,316

 

12,309

 

12,315

See accompanying Notes to Condensed Consolidated Financial Statements.

- 4 -

COMPX INTERNATIONAL INC.

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

(In thousands)

Three months ended June 30, 2023 and 2024 (unaudited)

Accumulated

Class A

Additional

other

Total

common

paid-in

Retained

comprehensive

stockholders'

    

stock

    

capital

    

earnings

    

loss

equity

Balance at March 31, 2023

$

123

$

53,155

$

108,166

$

(47)

$

161,397

Net income

 

 

 

4,072

 

 

4,072

Issuance of common stock

120

120

Cash dividends ($.25 per share)

 

 

 

(3,078)

 

 

(3,078)

Other comprehensive loss

(72)

(72)

Balance at June 30, 2023

$

123

$

53,275

$

109,160

$

(119)

$

162,439

Balance at March 31, 2024

$

123

$

53,275

$

115,517

$

(11)

$

168,904

Net income

 

 

 

4,844

 

 

4,844

Issuance of common stock

121

121

Cash dividends ($.30 per share)

 

 

 

(3,696)

 

 

(3,696)

Other comprehensive income

10

10

Balance at June 30, 2024

$

123

$

53,396

$

116,665

$

(1)

$

170,183

Six months ended June 30, 2023 and 2024 (unaudited)

Accumulated

Class A

Additional

other

Total

common

paid-in

Retained

comprehensive

stockholders'

    

stock

    

capital

    

earnings

    

loss

equity

Balance at December 31, 2022

$

123

$

53,155

$

105,175

$

(17)

$

158,436

Net income

 

 

 

10,140

 

 

10,140

Issuance of common stock

120

120

Cash dividends ($.50 per share)

 

 

 

(6,155)

 

 

(6,155)

Other comprehensive loss

(102)

(102)

Balance at June 30, 2023

$

123

$

53,275

$

109,160

$

(119)

$

162,439

Balance at December 31, 2023

$

123

$

53,275

$

115,457

$

(6)

$

168,849

Net income

 

 

 

8,598

 

 

8,598

Issuance of common stock

121

121

Cash dividends ($.60 per share)

 

 

 

(7,390)

 

 

(7,390)

Other comprehensive income

 

 

 

 

5

 

5

Balance at June 30, 2024

$

123

$

53,396

$

116,665

$

(1)

$

170,183

See accompanying Notes to Condensed Consolidated Financial Statements.

- 5 -

COMPX INTERNATIONAL INC.

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(In thousands)

Six months ended

June 30, 

    

2023

    

2024

(unaudited)

Cash flows from operating activities:

 

  

 

  

Net income

$

10,140

$

8,598

Depreciation and amortization

 

2,009

 

1,846

Deferred income taxes

 

(421)

 

(370)

Noncash interest income

(855)

(574)

Other, net

 

232

 

267

Change in assets and liabilities:

 

  

 

Accounts receivable, net

 

2,794

 

1,628

Inventories, net

 

(2,585)

 

3,201

Accounts payable and accrued liabilities

 

(1,619)

 

(2,586)

Accounts with affiliates

 

(208)

 

(900)

Prepaids and other, net

 

281

 

389

Net cash provided by operating activities

 

9,768

 

11,499

Cash flows from investing activities:

 

  

 

  

Capital expenditures

 

(478)

 

(730)

Marketable securities:

Purchases

 

(24,925)

 

Proceeds from maturities

12,000

24,000

Note receivable from affiliate:

 

  

 

  

Collections

 

14,700

 

13,400

Advances

 

(13,700)

 

(12,000)

Net cash provided by (used in) investing activities

 

(12,403)

 

24,670

Cash flows from financing activities -

Dividends paid

 

(6,155)

 

(7,390)

Cash and cash equivalents - net change from:

Operating, investing and financing activities

(8,790)

28,779

Balance at beginning of period

 

26,748

 

41,393

Balance at end of period

$

17,958

$

70,172

Supplemental disclosures -

Cash paid for income taxes

$

3,847

$

4,006

See accompanying Notes to Condensed Consolidated Financial Statements.

- 6 -

COMPX INTERNATIONAL INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

June 30, 2024

(unaudited)

Note 1 – Organization and basis of presentation:

Organization. We (NYSE American: CIX) were approximately 87% owned by NL Industries, Inc. (NYSE: NL) at June 30, 2024. At June 30, 2024, Valhi, Inc. (NYSE: VHI) owned approximately 83% of NL’s outstanding common stock and a wholly-owned subsidiary of Contran Corporation owned approximately 91% of Valhi’s outstanding common stock. A majority of Contran’s outstanding voting stock is held directly by Lisa K. Simmons, Thomas C. Connelly (the husband of Ms. Simmons’ late sister) and various family trusts established for the benefit of Ms. Simmons, Mr. Connelly and their children and for which Ms. Simmons, Mr. Connelly or Mr. Connelly’s sister, as applicable, serve as trustee (collectively, the “Other Trusts”). With respect to the Other Trusts for which Mr. Connelly or his sister serves as trustee, the trustee is required to vote the shares of Contran voting stock held in such trusts in the same manner as Ms. Simmons. Such voting rights of Ms. Simmons last through April 22, 2030 and are personal to Ms. Simmons. The remainder of Contran’s outstanding voting stock is held by another trust (the “Family Trust”), which was established for the benefit of Ms. Simmons and her late sister and their children and for which a third-party financial institution serves as trustee. Consequently, at June 30, 2024 Ms. Simmons and the Family Trust may be deemed to control Contran, and therefore may be deemed to indirectly control the wholly-owned subsidiary of Contran, Valhi, NL and us.

Basis of presentation. Consolidated in this Quarterly Report are the results of CompX International Inc. and its subsidiaries. The unaudited Condensed Consolidated Financial Statements contained in this Quarterly Report have been prepared on the same basis as the audited Consolidated Financial Statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 that we filed with the Securities and Exchange Commission (“SEC”) on February 28, 2024 (the “2023 Annual Report”). In our opinion, we have made all necessary adjustments (which include only normal recurring adjustments) in order to state fairly, in all material respects, our consolidated financial position, results of operations and cash flows as of the dates and for the periods presented. We have condensed the Consolidated Balance Sheet at December 31, 2023 contained in this Quarterly Report as compared to our audited Consolidated Financial Statements at that date, and we have omitted certain information and footnote disclosures (including those related to the Consolidated Balance Sheet at December 31, 2023) normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”). Our results of operations for the interim periods ended June 30, 2024 may not be indicative of our operating results for the full year. The Condensed Consolidated Financial Statements contained in this Quarterly Report should be read in conjunction with our 2023 Consolidated Financial Statements contained in our 2023 Annual Report.

On August 6, 2024 our board of directors declared a special cash dividend of $2.00 per share on our Class A common stock payable on August 28, 2024 to stockholders of record at the close of business on August 19, 2024.

Our operations are reported on a 52 or 53-week year. For presentation purposes, annual and quarterly information in the Condensed Consolidated Financial Statements and accompanying notes are presented as ended June 30, 2023, December 31, 2023 and June 30, 2024. The actual dates of our annual and quarterly periods are July 2, 2023, December 31, 2023 and June 30, 2024, respectively. Unless otherwise indicated, references in this report to “we”, “us” or “our” refer to CompX International Inc. and its subsidiaries, taken as a whole.

- 7 -

Note 2 – Business segment information:

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(In thousands)

Net sales:

 

  

 

  

  

 

  

Security Products

$

25,672

$

28,213

$

53,014

$

58,100

Marine Components

 

10,944

 

7,674

 

24,753

 

15,758

Total net sales

$

36,616

$

35,887

$

77,767

$

73,858

Operating income:

 

  

 

  

 

  

 

  

Security Products

$

4,134

$

5,442

$

9,513

$

10,892

Marine Components

 

1,943

 

1,387

 

5,260

 

1,421

Corporate operating expenses

 

(1,710)

 

(1,748)

 

(3,366)

 

(3,517)

Total operating income

 

4,367

 

5,081

 

11,407

 

8,796

Interest income

 

992

 

1,295

 

1,939

 

2,519

Income before income taxes

$

5,359

$

6,376

$

13,346

$

11,315

Intersegment sales are not material.

n

Note 3 – Marketable securities:

    

    

Amortized

    

Unrealized

    

Market value

    

cost basis

    

loss, net

(In thousands)

December 31, 2023:

 

  

 

  

 

  

Current assets

$

35,354

$

35,359

$

(5)

 

 

 

June 30, 2024:

Current assets

$

11,934

$

11,935

$

(1)

Our marketable securities consist of investments in debt securities, currently U.S. government treasuries. We classify our marketable securities as available-for-sale. The fair value of our marketable securities is generally determined using Level 2 inputs because although these securities are traded, in many cases the market is not active and the quarter-end valuation is generally based on the last trade of the quarter, which may be several days prior to quarter end. We accumulate unrealized gains and losses on marketable debt securities as part of accumulated other comprehensive income (loss), net of related deferred income taxes.

Note 4 – Accounts receivable, net:

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Accounts receivable, net:

 

  

 

  

Security Products

$

14,950

$

12,596

Marine Components

 

2,181

 

2,909

Allowance for doubtful accounts

 

(70)

 

(70)

Total accounts receivable, net

$

17,061

$

15,435

- 8 -

Note 5 – Inventories, net:

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Raw materials:

 

  

 

  

Security Products

$

3,569

$

3,658

Marine Components

 

2,169

 

1,596

Total raw materials

 

5,738

 

5,254

Work-in-process:

 

  

 

  

Security Products

 

13,879

 

12,213

Marine Components

 

5,163

 

4,858

Total work-in-process

 

19,042

 

17,071

Finished goods:

 

  

 

  

Security Products

 

3,175

 

2,825

Marine Components

 

2,757

 

2,213

Total finished goods

 

5,932

 

5,038

Total inventories, net

$

30,712

$

27,363

Note 6 – Accounts payable and accrued liabilities:

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Accounts payable:

 

  

 

  

Security Products

$

2,514

$

3,103

Marine Components

 

634

 

680

Corporate

8

Accrued liabilities:

 

  

 

Employee benefits

 

10,712

 

6,862

Deferred revenue

559

461

Insurance

 

289

 

334

Taxes other than on income

 

285

 

344

Advances from customers

267

133

Customer tooling

 

145

 

347

Professional services

533

Other

 

340

 

359

Total accounts payable and accrued liabilities

$

15,745

$

13,164

Note 7 – Provision for income taxes:

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(In thousands)

Expected tax expense, at the U.S. federal statutory
  income tax rate of 21%

$

1,126

$

1,339

$

2,803

$

2,376

State income taxes

 

161

 

188

 

401

 

333

Other, net

 

 

5

 

2

 

8

Total provision for income taxes

$

1,287

$

1,532

$

3,206

$

2,717

Comprehensive provision for income taxes allocable to:

Net income

$

1,287

$

1,532

$

3,206

$

2,717

Other comprehensive income (loss) - marketable securities

(18)

1

(31)

Total

$

1,269

$

1,533

$

3,175

$

2,717

- 9 -

Note 8 – Commitments and contingencies:

From time to time, we may be involved in various environmental, contractual, product liability, patent (or intellectual property), employment and other claims and disputes incidental to our business. At least quarterly our management discusses and evaluates the status of any pending litigation to which we are a party. The factors considered in such evaluation include, among other things, the nature of such pending cases, the status of such pending cases, the advice of legal counsel and our experience in similar cases (if any). Based on such evaluation, we make a determination as to whether we believe (i) it is probable a loss has been incurred, and if so if the amount of such loss (or a range of loss) is reasonably estimable, or (ii) it is reasonably possible but not probable a loss has been incurred, and if so if the amount of such loss (or a range of loss) is reasonably estimable, or (iii) the probability a loss has been incurred is remote. We have not accrued any amounts for litigation matters because it is not reasonably possible we have incurred a loss that would be material to our consolidated financial statements, results of operations or liquidity.

Note 9 – Financial instruments:

See Note 3 for information on how we determine the fair value of our marketable securities.

The following table presents the financial instruments that are not carried at fair value but which require fair value disclosure:

December 31, 2023

June 30, 2024

Carrying

Fair

Carrying

Fair

    

amount

    

value

    

amount

    

value

(In thousands)

Cash and cash equivalents

$

41,393

$

41,393

$

70,172

$

70,172

Due to their near-term maturities, the carrying amounts of accounts receivable and accounts payable are considered equivalent to fair value.

Note 10 – Related party transactions:

From time to time, we may have loans and advances outstanding between us and various related parties pursuant to term and demand notes. We generally enter into these loans and advances for cash management purposes. When we loan funds to related parties, we are generally able to earn a higher rate of return on the loan than we would earn if we invested the funds in other instruments, and when we borrow from related parties, we are generally able to pay a lower rate of interest than we would pay if we had incurred third-party indebtedness. While certain of these loans to affiliates may be of a lesser credit quality than cash equivalent instruments otherwise available to us, we believe we have considered the credit risks in the terms of the applicable loans. In this regard, we have an unsecured revolving demand promissory note with Valhi under which, as amended, we agreed to loan Valhi up to $25 million. Our loan to Valhi, as amended, bears interest at prime plus 1.00%, payable quarterly, with all principal due on demand, but in any event no earlier than December 31, 2025. Loans made to Valhi at any time under the agreement are at our discretion. At June 30, 2024, the outstanding principal balance receivable from Valhi under the promissory note was $9.2 million. Interest income (including unused commitment fees) on our loan to Valhi was $.6 million and $.5 million for the six months ended June 30, 2023 and 2024, respectively.

Note 11 – Recent Accounting Pronouncements:

In November 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures. The ASU requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis. The ASU also mandates public companies to provide all annual segment disclosures currently required annually in interim periods. Public companies will also be required to disclose the title and position of the chief operating decision maker (“CODM”) and explain how the CODM uses the reported measure of segment profit or loss in assessing segment performance and allocation of resources. The ASU is effective for us beginning with our 2024 Annual Report, and for interim reporting, in the first quarter of 2025, with retrospective application required. We are in the process of evaluating the additional disclosure requirements across all segments.

- 10 -

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The ASU requires additional annual disclosure and disaggregation for the rate reconciliation, income taxes paid and income tax expense by federal, state and foreign tax jurisdictions. In addition, the standard increases the disclosure requirements for items included in the rate reconciliation that meet a quantitative threshold. The ASU is effective for us beginning with our 2025 Annual Report. The ASU may be applied prospectively; however, entities have the option to apply it retrospectively. We are in the process of evaluating the additional disclosure requirements.

- 11 -

ITEM 2.

MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

Business Overview

We are a leading manufacturer of engineered components utilized in a variety of applications and industries. Through our Security Products segment we manufacture mechanical and electrical cabinet locks and other locking mechanisms used in postal, recreational transportation, office and institutional furniture, cabinetry, tool storage and healthcare applications. We also manufacture wake enhancement systems, stainless steel exhaust systems, gauges, throttle controls, trim tabs and related hardware and accessories for the recreational marine and other industries through our Marine Components segment.

General

This Quarterly Report on Form 10-Q contains forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995, as amended. Statements in this Quarterly Report that are not historical facts are forward-looking in nature and represent management’s beliefs and assumptions based on currently available information. In some cases, you can identify forward-looking statements by the use of words such as “believes,” “intends,” “may,” “should,” “could,” “anticipates,” “expects” or comparable terminology, or by discussions of strategies or trends. Although we believe that the expectations reflected in such forward-looking statements are reasonable, we do not know if these expectations will be correct. Such statements by their nature involve substantial risks and uncertainties that could significantly impact expected results. Actual future results could differ materially from those predicted. The factors that could cause actual future results to differ materially from those described herein are the risks and uncertainties discussed in this Quarterly Report and those described from time to time in our other filings with the SEC and include, but are not limited to, the following:

Future demand for our products,
Changes in our raw material and other operating costs (such as zinc, brass, aluminum, steel and energy costs) and our ability to pass those costs on to our customers or offset them with reductions in other operating costs,
Price and product competition from low-cost manufacturing sources (such as China),
The impact of pricing and production decisions,
Customer and competitor strategies including substitute products,
Uncertainties associated with the development of new products and product features,
Pending or possible future litigation,
Our ability to protect or defend our intellectual property rights,
Potential difficulties in integrating future acquisitions,
Decisions to sell operating assets other than in the ordinary course of business,
Environmental matters (such as those requiring emission and discharge standards for existing and new facilities),
The ultimate outcome of income tax audits, tax settlement initiatives or other tax matters, including future tax reform,
Government laws and regulations and possible changes therein, including new environmental, health and safety, sustainability or other regulations,
General global economic and political conditions that disrupt our supply chain, reduce demand or perceived demand for component products or impair our ability to operate our facilities (including changes in the level of gross domestic product in various regions of the world, natural disasters, terrorist acts, global conflicts and public health crises),

- 12 -

Operating interruptions (including, but not limited to, labor disputes, leaks, natural disasters, fires, explosions, unscheduled or unplanned downtime, transportation interruptions, certain regional and world events or economic conditions and public health crises);
Technology related disruptions (including, but not limited to, cyber attacks; software implementation, upgrades or improvements; technology processing failures; or other events) related to our technology infrastructure that could impact our ability to continue operations, or at key vendors which could impact our supply chain, or at key customers which could impact their operations and cause them to curtail or pause orders; and
Possible disruption of our business or increases in the cost of doing business resulting from terrorist activities or global conflicts.

Should one or more of these risks materialize or if the consequences worsen, or if the underlying assumptions prove incorrect, actual results could differ materially from those currently forecasted or expected. We disclaim any intention or obligation to update or revise any forward-looking statement whether as a result of changes in information, future events or otherwise.

Operating Income Overview

Operating income in the second quarter of 2024 was $5.1 million compared to $4.4 million in the second quarter of 2023. The increase in operating income in the second quarter of 2024 compared to 2023 is due to higher Security Products sales and gross margin which more than offset lower Marine Components sales and gross margin. Operating income for the first six months of 2024 was $8.8 million compared to $11.4 million in the first six months of 2023. The decrease in operating income in the first six months of 2024 compared to 2023 is primarily due to lower Marine Components sales and gross margin partially offset by higher Security Products sales and higher Security Products gross margin in the second quarter of 2024 compared to the second quarter of 2023.

We sell a large number of products that have a wide variation in selling price and manufacturing cost, which results in certain practical limitations on our ability to quantify the impact of changes in individual product sales quantities and selling prices on our net sales, cost of sales and gross margin. In addition, small variations in period-to-period net sales, cost of sales and gross margin can result from changes in the relative mix of our products sold.

Results of Operations

    

Three months ended

 

June 30, 

 

2023

%  

2024

%

(Dollars in thousands)

 

Net sales

$

36,616

 

100.0

%  

$

35,887

 

100.0

%

Cost of sales

 

26,343

 

71.9

 

24,722

 

68.9

Gross margin

 

10,273

 

28.1

 

11,165

 

31.1

Operating costs and expenses

 

5,906

 

16.1

 

6,084

 

17.0

Operating income

$

4,367

 

12.0

%  

$

5,081

 

14.1

%

Six months ended

 

June 30, 

 

    

2023

    

%

    

2024

    

%

(Dollars in thousands)

 

Net sales

$

77,767

 

100.0

%  

$

73,858

 

100.0

%

Cost of sales

 

54,790

 

70.5

 

53,026

 

71.8

Gross margin

 

22,977

 

29.5

 

20,832

 

28.2

Operating costs and expenses

 

11,570

 

14.8

 

12,036

 

16.3

Operating income

$

11,407

 

14.7

%  

$

8,796

 

11.9

%

Net sales. Net sales decreased $.7 million and $3.9 million in the second quarter and for the first six months of 2024, respectively, compared to the same periods in 2023 due to lower Marine Components sales primarily to the towboat

- 13 -

market, partially offset by higher Security Products sales to the government security market. See segment discussion below.

Cost of sales and gross margin. Cost of sales as a percentage of sales improved 3.0% in the second quarter of 2024 compared to the same period in 2023. As a result, gross margin as a percentage of sales increased over the same period. Gross margin percentage increased in the second quarter of 2024 compared to the same period in 2023 primarily due to higher Security Products gross margin percentage and, to a lesser extent, higher gross margin percentage at Marine Components. Cost of sales as a percentage of sales increased 1.3% for the first six months of 2024 compared to the same period in 2023. As a result, gross margin as a percentage of sales declined over the same period. The decline in gross margin percentage for the six-month comparative period is primarily due to lower gross margin percentage at Marine Components, particularly in the first quarter of 2024, partially offset by higher gross margin percentage at Security Products in the second quarter of 2024. See segment discussion below.

Operating costs and expenses. Operating costs and expenses consist primarily of sales and administrative-related personnel costs, sales commissions and advertising expenses directly related to product sales and administrative costs relating to business unit and corporate management activities, as well as any gains and losses on property and equipment. Operating costs and expenses for the second quarter and for the first six months of 2024 increased $.2 million and $.5 million, respectively, compared to the same periods in 2023 primarily due to higher employee salaries and benefits at Security Products. Operating costs and expenses as a percentage of net sales increased for the second quarter and for the first six months of 2024 due to the increased operating costs and expenses mentioned above and decreased coverage of operating costs and expenses as a result of lower sales.

Operating income. As a percentage of net sales, operating income for the second quarter and the first six months of 2024 compared to the same periods of 2023 was primarily impacted by the factors affecting sales, cost of sales, gross margin and operating costs and expenses. See segment discussion below.

Interest income. Interest income increased $.3 million and $.6 million in the second quarter and for the first six months of 2024, respectively, compared to the same periods in 2023 primarily due to higher average interest rates and higher average investment balances, somewhat offset by lower average balances on the revolving promissory note receivable from Valhi. See Notes 3 and 10 to our Condensed Consolidated Financial Statements.

Provision for income taxes. A tabular reconciliation of our actual tax provision to the U.S. federal statutory income tax rate is included in Note 7 to the Condensed Consolidated Financial Statements. Our operations are wholly within the U.S. and therefore our effective income tax rate is primarily reflective of the U.S. federal statutory rate and applicable state taxes.

Segment Results

Key performance indicators for our segments are gross margin and operating income.

Three months ended

    

Six months ended

    

 

June 30, 

%  

June 30, 

%  

 

    

2023

    

2024

    

Change

    

2023

    

2024

    

Change

 

(Dollars in thousands)

(Dollars in thousands)

 

Security Products:

 

  

 

  

 

  

 

  

 

  

 

  

Net sales

$

25,672

$

28,213

 

10

%  

$

53,014

$

58,100

 

10

%

Cost of sales

 

18,253

 

19,261

 

6

 

37,128

 

40,376

 

9

Gross margin

 

7,419

 

8,952

 

21

 

15,886

 

17,724

 

12

Operating costs and expenses

 

3,285

 

3,510

 

7

 

6,373

 

6,832

 

7

Operating income

$

4,134

$

5,442

 

32

$

9,513

$

10,892

 

14

Gross margin

 

28.9

%  

 

31.7

%  

 

30.0

%  

 

30.5

%  

  

Operating income margin

 

16.1

 

19.3

 

 

17.9

 

18.7

 

  

Security Products. Security Products net sales increased 10% in each of the second quarter and first six months of 2024 compared to the same periods in 2023. Relative to prior year, the increase in second quarter sales was primarily due to $2.8 million higher sales to the government security market partially offset by $.4 million lower sales to distributors.

- 14 -

Relative to prior year, the increase in sales for the first six months was primarily due to $4.6 million higher sales to the government security market partially offset by $.5 million lower sales to distributors.

Gross margin and operating income as a percentage of net sales for the second quarter and the first six months of 2024 increased as compared to the same periods in 2023 primarily due to effects of higher sales and increased coverage of fixed costs and operating costs and expenses as a result of higher sales, partially offset by a less favorable customer and product mix and increased operating costs and expenses related to higher employee salaries and benefits.

Three months ended

Six months ended

    

 

June 30, 

%  

June 30, 

%  

 

    

2023

    

2024

    

Change

    

2023

    

2024

    

Change

 

(Dollars in thousands)

(Dollars in thousands)

 

Marine Components:

 

  

 

  

 

  

 

  

 

  

 

  

Net sales

$

10,944

$

7,674

 

(30)

%  

$

24,753

$

15,758

 

(36)

%

Cost of sales

 

8,090

 

5,461

 

(32)

 

17,662

 

12,650

 

(28)

Gross margin

 

2,854

 

2,213

 

(22)

 

7,091

 

3,108

 

(56)

Operating costs and expenses

 

911

 

826

 

(9)

 

1,831

 

1,687

 

(8)

Operating income

$

1,943

$

1,387

 

(29)

$

5,260

$

1,421

 

(73)

Gross margin

 

26.1

%  

 

28.8

%  

 

28.6

%  

 

19.7

%  

  

Operating income margin

 

17.8

 

18.1

 

 

21.2

 

9.0

 

  

Marine Components. Marine Components net sales decreased 30% in the second quarter of 2024 compared to the same period in 2023. Relative to prior year, the decrease in second quarter sales was primarily due to $3.1 million lower sales to the towboat market. Marine Components net sales decreased 36% in the first six months of 2024 compared to the same period in 2023. Relative to prior year, the decrease in sales for the first six months was primarily due to $7.4 million lower sales to the towboat market, $.6 million lower sales to each of the engine builder and industrial markets, and $.5 million lower sales to distributors.

Gross margin and operating income as a percentage of net sales improved in the second quarter of 2024 compared to the same period in 2023. Gross margin as a percentage of net sales increased primarily due to a favorable customer and product mix, partially offset by decreased coverage of fixed costs as a result of lower sales. Operating income as a percentage of net sales increased in the second quarter of 2024 compared to the same period in 2023 due to the factors impacting gross margin as well as slightly reduced operating costs and expenses, including lower employee salaries and benefits of approximately $.1 million, partially offset by decreased coverage of operating costs and expenses on lower sales. For the first six months of 2024, gross margin as a percentage of net sales declined compared to the same period in 2023 primarily due to higher cost inventory produced during the fourth quarter of 2023 and sold in the first quarter of 2024 and decreased coverage of fixed costs as a result of lower sales, partially offset by a more favorable customer and product mix in the second quarter of 2024. Operating income as a percentage of net sales decreased in the first six months of 2024 compared to the same period in 2023 due to the factors impacting gross margin as well as decreased coverage of operating costs and expenses on lower sales, partially offset by reduced operating costs and expenses, including lower employee salaries and benefits of $.1 million.

Outlook. In the first six months of 2024, Security Products benefitted from a general increase in sales across many markets and particularly increased sales of mechanical locks to the government security market; however some of the overall demand improvement was offset by lower demand from distributors as noted above. At Marine Components, the decline in sales to the towboat market as a result of the contraction in the recreational marine industry that began late in the first quarter of 2023 has continued. We are focused on aligning our resources with current demand levels, and particularly at Marine Components, we are adjusting inventory levels, operating expenses and labor resources to align with current demand while also preserving our ability to respond quickly when demand increases. Generally, raw material prices have stabilized, our supply chains are stable and transportation and logistical delays are minimal. We have adjusted our order patterns in response to the stability of our raw material supplies.

We expect Security Products, net sales in 2024 to be lower than 2023 as the increase in demand experienced in the first half of 2024 is expected to be more than offset by lower comparative government security sales in the second half of the year as sales from the 2023 pilot project will not repeat. Additionally, we are unsure if current demand levels across the variety of the markets Security Products serves are sustainable as our customers continue to express uncertainty

- 15 -

regarding consumer demand levels. Overall, we expect Security Products gross margin will be comparable to 2023, although we expect operating income as a percentage of sales to decline due to our limited pricing power along with reduced coverage of selling, general and administrative costs as a result of lower expected sales. We expect Marine Components net sales for the full year of 2024 will be lower as compared to 2023 because we believe demand in the towboat market will further decline. The recreational marine industry faces strong headwinds due to higher interest rates and broader market weakness. Several original equipment boat manufacturers, including certain of our customers, have publicly announced further reductions to their 2024 production schedules. Overall, we expect Marine Components gross margin as a percentage of net sales for 2024 to be lower than 2023 due to lower coverage of fixed overhead as a result of lower expected sales, and operating income as a percentage of net sales to be similarly lower as a result of reduced coverage of selling, general and administrative expenses due to lower expected sales. We ended 2023 with elevated inventory balances at our Marine Components segment as a result of increased orders of certain raw materials due to previously long lead times coupled with the rapidly changing towboat demand which created a misalignment of our raw materials with near term demand. We made significant progress in aligning our Marine Components inventory balances with current demand in the first half of 2024 and expect this alignment to continue over the remainder of 2024.  

Our expectations for our operations and the markets we serve are based on a number of factors outside our control. We have experienced global and domestic supply chain challenges, and any future impacts on our operations will depend on, among other things, any future disruption in our operations or our suppliers’ operations, the impact of economic conditions and geopolitical events on demand for our products or our customers’ and suppliers’ operations, all of which remain uncertain and cannot be predicted.

Liquidity and Capital Resources

Consolidated cash flows –

Operating activities. Trends in cash flows from operating activities, excluding changes in assets and liabilities, have generally been similar to the trends in operating earnings. Changes in assets and liabilities result primarily from the timing of production, sales and purchases. Changes in assets and liabilities generally tend to even out over time. However, period-to-period relative changes in assets and liabilities can significantly affect the comparability of cash flows from operating activities.

Our net cash provided by operating activities for the first six months of 2024 increased by $1.7 million as compared to the first six months of 2023.  The increase in net cash provided is primarily due to the net effects of:

A $3.8 million increase in the amount of net cash provided by relative changes in our inventories, receivables, prepaids, payables and non-tax related accruals in 2024;
A $2.6 million decrease in operating income in 2024;
A $.7 million increase in interest received in 2024 due to higher interest rates and increased investment balances, partially offset by lower average balances on our loan to an affiliate; and
A $.2 million increase in cash paid for taxes in 2024 due to the relative timing of payments.

Changes in working capital can have a significant effect on cash flows from operating activities. As shown below, the change in our average days sales outstanding from December 31, 2023 to June 30, 2024 varied by segment primarily as a result of relative changes in the timing of sales and collections relative to the end of the quarter. For comparative purposes, we have provided December 31, 2022 and June 30, 2023 numbers below.

December 31, 

June 30, 

December 31, 

June 30, 

Days Sales Outstanding:

    

2022

    

2023

    

2023

    

2024

Security Products

 

45 Days

 

40 Days

37 Days

 

40 Days

Marine Components

 

30 Days

 

30 Days

31 Days

 

34 Days

Consolidated CompX

 

41 Days

 

37 Days

36 Days

 

39 Days

Our average number of days in inventory increased from December 31, 2023 to June 30, 2024 primarily due to the increase at Security Products somewhat offset by the decline at Marine Components. Security Products days in inventory at December 31, 2023 is lower than usual due to the fulfillment and shipping of a significant order during the fourth quarter of 2023 and June 30, 2024 is more favorable to June 30, 2023 balances due to planned inventory reductions.

- 16 -

The average number of days in inventory for Marine Components declined from December 31, 2023 to June 30, 2024 as a result of planned inventory reductions. For comparative purposes, we have provided December 31, 2022 and June 30, 2023 numbers below.

December 31, 

June 30, 

December 31, 

June 30, 

Days in Inventory:

    

2022

    

2023

    

2023

    

2024

Security Products

 

101 Days

 

119 Days

77 Days

 

88 Days

Marine Components

 

95 Days

 

111 Days

175 Days

 

144 Days

Consolidated CompX

 

99 Days

 

117 Days

95 Days

 

101 Days

Investing activities. Our capital expenditures were $.7 million and $.5 million in the first six months of 2024 and 2023, respectively. During the first six months of 2024, Valhi repaid a net $1.4 million under the promissory note ($12.0 million of gross borrowings and $13.4 million of gross repayments). During the first six months of 2023, Valhi repaid a net $1.0 million under the promissory note ($13.7 million of gross borrowings and $14.7 million of gross repayments). See Note 10 to our Condensed Consolidated Financial Statements.

During the first six months of 2024, we received gross proceeds totaling $24.0 million related to U.S. treasury bill maturities. During the first six months of 2023, we had gross purchases of U.S. treasury marketable securities aggregating $24.9 million and received gross proceeds totaling $12.0 million related to U.S. treasury bill maturities. See Note 3 to our Condensed Consolidated Financial Statements.

Financing activities. Financing activities consisted only of quarterly cash dividends. In February 2024, our board of directors increased our regular quarterly dividend from $.25 per share to $.30 per share beginning in the first quarter of 2024. During the first six months of 2024 and 2023, we paid aggregate quarterly dividends to CompX stockholders of $7.4 million and $6.2 million, respectively. The declaration and payment of future dividends and the amount thereof, if any, is discretionary and is dependent upon our results of operations, financial condition, cash requirements for our businesses, contractual requirements and restrictions and other factors deemed relevant by our board of directors. The amount and timing of past dividends is not necessarily indicative of the amount or timing of any future dividends which we might pay. In this regard, in August 2024, our board of directors declared a special dividend of $2.00 per share on our Class A common stock, par value $.01 per share.  The special dividend is payable on August 28, 2024 to stockholders of record at the close of business on August 19, 2024.

Future cash requirements –

Liquidity. Our primary source of liquidity on an ongoing basis is our cash flow from operating activities, which is generally used to (i) fund capital expenditures, (ii) repay short-term or long-term indebtedness incurred primarily for capital expenditures, investment activities or reducing our outstanding stock, (iii) provide for the payment of dividends (if declared), and (iv) lend to affiliates. From time-to-time, we will incur indebtedness, primarily to fund capital expenditures or business combinations.

Periodically, we evaluate liquidity requirements, alternative uses of capital, capital needs and available resources in view of, among other things, our capital expenditure requirements, dividend policy and estimated future operating cash flows. As a result of this process, we have in the past and may in the future seek to raise additional capital, refinance or restructure indebtedness, issue additional securities, modify our dividend policy or take a combination of such steps to manage our liquidity and capital resources. In the normal course of business, we may review opportunities for acquisitions, joint ventures or other business combinations in the component products industry. In the event of any such transaction, we may consider using available cash, issuing additional equity securities or increasing our indebtedness or that of our subsidiaries.

We believe that cash generated from operations together with cash on hand, as well as our ability to obtain external financing, will be sufficient to meet our liquidity needs for working capital, capital expenditures, debt service, dividends (if declared) and any amounts we might loan from time to time under the terms of our revolving loan to Valhi discussed in Note 10 to our Condensed Consolidated Financial Statements (which loans would be solely at our discretion) for both the next 12 months and five years. To the extent that our actual operating results or other developments differ from our expectations, our liquidity could be adversely affected.

- 17 -

All of our $82.1 million aggregate cash, cash equivalents and marketable securities at June 30, 2024 were held in the U.S.

Capital expenditures. Firm purchase commitments for capital projects in process at June 30, 2024 totaled $.6 million. We expect our capital expenditures for 2024 will be approximately $2.2 million primarily to meet our existing customer demand and those required to properly maintain our facilities and technology infrastructure.

Stock repurchase program. At June 30, 2024, we have 523,647 shares available for repurchase under a stock repurchase program authorized by our board of directors.

Commitments and contingencies –

We are subject to certain commitments and contingencies, as more fully described in our 2023 Annual Report, or in Note 8 to our Condensed Consolidated Financial Statements or in Part II, Item 1 of this report, including certain legal proceedings.

Recent accounting pronouncements –

See Note 11 to our Condensed Consolidated Financial Statements.

Critical accounting policies –

There have been no changes in the first six months of 2024 with respect to our critical accounting policies presented in Management’s Discussion and Analysis of Financial Condition and Results of Operations in our 2023 Annual Report.

ITEM  3.QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK.

We are exposed to market risk from changes in interest rates and raw material prices. There have been no material changes in these market risks since we filed our 2023 Annual Report, and we refer you to Part I, Item 7A – “Quantitative and Qualitative Disclosure About Market Risk” in our 2023 Annual Report. See also Note 9 to our Condensed Consolidated Financial Statements.

ITEM  4.CONTROLS AND PROCEDURES.

Evaluation of Disclosure Controls and Procedures. We maintain disclosure controls and procedures which, as defined in Exchange Act Rule 13a-15(e), means controls and other procedures that are designed to ensure that information required to be disclosed in the reports that we file or submit to the SEC under the Securities Exchange Act of 1934, as amended (the “Act”), is recorded, processed, summarized and reported within the time periods specified in the SEC’s rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information we are required to disclose in the reports that we file or submit to the SEC under the Act is accumulated and communicated to our management, including our principal executive officer and our principal financial officer, or persons performing similar functions, as appropriate to allow timely decisions to be made regarding required disclosure. Our management with the participation of Scott C. James, our President and Chief Executive Officer, and Amy A. Samford, our Executive Vice President and Chief Financial Officer, has evaluated the design and operating effectiveness of our disclosure controls and procedures as of June 30, 2024. Based upon their evaluation, these executive officers have concluded that our disclosure controls and procedures are effective as of the date of such evaluation.

Internal Control Over Financial Reporting. Our management is responsible for establishing and maintaining adequate internal control over financial reporting which, as defined in Exchange Act Rule 13a-15(f), means a process designed by, or under the supervision of, our principal executive and principal financial officers, or persons performing similar functions, and effected by our board of directors, management and other personnel, 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, and 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,

- 18 -

Provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with GAAP, and that 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 an unauthorized acquisition, use or disposition of our assets that could have a material effect on our Condensed Consolidated Financial Statements.

Changes in Internal Control Over Financial Reporting. There have been no changes in our internal control over financial reporting during the quarter ended June 30, 2024 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

- 19 -

Part II. OTHER INFORMATION

ITEM  1.Legal Proceedings

In addition to the matter discussed below, refer to Note 8 to our Condensed Consolidated Financial Statements and our 2023 Annual Report for descriptions of certain legal proceedings.

In June 2024, we were served in City of Columbia d/b/a Columbia Water v. 3M Company, Inc., et al. (Court of Common Pleas, Richland County, South Carolina, No. 2024-CP-40-03392). This is a lawsuit brought by a municipal water agency against the manufacturers of perfluoroalkyl and polyfluoroalkyl substances (known as “PFAS”), as well as dozens of companies that allegedly used PFAS-containing products in their manufacturing processes. The water agency asserts that it must incur costs to remove PFAS from its water supply. The complaint alleges that CompX used products containing PFAS in its manufacturing facility in Mauldin, South Carolina, and that at least some PFAS attributable to CompX operations has traveled more than 90 miles to plaintiff’s water treatment facility in Columbia, South Carolina. Plaintiff does not allege that CompX has failed to comply with, or has violated, any regulation, permit or statute.  Plaintiff instead asserts claims under common law theories of negligence, nuisance and trespass. We intend to deny liability and will defend vigorously against all claims.

ITEM  1A.Risk Factors.

Reference is made to the 2023 Annual Report for a discussion of risk factors related to our businesses.

ITEM  6.Exhibits.

Item No.

    

Exhibit Index

31.1

Certification

31.2

Certification

32.1

Certification

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

101.CAL

Inline XBRL Taxonomy Extension Calculation Linkbase

101.DEF

Inline XBRL Taxonomy Extension Definition Linkbase

101.LAB

Inline XBRL Taxonomy Extension Label Linkbase

101.PRE

Inline XBRL Taxonomy Extension Presentation Linkbase

104

Cover Page Interactive Data File (formatted as inline XBRL and contained in Exhibit 101)

- 20 -

SIGNATURES

Pursuant to the requirements of the Securities Exchange Act of 1934, the Registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.

    

COMPX INTERNATIONAL INC.

(Registrant)

Date:  August 6, 2024

By:

/s/ Amy A. Samford

Amy A. Samford

Executive Vice President and Chief Financial Officer

By:

/s/ Amy E. Ruf

Amy E. Ruf

Vice President and Controller

- 21 -

EX-31.1 2 cix-20240630xex31d1.htm EX-31.1

Exhibit 31.1

CERTIFICATION

I, Scott C. James, certify that:

1)I have reviewed this quarterly report on Form 10-Q of CompX International 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 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 registrant's board of directors (or persons performing the equivalent function):
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:  August 6, 2024

By:

/s/ Scott C. James

Scott C. James

President and Chief Executive Officer


EX-31.2 3 cix-20240630xex31d2.htm EX-31.2

Exhibit 31.2

CERTIFICATION

I, Amy A. Samford, certify that:

1)I have reviewed this quarterly report on Form 10-Q of CompX International 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 13d-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 registrant's board of directors (or persons performing the equivalent function):
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: August 6, 2024

By:

/s/ Amy A. Samford

Amy A. Samford

Executive Vice President and Chief Financial Officer

(Principal Financial Officer)


EX-32.1 4 cix-20240630xex32d1.htm EX-32.1

Exhibit 32.1

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of CompX International Inc. (the Company) on Form 10-Q for the period ending June 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the Report), I, Scott C. James, President and Chief Executive Officer of the Company and I, Amy A. Samford, Executive Vice President and Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. §1350, as adopted pursuant to §906 of the Sarbanes-Oxley Act of 2002, that:

(1)The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
(2)The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.

By:

/s/ Scott C. James

Scott C. James

President and Chief Executive Officer

By:

/s/ Amy A. Samford

Amy A. Samford

Executive Vice President and Chief Financial Officer

Date: August 6, 2024

Note:  The certification the registrant furnishes in this exhibit is not deemed “filed” for purposes of Section 18 of the Securities Exchange Act of 1934, as amended, or otherwise subject to the liabilities of that Section.  Registration Statements or other documents filed with the Securities and Exchange Commission shall not incorporate this exhibit by reference, except as otherwise expressly stated in such filing.


EX-101.SCH 5 cix-20240630.xsd EX-101.SCH 00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - Accounts receivable, net - Schedule of Accounts receivable, net (Detail) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - Inventories, Net - Inventories, Net (Detail) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - Accounts payable and accrued liabilities - Accounts payable and accrued liabilities (Detail) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - Provision for income taxes - Provision for income taxes (Detail) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 00305 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - Organization and basis of presentation link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - Business segment information link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - Marketable securities link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - Accounts receivable, net link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - Inventories, net link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - Accounts payable and accrued liabilities link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - Provision for income taxes link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - Commitments and contingencies link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - Financial Instruments link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - Related party transactions link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - Recent Accounting Pronouncements link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - Organization and Basis of Presentation (Policies) link:presentationLink link:calculationLink link:definitionLink 30203 - Disclosure - Business segment information (Tables) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - Marketable Securities (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - Accounts receivable, net (Tables) link:presentationLink link:calculationLink link:definitionLink 30503 - Disclosure - Inventories, net (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - Accounts payable and accrued liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - Provision for income taxes (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - Financial Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - Organization and Basis of Presentation - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - Business segment information - Schedule of Business Segment Information (Detail) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - Marketable Securities (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - Financial Instruments - Carrying Value and Estimated Fair Value of Financial Instruments (Detail) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - Related Party Transactions - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 6 cix-20240630_cal.xml EX-101.CAL EX-101.DEF 7 cix-20240630_def.xml EX-101.DEF EX-101.LAB 8 cix-20240630_lab.xml EX-101.LAB EX-101.PRE 9 cix-20240630_pre.xml EX-101.PRE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Document and Entity Information - shares
6 Months Ended
Jun. 30, 2024
Jul. 30, 2024
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jun. 30, 2024  
Document Fiscal Year Focus 2024  
Document Transition Report false  
Entity File Number 1-13905  
Entity Registrant Name COMPX INTERNATIONAL INC  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 57-0981653  
Entity Address, Address Line One 5430 LBJ Freeway  
Entity Address, Address Line Two Suite 1700  
Entity Address, City or Town Dallas  
Entity Address, State or Province TX  
Entity Address, Postal Zip Code 75240-2620  
City Area Code 972  
Local Phone Number 448-1400  
Title of 12(b) Security Class A common stock  
Trading Symbol CIX  
Security Exchange Name NYSEAMER  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Non-accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   12,318,557
Entity Central Index Key 0001049606  
Current Fiscal Year End Date --12-31  
Document Fiscal Period Focus Q2  
Amendment Flag false  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Current assets:    
Cash and cash equivalents $ 70,172 $ 41,393
Marketable securities 11,934 35,354
Accounts receivable, net 15,435 17,061
Inventories, net 27,363 30,712
Prepaid expenses and other 1,768 2,110
Total current assets 126,672 126,630
Other assets:    
Note receivable from affiliate 9,200 10,600
Goodwill 23,742 23,742
Other noncurrent assets 723 769
Total other assets 33,665 35,111
Property and equipment:    
Land 5,390 5,390
Buildings 23,262 23,239
Equipment 74,651 74,315
Construction in progress 770 676
Gross property and equipment 104,073 103,620
Less accumulated depreciation 79,336 77,757
Net property and equipment 24,737 25,863
Total assets 185,074 187,604
Current liabilities:    
Accounts payable and accrued liabilities 13,164 15,745
Income taxes payable to affiliate 560 1,460
Total current liabilities 13,724 17,205
Noncurrent liabilities:    
Deferred income taxes 1,141 1,509
Other 26 41
Total noncurrent liabilities 1,167 1,550
Stockholders' equity:    
Preferred stock 0 0
Additional paid-in capital 53,396 53,275
Retained earnings 116,665 115,457
Accumulated other comprehensive loss - unrealized loss on marketable securities (1) (6)
Total stockholders' equity 170,183 168,849
Total liabilities and stockholders' equity 185,074 187,604
Commitments and contingencies (Note 8)
Class A Common Stock    
Stockholders' equity:    
Class A common stock $ 123 $ 123
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME        
Net sales $ 35,887 $ 36,616 $ 73,858 $ 77,767
Cost of sales 24,722 26,343 53,026 54,790
Gross margin 11,165 10,273 20,832 22,977
Selling, general and administrative expense 6,084 5,906 12,036 11,570
Operating income 5,081 4,367 8,796 11,407
Interest income 1,295 992 2,519 1,939
Income before income taxes 6,376 5,359 11,315 13,346
Provision for income taxes 1,532 1,287 2,717 3,206
Net income 4,844 4,072 8,598 10,140
Other comprehensive income (loss), marketable securities adjustment:        
Unrealized income (loss) arising during year, net 10 (72) 5 (102)
Comprehensive income $ 4,854 $ 4,000 $ 8,603 $ 10,038
Net income per basic share $ 0.39 $ 0.33 $ 0.70 $ 0.82
Net income per diluted share $ 0.39 $ 0.33 $ 0.70 $ 0.82
Weighted average shares outstanding - basic 12,316 12,310 12,315 12,309
Weighted average shares outstanding - diluted 12,316 12,310 12,315 12,309
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
$ in Thousands
Common stock
Class A Common Stock
Additional paid-in capital
Retained earnings
Accumulated other comprehensive loss
Total
Balance at Dec. 31, 2022 $ 123 $ 53,155 $ 105,175 $ (17) $ 158,436
Net income     10,140   10,140
Issuance of common stock   120     120
Cash dividends     (6,155)   (6,155)
Other comprehensive income (loss)       (102) (102)
Balance at Jun. 30, 2023 123 53,275 109,160 (119) 162,439
Balance at Mar. 31, 2023 123 53,155 108,166 (47) 161,397
Net income     4,072   4,072
Issuance of common stock   120     120
Cash dividends     (3,078)   (3,078)
Other comprehensive income (loss)       (72) (72)
Balance at Jun. 30, 2023 123 53,275 109,160 (119) 162,439
Balance at Dec. 31, 2023 123 53,275 115,457 (6) 168,849
Net income     8,598   8,598
Issuance of common stock   121     121
Cash dividends     (7,390)   (7,390)
Other comprehensive income (loss)       5 5
Balance at Jun. 30, 2024 123 53,396 116,665 (1) 170,183
Balance at Mar. 31, 2024 123 53,275 115,517 (11) 168,904
Net income     4,844   4,844
Issuance of common stock   121     121
Cash dividends     (3,696)   (3,696)
Other comprehensive income (loss)       10 10
Balance at Jun. 30, 2024 $ 123 $ 53,396 $ 116,665 $ (1) $ 170,183
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) - $ / shares
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY        
Cash dividends per share $ 0.30 $ 0.25 $ 0.60 $ 0.50
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Cash flows from operating activities:    
Net income $ 8,598 $ 10,140
Depreciation and amortization 1,846 2,009
Deferred income taxes (370) (421)
Noncash interest income (574) (855)
Other, net 267 232
Change in assets and liabilities:    
Accounts receivable, net 1,628 2,794
Inventories, net 3,201 (2,585)
Accounts payable and accrued liabilities (2,586) (1,619)
Accounts with affiliates (900) (208)
Prepaids and other, net 389 281
Net cash provided by operating activities 11,499 9,768
Cash flows from investing activities:    
Capital expenditures (730) (478)
Purchases 0 (24,925)
Proceeds from maturities 24,000 12,000
Note receivable from affiliate:    
Collections 13,400 14,700
Advances (12,000) (13,700)
Net cash provided by (used in) investing activities 24,670 (12,403)
Cash flows from financing activities -    
Dividends paid 7,390 6,155
Cash and cash equivalents - net change from:    
Operating, investing and financing activities 28,779 (8,790)
Balance at beginning of period 41,393 26,748
Balance at end of period 70,172 17,958
Supplemental disclosures -    
Cash paid for income taxes $ 4,006 $ 3,847
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Organization and basis of presentation
6 Months Ended
Jun. 30, 2024
Organization Consolidation And Presentation Of Financial Statements [Abstract]  
Organization and basis of presentation

Note 1 – Organization and basis of presentation:

Organization. We (NYSE American: CIX) were approximately 87% owned by NL Industries, Inc. (NYSE: NL) at June 30, 2024. At June 30, 2024, Valhi, Inc. (NYSE: VHI) owned approximately 83% of NL’s outstanding common stock and a wholly-owned subsidiary of Contran Corporation owned approximately 91% of Valhi’s outstanding common stock. A majority of Contran’s outstanding voting stock is held directly by Lisa K. Simmons, Thomas C. Connelly (the husband of Ms. Simmons’ late sister) and various family trusts established for the benefit of Ms. Simmons, Mr. Connelly and their children and for which Ms. Simmons, Mr. Connelly or Mr. Connelly’s sister, as applicable, serve as trustee (collectively, the “Other Trusts”). With respect to the Other Trusts for which Mr. Connelly or his sister serves as trustee, the trustee is required to vote the shares of Contran voting stock held in such trusts in the same manner as Ms. Simmons. Such voting rights of Ms. Simmons last through April 22, 2030 and are personal to Ms. Simmons. The remainder of Contran’s outstanding voting stock is held by another trust (the “Family Trust”), which was established for the benefit of Ms. Simmons and her late sister and their children and for which a third-party financial institution serves as trustee. Consequently, at June 30, 2024 Ms. Simmons and the Family Trust may be deemed to control Contran, and therefore may be deemed to indirectly control the wholly-owned subsidiary of Contran, Valhi, NL and us.

Basis of presentation. Consolidated in this Quarterly Report are the results of CompX International Inc. and its subsidiaries. The unaudited Condensed Consolidated Financial Statements contained in this Quarterly Report have been prepared on the same basis as the audited Consolidated Financial Statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 that we filed with the Securities and Exchange Commission (“SEC”) on February 28, 2024 (the “2023 Annual Report”). In our opinion, we have made all necessary adjustments (which include only normal recurring adjustments) in order to state fairly, in all material respects, our consolidated financial position, results of operations and cash flows as of the dates and for the periods presented. We have condensed the Consolidated Balance Sheet at December 31, 2023 contained in this Quarterly Report as compared to our audited Consolidated Financial Statements at that date, and we have omitted certain information and footnote disclosures (including those related to the Consolidated Balance Sheet at December 31, 2023) normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”). Our results of operations for the interim periods ended June 30, 2024 may not be indicative of our operating results for the full year. The Condensed Consolidated Financial Statements contained in this Quarterly Report should be read in conjunction with our 2023 Consolidated Financial Statements contained in our 2023 Annual Report.

On August 6, 2024 our board of directors declared a special cash dividend of $2.00 per share on our Class A common stock payable on August 28, 2024 to stockholders of record at the close of business on August 19, 2024.

Our operations are reported on a 52 or 53-week year. For presentation purposes, annual and quarterly information in the Condensed Consolidated Financial Statements and accompanying notes are presented as ended June 30, 2023, December 31, 2023 and June 30, 2024. The actual dates of our annual and quarterly periods are July 2, 2023, December 31, 2023 and June 30, 2024, respectively. Unless otherwise indicated, references in this report to “we”, “us” or “our” refer to CompX International Inc. and its subsidiaries, taken as a whole.

XML 18 R8.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Business segment information
6 Months Ended
Jun. 30, 2024
Segment Reporting [Abstract]  
Business segment information

Note 2 – Business segment information:

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(In thousands)

Net sales:

 

  

 

  

  

 

  

Security Products

$

25,672

$

28,213

$

53,014

$

58,100

Marine Components

 

10,944

 

7,674

 

24,753

 

15,758

Total net sales

$

36,616

$

35,887

$

77,767

$

73,858

Operating income:

 

  

 

  

 

  

 

  

Security Products

$

4,134

$

5,442

$

9,513

$

10,892

Marine Components

 

1,943

 

1,387

 

5,260

 

1,421

Corporate operating expenses

 

(1,710)

 

(1,748)

 

(3,366)

 

(3,517)

Total operating income

 

4,367

 

5,081

 

11,407

 

8,796

Interest income

 

992

 

1,295

 

1,939

 

2,519

Income before income taxes

$

5,359

$

6,376

$

13,346

$

11,315

Intersegment sales are not material.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Marketable securities
6 Months Ended
Jun. 30, 2024
Investments, Debt and Equity Securities [Abstract]  
Marketable securities

Note 3 – Marketable securities:

    

    

Amortized

    

Unrealized

    

Market value

    

cost basis

    

loss, net

(In thousands)

December 31, 2023:

 

  

 

  

 

  

Current assets

$

35,354

$

35,359

$

(5)

 

 

 

June 30, 2024:

Current assets

$

11,934

$

11,935

$

(1)

Our marketable securities consist of investments in debt securities, currently U.S. government treasuries. We classify our marketable securities as available-for-sale. The fair value of our marketable securities is generally determined using Level 2 inputs because although these securities are traded, in many cases the market is not active and the quarter-end valuation is generally based on the last trade of the quarter, which may be several days prior to quarter end. We accumulate unrealized gains and losses on marketable debt securities as part of accumulated other comprehensive income (loss), net of related deferred income taxes.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounts receivable, net
6 Months Ended
Jun. 30, 2024
Receivables [Abstract]  
Accounts receivable, net

Note 4 – Accounts receivable, net:

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Accounts receivable, net:

 

  

 

  

Security Products

$

14,950

$

12,596

Marine Components

 

2,181

 

2,909

Allowance for doubtful accounts

 

(70)

 

(70)

Total accounts receivable, net

$

17,061

$

15,435

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Inventories, net
6 Months Ended
Jun. 30, 2024
Inventory Disclosure [Abstract]  
Inventories, net

Note 5 – Inventories, net:

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Raw materials:

 

  

 

  

Security Products

$

3,569

$

3,658

Marine Components

 

2,169

 

1,596

Total raw materials

 

5,738

 

5,254

Work-in-process:

 

  

 

  

Security Products

 

13,879

 

12,213

Marine Components

 

5,163

 

4,858

Total work-in-process

 

19,042

 

17,071

Finished goods:

 

  

 

  

Security Products

 

3,175

 

2,825

Marine Components

 

2,757

 

2,213

Total finished goods

 

5,932

 

5,038

Total inventories, net

$

30,712

$

27,363

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounts payable and accrued liabilities
6 Months Ended
Jun. 30, 2024
Payables And Accruals [Abstract]  
Accounts payable and accrued liabilities

Note 6 – Accounts payable and accrued liabilities:

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Accounts payable:

 

  

 

  

Security Products

$

2,514

$

3,103

Marine Components

 

634

 

680

Corporate

8

Accrued liabilities:

 

  

 

Employee benefits

 

10,712

 

6,862

Deferred revenue

559

461

Insurance

 

289

 

334

Taxes other than on income

 

285

 

344

Advances from customers

267

133

Customer tooling

 

145

 

347

Professional services

533

Other

 

340

 

359

Total accounts payable and accrued liabilities

$

15,745

$

13,164

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Provision for income taxes
6 Months Ended
Jun. 30, 2024
Income Tax Disclosure [Abstract]  
Provision for income taxes

Note 7 – Provision for income taxes:

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(In thousands)

Expected tax expense, at the U.S. federal statutory
  income tax rate of 21%

$

1,126

$

1,339

$

2,803

$

2,376

State income taxes

 

161

 

188

 

401

 

333

Other, net

 

 

5

 

2

 

8

Total provision for income taxes

$

1,287

$

1,532

$

3,206

$

2,717

Comprehensive provision for income taxes allocable to:

Net income

$

1,287

$

1,532

$

3,206

$

2,717

Other comprehensive income (loss) - marketable securities

(18)

1

(31)

Total

$

1,269

$

1,533

$

3,175

$

2,717

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Commitments and contingencies
6 Months Ended
Jun. 30, 2024
Commitments And Contingencies Disclosure [Abstract]  
Commitments and Contingencies

Note 8 – Commitments and contingencies:

From time to time, we may be involved in various environmental, contractual, product liability, patent (or intellectual property), employment and other claims and disputes incidental to our business. At least quarterly our management discusses and evaluates the status of any pending litigation to which we are a party. The factors considered in such evaluation include, among other things, the nature of such pending cases, the status of such pending cases, the advice of legal counsel and our experience in similar cases (if any). Based on such evaluation, we make a determination as to whether we believe (i) it is probable a loss has been incurred, and if so if the amount of such loss (or a range of loss) is reasonably estimable, or (ii) it is reasonably possible but not probable a loss has been incurred, and if so if the amount of such loss (or a range of loss) is reasonably estimable, or (iii) the probability a loss has been incurred is remote. We have not accrued any amounts for litigation matters because it is not reasonably possible we have incurred a loss that would be material to our consolidated financial statements, results of operations or liquidity.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Financial Instruments
6 Months Ended
Jun. 30, 2024
Fair Value Disclosures [Abstract]  
Financial instruments

Note 9 – Financial instruments:

See Note 3 for information on how we determine the fair value of our marketable securities.

The following table presents the financial instruments that are not carried at fair value but which require fair value disclosure:

December 31, 2023

June 30, 2024

Carrying

Fair

Carrying

Fair

    

amount

    

value

    

amount

    

value

(In thousands)

Cash and cash equivalents

$

41,393

$

41,393

$

70,172

$

70,172

Due to their near-term maturities, the carrying amounts of accounts receivable and accounts payable are considered equivalent to fair value.

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Related party transactions
6 Months Ended
Jun. 30, 2024
Related Party Transactions [Abstract]  
Related party transactions

Note 10 – Related party transactions:

From time to time, we may have loans and advances outstanding between us and various related parties pursuant to term and demand notes. We generally enter into these loans and advances for cash management purposes. When we loan funds to related parties, we are generally able to earn a higher rate of return on the loan than we would earn if we invested the funds in other instruments, and when we borrow from related parties, we are generally able to pay a lower rate of interest than we would pay if we had incurred third-party indebtedness. While certain of these loans to affiliates may be of a lesser credit quality than cash equivalent instruments otherwise available to us, we believe we have considered the credit risks in the terms of the applicable loans. In this regard, we have an unsecured revolving demand promissory note with Valhi under which, as amended, we agreed to loan Valhi up to $25 million. Our loan to Valhi, as amended, bears interest at prime plus 1.00%, payable quarterly, with all principal due on demand, but in any event no earlier than December 31, 2025. Loans made to Valhi at any time under the agreement are at our discretion. At June 30, 2024, the outstanding principal balance receivable from Valhi under the promissory note was $9.2 million. Interest income (including unused commitment fees) on our loan to Valhi was $.6 million and $.5 million for the six months ended June 30, 2023 and 2024, respectively.

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Recent Accounting Pronouncements
6 Months Ended
Jun. 30, 2024
New Accounting Pronouncements And Changes In Accounting Principles [Abstract]  
Recent Accounting Pronouncements

Note 11 – Recent Accounting Pronouncements:

In November 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures. The ASU requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis. The ASU also mandates public companies to provide all annual segment disclosures currently required annually in interim periods. Public companies will also be required to disclose the title and position of the chief operating decision maker (“CODM”) and explain how the CODM uses the reported measure of segment profit or loss in assessing segment performance and allocation of resources. The ASU is effective for us beginning with our 2024 Annual Report, and for interim reporting, in the first quarter of 2025, with retrospective application required. We are in the process of evaluating the additional disclosure requirements across all segments.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The ASU requires additional annual disclosure and disaggregation for the rate reconciliation, income taxes paid and income tax expense by federal, state and foreign tax jurisdictions. In addition, the standard increases the disclosure requirements for items included in the rate reconciliation that meet a quantitative threshold. The ASU is effective for us beginning with our 2025 Annual Report. The ASU may be applied prospectively; however, entities have the option to apply it retrospectively. We are in the process of evaluating the additional disclosure requirements.

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Organization and Basis of Presentation (Policies)
6 Months Ended
Jun. 30, 2024
Organization Consolidation And Presentation Of Financial Statements [Abstract]  
Organization

Organization. We (NYSE American: CIX) were approximately 87% owned by NL Industries, Inc. (NYSE: NL) at June 30, 2024. At June 30, 2024, Valhi, Inc. (NYSE: VHI) owned approximately 83% of NL’s outstanding common stock and a wholly-owned subsidiary of Contran Corporation owned approximately 91% of Valhi’s outstanding common stock. A majority of Contran’s outstanding voting stock is held directly by Lisa K. Simmons, Thomas C. Connelly (the husband of Ms. Simmons’ late sister) and various family trusts established for the benefit of Ms. Simmons, Mr. Connelly and their children and for which Ms. Simmons, Mr. Connelly or Mr. Connelly’s sister, as applicable, serve as trustee (collectively, the “Other Trusts”). With respect to the Other Trusts for which Mr. Connelly or his sister serves as trustee, the trustee is required to vote the shares of Contran voting stock held in such trusts in the same manner as Ms. Simmons. Such voting rights of Ms. Simmons last through April 22, 2030 and are personal to Ms. Simmons. The remainder of Contran’s outstanding voting stock is held by another trust (the “Family Trust”), which was established for the benefit of Ms. Simmons and her late sister and their children and for which a third-party financial institution serves as trustee. Consequently, at June 30, 2024 Ms. Simmons and the Family Trust may be deemed to control Contran, and therefore may be deemed to indirectly control the wholly-owned subsidiary of Contran, Valhi, NL and us.

Basis of Presentation

Basis of presentation. Consolidated in this Quarterly Report are the results of CompX International Inc. and its subsidiaries. The unaudited Condensed Consolidated Financial Statements contained in this Quarterly Report have been prepared on the same basis as the audited Consolidated Financial Statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 that we filed with the Securities and Exchange Commission (“SEC”) on February 28, 2024 (the “2023 Annual Report”). In our opinion, we have made all necessary adjustments (which include only normal recurring adjustments) in order to state fairly, in all material respects, our consolidated financial position, results of operations and cash flows as of the dates and for the periods presented. We have condensed the Consolidated Balance Sheet at December 31, 2023 contained in this Quarterly Report as compared to our audited Consolidated Financial Statements at that date, and we have omitted certain information and footnote disclosures (including those related to the Consolidated Balance Sheet at December 31, 2023) normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”). Our results of operations for the interim periods ended June 30, 2024 may not be indicative of our operating results for the full year. The Condensed Consolidated Financial Statements contained in this Quarterly Report should be read in conjunction with our 2023 Consolidated Financial Statements contained in our 2023 Annual Report.

On August 6, 2024 our board of directors declared a special cash dividend of $2.00 per share on our Class A common stock payable on August 28, 2024 to stockholders of record at the close of business on August 19, 2024.

Our operations are reported on a 52 or 53-week year. For presentation purposes, annual and quarterly information in the Condensed Consolidated Financial Statements and accompanying notes are presented as ended June 30, 2023, December 31, 2023 and June 30, 2024. The actual dates of our annual and quarterly periods are July 2, 2023, December 31, 2023 and June 30, 2024, respectively. Unless otherwise indicated, references in this report to “we”, “us” or “our” refer to CompX International Inc. and its subsidiaries, taken as a whole.

XML 29 R19.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Business segment information (Tables)
6 Months Ended
Jun. 30, 2024
Segment Reporting [Abstract]  
Schedule of Business Segment Information

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(In thousands)

Net sales:

 

  

 

  

  

 

  

Security Products

$

25,672

$

28,213

$

53,014

$

58,100

Marine Components

 

10,944

 

7,674

 

24,753

 

15,758

Total net sales

$

36,616

$

35,887

$

77,767

$

73,858

Operating income:

 

  

 

  

 

  

 

  

Security Products

$

4,134

$

5,442

$

9,513

$

10,892

Marine Components

 

1,943

 

1,387

 

5,260

 

1,421

Corporate operating expenses

 

(1,710)

 

(1,748)

 

(3,366)

 

(3,517)

Total operating income

 

4,367

 

5,081

 

11,407

 

8,796

Interest income

 

992

 

1,295

 

1,939

 

2,519

Income before income taxes

$

5,359

$

6,376

$

13,346

$

11,315

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Marketable Securities (Tables)
6 Months Ended
Jun. 30, 2024
Investments, Debt and Equity Securities [Abstract]  
Schedule of marketable securities

    

    

Amortized

    

Unrealized

    

Market value

    

cost basis

    

loss, net

(In thousands)

December 31, 2023:

 

  

 

  

 

  

Current assets

$

35,354

$

35,359

$

(5)

 

 

 

June 30, 2024:

Current assets

$

11,934

$

11,935

$

(1)

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounts receivable, net (Tables)
6 Months Ended
Jun. 30, 2024
Receivables [Abstract]  
Schedule of Accounts Receivable, net

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Accounts receivable, net:

 

  

 

  

Security Products

$

14,950

$

12,596

Marine Components

 

2,181

 

2,909

Allowance for doubtful accounts

 

(70)

 

(70)

Total accounts receivable, net

$

17,061

$

15,435

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Inventories, net (Tables)
6 Months Ended
Jun. 30, 2024
Inventory Disclosure [Abstract]  
Inventories, net

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Raw materials:

 

  

 

  

Security Products

$

3,569

$

3,658

Marine Components

 

2,169

 

1,596

Total raw materials

 

5,738

 

5,254

Work-in-process:

 

  

 

  

Security Products

 

13,879

 

12,213

Marine Components

 

5,163

 

4,858

Total work-in-process

 

19,042

 

17,071

Finished goods:

 

  

 

  

Security Products

 

3,175

 

2,825

Marine Components

 

2,757

 

2,213

Total finished goods

 

5,932

 

5,038

Total inventories, net

$

30,712

$

27,363

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounts payable and accrued liabilities (Tables)
6 Months Ended
Jun. 30, 2024
Payables And Accruals [Abstract]  
Accounts payable and accrued liabilities

December 31, 

June 30, 

    

2023

    

2024

(In thousands)

Accounts payable:

 

  

 

  

Security Products

$

2,514

$

3,103

Marine Components

 

634

 

680

Corporate

8

Accrued liabilities:

 

  

 

Employee benefits

 

10,712

 

6,862

Deferred revenue

559

461

Insurance

 

289

 

334

Taxes other than on income

 

285

 

344

Advances from customers

267

133

Customer tooling

 

145

 

347

Professional services

533

Other

 

340

 

359

Total accounts payable and accrued liabilities

$

15,745

$

13,164

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Provision for income taxes (Tables)
6 Months Ended
Jun. 30, 2024
Income Tax Disclosure [Abstract]  
Provision for Income Taxes

Three months ended

Six months ended

June 30, 

June 30, 

    

2023

    

2024

    

2023

    

2024

(In thousands)

Expected tax expense, at the U.S. federal statutory
  income tax rate of 21%

$

1,126

$

1,339

$

2,803

$

2,376

State income taxes

 

161

 

188

 

401

 

333

Other, net

 

 

5

 

2

 

8

Total provision for income taxes

$

1,287

$

1,532

$

3,206

$

2,717

Comprehensive provision for income taxes allocable to:

Net income

$

1,287

$

1,532

$

3,206

$

2,717

Other comprehensive income (loss) - marketable securities

(18)

1

(31)

Total

$

1,269

$

1,533

$

3,175

$

2,717

XML 35 R25.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Financial Instruments (Tables)
6 Months Ended
Jun. 30, 2024
Fair Value Disclosures [Abstract]  
Carrying Value and Estimated Fair Value of Financial Instruments

See Note 3 for information on how we determine the fair value of our marketable securities.

The following table presents the financial instruments that are not carried at fair value but which require fair value disclosure:

December 31, 2023

June 30, 2024

Carrying

Fair

Carrying

Fair

    

amount

    

value

    

amount

    

value

(In thousands)

Cash and cash equivalents

$

41,393

$

41,393

$

70,172

$

70,172

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Organization and Basis of Presentation - Additional Information (Detail) - $ / shares
1 Months Ended
Aug. 06, 2024
Jun. 30, 2024
Special dividend 2024 | Class A Common Stock | Subsequent Event [Member]    
Basis Of Presentation And Significant Accounting Policies [Line Items]    
Common stock dividends (in dollars per share) $ 2.00  
Dividend declared date Aug. 06, 2024  
Dividend record date Aug. 19, 2024  
Dividend Payable Date Aug. 28, 2024  
NL Industries | CompX International Inc    
Basis Of Presentation And Significant Accounting Policies [Line Items]    
Percentage of ownership held by parent company   87.00%
Valhi Inc | NL Industries    
Basis Of Presentation And Significant Accounting Policies [Line Items]    
Percentage of ownership held by parent company   83.00%
Contran Corporation | Valhi Inc    
Basis Of Presentation And Significant Accounting Policies [Line Items]    
Percentage of ownership held by parent company   91.00%
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Business segment information - Schedule of Business Segment Information (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Net sales:        
Total net sales $ 35,887 $ 36,616 $ 73,858 $ 77,767
Operating income (loss):        
Total operating income 5,081 4,367 8,796 11,407
Interest income 1,295 992 2,519 1,939
Income before income taxes 6,376 5,359 11,315 13,346
Security Products        
Net sales:        
Total net sales 28,213 25,672 58,100 53,014
Marine Components        
Net sales:        
Total net sales 7,674 10,944 15,758 24,753
Operating Segments | Security Products        
Operating income (loss):        
Total operating income 5,442 4,134 10,892 9,513
Operating Segments | Marine Components        
Operating income (loss):        
Total operating income 1,387 1,943 1,421 5,260
Corporate        
Operating income (loss):        
Total operating income $ (1,748) $ (1,710) $ (3,517) $ (3,366)
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Marketable Securities (Details) - Current assets - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Marketable securities    
Market value $ 11,934 $ 35,354
Amortized cost basis 11,935 35,359
Unrealized loss, net $ (1) $ (5)
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounts receivable, net - Schedule of Accounts receivable, net (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Accounts Notes And Loans Receivable [Line Items]    
Allowance for doubtful accounts $ (70) $ (70)
Total accounts receivable, net 15,435 17,061
Security Products    
Accounts Notes And Loans Receivable [Line Items]    
Accounts receivable, gross 12,596 14,950
Marine Components    
Accounts Notes And Loans Receivable [Line Items]    
Accounts receivable, gross $ 2,909 $ 2,181
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Inventories, Net - Inventories, Net (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Inventory [Line Items]    
Total raw materials $ 5,254 $ 5,738
Total work-in-process 17,071 19,042
Total finished goods 5,038 5,932
Total inventories, net 27,363 30,712
Security Products    
Inventory [Line Items]    
Total raw materials 3,658 3,569
Total work-in-process 12,213 13,879
Total finished goods 2,825 3,175
Marine Components    
Inventory [Line Items]    
Total raw materials 1,596 2,169
Total work-in-process 4,858 5,163
Total finished goods $ 2,213 $ 2,757
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounts payable and accrued liabilities - Accounts payable and accrued liabilities (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Accrued liabilities:    
Employee benefits $ 6,862 $ 10,712
Deferred revenue 461 559
Insurance 334 289
Taxes other than on income 344 285
Advances from customers 133 267
Customer tooling 347 145
Professional services 533  
Other 359 340
Total accounts payable and accrued liabilities 13,164 15,745
Security Products    
Accounts payable:    
Accounts payable 3,103 2,514
Marine Components    
Accounts payable:    
Accounts payable 680 $ 634
Corporate    
Accounts payable:    
Accounts payable $ 8  
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Provision for income taxes - Provision for income taxes (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Income tax expense:        
Deferred income tax benefit     $ (370) $ (421)
Total provision for income taxes $ 1,532 $ 1,287 2,717 3,206
Expected tax expense, at the U.S. federal statutory income tax rate of 21% 1,339 1,126 $ 2,376 $ 2,803
U.S. federal statutory income tax rate     21.00% 21.00%
State income taxes 188 161 $ 333 $ 401
Other, net 5   8 2
Total provision for income taxes 1,532 1,287 2,717 3,206
Disclosure Other Comprehensive Income Loss Tax Effects Allocation to Component Of Other Comprehensive Income Loss [Abstract]        
Other comprehensive loss - marketable securities 1 (18)   (31)
Total $ 1,533 $ 1,269 $ 2,717 $ 3,175
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Financial Instruments - Carrying Value and Estimated Fair Value of Financial Instruments (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Carrying Amount    
Fair Value Balance Sheet Grouping Financial Statement Captions [Line Items]    
Cash and cash equivalents $ 70,172 $ 41,393
Fair Value    
Fair Value Balance Sheet Grouping Financial Statement Captions [Line Items]    
Cash and cash equivalents $ 70,172 $ 41,393
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Related Party Transactions - Additional Information (Detail) - USD ($)
$ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended
Aug. 31, 2016
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Dec. 31, 2023
Related Party Transaction [Line Items]            
Other Receivable, after Allowance for Credit Loss, Noncurrent   $ 9,200   $ 9,200   $ 10,600
Interest income   1,295 $ 992 2,519 $ 1,939  
Unsecured Revolving Demand Promissory | Valhi Inc            
Related Party Transaction [Line Items]            
Maximum loan amount $ 25,000          
Interest rate on loans repayment 1.00%          
Principal due on demand effective date Dec. 31, 2025          
Unsecured Revolving Demand Promissory | Related Party [Member] | Valhi Inc            
Related Party Transaction [Line Items]            
Other Receivable, after Allowance for Credit Loss, Noncurrent   $ 9,200   9,200    
Interest income       $ 500 $ 600  
EXCEL 45 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( .Z!!ED'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 " #N@099#,3&*>\ K @ $0 &1O8U!R;W!S+V-O&ULS9+/ M3L,P#(=?!>7>.NU&A:*N%Q"G(2$Q"<0M2KPMHOFCQ*C=VY.6K1."!^ 8^Y?/ MGR6W*@CE(SY''S"2P70SVMXEH<*&'8F" $CJB%:F,B=<;NY]M)+R,QX@2/4A M#P@UYPU8)*DE29B 15B(K&NU$BJB)!_/>*T6?/B,_0S3"K!'BXX25&4%K)LF MAM/8MW %3##":--W ?5"G*M_8N<.L'-R3&9)#<-0#JLYEW>HX.UI^S*O6QB7 M2#J%^5[&HNJEM1->^3ZP^_J[#UVNS- M/S:^"'8M_+J+[@M02P,$% @ [H$&69E&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" #N@099@56\B? % #-'P & 'AL+W=O+GK."0NY3JZ.XX>;&LW[8-)#$1-;&8[Q_'? MSTX@H2?'9%'Y DG(\^!?_/;$'NP8_RHVA$CPDL14W+0V4F[?.8X(-B3!XBW; M$JI^63&>8*E.^=H16TYPF(F2V$&NVW,2'-'6<)!=F_'A@*4RCBB9<2#2),%\ M?TMBMKMIP=;QPE.TWDA]P1D.MGA-YD3^OIUQ=>84+F&4$"HB1@$GJYO6"+[S M/4\+LCO^B,A.G!P#C;)D[*L^F80W+5>7B,0DD-H"JZ]GXI,XUDZJ'/\>3%O% M?VKAZ?'1_2Z#5S!++(C/XC^C4&YN6ERSQ M<,#9#G!]MW+3!]FSR=2*)J*Z&N>2JU\CI9/#]RQ(5:U(@&D(QE1&<@\F-&\> M^C&W@=A@3L3 D>K?M,8)#LZWN3.J<.Z!!T;E1BC7D(3?ZAU5RJ*HZ%C46V0U M_)C2M\!SWP#DHHZA//XY>5PE_Z8X7O'DO,S/J_#SV3/AX._14DBN&N,_IB>4 M.W3,#KJ'OA-;')";ENJ"@O!GTAK^^ /LN;^8\+Z3V3>PG0*V8W,OF\EBOR4F M4KLYUTD AR#+P1S<*1Q.KK/BSF9^B9LNUU3[I-4 >MP3VC N&JK699X ^92#4" M<>"SE$J^5]^A^6'8W=^/CJPT2H*\@Q5W:K/6';[ M;??Z"O:ZGI'7*F[*6\8?: T<1]Y1&"IW\>9X .[5?>"1FNO5;MGM>"ZXO_T( M[C@A.[PW4E\B!L$R!T%[DK%2+W;,2&VWG*>1)'D18=]UC="7"$JP3$K0GF]> M0_OZ3'7C!=M1(_"9Y(7C&)NF9]\N;,I91B9H3SJO.8OQ:L;9RX^ M&T$O$9E@F9F@/>B\!ITQ(55V^BO:5@_)=L=^%W7<-NHA<_N]1(*"982"]MR3 MM=<1)[B:SFYPW4=&K$OD)E@&)VA//?=,!][9AE%;B+QD(Q"P)%&SLI L^&I< M1KA$=$)E=$+V<*-R?AC1-9CODR6+C;!V W]B''+LJJ9893Q"]BQSK#TP?@DV MF*Y)91(^8S3],A^/'L9/1L9+1")41B)4*Q+Y*>?ZC2U_3\L M*@NL&3>J( &;E.A?A;F5FOW MJ5QGL.N:\I6Q!]6*/>.$\+7NEA^4@]RH4)!L,357K-VP&O02@0>5@0?9\\JQ M(C=$5:0-K^%ZD5W7%*\,/JC6DI&?3^1S/9&KL)[M4X#'5*HL2_44:B3^3I'F M\!QRMV[FIG?,GH<0>?"JV^T/G&<#HU>&'Z_6RI&OQE.N4MZ$AN0%_$:,U7C& MRG5=Z':N>V[/N*UPB;CCE7''.Y-6#I/EZ?*M;:WZC%V[#5';@T;02P0@KPQ MGCVWO%ZH/JS+5RY5G['[9'PCL8N:,IYLB=GCRD@!ACEDC(W][XQ!Y8ACU_U? M,.=DPU1/!MD^LE!O!BF5^=YI<;78JQYE.[1.>7N^T?V ]5PB0$Q62NJ^[:O! M@.=[Q_F)9-ML^W7)I&1)=K@A."1W 8 ',@ 8 >&PO=V]R:W-H965T&UL MK5IM<]LV#/XK/*^WK7=-+9)ZL;/$=XF3M=FE2:Y.M\^*3,>Z2*)+47G9KQ\I M.:8L0G1R\Y=&DD'H 0C@ :@>/7'Q4"X9D^@YSXKR>+"4+\FQ(/"\+Z5^,)P)[-F/RQ^I&J+OA1LL\S5E1IKQ @BV. M!R?X<.K7"VJ)OU/V5+:ND3;ECO,'?7,Q/QYX&A'+6"*UBEC]>613EF5:D\+Q MQ:0]0+RU@5TO8#6AC;( M:K/.8AE/C@1_0D)+*VWZHO9-O5I9DQ9Z&V=2J%]3M4Y.IM=79^=7L_,SI*YF MUY<79R>WZN;TY/+D:GJ.9E_/SV]GZ #]F)VAWS]\1!]06J#;):_*N)B71T.I M,&A-PV3]OM/F?:3G?7]5Q6=$O4^(>,0'ED_=R\]8HI;C>CG=7CY4EF_,)QOS M2:V/]IE?"<$*B>*R9+(\A.QI%/BP IUEA^4J3MCQ0*51R<0C&TQ^_06'WA^0 M=7M2MF4KW=A*7=HGT[A<(K5K*-$7[&>5/L:9,A[!Q$GDX(D?# MQ[8YMI2/Z9ANI+9P^ANC M+44#&O@PQF"#,7!B/$D27BG7J4J6,.5'!?83*IB$8 8VS,"G00>*'U8A+1D';@V5+4BS"!X44;>)$3WHU@JSB=(_:L M6*ED91V=7"Z9@(!&@(?"40>G+40P]F"8HPW,D1/F+9=QIHIQNU1 $ZVI#2$BW3H!"87C'I2&N;";NIH,Y*T0!P%2NTC1 M,.Q66D@LP+BGU&)#6]AW9N"-4,VUD"]U%=/TNE+MK@1S$3L9\+W)N"]MVW8; M*L1N+KQ4]H)&VI06T+&5%O=PH "<1TEHY1PH1ONB MV; >=M/>^6ML@-AL!HO\,,!=;) 8Q4$/-D-UV,UU4UZ44E3-C*5:_97@]RIH M8#?:3!9%UO[:0F$4]L T9(>=##/Y(GA9:G! QH%0QT!E][W(*E^0' U)3SP2 M0UG$35F7RH=J9DVJO,H41\W5J*F2,5%\I1P-CATV%T5C5%%W5 #E MHM#K&1:(X2]"WS1FJO[D3C4I>J"!9TTG#;Y[V-R3MFVC#1\2]QRWF9%6\4O= MINDP4BD@*A7^+4^ C@!F.XI#:\, L2#R>ZH@,91&W)1V420\9TC&S\S E]S= M8Q* R<)N.02$L!_VE1=#=\1-=]LCRB[GVKR&:40LYP)B$?'ZG&OHCT3.9+@R MS>;.?' 2Z;OS84_:MNTVU$KT:J(+M!J8$+'?[0 @J<#K:4Z( M85;B9M;KOO&;V-1(+#:R9?R>OIH:ZJ1NZFQBNP"C!CRZ J8X'':Y")(*@IY$ MI(8W*78&]TSRY&')LSD3Y6\U:3^3S5+9:*('W4=*!:VB1>I2JB0)#V:!A0.NZ& M.2A&HI[*2 UC4C=C?FUAM20(]UY]KGI M8IN17)4S%59+_7'GD:%,M^8'J"H$B[/T7TWV^HF:)_*WGNQ2FR4/NO4/DNF9 M*ZCA4?H6'BV!) 9A0@SIX5%WJH#DPM'([RG6U% I=4^2#=Q6/:Q[K#?#!TY4 MH;88E.MOBZEA1+IKV,SS5.JAH@&>\$*JL&=%HDWYO3[F&WT$H3L5P_4.@87S M_RO:-MX0+743[313 PLZ0=H)*C=FO85SKP>W^]*V_67'<+GO[8<>?6=/\%ZK M]Z5MVVK3%/CN8?IUJY-FJWLYL.X0:B,/6%V'].?Y;+.[3HD09 M6ZA5WN=();-HOG W-Y*OZH_$=UQ*GM>72Q:K;=("ZO<%5\FXOM'?G3?_SV#R M'U!+ P04 " #N@099T1=S G(% !,%P & 'AL+W=O^^HHG)?EM^KQF5Z-L#5B'C.9ZIRP?1C MPR<\SRM/>AP_&J>#ML_*B?(1B0JMO54O=?1K:QVOK*@2 M9:J$_C?3=FH\N;F.D^MI$B/]-KWY^S(^O].-Z9U^7"77=U-T\Q%=7D]NKA)T M?EVAKFX_)Y^TR>77Y/F/]^C+-$9OW[Q#84HO/_>D]^N?>#8- V@VCMCW9GT"_F#90)V[Y6[-O;U>'3=P'(,G@/*I2PV>-LJCV#&BD0 H-X@PS--O M>?J]//\4I93Z/!#SK(!H^E:GA!#?,V@"*.P$)DT;Y>"0&B%+ )03!1W3&;0T M@UZ:4RTDLF)^@N:\X(+E2!\DB*7Z/,RD$JS2&H@_:?$D.12%P!J3CT/7"((- M\B)LIK0-(@ZFYE0#*.(%'5,=MC$(>V-PL^(5TV*N3]-9N02)AC8''!*#J UR MJ6^L\-@&A4%D\K1!A+BX8ZZCEF?4R_.R4%QO>JJ'9@3,0F0FM0V*(B-98QOC M>"0R6 *]132"21*\TUWX!9H5.W3/M=CG#5>DV!.\737.#E*8!L9\3 "41SV# M3PR@"*'$B%\"P2AU_0[B>X*3]!*_%>4FJ^\9FOG+Q(D]"L_<="80RC%/K1A M.0$)3-XVBCJXB[:SH^V\>.IV9W1C?+ H0]? M#IX[-4CZY>"-6G"!-$^M7!;5A7+39O?;7!]6[TZJX^H[5^P^YTCRV5ID*M-W M!I;^HZ\[^@ZJ3L$('549'M5;?%1OR;&\'4[@3AV2?GGXI1"=Y)2]*O+0W6:9:OE<[];M[! MJWB#*(LWA+)X0Z!.WCLY2?KUY+>ZAJ:9LHT6EG/^7+LIUTHJK:^K-?Y^FP1@ M& #QYU#S#CCI@%F)#\.LI0["<)<8VTE.TJ\Y7Q>+)C7 :$"2%(@&#+.B <.L M:( P*QK#O>K@DHMY79:5^HA>%VI;YFF_MJ7?\[K@:7R_(*<3 GR/JU)Q78W< MN=_6F:_JBZE$.7_07>G4UF,5V]+MMJ'*55V;O"^5*I?UZX*SE(L*H/]_*$OU MW*@Z: OHX_\ 4$L#!!0 ( .Z!!EF;CUYR]@4 *4F 8 >&PO=V]R M:W-H965T&ULK5IK\^5S@'I'L/B*XO(V>WK'F@G5 ]QD<5'_14]-K#%!FT-19DF3S$>01.GQ MDWYMB#A),*TS":1)($("<<\DF$V"*21@[TR"U218XI#.5;";!%NL8)Y)<)H$ MI^;^2%;-M$]+NESDV1/*JVB.5GVIY:JS.<%16EU9ZS+G_XUX7KEWZU]0\.>GJ[M_T!1] M6OOHY8M7Z 6*4G2WRPX%3;?%8E;R<57HLTTSAK?',9!S8\B2A%]D?*Z;+V@5 MTZ) EZ@YN:Y. I K->3E=AM55RZ-T9Y&VRD?X(;NHY+& ):OQKIE);]#V18Q MFJ=1^@#-,!@8SF9S2 XQ+3E*5NY8CC99PE>"776+/C(49P6$&JI1[S)I/C,N M?WL-D/8:(#6.=0;G+8UINF&(ELAGF]?(Q+\B8A "*7E$$ )3M6:;3AO5H,5M:3"4MUWQ=CU(N M%(.(4.96^\&;8D\W[&+"92Y8_L@FRY]_PH[Q&W0QZP3SCV!VCUAL&0*O.DN& M0R5[_%LM_Y:2_ZNB.-37979?W2[M$@&IH40:JX8ESX8(]/DZ"P8ZP4+UZ'M* MV*T2ME*)%2UV:!L]1EMV9H%7YH_E7R>8;TMT3!UI,0ITE@R'2O8T<%H-'*4& M-\"V<5R=T,MJ^W@%R:*$'"N+3C!?)UC@R(1C@PB;Q$!03Q2W%<5][L[Y^R'E M.Z=1[YPFI(4+W)?BSBG'V"81MT0?0#+FG!OAFI;#IAC/!58 +(=8YASFQ6MY M\9[+RP>:MQT%R(OW#%[D&*BC ) ,#SN.P(L<-K7$C@* BN):;B><&-H+1H.%NU+T7E K#:!W]5? MJ#%'JZ,3S=>*%C1H/=K%)3 <".HKT]E0K/:A8YH,##@Q:3<%@J V \*"^@P@ M#F@T(#1%IX$[EXC5-O',KQ

LMFZCV@ZME@W+ MI@<3+%[(6KV85K1P8 )]03K7AM6V[1EMAQ)@M PZT7P,&#O7G$O+LLZBX6#1 MOA2=4<1JI_A];8<2<[0Z.M%\K6@!!IRON'>H0OJJ=#X5JXWJF9;# L60O1JP MI\I!MFG.'7$I K"X@7?$G^N N"D6>0&P7 -[)DP.Z5PD4;O(,S]N@.00R#9) MSTOD(*CA@+"P;8M/0P(@CO=CXB,3 ,SQYH9UAIW.TA&UI5-W'.KDL7>N5C2? MR,[*\BQ+9%>KFQNJV1?AY(&>VLR-Z3C44*,ED2V0W'%H+1EH10L')M 7I/-P M1.WAACL.-C\(E'[Q>_J.-28H]71B>9K M10L(8$4-1SQ$:8%B=L\3C=908M%C%5#U9<%XB:42^=(6%0><&5!9V*[C#.P2$VH%(Z.; M\6#$5K(@%&80@+RIIIQ)=DM2T9* MH((PBC@LQM9)?QC[VMX8?">P$3MWI#.Y9>Q."^?9V')T0%! *C4#5L<:0B@* M3:3"^-5P6JU+#=R];]E/3>XJEULL(&3%#Y+)?&Q]LE &"[PJY#7;G$&3SY'F M2UDAS"_:-+:.A=*5D*QLP"J"DM#ZQ/=-'78 BJ<;X#8 ]S' ?P+@-0#ON1[\ M!N _U\-1 S"IVW7NIG 1EC@8<;9!7%LK-GTQU3=H52]"=9\DDJNO1.%D$$ZO MHO@JB2.D;LGTXCPZF2LAF:OC,KZ:)VAZJJ1I^/5L>A'%U\E;%'^[.9__1.]F MF .5.4B2XN(]^HA>(QN)7&G%R)8J-NW!3ILX)G4<[A-Q>.B2*3*!8II!UH&/ M#N,'!_"VJDE;&'=;F(E[D/#+BO:0YWQ KN/Z'?&$SX=[7>G\G_?XG[WO%<-K MN\0S?-[37?(WO='U_+4#O]N!GH9#4>$4QI8:=P+X&JS@S:O^P/G<5?N7)(M> MDBQ^(;*]5_+;5_(/L0ZR<8_VC:(NH\&^3=QE\\!3YVKOS+ 2^-(L#X%2MJ*R;M16V^ZG$S.6'^DG M_6'8[]!':I_5Z^>!OEZ&EY@O"16H@(5RY?2.U8CE]8*I!S?WL!0 K1D !@ M !X;"]W;W)K&E M-XW4IIVVJZVMEN[NLP-.8PWLS#A)MU]_;: 0L*&ME"\-T'..G_/ZV# [S:9Y/&&9#C_P+>$J?^LNXFM96$9H3EE#,@R/I\= '/%FZA4$C\1\DA/[H&VI45YS_US>?D M?.1H1"0EL=0FL/K9DP5)4VU)X?A5&1W5:VK%X^LGZQ\+YY4S*YR3!4]_T$1N MSD?A""1DC7>I_,8/GTCET%3;BWF:%W_!H90-W!&(=[GD6:6L$&24E;_XL0K$ MD8*R8U= E0+J*G@]"FZEX!:.EL@*MZZPQ/.9X <@M+2RIB^*V!3:RAO*=!J7 M4JC_4J4GYXO;FZOKF^7U%5!7R]LOGZ\N[M7-\E[]?+V^N5^"VX]@<;'\!#Y^ MN?VQ!&/P?7D%WKYY!]X RL#]AN]RS))\-I$*C;8YB:N5+\N54<_*/OC*F=SD MX)HE)&GK3Y07M2OHR95+-&CPWQW[ %SG/4 .\BQX%B]7=P?@N'5DW<*>VQ=9 MG&_ 6K5)#M:"9T!UGL"2LH>R=*FD)#^SA:TTZ]G-ZK8^R['0%OR/K\1DTARF*>$9N;I:Y?Z.IALY^'TRB<3?;' M\$TAZ$#/J:5:N*8UKND@KBNBG(TI+N<(2P#.N)#T3_' !K4T-SU&$7I^!ZHI MI$9I9$?JUTC]9Y"NB1 DJ<(()'XDUE;SC<7';N!T$%J$/ 3M"(,:83"<8\YB M7>B42:(J:"CA@;G\-/ Z&"U"X71JQQC6&,-!C+=R0\1[P(BTP0K-O/E!!Y5% MQD5V4%$-*AH>#QO,'HB>H3C/B\X@TFY MB&.^8\IOU8J$[O$J);TIJDRU&M!'W5EAD4)!Y-G3!(\($@X"_<30HY80_0ALK@,)?=";+% M-"G;E \.E,I2JQC"J O3%$)ASRR&#;'!86;3C%N,XZW@>ZJV56#UV[KQL.*V MT!ST(@.Y*18%?E^ &Z:#_JNV2U2U7?Z2[1( /*IS6D+E3O3DRL*3@6OT@D7*"_I2U= I'.;3NYV(-^KH9$=FRUO:_854TS*KJV%V=Y*W902950M[#2,BIYAU&2/66PO'&2C0F16CE7.[0?7<"8:YDSKD'^[RXMCPCOKX+3Z M81(E\GSCT& 14^YZCMOC1L.HR'O5P%]3IF+>Q@W&5N2#5/WJ1CB1M788&LI& MSQQ&JH./)KI^952O2. M;:SW/R NCS$Z@_:A=5)V/I6U=C :=D;#['S[M)-Z?]QE*CBVVK5&PR1D% 9! M=XME$1N'0=0W.1KB1L/$?8E3/=8 EF!%'BAC&C%? ^46Y?;:,ZG:@V[D=@%; M#]%>STX#-82.A@G]"##1^^Y!J"93!PX,4!>JA="#:-H#U6T(W1TF].5NNTU) MIEI#;=\2FL/95567L^)V> M(O;N@=,BY89>T,G2Y.C%=T;$0_$]( ?%F;)\<5P_K;\Y7!1OVCO/+^'9HOQR MT)@I/V1\Q4)U2@Y2LE8FG0^!JAQ1?ALH;R3?%J_75UQ*GA67&X(3(K2 ^O^: MJZU>=:,7J+_0S/\'4$L#!!0 ( .Z!!EE-CNX5L@, %@( 8 >&PO M=V]R:W-H965T&ULI591;]LV$/XK!W7HDV?)+,$6J)!75_?6[(V7' 5RCPUYB\G3WW7??'-K:3>H:BZ(,0;5*\RR[2FLA=3*; M!-N#G4U,ZY74^&#!M74M[&Z!RG339)3L#9_DIO)L2&>31FSP$?WGYL'2+CV@ ME+)&[:318'$]3>:CF\4%^P>'/R1V[F@-7,G*F"UO[LIIDC$A5%AX1A#T\X1+ M5(J!B,:7'C,YI.3 X_4>_7VHG6I9"8=+H_Z4I:^FR74"):Y%J_PGT_V*?3V7 MC%<8Y<)?Z*+OF[<)%*WSINZ#B4$M=?P57WL=C@*NL^\$Y'U 'GC'1('E.^'% M;&)-!Y:]"8T7H=003>2DYJ8\>DM?)<7YV;W=""V_B2B1+KE$Z<"L@7KL4/OP M99)ZRL41:='C+B)N_AW<*_AHM*\<_*)++%_&I\3Q0#3?$UWD9P$_M'H(XVP M>99?G,$;'PH?![SQCQ2^--H9)Z:ZBT-U%^?0_T=; MS^/^9CS""%Z_NLY'HUOXL30W+_T6IWR&<$_"MQN:>+B*30;3THDSPI;L7$I+ M!]E81V>N4,)B"0)<@Z$GA7 5>3S)$G7P_BD?9ADT2-=/1;Y :1EMJ81S,(?" MU#69Z'056VC$3JQ4\.D)Y-<] V^B3V54B3:0)A:&& D/OD(HE''(YE7K2"H" M?T89O8TH5!JEIFO4ADH=,"&+C;&>BF#AX#('8^%R_'.'N(4="CL$NG1>* 1- M:QO*Y@:DM&ZI:A;\2RL(QJH=2!VO:':5.K"CL29!'&5Y'G#:G)QE!A,%"=,( MO9-Z YI:';GV+%AQ!\CG&>@TXOXTC@?P#@NL5Z3V>!1- >[8B53XG1C166'F MS".HR4TY60VI)4T9\W]HR9#_AUP#DI='@R]\M1O"9ZU":T@3VTEJF-2E+%@+ M]ERC15T0GZ :C6;L#3>?YSS/;CL,B]'M8&]I76_AOO4VJF5O#* ,L"0]_X([ M$L_JT!HJ]$X7P\!9DNRN73E92F$E-]:++6I664!',X?#4U=!>G3;UV@WX4US M--.M]O'B/U@/S^8\OA;/[O'-_2CL1M)$*EQ3:#9\]8W'C3A+=C93R] M1&%9T=./EAWH^]K0E/0;3G#X9V+V+U!+ P04 " #N@099)FT?\H # "] M"0 & 'AL+W=O]E>))[;=ZZ\ M3'92?=%; $/V32WTU-L:T][XOBZWT'!]+5L0*%E+U7"#I-KXNE7 5]:HJ7T6 M!*G?\$IXLXGE/:K91':FK@0\*J*[IN'JVQQJN9MZH7=D/%6;K>D9_FS2\@TL MP'QN'Q52_HBRJAH0NI*"*%A/O;OP9A[W^E;AMPIVVEF3/I.EE%]ZXF$U]8(^ M(*BA-#T"Q]]7N(>Z[H$PC+\.F-[HLC=TUT?TGVWNF,N2:[B7]>_5RFRG7NZ1 M%:QY5YLGN7L/AWR2'J^4M;9?LAMT6>&1LM-&-@=CC*"IQ/#G^T,='(,\>,6 M'0R8C7MP9*/\D1L^FRBY(ZK71K1^85.UUAA<)?JF+(Q":85V9C;O-'*T)AHV M6&M#*C%T&DLV\0UZZ/7\\H V']#8*V@I^2"%V6KRDUC!ZMS>Q\C&\-@QO#F[ M"/A+)ZY)%%#" A9?P(O&=".+%[V"MSAD^02M5*82&_+'W5(;A24 MA9'#2"(:A+'+R&D8!.0#5]@WL:(:(Z8_]6(_-J"XG8'5Z*4#7R_ M,9<:$M,P.JLVC6.W/P5-SMJ#QK73EW.:)2F9W029E>'/LMG%1O58K1RHPOR\!0= MAA>;.98@IQV<,K'5XS#09-2=L(,M^O('=\F=\.5?%(?'C8X))M*:%+#&DV#ZRSQB!H>"P-A9&LO MZ*4T>-W;Y1;?5Z!Z!92O)9[=!Z)W,+[89G\#4$L#!!0 ( .Z!!EDH5.\Y MQP, %8) 8 >&PO=V]R:W-H965T&ULM59M;]LV$/XK M!W4H$L"Q;,G.TL0VD*0=EJ'=@F99/PS[0$MGB0A%*GRQX_WZ'BE9=@+;&(8- M"&*^W#WW/.3Q3I.5TD^F1+3P4@EIIE%I;7T9QR8KL6*FKVJ4M+-0NF*6IKJ( M3:V1Y<&I$G$R&)S'%>,RFDW"VKV>392S@DN\UV!<53&]OD&A5M-H&&T6OO*B MM'XAGDUJ5N #VL?Z7M,L[E!R7J$T7$G0N)A&U\/+FY&W#P9_<%R9G3%X)7.E MGOSD+I]& T\(!6;6(S#Z6>(M"N&!B,9SBQEU(;WC[GB#_E/03EKFS."M$M]X M;LMI=!%!C@OFA/VJ5C]CJV?L\3(E3/@/J\9V3!$S9ZRJ6F>:5UPVO^RE/8<= MAXO! 8>D=4@"[R908/F163:;:+4"[:T)S0^"U.!-Y+CTE_)@->UR\K.S+TP_ MH65S@6 P:O_6.BU/%*-KQN MDJ. OSC9AW30@V20C([@I9W.-."E!_#NY!*-I6RRI@)144T08;C8; M;K!DPB%DREC__K@!H0Q=HJ2MMW G=Q)LJ9RARS6G=,\95G/4D Y#(J6'A=TZ MK2DY@!F#UG3+/T Z[J7CT=N%#SL+)^/3?ZV?TAR[-/_OCOV@FN&P]R$=O5T8 M[ZH9;M7\YC35FCT)0K=!99DN1"V ;U\6C:DBTMO:6O:HB 4N8@V/_8<^%&J) M6GISL'3CANS0].$;W; @NGRQ!G4P+*._)>/"KY]11SHS3& ??B\1%HSK-E6( MU&$(RI\")6HFB%&.%C5554HZ9[@LX#,N44!"0FI'>N:8,6<0F/!959247/2N M7S'22#H8%;V>5U\QN8:,NH3QIBT%'U,JVW:@4'C\YK-CFL*?(A!ZN29R5%(P_/;NG=(6=K [7F2H-5&UN@:.&T69:Y MR@E&U7Z^Z@)UO/9XA%A(JP/: M7R@JINW$!^@^I6;? 5!+ P04 " #N@099=70L&YL" !J!@ &0 'AL M+W=OYY])Q..L]W0MZK D"3 MQXIQM7 *K>N9YZFL@(JJ@BGFA[X^]BI;<2>;6 MMY;)7#2:E1S6DJBFJJA\6@$3NX43.'O';;DMM'%XR;RF6[@#_;5>2[2\GB4O M*^"J%)Q(V"R<93!;Q2;>!GPK8:<&X H8 M,T0HXU?'Z?1;&N!POF=_;W/'7%*JX$JP[V6NBX4S<4@.&]HP?2MV'Z#+9V3X M,L&4_9)=&QN.')(U2HNJ Z."JN3M2!^[1[Y+0#^,C?%&? M:F3YH@-\MWV&BOQ8IDI+O!(_7TJTY8E?YC'/9*9JFL'"P7>@0#Z DYR>!&/_ M\HC*N%<9'V-_54&.,WT6&DA,3D\F81!

0-;+43V0M1=YD"-FOO"%![$Y' M_M 1NJ,I7EHJ\=S(E:AJP8$/,*$;3(*!-?6G9,FPBU&> <%^2'+1I'K3,.PM MG<0^A0O_[+GQ16@Z"/PKEZ&N"]9*<%_@Q MF@!_ ( *P' 9 M>&PO=V]R:W-H965TU[TJ-A[(R.1=XI4!71<'4XP1SN1QYD;=V7//YPCA',!Z6;(XW:+Z75\I: M0*[>WB_V?*K*;8>_=@(3T&-;C5VD0XMJ,HF-XNL$1/ 7\[WB& M*1935$ COW7:LF)=UK7#EI?6-7Z&_W AP"QDI9G(]$>X9DO[RQM4G.7ZN=H; M3"O%S2-<*9E5J='MRGN@?MP_W++[\0 NF;)'!J>R**6P9[%!$#_JQ$=^?-B' M;]*P'%171!L1^PD=="P2]^#6MJ%]+O9+)5/4;Q(<47^0=/8G/HGH#KFQE4M; MJ^ MOQ,:4ED)TS33UML^12=-!]Z$-^^8S7[.A88<9Q8:'B2Q!ZIY&QK#R++NQU-I M;'>OIPO[G*)R 79])NU]71EN@_:!'O\!4$L#!!0 ( .Z!!EEDIU'C. , M %,( 9 >&PO=V]R:W-H965T>Z4QS;7OZZS$FNDKV:"@E4*JFAF:JH.O&X4L M=Z"Z\J,@2/V:<>%M5LZV4YN5;$W%!>X4Z+:NF7J^Q4H>UU[HG0Q?^*$TUN!O M5@T[X .:WYJ=HID_L.2\1J&Y%*"P6'O;\/HVL?[.X7>.1ST9@\UD+^4W.[G/ MUUY@!6&%F;$,C#Z/>(=598E(QM\]IS>$M,#I^,3^D\N=R^H/GIEQ[ M2P]R+%A;F2_R^ G[?.:6+Y.5=K]P['P3BIBUVLBZ!].\YJ+[LJ>^#A/ ,G@% M$/6 R.GN CF5'YAAFY621U#6F]CLP*7JT"2."[LI#T;1*B>5]QPU"O?4#2+\;.>^;9CCEYA3N&S%*;4\%'DF/\; M[Y/*06ITDGH;723\N157$ OPO3X.:"WF30FUQB_T]; M=9GY%VD04GC_;AF%X0V\-="U0P3QS?_V_8 9UGM4$(>SP4C[CF[?3P;:_]@= M@C/\]_<"3"E;38KU#V>)G M^P*Q5W#S#3LF\SRYO,?SVQ)&L*]T*UB(AL1T7+TC"GM MK^R)[I$T)6V=*9D >F^YR&0]AO^I4.ESP1$Z>+,%L8Q MW/4(,%+2>3Z,B\DTT,+N;(':-A%6@;V3W$9]ZY;,*=2O+J^1,QC'5+&OTA Q M>^.=F9RG<#Y;3+22@4Y8.IRAEUX,?_+04^X'U\XTN-#=FS]8AXZY[1K%Z-ZU M6SK'!RXT5%@0-+A:S#U070OK)D8VKFWLI:%"NV%)71^5=:#U0M*KT4]L@.%_ MQ.8?4$L#!!0 ( .Z!!EGS&+,C,P, %0) 9 >&PO=V]R:W-H965T MZ_[Y&29:F)C17%L"_BW?'NX3WDD:?93JH'G2$:V)>%T',O M,V9[X?LZR;#D>BBW*&AF+57)#:EJX^NM0IZZH++PHR"8^"7/A;>8.=N=6LQD M98INY=A1?7(^OO'+[DN-,=&2R3E90/5KE-YUY@$\("$V,1. V/>(-%88$H MC7\:3*]=T@9VY0/Z;XX[<5EQC3>R^#-/33;W8@]27/.J,)_D[G=L^(PM7B(+ M[;ZPJWT9\R"IM)%E$TP9E+FH1[YO]J$3$ @ MK#>A6<%1==&47"[LH2R-HMF"#%";3\$ZDF/;C?.P$WFU-[Y[OX6VNDT+J2B'\=;721E%Y_/TLL3G'MT)S2J M1_06+U^$D^#R3+ZC-M_1.?0?/)SS6!^E09C"RQ=Q%(:7]@6I=P$A[E.&[E47"T,\;@#TI/#4#0T]XE&$9'HN/CMK12 M#/?2$)?MR1+ID8GB:4\?LZBCLT$43'KDIN'TIRODWXXWLJ1KF=D>\HCG"/&B MD E?%:3+__X"?*03:9;_V9UT9PQ)CV<#_8K>-RK>7ZE=J JFUUK;7X:KNE,>W>O_C0]<;7*AH< UA0;#Z=@#5??P6C%RZ_KF2AKJ MPD[,Z+<'E76@^;6D)[51[ +MC]3B&U!+ P04 " #N@099X^G1)1X$ !_ M"0 &0 'AL+W=O3, MF_>&,Z3F.^L>?,4L]%2;QB^R2J2]SG-?5%PK/[8M-UA96U+;)H]3WS1FTKB1+Z< MMVK#7UE^;^\=1OF 4NJ:&Z]M0X[7B^QF>GU['NV3P1^:=_[@FZ*2E;4/.PQLR%D=#S\?D;_E+1#RTIYOK/FFRZE6F17 M&96\5L'(%[O[B7L]%Q&OL,:G)^TZVXM91D7P8NO>&0QJW71O]=3GX<#A:O*& MPZQWF"7>7:#$\J,2M9P[NR,7K8$6/Y+4Y URNHF;\E4<5C7\9'EGZUH+LBR> M5%-281O1S8:;0K.?YX(0T3 O>KC;#F[V!MPE?09 Y>G'IN3RG_XYJ W\9L_\ M;F=' 7\)S9C.)B.:36;G1_#.!KUG">_L/^B]@=Z[0[WT4?O"6!\:''H)RP,_MD4*L&1U'"!@SZSW,'REME@HJH"$=>E$";76-M3S@@2Z0(,D1O M5#IL$&]7Z:**R5&H)@5A8#^FW^"]AG[K?,R%!T'7)"AL:')E=8I$/ M?D+6-3:?$T5=:Z-U1RC#4B&)_H@<.!30L_'>FL@E!CY7_E!X(1 MKJ.0.N=-%AU4C28?TS?&.I(X\[%G$*U3PW._3Q4NW?TXS Y_%S?=I?IB MWOV:?%9NHQ'3\!JND_$/%QFY[KKO!F+;=,6NK.#"3I\5_I#810.LKRWRWP]B M@.&?:_DW4$L#!!0 ( .Z!!EFU!!4R(@, +4' 9 >&PO=V]R:W-H M965TA66IDN0\J19A$T6%8,BZ#R:)J%'4K.2Y2&*PD: MY^/@+!Y.!\[?.]QSK,W:&%PF,Z4>W.0J'P>1(X0",^L0&'V>\!R%<$!$X['% M#+HM7>#Z>(5^Z7.G7&;,X+D2/WANBW%P'$".ZOJS]CF<^#P,B6,_X>Z M\4T' 625L:IL@XE!R67S9<]M'=8"CJ,M 4D;D'C>S4:>Y06S;#+2J@;MO G- M#7RJ/IK(<>D.Y77#*9<2;@2AJK*ZJW-:/0$K1S"+,69MK )%M@ M#N%:25L8^"1SS-_&AT2IXY6L>$V3G8!?*MF'-.I!$B6#'7AIEV?J\=)M>3*N MX9Z)"N&"FTPH4VDT\/-L1EF3-'YMRKF!'&R&=.TR-$N6X3B@?C"HGS"8[._% MA]'I#L*#CO!@%_K:P?#=![,;YJNR"">POW>,\4J,]IK>EV MUS;T*XAYC:1UBYHDB& +A+DKZ),OJ)J#JC2I4C^@93.!8#"K-+<<31^^.6*RX?D,J M[TYYZ+./TM/__KW #,L9:DAC+^2T6R%Y8R?OO^+.*=T75ZV5P:OWWU99J2II MVR*\F?RYR_LK2556E6$R-Q\(UA1 0RHV#5Q!*EX3V2K')@/C-,:RK!EK*BN1D&*!H%S"HWZ1PT<:'VNJ"7; MB=N@>ZDGOP%02P,$% @ [H$&654YCH6H! >0H !D !X;"]W;W)K M&ULE5;;;MPV$/T58I,&+>#NU793QU[ S@5-T;1& MTB8/11\H:;0B0I$*2:VR?]\S0WF]3AVW?5F)W)DS9ZZ:\\&'C[$A2NIS:UV\ MF#0I=6>S62P;:G6<^HX<_JE]:'7",6QFL0ND*U%J[6PYGY_.6FW<9'TN=]=A M?>[[9(VCZZ!BW[8Z[*[(^N%BLIC<7+PUFR;QQ6Q]WND-O:/T1W<=<)KM42K3 MDHO&.Q6HOIA<+LZNCEE>!-X;&N+!NV)/"N\_\N%U=3&9,R&R5"9&T'ALZ3E9 MRT"@\6G$G.Q-LN+A^PWZ*_$=OA0ZTG-O/Y@J-1>3IQ-54:U[F][ZX2<:_3EA MO-+;*+]JR+(K")=]3+X=E<&@-2X_]>9':CE?'C^ MM]H[NQ*\U;\X>RW._G[@K/KSLHCPODQ_W>=WACV^'Y;[YBQVNJ2+"1HC4MC2 M9/WDT>)T_NP!TL=[TL31T^5B\4Q]'?M,O0J^50D- MJ)*7YY$:"*6W4XW>DK(>PDJ[2NEJJUU)4:'G8\*-<1M54!J(G.JSS%8'X_$> M#@P:J'1]B+UV26Q0:$6XPMS!PX%LG*H/I#;D*&AK=XH3 M "WE:^BG'O<8,Z"5L5.CQ=#@>UME-5/SA7%;BFR,13,# ]74B&>HPIXI@P-[ M-8QT"Q^X;FI.RG\GVR%;&G2& ZJ&0P@"7Q!DT6\.EQUPD M:?2I-UMM.6D'P):H8%-1&(,\&@LF?I18 M\QU76QQI*]UUUI0"*ORGZC5+&2[8C0[5T1X9-'L7"=$!=J"MMULN][%D.Z3' MQ.C#3JH7LSPUZKVVC8$6^""=IFR0690L_,*4S,G;!&*J/E?.J-#QQ>/E"<:^ MM>C)J?JM#V-M^2QT%ZE D<7;_&J4?>#^[2PZ;S&=S[\YXC2+FPA\@)S='662 M*!N6=J7IM%553US+V2L ]YP,^(X&W')FG/0!8AYRYEY026V!TVHAP_IDJGZ1 M.FAU17NVS(@Q9*CD>$CPV7OI4BYBR'BX69F(K"5Q^S(I? EH_R4X$K7#:7/+ MO-"6IP!24Q+JB%V5GCE, FO_(U,(Y.,?I\O;8+^^B2.@/0A_BZ?MQ5SO^HA\ MX;HU29C71/$[#IG_,D49>7IZ RQ=_7BZSZJ,*V84S6?5YN^GY/..SRM1R\Z# M5$>RS-C=]+X/S.Q@'6@I;&3IB:#;NY0W@_WM?J^ZS.O$K7A>RM[HL$$;HFMK MJ,ZG/YQ,T$:RZ.1#\ITL%X5/6%7DM<%N2($%\'_M$=WQP ;VV^;Z;U!+ P04 M " #N@099+6MS_JX" V!@ &0 'AL+W=OM/VS 0_U=.04(@=>310KN^I!:&QB1016'[,.V#FUP3B\3.;(>R M_WYG)X2RM9VT+_7K?H_SQ=?Q1JHGG2$:>"ERH2=>9DPY]'T=9U@P?29+%'2R MEJI@AI8J]76ID"4.5.1^% 07?L&X\*9CM[=0T[&L3,X%+A3HJBB8^C7'7&XF M7NB];MSS-#-VPY^.2Y;B$LUCN5"T\EN6A!,9+S'-+1#9^-IQ>*VF!V_-7]FN7.^6R M8AHO9?Z-)R:;> ,/$ERS*C?WFGO8 @R"/8"H 43.=RWD7%XQPZ9C)3>@;#2QV8E+U:')'!>V*$NCZ)03 MSDSO,49A8!;'LA*&BQ062@J:QTA7;_38-Z1B8_VX89S7C-$>Q@NXE<)D&CZ) M!)/W>)_!*,#R?7:Y'J'V/^KGH<9[Z1!"$,X/AI$83B"?RD,[;7=R6,[H_EV]"E82)A*M$PES3 B56)@M'U;#EWTW!T"ESK"A.8+1\=W8>@ MWX$EIE:-W)12.:J3!UGR&*)!<$H6BE)9"ZZD1C9A;)5CB[SB.LZEKE1=Z"M* MZT_'9.)O\8\="H]E@?# 7@C;Z/9[NW3?(M_IV=2"[LYZ^UMON4"5NHZEP=U8 M_:S;W;8ISNI>\!9>=]1;IE(N-.2X)FAPUC_W0-5=JEX86;K.L)*&^HR;9M38 M4=D .E]+JGVSL +M7\7T-U!+ P04 " #N@0997T9E7+X# ";" &0 M 'AL+W=O+,$6J)!77^_6[(V7'!MR@VQ=;/-V]>_>.1VJ\ M,W;K*D0/7VNEW22IO&]NT]05%=;"]4V#FMZLC:V%IZ7=I*ZQ*,H05*LTS[+K MM!92)]-QL"WM=&Q:KZ3&I077UK6P^SDJLYLD@^1@^"0WE6=#.ATW8H./Z#\W M2TNK](A2RAJUDT:#Q?4DF0UNYR/V#PZ_2]RYDV?@2E;&;'EQ7TZ2C FAPL(S M@J"_)UR@4@Q$-+YTF,DQ)0>>/A_0WX?:J9:5<+@PZ@]9^FJ2W"10XEJTRG\R MNU^QJR<0+(QRX1=VT??-VP2*UGE3=\'$H)8Z_HNOG0XG 3?9-P+R+B /O&.B MP/*=\&(ZMF8'EKT)C1]"J2&:R$G-37GTEMY*BO/3![L16OXCHD2ZA+EPTH%9 MP]*B0^WCFQ^71LE"HOMIG'I*R\%IT:68QQ3Y-U)C?>7@%UUB>1Z?$MTC MY_S >9Z_"/BAU7T89CW(L_SJ!;SA48-AP!M^CP8+HQW56L;5C!0Y$^)A#>^E M%KJ00L$C&9%VJ'?PUVSEO*4]]O>YN72,*G"0-Y[)/F$Q?OQI< M9WED(5Y''DRQ1!^\?\GZ608-T M@E7D"]1\1ELHX1S,H#!U328:T&(+C=B+E0H^'8'\IF/@3?2IC"K1!M+$PA C MX<%7"(4R#MF\:AV52>#/*(.W$85*H]1T$MM0J0,F9+$QUE,1/+DPRL%8& U_ MWB%N88_"]H'.K3.%H&EM0]EMLU$M!V, 98 %Z?DGW)-X5H?64*'WNN@'SI)D=^W*R5(**[FQ7FQ1L\H" M=K3GL']I:M.3"Z-&NPG7HJ,]W6H?[XZC]7CSSN*%\^P>K^V/PFXD[4B%:PK- M^F]H&PO=V]R:W-H965T/MJ7V1>'>\WWV2Q]E.R*^J -!D7U=SAFUA!?I3\RB1LD>4O*R!JU)P(F$SM^[\W M?"YAIXPUZ2)9"_&U(Q[RN>5T#D$%F>X0&/Z^P3U450>$;OQSP+1&DYVBN3ZB M_];'CK&LF8)[47TIJ_9#?L#=!BUBHM MZH,RTG7)AS_;'_)@*"3.*PK>0<'K_1X,]5[^PC1;S*38$=GM1K1NT8?::Z-S M)>^*LM(2I27JZ<6R54WQ'/?& MC9SW%WP-1E^#2^B+%9[$O*V B T9ZW4,X&&JUSF_+R._>Y-XCO^>_*S_!8YPG5=6@:3!HQ6I@H+Z!Q..&[(9()>1::580?8S.L^1&-W,AD MA#1)8H,1QS2.3A@^31#S1[7(GPU(UA_0DF>BAO\NS*6"!-3U3[)-@\"L3TK# MD_)@LI/4NU0-+(:1;^H;R0NI%SF&+/!9_HE M4)IZ1EA>&IKI\-.I&]&M%%%ZY37@105'*,WV)XT84C],#3JB?FSVI8LA!R<, MS+4;GKM=;6,:UB"W_&PO=V]R:W-H965T.Z=#%6-I9#PH)FIJXKKMPF4:C7R M>MY&\2CF!5J%GPP7? Y3P*?%@R;);U%R48$T0DFF83;RQKW!I&_MG<%7 2NS MM64 M&[A2Y3>18S'RSCV6PXS7)3ZJU2VL\XDM7J9*X[YLU=C&%#&K#:IJ[4QR)62S M\M?U/6PYG =[',*U0^AX-X$1$](698J:3@7Y M87+/]3,@3TM@4\AJ+5" 82=?K,9TACY2#&OI9VN\28,7[L$[8_=*8F'8C!/QL2FAC]W3'L0QJ8!<]@Y-%+,:"7X"7'1[VS MX/) !OTV@_XA]&1*#S.OJ6!J1IW0EL^TW'<1/@QY?'0>!M$E^]_KN%(:Q4_( MV9.D$5*Z[>:P:46VY&4-+%,&[7,3AI7*4*DD';V'.[F3# M5&RJAZ5 U,ZA2 MT"SJN7:)!GN)7-5:4PLP;@R@:=4?6!1WH[C_7G&QI3B)._^SJ;7V=62_M9$J4#/W=PT5)5:8C-<6FT[FL?-1/IMWLQU M*NM<2"HCS,@U./T8>TPWL[(14"W2C(H MJ+H1)7#PY[U5D3D\E&B"=C/*0SQS>"@$&B#0/%SS/< 6.&"&7\;CB=]D@#[*X/ M[)]L[IC+ABJX$^Q'GNILYHP?VE+\T]= C_P0@; "AU5T?9%7>4TWCJ11[(DTTLIF%3=6B45S. M35'66N)NCC@=SY-$5%PKO. $\F>Z8> 2CH_AZM&LU?74TWB,"?:2AG)14X8G M* ?DJ^ Z4^0C3R%]B_=07JLQ/&A!; MM:DJ\G.^45KBV_AU+-&:IW>J[)W MCCU>8_^E%0,BMJ2MTNIME8YI/L]Z>3$*_>B6_*_O/0HJ-B!)%+BM$PL&MF ' M!Q8NLM5[A[]ZX$1GHE*4I^J:G'J.DW? -225S/4K64J15@E"#CL?2-!SQWV_ MZPC=_AC?)95X'>1.%*7@P#N8T U&0<<:^V,R9SBQ*$^ X.PCJ:@V>ELQG".- MQ#:%H7_]UG@4FG8"_VVMCJZAZP^"KJ/O]J+^P7'L%7F=7B] [NQ$4\0>5;=] MZVV'YKR>%7_#ZXF+U['+N2(,M@CU;X9]A\AZBM6&%J6='!NA<0[998:#'Z0) MP/VM$/I@F /:OY+X#U!+ P04 " #N@0998\ >2?0" "$!P &0 'AL M+W=OW.3:6B1V9CL4_OWLI$W343HA[27VG>\^?Y\O/@]70CZI)8!& M+T7.U]#?RZDTEM>B M9*P KIC@2,)\Y%P$@TEHX^N 'PQ6JC-'5LE,B"=KW&0CQ[>$((=46P1JAF>X MA#RW0(;&[S6FTVYI$[OS#?IUK=UHF5$%ER)_9)E>CIS$01G,:97K.['Z"FL] MD<5+1:[J+UHUL00[**V4%L4ZV3 H&&]&^K(^ATY"XK^3@-<)N.;=;%2SO**: MCH=2K)"TT0;-3FJI=;8AQ[@MRKV69I69/#V^X<_ M9 ,E(NX^0F.'^@L!W4R M]+2!MT%>NH::-%#X':@>NA5<+Q7ZPC/(=O,]0ZOEAC?<)O@@X+>*GR'BNPC[ M.#R 1UJMI,8C_]#ZBJZ82G.A*@GHY\5,:6E^CE_[%#> X7Y >V$&JJ0IC!QS M(Q3(9W#&1Y^"GG]^@&[8T@T/H;\IS3Y^AQ&./B78)^?H?XU7D$(Q XE(X+9. M4R6HJ[1QF&J1NF1O\H]O.-)+42G*,W6"[NC*_,H:)*.Y&KR)OH>TDDR_HJD4 M695JU:Y\1L2->OT=NQ^A!:)HCV271 M1D1N3)*.A:,0/9KVI_ED<.4@V/;\QM"CK/CL3VG3M>KHTSR1( M&V#6YT+HC6$W:!_>\1]02P,$% @ [H$&66)0B"4W P (P@ !D !X M;"]W;W)K&ULK59-;]LX$/TK W51M( 1?+',Y[\X9#^+8PUN,MYS;9XA^9[O58T MXN4*OR M(S-L.5=R!\IZ$YL=M*FV:!+'A2W*G5&TR@EGEJLTE8TP&FKVQ#8E A,9;56J M&LR@Y&S#2VXX:GAW;Y?U^[EK**P%N^D^Q'47(G@A1 )?I3"%AD\BP^PYWB6Y MO>;@H/DZ.$OXI1$7$'H3"+P@.L,7]GL0MGSA"WSK+G4-*\I]97-GI89_5AMM M%)V:?T^EW#%&IQGM3;K4-4MQX=!5T:@>T%F^?>,GWM49O5&O-SK'_NJ:G=)] MGOGMFUG@A5?P?WT_8HK5!A6$_J0W4OFP+=_!0&4,VUH>X=_="C"%;#1EJ-_# M[XE?'@'N,&T4-T^P5C)K4G(]K/P!P23VH]$\G/A>"%^9HDV &UG54J 8(9)P M\$YF'KFH6BIF\&2Z?G"<_JP[3<^K;U\#I#6/:L7MIB)B]]ET5$EAB@XK<#3PO= N6<6<^M;8[.9^*2N<9ASM)5%443/Z\ MAEQL9H[O[ Q?LW6JC<&=3TNVA@7HA_).HN:V*$E6 %>9X$3":N9<^9?7(^-O M';YEL%$=F1@F2R$>C7*;S!S/) 0YQ-H@,!R>X ;RW !A&C\:3*==T@1VY1WZ M7Y8[F3;YC]T B+O2$#0! 0V[WHAF^5[IME\*L6&2..-:$:P5&TT)I=Q MLRD++7$VPS@]OY/B*;-_&#>89#P6!1#-MJ#(V3U;YJ#.IZ[&A8R[&S>@US5H M< 0T))\$UZDB'W@"23_>Q03;+(-=EM?!2<"/%1\2Z@U(X 6C$WBT94TM'CV" M=UOSO&=;\CY3<2Y4)8'\>[546F*=?#]$N48<'48T9^=2E2R&F8.'0X%\ F?^ MYI4?>N].Y#MJ\QV=0G^V2_OL01W*]#36FU=1X-%WY/\:[U,)0(JZ0, 42#NU MR+:')W8CU@'8.CAJP *AMDHZTG.4LUM.="HJQ7BBSLF';8E7!*Z&94\ %:Y@ M0)A&'R /P\60K" !R7*B--.5%O)G"_6:^ ,_"'LZI1<=/1A$'NWI=!*2!2)! M_[CM7/S0W\M1U,HC;V^GE)(OF)X<$(X7=Y>@'^R)CO>_I94BV",W\2=_7"&_.]Z( L]::CK$$YPBQ/)6EB\;[$9R$?0EIV"N)*9SCI[V-:\'YV_,/HO MW:C_TFU75G7A]#B%%\\XT1XG?S)^P:G1#]V*;J>/%2#7MELKY%]Q7;>TUMH^ M"*[J/KAWKU\3GYA<9UR1'%88Z@TG8X?(ND/7BA:E[8I+H;''6C'%1PU(XX#S M*R'T3C$+M,^D^2]02P,$% @ [H$&642Y;Y/P @ +@< !D !X;"]W M;W)K&ULO55M3]LP$/XKIS AD%"3)J6PTD:BO&A, M8D+ V(=I']SDVE@X=K$= O]^9R?-RBC5/DVJ&OM\]]QS]N/SN%;ZT12(%EY* M(!/U@9;CEB\(Z0YB.EVR!=VB_+V\TS<(.)>S02:_7%H M*8?S#+,6;]K@Q1_@#>%:25L8N) YYF_C0^+6$8Q7!*?Q5L"OE>Q!$AU ',6# M+7A)5W#B\9*/"F9[-R"Q9 MAI. +H9!_8Q!NKO3'T8G6P@/.L*#;>CI&=/ZEYJ9[M&>\0X9NR" G0K0YX/*]XJ$J3 M1O4C6B^(>J]NNG,SL6KI.^),6>JO?EC0@X;:.=#Z7)'Z MVXE+T#V1Z6]02P,$% @ [H$&65;K[.\:! #A, !D !X;"]W;W)K M&ULQ5AM;]LV$/XKA#8,+;!%+W9L)[,-.$Z+96A: MH\:Z <4^T-)9(D*1*DG;S9 ?7Y*292N0N290D2\VW^[A/8_NR /'.R[N9 :@ MT-><,CGQ,J6*2]^7<08YEF>\ *9GUESD6.FN2'U9",")-6[B1=Z^X&/),V4&?"GXP*GL 3U5[$0NN?7 M* G)@4G"&1*PGGBS\'(>#HV!7?&)P$X>M9&ALN+\SG1NDHD7&(^ 0JP,!-9_ M6Y@#I09)^_&E O7J/8WA<7N/_M:2UV166,*HCW_T! M%:%S@Q=S*NTOVE5K P_%&ZEX7AEK#W+"RG_\M1+BR" RP#%,O,)\ M4;$%;_K+3^$@^+U-EH[ &B+U:Y'Z%KUW0J0R]#X\"KV95FM)4D;6),9:BED< M\PU3A*5HP2F)"4CT^9V&0C<*O?^G;X,$WU+"W,*/9AC MO/A'#RD0#->W9=Q&VPG\U".I(["&!F%P*"&"%SJWJXT[4JDKM*9,1Y56Z R6 M!8C8J)."*:_XCH&0&2E0!C1!JWM4Z -/ZQ3K&,+LOE4.YP9/EJ-$&QW=!<'9 M:%A?!TV:T8%FY*3Y"=.,F*C7^=#(CU9&3JPG,^H(K=UG,5VJ,\Z)W(@T.E%OY?J<:4P$S?":+@HHR%!U1G1RNO MCFJOBM>/J.3"0RD7#EXJ&SJJW2J9?D0E&!Y*P=!=Q760#1V5>94?E2=(M%2IA$%-;:-#@;ZK 5 MY>-+V5&\L.\7*ZX4SVTS YR , OT_)ISM>^8#>HGL.DW4$L#!!0 ( .Z! M!EFA],/5) 4 )\@ 9 >&PO=V]R:W-H965T>)CEY*@ [9%E4L3BXX4L2)J63&(=?S>D1CMG M:7A^?6+_I7)>./,<,[*@Z5_)FN]FAF^ -=G$AY1_IL=?2>.04_*M:,JJO^#8 M8"T#K Z,TZPQ%BO(DKS^C%^;0)P9"!ZU 6H,D&Q@7S# C0&^=@:[,;"OG<%I M#"K7S=KW*G!AS./YM*!'4)1HP59>5-&OK$6\DKPLE"4OQ+>)L./SAP,3(XP! M1K8B_QPD>5U]918_@*4HS/4A)8!N0 M=-M#',^A=2'BO0?O M!!?XLJ,'%N=K-C6Y6&XYJ;EJEO90+PU=6!H&GVC.=PQ$^9JL%?;AN+T[8F^* M,+6Q0J=8/:!1PM\.^3W UD\ 6,5F1FBNS%2O!!C_N,/T+5^5H55)UFHDRS2 M1-9+@-TFP!YCGW^A/$Y!?DJ#*@LU@5L1E+\8+W/L^+XW-5_.PZM N2YT^ZAP MB/*P[_A]5*1 >9[;S=CSU&D]=49+[8\]*427R;>BH:QH1L!=2AE[KRP\1V?A MZ20+=9)%FLAZZ7#;=+A7%!Z5DJ)*1LWCG%6#8_E0*K\AR,:N5*/A$.1[@52B MT1 $H6U=*#ZO]=8;]?8QYT3$D(^XZ0WG18$CN3D$!0&2O!QBD ,#R4O%; $. MU$[ZK9/^?SA9/5?/1/R@D]-3QN-7=5OQ!RMPL24E6AR+AW\%30=>'%5=Z.DIQ:S?121;J)(LTD?7R *UN M!VJ]82?1&&O*@5:V4"M;I(NMGX8S(0#?NI]H&'H-RD<02X^^"N:XGMSM%##' MAY8E/?TJ&+:@K7[\(>K\1:/^?HH+,0(6--O37,@9M<>C'#=7GTZV4"M;I(NM MGXU.3<"WR FH54]H90NULD6ZV/IIZ#0%?+.H:!C.GT>QP[?E'C!$02NP;;D' M*&".-Y 5"ABR/0=?Z &=L("C&^4S9=&\TV#@'W#5SF"<^.:*U*HTM+)%NMCZ M*>K$!G2UB3\X*EQN3HI.ME K6Z2+K9^43A/!<5%TO02$0[GBV#:2N\4094,\ M:!8*Z6/YLHJ*%+# @9=Z12>1X+A&4O:*ZS81H\0WEZ5.ME K6Z2+K9^B3M+! M0%^OT*KMM+*%6MDB76S]=^:=O$.CNN6&7M$0]87^X'6E"A78D@8)52@;2>^> M(@7*0:ZE;A6HDU)H7$HM:+&GPEVUEZ.VMQ:>5K90*UNDBZV?A4[@(:2M&R"M M.D\K6ZB5+=+%UD]*I_/0J("YI1O@P5G"!^C9OMP.E#!HR?U <,.].2&H()A M5W[7:)X=N&:DV%8GW0RLZ"'G]1%:.]J>IG^LSI"E\0 @G47U6WM'7 M1_=BQ[%-<@92LA%36?>>:%Y%?1I>WW"ZKXY[GRGG-*LN=R1>DZ($B.\WE/+3 M33E!^S\)\W\!4$L#!!0 ( .Z!!EF=B^.YF0( ! ' 9 >&PO=V]R M:W-H965TAYOI7K$$D"3IXH+G'BE MUNLKW\>\A(KBN5R#,"=+J2JJS5:M?%PKH(4#5=R/@B#U*\J$EXU=[$YE8UEK MS@3<*8)U55'U^P:XW$Z\T-L%[MFJU#;@9^,U7<$<],/Z3IF=W[$4K *!3 JB M8#GQKL.K:6KS7<(/!EO<6Q/K9"'EH]U\+29>8 4!AUQ;!FH^&Y@"YY;(R/C5 MC9<%19A*_I,5NIQX'SQ2P)+67-_+[1=H_226+Y<GO1L"0'$I,#B:^SK,3+?HEI)S$=E/@@ MS!SG3B.7B*=$@.Z3F+ZJSUEXH*\G)3D0Y^\-G0K4RLUB--6IA6[F3Q?MQOVU MFW+^&PO=V]R M:W-H965T4T+% MR%A+F5V:IHC6D&)QP3*@ZLN2\11+M>0K4V0<<%R 4F(ZEA68*4ZH$0Z+=S,> M#EDN24)AQI'(TQ3SIRL@;#LR;./YQ6VR6DO]P@R'&5[!'.1]-N-J9=8L<9(" M%0FCB,-R9(SMRXEM:4 1\3V!K=AY1CJ5!6,/>G$=CPQ+*P("D=046/UM8 *$ M:":EXW=%:M1[:N#N\S/[IR)YEH$O(U M7\2(*'[1MHJU#!3E0K*T BL%:4++?_Q8&;$#L+TC *<"./\+<"N 6R1:*BO2 MFF*)PR%G6\1UM&+3#X4W!5IEDU!]C'/)U==$X60XCB*64RG4D420;/""P!FB MJGS.T5R53)P30&R)CH:=3D'BA'Q0\??S*3H]^8!.4$+1W9KE M-8#$VI9.K- MS*B2=%5*\PZZ4R]%AB,8&:H5!? - M&.'[=W9@?6Q*OR.R/3/TJ]6JG7JO2.2?PB[+!NFX26?/Z."-OW7/] :D-4 MSPKL9K%^+=9O%3N'*.>)?$(SSN(\:C:RE>*U1=01V5ZV09UM\.8=%71I1D=D M>V;T:C-Z[1W55*$KSD1C#?3^KC[''P0'-=H0Y0W\(PW5KX7V6X5^Q5P?R82E M&:-PI-E;*5Y[+!V1[64[J+,=O'F-#KHTHR.R/3-LZV5*L#JLTHIL]SYW!M;@ MH$J;HNS^X4UJ[LPV>K!49;A*U#D06"J8==%39<[+6:U<2)85X\Z"234\%8]K M-=\"UP'J^Y*I$ZT6>H*J)^;P#U!+ P04 " #N@09984](K70# "6#@ M&0 'AL+W=O_]6@3K.G<6R_/Z._*\5K,8]$PI)GW^E*;1?. MU$$K6)-=IC[SPWNH!84&+^69+'_1H;*-/0>E.ZEX7CMK!CEEU9/\K /1 /=0AJAZ 46C$K9=T219*YX H-_7J%A2AV6N]]O7A%KUZ^1J]1)2A+UN^DX2MY-Q5 MFHH!=--ZV[?5MOZ9;3_LV#4*O#?(]_R)Q7UYV?T64NV.2_>@Z^[J #11\)LH M^"5>\(LH/*%__M9+Z$Y!+O^UR:IP)G8A'^HOMF_KL!C% MP;0QZO";-/PF _B9&G!%V54A> K2RK"""5N;X]B+\0E%B]7,F_AVCF'#,1S M<4T9U0FX0AO.[;D0]C8/O59\*H86HUEPAF#4$(P&$*3MA&:@;!2CWNY^'$3! M"<>^5:!#?89DW)",+Y)\@'0GJ'I"]X*O=JFRAO BQ._FW4A@';731NUTI%(S M'5/R2& =R;-&\FR,4C/K'ZXH/,T2BU$8S>P'$'O')NB-4VQJG$X=\7U\FB>J'IRS[5@&.PS,DC[T47^Q;R4\KS@3)]U M.\-1&^E8:%W%QU:*@Y%R&E]LRK\M>R2TKNQCA\9#6O0O\QI;>F\XBTX/8]_* MQV*1*WTK*5^W^N((PACH M]37GZGE@KB;-533Y'U!+ P04 " #N@099S7.+D@$$ ,$@ &0 'AL M+W=OW S+^O'3()),8#%7V9R<>]Q^=<7_N83/9\XS)J;=5JKCW?9EN(2?RCA? ])LU%SE1^E9L?%D((*LJ*<_\, @2/R>4 M>;-)]>Q1S":\5!EE\"B0+/./D/']U,/>ZX,O=+-5YH$_FQ1D T^@OA6/ M0M_Y#H%A!!FD MRD 0_6\'<\@R@Z1Y_%.#>LV8)O'X^A7]4R5>BUD2"7.>_4U7:COU1AY:P9J4 MF?K"][]!+6A@\%*>R>HOVM>Q@8?24BJ>U\F:04[9X3]YK@MQE(#C,PEAG1!> MFA#5"5$E],"LDK4@BLPF@N^1,-$:S5Q4M:FRM1K*S#0^*:'?4IVG9@]IRDNF M)"K("UEF@ A;Z=JFHH05RBA9THPJ"A+]C"X.?;\ 16CV0>=\>UJ@]^\^H'>( M,O1URTNID^3$5YJZ(>"G-S F_WX TZ" M7VP2;P1V(CAJ!$9'Q%P"T! 9KJJQ3>(!(*@BS?>QFR2@))_[N6$4_ M" =#W$:=T(L;>K&3W@+6((2>$ $[8"78V!T0!D<#QPGND.O'# 9C.[5!0VW@ MI/:9R5(0EEHY#7KC15'%H8",,.M7X,CL\4;]Q0&SNI/0J^!FF\EF3( M; 945]+&;]SO^%[IG$/]QXT'!ZU!!4XI?YHVM3I&T*_MT6JM?<$2% ?VXN(C MT\3N!<25KBNYT!"MY+&E9W'275>VL,'P7'?@UK^PTRUF3Y"6@JH7I!ME5:;V M_=R-<:U]W0KM5'%K8#AZR[)/)LOJU]CI@E+6$[';%+N*K8+[CA?A MH+L!6*+" 8[/-&'KC-AMC7\0H9^@.<\+SH"=:4(GQM53_I G[WIR,@FX/#ONGR^A<"[8.CM^P<"X*+HBR\W+F M7CT1-T([5=H>"/#X!JUW(ZNO%?\?!X>P/3B$[H/#):U70QQWU:C3>.Y1KE7A M'_U4-]])]!ZXH4RB#-8:/K@;ZE4@#I\>#C>*%]6O]R57^K!976Z!K$"8 /U^ MS;EZO3$?!)H/0+-_ 5!+ P04 " #N@099<2Z$'%,$ "!$@ &0 'AL M+W=OIS>7.9+VH=,'8=;@B6U124#NWU>R'4JE>^<86.PYTG1NEB8T=Q[-3 M&F?6;)*/W?'9A.UE$F=PQY'8IRGEWV\A8<>IY5K/ ]_BS5;J 7LVV=$-+$$^ M[.ZX>K,KEG6<0B9BEB$.T=2Z<<<+EVB#'/%'#$=1>T8ZE!5CC_KE\WIJ.=HC M2""4FH*JGP/,(4DTD_+CGY+4JN;4AO7G9_9?\N!5,"LJ8,Z2/^.UW$XMWT)K MB.@^D=_8\5 'L&8__>!ZSL\F?2]) M%ER2;'$ALI-,]*M,]+O89P%$P#FL:P6)5I!!%$M31CK)WIN12Y(%!9F7D^E_ M:(?9-1DZ$_M05]H ZF.W ITH.*@4''0J>,\D3=#N;'$."#YU=FX M87]X"@H*T* &PD.W 5JT000[GCELKPK;ZPQ[H>HVE&KAU(KX"E&)Y!;00V_9 M0Q&L@2MIA*1R+QG_7E]CG$I +$+8_=$DD-?RV"5DU!#( '*QUQ#(:ZF(R; ! M6AA OD/, @TK@8:= KU- U/PG;SO+;)+D@4%F5_3R>G5ZJ<0\Q70B9A^):;? M*>92ZO7R6EGY[07A^XU%8\!XC0@"O[4<""&-*-N8OG,FR%$5Y*@SR*^J=/@5 MRL#8>D-T#K9WYOJ]G0-)1=M!#;'[SHO^T?GXKVTI!QT-U,3JMU-#2A# M.S6@SO=3M[9Y=CLW14$LPH2)/0>4KP0T9ZG*U%8?I Z RCW3[TP(=*^ZQR** M5 ,6Z"9)6$CS@Y)DN0W+()/H:_0JS5\W*R&Y.E[];136O60?NBA;<%&VQ:78 M3A./7Q*/7Z][%)ZD*='YN5:',_ZHSD:K!)" <,]C&9^I MQ>W\T2:$.N7;]9 M 9VNOEM8PY3D3)=T7PX/;N>.N.@21A&(:5]%FCH84-@;-85HHTRMH(TB[G#0 MB-"N':E3X)O\+D.HC.\S61R:JM'JON0FOR5HC-^ZX[EK& _T_4I^A'^A+RYG MOE"^B3.!$HC45$YOJ'+!B_N.XD6R77Z@7S$I69H_;H&J78L&J.\18_+Y14]0 MW3K-_@502P,$% @ [H$&6;9V8ZJT @ &@D !D !X;"]W;W)K&ULQ59=3]LP%/TK5H8FD#:2)J7=6!H)VL&8-@G1P1ZF M/9CDMK%P[& [+?S[7;LAM"+MF!1I+XT_[CF]Y]SK./%2JCN= QCR4'"A1UYN M3'GL^SK-H:#Z4)8@<&3X'+Y4\+5VR>&[O@)W%)YS %*ISY#4O&"A":24$4 MS$;>2>]X/+3Q+N"&P5*OC8E5"2MM)%%#<8,"B963_I0^[ &Z/6W ,(:$+X6$-6 R E=9>9D3:BA2:SD MDB@;C6QVX+QQ:%3#A*WBU"C<98@SR1D35*2,45$"HR\ED;AKY!1LXH4_6&G)%VBOT)&,KX 7)=3R=D?^^ [!$FR(]<5AKI M=.P;S-]FX:=UKJ>K7,,MN7ZMQ"&)@GG82V -ZK$N:PLC#$ZA!+HZ(MO0 M&C5:(\<>;6N3YXJ?4H[E!C)U+YES):O2FO#93U*5/'9%M^-1O?.K_I2=T[@Y+:@=P7[$%Y?8\M*E>40T1TV>1SOS?*YG6V([L?]:CH[(-F0.&IF#_]FV M@RY]ZHALPZ=AX].PN[8=OJIM7T:UM:V_=G/9KX;O5,T9.L]AAKC@<(C=HU8W M\6IB9.DNLUMI\&ITPQP_7D#9 -R?26F>)O9^;#Z'DC]02P,$% @ [H$& M6?=BQIK(! .Q\ !D !X;"]W;W)K&ULM9EK M;]LV%(;_"J$50PMDT<66'6>V@22Z+$.S!4G3?2CZ@9&.;:&2Z)&TG0#[\:,N M42Q;86WT](LMT7R?0_&\)BERO&'\FU@ 2/*4I;F8& LIE^>F*:(%9%2"FX2^8+6128T_&2SN$>Y,/REJL[LZ'$20:Y2%A..,PFQH5]'MK] M0E#6^)S 1FQ=D^)1'AG[5MQYI$*N&+I/TDL%Q/CS" QS.@JE7=L\P?4#^06O(BEHOPDF[JN M99!H)23+:K%J09;DU3=]JCMB2Z XW0*G%CB'"GJUH+"_J$1W%K@ M'AIA4 L&APJ&M6!8)JOJW3(U'I5T.N9L0WA16]&*BS*_I5IE),D+*]Y+KGY- ME$Y.[R"E$F)R2[E\)I\XS04M32+(;^0BCI/BFJ;D.J]L7]CGO0>2)ND'5>/A MWB/OWWT@[TB2DT\+MA(TC\78E*II10 SJIMQ637#>:,9-KEAN5P(XNO8)<2Q[T/4\>OF?JUS)K4+N M]#ODWN'R7E=O_%CTX,>BAWJY!]%+U^W*6ZGH-1;OE;S>L18G7SZJJN1:0B:^ M=GFVXO:[N<4D<2Z6-(*)H68! 7P-QO377^R!]7M7PC%A'B;,QX0%F+ 0"=:R M3;^Q35]'G_XM%\#)'420K.EC"B>$SJ0JN4C5]$WS"(@:$>0RRXW:<,=ZZ8*-BAAQ7)C/1VIU@#.VZIZDS_8& M4,>U=J>Y*VVH8Y./"?,Q80$F+$2"M9(_:I(_.FS2YVKH(&JH*%P@"( M6*Y5Q+,M)UBGEKUC!&W88XV "?,Q80$F+$2"M8Q@6Z_['9;6"K=<+?R2)4U) MO"JM$%>K#YC-H-P6(['R2.<.AA[U&&/Y6E3[>T:[J';)9A1K3KVFN M-F: &C/$HK5=\+I?:>LW+ _8V=(3CLXK)LU#I?GV_N:ANY_^_4J#W4HA5KNJ MK)I;1W49\'EY"BM(5+R/5D<:36ESTGM1GF_NE%_9YY[=4>[;YT%UCON*KXZ5 M;RB?)^JM)X69"F6=#M6?@U5%"_SQB3+S=% M@.:\?/H_4$L#!!0 ( .Z!!EGFTQJR#P, &40 - >&PON'K9U#8ND>W7./[LY1R*31:TZOEY3JH*VX:+)PJ77],8J:Q9)6 MI#F3-14&*:2JB#93549-K2C)&W"J>#0:#)*H(DR$TXE859>5;H*%7 F=A7%O M"MSM2YZ%P^1]&#BZFO/VYDOKB3>#N1^^.C@:WIQ>']A,+G(:1E_3\ M":1G YS78!AULD]MEQ\;(N=X;-VB;NO322'%?@; 8'A)18,[PK-P1CB;*P9> M!:D87SOS" P+R:4*M$F]"30$2W/OX*&;054ZGHH)J6QL%\%]SKOE!\!F!@(9 MY[W 4>@,TTE-M*9*7)J)76R-#Z"@&]^L:Z.P5&0]')V'6P=[,T'F4N54]6&& MX<8TG7!:@!S%RB7HA\:0=W0T;@)\.^R.>X=VO19M$'-[J3^O#*[$78.+4:O%"U8:^=MTC=TQ]-)% MGK\&DF=%; SB;L_ [G/%\&S28KQC73'2S) MD[GY#;7';];GM" KKF]Z, NWXV\T9ZLJ[5==02*Z5=OQ5]C>,.E_&)A83.2T MI?FLFZIR;H>!&9BHW04.A\BEO?P(YN,P/P(8%@=3@/DX+RS._[2?,;H?AV': MQEYDC/J,41_GY4-F]H7%\?NDYO+O-$WC.$FPC,YF7@4S+&]) F\_&Z8-/+ X M$.G/&!5P'H'XOOC M0$_Y?>(8JHIIPYY@'$E3#(%>]/=HDB#92>#EKP_VE,1QFOH1P/P*XAA#X&G$ M$4P!:,"0.+;GX,%Y%&W.J6C[Q\+T-U!+ P04 " #N@099EXJ[', 3 M @ "P %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!5J(/ MV!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]ISI%" MKM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0 MT^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 ( .Z!!EE( MH?D2A@, '(7 / >&PO=V]R:V)O;VLN>&ULQ9A;;]HP%(#_BI6G31J# M)+VK5*) -Z265@7U=3+.H5A-;&2;WG[]3DSIG)4>[<7C*?$ESA9AI_<">JU+9;K)P;GG2;ENQ@(K;[WH)"EOFVE3<8='0L(J MJ60E7Z'H)IV$V85^^JF-?-7*\7(BC"[+;I*N&^[ ."D^5$]JR"F?65_C^.R6 M(T@W.>C@@'-IK/,]_/@<&1\!.Z]+*Z#WA0+ MY[W+WK@_9 %D1D!F.X&<3/%P-1P'D#D!F>\0\E<60.X1D'N[A,P#R'T"1 7\MK<'BMR=N'PC]8@=T*Q@/W"11HFLE/=Y6_(7_V+KU<&%,"LH6"E#3,HI M:62I8'Y3WQ17+UZ."T/H"C#5>&Y\?BDEE#2V471525=WLGX.!690F,R $LTU MDE)"22,;Y4(JCD"\Q-S&.N.[-^ HD:2137);5^)7M^0&DR]GN++"ZBO##$ICZ211?+!=N<;V]T8:"0W*263-+)- M*-^Q+],0DQ)+&MDL@?0F[])#OKK&?@US;LHO662_?.:_-] 0D])-%EDW?VMP MZSR2/R^114/ZL+%V,LHV663;?.Y#/Z,A)N6;;!>^V?K.*?%DD<5#Q\OP/RNC M[)-%M@\9+UN-OW_*/EED^WP2+P=8)\OF2Z?LDT6VSZ[RP*MQ-H?23_R_]; V;X1+**?WDD?5#A,T6+O80DY)0'EE"V\-FB_6Y M,2\RW S(R3VTR!+:).PW/F&?!@D[LO:*$).24.XEU-[L\18PQS!7C/$6%NL% M+\6-8?5A_1>ZMU^G@_-56?:Q[EI=:EYLMHPWV]UGOP%02P,$% @ [H$& M68S?7ZUN 0 W10 !H !X;"]?'+UIF_=JVKKKV+[DW=NE15WO'B=&9T?O?W/Q*XHKKG][/+OQK;^C\'ZIQMNKK+6J^B< M#:7UJ=+W>K[M]'2AU3A91:=+JH;3A90.'<00Q.&## 29\$%K"%J'#]I T"9\ M4 )!2?B@+01MPP?M(&@7/F@/0?OP012CC+& I 76 K0FY)H$>$T(-@D0FY!L M$F V(=HD0&U"MDF VX1PDP"Y">DF 783XDT"]&;4FP7HS:@W"]";%S_; O1F MU)L%Z,VH-PO0FU%O%J WH]XL0&]&O5F WHQZLP"]&?5F 7H;U-L(T-N@WD: MW@;U-@+T-HO#$@%Z&]3;O%-OYQ^U=7//&UL4$L! A0#% @ [H$&68%5O(GP!0 S1\ !@ M ("!#@@ 'AL+W=OW 8 ',@ 8 " @30. !X;"]W;W)K M&PO=V]R:W-H965T&UL4$L! M A0#% @ [H$&69N/7G+V!0 I28 !@ ("![AH 'AL M+W=OP% "M&0 & @('M M(P >&PO=V]R:W-H965T&UL4$L! A0#% @ [H$&64V. M[A6R P 6 @ !@ ("!#RH 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0#% @ [H$&675T+!N; @ :@8 !D M ("!JC4 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ [H$&6?,8LR,S P 5 D !D ("!'C\ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M[H$&654YCH6H! >0H !D ("!-DH 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ [H$&66/ 'DGT @ A < !D M ("!4U\ 'AL+W=O&PO=V]R:W-H M965TQE !X;"]W;W)K&UL4$L! M A0#% @ [H$&642Y;Y/P @ +@< !D ("!5FD 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ [H$& M69V+X[F9 @ $ < !D ("!*78 'AL+W=O >&PO=V]R:W-H965T&UL4$L! A0#% @ [H$&6&PO=V]R:W-H965T&UL4$L! A0#% @ [H$&6?=BQIK(! .Q\ !D M ("!A8L 'AL+W=O&PO4 !X;"]W;W)K8F]O:RYX;6Q02P$"% ,4 " #N@099 MC-]?K6X! #=% &@ @ %:F >&PO7W)E;',O=V]R:V)O M;VLN>&UL+G)E;'-02P$"% ,4 " #N@099!E="=X\! !P%0 $P M @ $ F@ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 *@ J %T+ ( # FP ! end XML 46 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 47 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 49 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.2.u1 html 91 154 1 false 25 0 false 4 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS Sheet http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets CONDENSED CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME Sheet http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME Statements 3 false false R4.htm 00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 4 false false R5.htm 00305 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) Sheet http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityParenthetical CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) Statements 5 false false R6.htm 00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 10101 - Disclosure - Organization and basis of presentation Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentation Organization and basis of presentation Notes 7 false false R8.htm 10201 - Disclosure - Business segment information Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformation Business segment information Notes 8 false false R9.htm 10301 - Disclosure - Marketable securities Sheet http://www.compx.com/role/DisclosureMarketableSecurities Marketable securities Notes 9 false false R10.htm 10401 - Disclosure - Accounts receivable, net Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNet Accounts receivable, net Notes 10 false false R11.htm 10501 - Disclosure - Inventories, net Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNet Inventories, net Notes 11 false false R12.htm 10601 - Disclosure - Accounts payable and accrued liabilities Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilities Accounts payable and accrued liabilities Notes 12 false false R13.htm 10701 - Disclosure - Provision for income taxes Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxes Provision for income taxes Notes 13 false false R14.htm 10801 - Disclosure - Commitments and contingencies Sheet http://www.compx.com/role/DisclosureCommitmentsAndContingencies Commitments and contingencies Notes 14 false false R15.htm 10901 - Disclosure - Financial Instruments Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstruments Financial Instruments Notes 15 false false R16.htm 11001 - Disclosure - Related party transactions Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactions Related party transactions Notes 16 false false R17.htm 11101 - Disclosure - Recent Accounting Pronouncements Sheet http://www.compx.com/role/DisclosureRecentAccountingPronouncements Recent Accounting Pronouncements Notes 17 false false R18.htm 20102 - Disclosure - Organization and Basis of Presentation (Policies) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationPolicies Organization and Basis of Presentation (Policies) Policies http://www.compx.com/role/DisclosureRecentAccountingPronouncements 18 false false R19.htm 30203 - Disclosure - Business segment information (Tables) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationTables Business segment information (Tables) Tables http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformation 19 false false R20.htm 30303 - Disclosure - Marketable Securities (Tables) Sheet http://www.compx.com/role/DisclosureMarketableSecuritiesTables Marketable Securities (Tables) Tables 20 false false R21.htm 30403 - Disclosure - Accounts receivable, net (Tables) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetTables Accounts receivable, net (Tables) Tables http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNet 21 false false R22.htm 30503 - Disclosure - Inventories, net (Tables) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetTables Inventories, net (Tables) Tables http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNet 22 false false R23.htm 30603 - Disclosure - Accounts payable and accrued liabilities (Tables) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables Accounts payable and accrued liabilities (Tables) Tables http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilities 23 false false R24.htm 30703 - Disclosure - Provision for income taxes (Tables) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesTables Provision for income taxes (Tables) Tables http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxes 24 false false R25.htm 30903 - Disclosure - Financial Instruments (Tables) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsTables Financial Instruments (Tables) Tables http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstruments 25 false false R26.htm 40101 - Disclosure - Organization and Basis of Presentation - Additional Information (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail Organization and Basis of Presentation - Additional Information (Detail) Details 26 false false R27.htm 40202 - Disclosure - Business segment information - Schedule of Business Segment Information (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail Business segment information - Schedule of Business Segment Information (Detail) Details 27 false false R28.htm 40301 - Disclosure - Marketable Securities (Details) Sheet http://www.compx.com/role/DisclosureMarketableSecuritiesDetails Marketable Securities (Details) Details http://www.compx.com/role/DisclosureMarketableSecuritiesTables 28 false false R29.htm 40401 - Disclosure - Accounts receivable, net - Schedule of Accounts receivable, net (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail Accounts receivable, net - Schedule of Accounts receivable, net (Detail) Details 29 false false R30.htm 40501 - Disclosure - Inventories, Net - Inventories, Net (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail Inventories, Net - Inventories, Net (Detail) Details 30 false false R31.htm 40601 - Disclosure - Accounts payable and accrued liabilities - Accounts payable and accrued liabilities (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail Accounts payable and accrued liabilities - Accounts payable and accrued liabilities (Detail) Details 31 false false R32.htm 40701 - Disclosure - Provision for income taxes - Provision for income taxes (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail Provision for income taxes - Provision for income taxes (Detail) Details 32 false false R33.htm 40901 - Disclosure - Financial Instruments - Carrying Value and Estimated Fair Value of Financial Instruments (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail Financial Instruments - Carrying Value and Estimated Fair Value of Financial Instruments (Detail) Details 33 false false R34.htm 41001 - Disclosure - Related Party Transactions - Additional Information (Detail) Sheet http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail Related Party Transactions - Additional Information (Detail) Details 34 false false All Reports Book All Reports cix-20240630.xsd cix-20240630_cal.xml cix-20240630_def.xml cix-20240630_lab.xml cix-20240630_pre.xml cix-20240630x10q.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 52 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cix-20240630x10q.htm": { "nsprefix": "cix", "nsuri": "http://www.compx.com/20240630", "dts": { "schema": { "local": [ "cix-20240630.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" ] }, "calculationLink": { "local": [ "cix-20240630_cal.xml" ] }, "definitionLink": { "local": [ "cix-20240630_def.xml" ] }, "labelLink": { "local": [ "cix-20240630_lab.xml" ] }, "presentationLink": { "local": [ "cix-20240630_pre.xml" ] }, "inline": { "local": [ "cix-20240630x10q.htm" ] } }, "keyStandard": 146, "keyCustom": 8, "axisStandard": 13, "axisCustom": 0, "memberStandard": 13, "memberCustom": 8, "hidden": { "total": 15, "http://fasb.org/us-gaap/2023": 10, "http://xbrl.sec.gov/dei/2023": 5 }, "contextCount": 91, "entityCount": 1, "segmentCount": 25, "elementCount": 258, "unitCount": 4, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 382, "http://xbrl.sec.gov/dei/2023": 30 }, "report": { "R1": { "role": "http://www.compx.com/20210930/taxonomy/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_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "longName": "00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome", "longName": "00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_oUW2tTcmSEWkNhZyAiY7BQ", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_oUW2tTcmSEWkNhZyAiY7BQ", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "unique": true } }, "R4": { "role": "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity", "longName": "00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "As_Of_12_31_2022_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_vSNrwVtmJkeEfxNuqaVG2Q", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2022_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_vSNrwVtmJkeEfxNuqaVG2Q", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityParenthetical", "longName": "00305 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_oUW2tTcmSEWkNhZyAiY7BQ", "name": "us-gaap:CommonStockDividendsPerShareCashPaid", "unitRef": "Unit_Divide_USD_shares_CAvmDtpgcEGvI-G6GJap9A", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_oUW2tTcmSEWkNhZyAiY7BQ", "name": "us-gaap:CommonStockDividendsPerShareCashPaid", "unitRef": "Unit_Divide_USD_shares_CAvmDtpgcEGvI-G6GJap9A", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows", "longName": "00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentation", "longName": "10101 - Disclosure - Organization and basis of presentation", "shortName": "Organization and basis of presentation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R8": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformation", "longName": "10201 - Disclosure - Business segment information", "shortName": "Business segment information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.compx.com/role/DisclosureMarketableSecurities", "longName": "10301 - Disclosure - Marketable securities", "shortName": "Marketable securities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNet", "longName": "10401 - Disclosure - Accounts receivable, net", "shortName": "Accounts receivable, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:FinancingReceivablesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:FinancingReceivablesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNet", "longName": "10501 - Disclosure - Inventories, net", "shortName": "Inventories, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilities", "longName": "10601 - Disclosure - Accounts payable and accrued liabilities", "shortName": "Accounts payable and accrued liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxes", "longName": "10701 - Disclosure - Provision for income taxes", "shortName": "Provision for income taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.compx.com/role/DisclosureCommitmentsAndContingencies", "longName": "10801 - Disclosure - Commitments and contingencies", "shortName": "Commitments and contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstruments", "longName": "10901 - Disclosure - Financial Instruments", "shortName": "Financial Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactions", "longName": "11001 - Disclosure - Related party transactions", "shortName": "Related party transactions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.compx.com/role/DisclosureRecentAccountingPronouncements", "longName": "11101 - Disclosure - Recent Accounting Pronouncements", "shortName": "Recent Accounting Pronouncements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationPolicies", "longName": "20102 - Disclosure - Organization and Basis of Presentation (Policies)", "shortName": "Organization and Basis of Presentation (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "18", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "cix:OrganizationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "cix:OrganizationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationTables", "longName": "30203 - Disclosure - Business segment information (Tables)", "shortName": "Business segment information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "19", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.compx.com/role/DisclosureMarketableSecuritiesTables", "longName": "30303 - Disclosure - Marketable Securities (Tables)", "shortName": "Marketable Securities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "20", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:MarketableSecuritiesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:MarketableSecuritiesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetTables", "longName": "30403 - Disclosure - Accounts receivable, net (Tables)", "shortName": "Accounts receivable, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "21", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FinancingReceivablesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FinancingReceivablesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetTables", "longName": "30503 - Disclosure - Inventories, net (Tables)", "shortName": "Inventories, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables", "longName": "30603 - Disclosure - Accounts payable and accrued liabilities (Tables)", "shortName": "Accounts payable and accrued liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesTables", "longName": "30703 - Disclosure - Provision for income taxes (Tables)", "shortName": "Provision for income taxes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsTables", "longName": "30903 - Disclosure - Financial Instruments (Tables)", "shortName": "Financial Instruments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail", "longName": "40101 - Disclosure - Organization and Basis of Presentation - Additional Information (Detail)", "shortName": "Organization and Basis of Presentation - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "26", "firstAnchor": { "contextRef": "Duration_7_1_2024_To_8_6_2024_us-gaap_DividendsAxis_cix_S2024Q3DividendsMember_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_B8tFnezxTUCiqJ1qcEJ9eg", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "Unit_Divide_USD_shares_CAvmDtpgcEGvI-G6GJap9A", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2024_To_8_6_2024_us-gaap_DividendsAxis_cix_S2024Q3DividendsMember_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_B8tFnezxTUCiqJ1qcEJ9eg", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "Unit_Divide_USD_shares_CAvmDtpgcEGvI-G6GJap9A", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "longName": "40202 - Disclosure - Business segment information - Schedule of Business Segment Information (Detail)", "shortName": "Business segment information - Schedule of Business Segment Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "27", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_oUW2tTcmSEWkNhZyAiY7BQ", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_us-gaap_StatementBusinessSegmentsAxis_cix_SecurityProductsMember_jPflwbrrEEC-IalBOuCmmQ", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "unique": true } }, "R28": { "role": "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails", "longName": "40301 - Disclosure - Marketable Securities (Details)", "shortName": "Marketable Securities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "28", "firstAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_FinancialInstrumentAxis_cix_CurrentAssetsMember_aPg-XMT9jEa-9tqtlLn_CQ", "name": "us-gaap:MarketableSecurities", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:MarketableSecuritiesTextBlock", "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_FinancialInstrumentAxis_cix_CurrentAssetsMember_aPg-XMT9jEa-9tqtlLn_CQ", "name": "us-gaap:MarketableSecurities", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:MarketableSecuritiesTextBlock", "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail", "longName": "40401 - Disclosure - Accounts receivable, net - Schedule of Accounts receivable, net (Detail)", "shortName": "Accounts receivable, net - Schedule of Accounts receivable, net (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "29", "firstAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:FinancingReceivablesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:FinancingReceivablesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail", "longName": "40501 - Disclosure - Inventories, Net - Inventories, Net (Detail)", "shortName": "Inventories, Net - Inventories, Net (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "30", "firstAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail", "longName": "40601 - Disclosure - Accounts payable and accrued liabilities - Accounts payable and accrued liabilities (Detail)", "shortName": "Accounts payable and accrued liabilities - Accounts payable and accrued liabilities (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail", "longName": "40701 - Disclosure - Provision for income taxes - Provision for income taxes (Detail)", "shortName": "Provision for income taxes - Provision for income taxes (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_8fMubB5i1EyrT6ZYhm0F0Q", "name": "us-gaap:DeferredIncomeTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_oUW2tTcmSEWkNhZyAiY7BQ", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "unique": true } }, "R33": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail", "longName": "40901 - Disclosure - Financial Instruments - Carrying Value and Estimated Fair Value of Financial Instruments (Detail)", "shortName": "Financial Instruments - Carrying Value and Estimated Fair Value of Financial Instruments (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_CarryingReportedAmountFairValueDisclosureMember_xmI0QS1wZ0W7UfeXXegOAw", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_CarryingReportedAmountFairValueDisclosureMember_xmI0QS1wZ0W7UfeXXegOAw", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "longName": "41001 - Disclosure - Related Party Transactions - Additional Information (Detail)", "shortName": "Related Party Transactions - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "As_Of_6_30_2024_yXyasX-kqEOStZfUjPVXTg", "name": "us-gaap:OtherReceivableAfterAllowanceForCreditLossNoncurrent", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_8_31_2016_us-gaap_LongtermDebtTypeAxis_us-gaap_UnsecuredDebtMember_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cix_ValhiIncMember_NBf33AyuBUiGtuu6SQIhCA", "name": "cix:LineOfCreditFacilityMaximumLendingCapacity", "unitRef": "Unit_Standard_USD_LHSUSx1YWU-3482nOt0bug", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cix-20240630x10q.htm", "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsNotesAndLoansReceivableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsNotesAndLoansReceivableLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Notes And Loans Receivable [Line Items]", "terseLabel": "Accounts Notes And Loans Receivable [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 }, "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Payable And Accrued Liabilities Current", "terseLabel": "Accounts payable and accrued liabilities", "totalLabel": "Total 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.compx.com/20210930/taxonomy/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" ] }, "cix_AccountsPayableAndAccruedLiabilitiesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.compx.com/20240630", "localname": "AccountsPayableAndAccruedLiabilitiesLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "documentation": "Accounts payable and accrued liabilities.", "label": "Accounts Payable And Accrued Liabilities [Line Items]", "terseLabel": "Accounts Payable And Accrued Liabilities [Line Items]" } } }, "auth_ref": [] }, "cix_AccountsPayableAndAccruedLiabilitiesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.compx.com/20240630", "localname": "AccountsPayableAndAccruedLiabilitiesTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "documentation": "Accounts payable and accrued liabilities.", "label": "Accounts Payable And Accrued Liabilities [Table]", "terseLabel": "Accounts Payable And Accrued Liabilities [Table]" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Payable Current", "terseLabel": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r14", "r565" ] }, "us-gaap_AccountsPayableCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrentAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Payable Current [Abstract]", "terseLabel": "Accounts payable:" } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableGrossCurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, before Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, gross", "documentation": "Amount, before 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": [ "r111", "r203", "r204", "r548" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable Net Current", "terseLabel": "Accounts receivable, net", "totalLabel": "Total accounts receivable, net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r203", "r204" ] }, "us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccrualForTaxesOtherThanIncomeTaxesCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Accrual For Taxes Other Than Income Taxes Current", "terseLabel": "Taxes other than on income", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for real and property taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17", "r39", "r549" ] }, "cix_AccruedCustomerToolingCost": { "xbrltype": "monetaryItemType", "nsuri": "http://www.compx.com/20240630", "localname": "AccruedCustomerToolingCost", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for customer tooling.", "label": "Accrued Customer Tooling Cost", "terseLabel": "Customer tooling" } } }, "auth_ref": [] }, "us-gaap_AccruedInsuranceCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedInsuranceCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Accrued Insurance, Current", "terseLabel": "Insurance", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17" ] }, "us-gaap_AccruedLiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrentAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities Current [Abstract]", "terseLabel": "Accrued liabilities:" } } }, "auth_ref": [] }, "us-gaap_AccruedProfessionalFeesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedProfessionalFeesCurrent", "crdr": "credit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Accrued Professional Fees, Current", "terseLabel": "Professional services", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated Depreciation Depletion And Amortization Property Plant And Equipment", "terseLabel": "Less accumulated depreciation", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r37", "r104", "r431" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "AOCI, Debt Securities, Available-for-Sale, Adjustment, after Tax", "terseLabel": "Accumulated other comprehensive loss - unrealized loss on marketable securities", "documentation": "Amount, after tax, of accumulated unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r597" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "AOCI Attributable to Parent [Member]", "terseLabel": "Accumulated other comprehensive loss", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r2", "r8", "r24", "r330", "r333", "r362", "r451", "r452", "r598", "r599", "r600", "r604", "r605", "r606" ] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid In Capital Common Stock", "terseLabel": "Additional paid-in capital", "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": [ "r54" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Additional Paid In Capital [Member]", "terseLabel": "Additional paid-in capital", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r298", "r299", "r300", "r472", "r604", "r605", "r606", "r622", "r630" ] }, "cix_AdjustmentsToAdditionalPaidInCapitalStockIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://www.compx.com/20240630", "localname": "AdjustmentsToAdditionalPaidInCapitalStockIssued", "crdr": "credit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "documentation": "Adjustments to additional paid in capital stock issued.", "label": "Adjustments To Additional Paid In Capital Stock Issued", "terseLabel": "Issuance of common stock" } } }, "auth_ref": [] }, "cix_AdvancesFromCustomers": { "xbrltype": "monetaryItemType", "nsuri": "http://www.compx.com/20240630", "localname": "AdvancesFromCustomers", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "documentation": "The amount of advances from customer classified as current.", "label": "Advances from customers", "terseLabel": "Advances from customers" } } }, "auth_ref": [] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss, Current", "negatedLabel": "Allowance for doubtful accounts", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r112", "r205", "r246" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "terseLabel": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "cix_AssetNoncurrentOtherThanPropertyPlantEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.compx.com/20240630", "localname": "AssetNoncurrentOtherThanPropertyPlantEquipmentAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "documentation": "Asset noncurrent other than property plant equipment.", "label": "Asset Noncurrent Other Than Property Plant Equipment [Abstract]", "terseLabel": "Other assets:" } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r82", "r107", "r131", "r173", "r188", "r194", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r323", "r327", "r349", "r424", "r503", "r565", "r576", "r619", "r620", "r625" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "ASSETS" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r100", "r114", "r131", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r323", "r327", "r349", "r565", "r619", "r620", "r625" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets Current [Abstract]", "terseLabel": "Current assets:" } } }, "auth_ref": [] }, "us-gaap_AssetsNoncurrentOtherThanNoncurrentInvestmentsAndPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsNoncurrentOtherThanNoncurrentInvestmentsAndPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets Noncurrent Other Than Noncurrent Investments And Property Plant And Equipment", "totalLabel": "Total other assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets, excluding property, plant, and equipment and other property and investments, that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer. Alternate captions include Total Deferred Charges and Other Assets." } } }, "auth_ref": [] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Basis Of Accounting Policy Policy [Text Block]", "terseLabel": "Basis of Presentation", "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": [] }, "cix_BasisOfPresentationAndSignificantAccountingPoliciesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.compx.com/20240630", "localname": "BasisOfPresentationAndSignificantAccountingPoliciesLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Basis of presentation and significant accounting policies.", "label": "Basis Of Presentation And Significant Accounting Policies [Line Items]", "terseLabel": "Basis Of Presentation And Significant Accounting Policies [Line Items]" } } }, "auth_ref": [] }, "cix_BasisOfPresentationAndSignificantAccountingPoliciesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.compx.com/20240630", "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Basis of presentation and significant accounting policies.", "label": "Basis Of Presentation And Significant Accounting Policies [Table]", "terseLabel": "Basis Of Presentation And Significant Accounting Policies [Table]" } } }, "auth_ref": [] }, "us-gaap_BuildingsAndImprovementsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingsAndImprovementsGross", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Buildings And Improvements Gross", "terseLabel": "Buildings", "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing." } } }, "auth_ref": [ "r74" ] }, "us-gaap_CarryingReportedAmountFairValueDisclosureMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CarryingReportedAmountFairValueDisclosureMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Reported Value Measurement [Member]", "terseLabel": "Carrying Amount", "documentation": "Measured as reported on the statement of financial position (balance sheet)." } } }, "auth_ref": [ "r41", "r42" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash And Cash Equivalents At Carrying Value", "terseLabel": "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": [ "r30", "r102", "r546" ] }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Cash And Cash Equivalents Fair Value Disclosure", "terseLabel": "Cash and cash equivalents", "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations", "periodEndLabel": "Balance at end of period", "periodStartLabel": "Balance at beginning of period", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, 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": [ "r30", "r69", "r130" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect", "totalLabel": "Operating, investing and financing activities", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r1", "r69" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffectAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffectAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash And Cash Equivalents Period Increase Decrease [Abstract]", "terseLabel": "Cash and cash equivalents - net change from:" } } }, "auth_ref": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "terseLabel": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfStockDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Class Of Stock [Domain]", "terseLabel": "Class of Stock", "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock." } } }, "auth_ref": [ "r94", "r108", "r109", "r110", "r131", "r159", "r160", "r162", "r164", "r167", "r168", "r241", "r271", "r274", "r275", "r276", "r282", "r283", "r287", "r288", "r290", "r291", "r293", "r349", "r462", "r463", "r464", "r465", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r491", "r512", "r534", "r540", "r541", "r542", "r543", "r544", "r583", "r601", "r607" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments And Contingencies", "terseLabel": "Commitments and contingencies (Note 8)", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r21", "r45", "r426", "r490" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments And Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.compx.com/role/DisclosureCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "Commitments And Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and Contingencies", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r75", "r269", "r270", "r545", "r618" ] }, "us-gaap_CommonClassAMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonClassAMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Class A [Member]", "terseLabel": "Class A Common Stock", "documentation": "Classification of common stock representing ownership interest in a corporation." } } }, "auth_ref": [ "r630" ] }, "us-gaap_CommonStockDividendsPerShareCashPaid": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareCashPaid", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock Dividends Per Share Cash Paid", "terseLabel": "Cash dividends per share", "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r76" ] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Common Stock Dividends Per Share Declared", "verboseLabel": "Common stock dividends (in dollars per share)", "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r76" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r566", "r567", "r568", "r570", "r571", "r572", "r573", "r604", "r605", "r622", "r628", "r630" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock Value", "terseLabel": "Class A common stock", "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": [ "r53", "r428", "r565" ] }, "cix_CompXInternationalIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "CompXInternationalIncMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "CompX International Inc.", "label": "Comp X International Inc [Member]", "terseLabel": "CompX International Inc" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r25", "r120", "r122", "r126", "r420", "r437" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]", "terseLabel": "Consolidation Items" } } }, "auth_ref": [ "r137", "r175", "r186", "r187", "r188", "r189", "r190", "r192", "r196", "r271", "r272", "r273", "r274", "r276", "r277", "r279", "r281", "r282", "r619", "r620" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]", "terseLabel": "Consolidation Items" } } }, "auth_ref": [ "r137", "r175", "r186", "r187", "r188", "r189", "r190", "r192", "r196", "r271", "r272", "r273", "r274", "r276", "r277", "r279", "r281", "r282", "r619", "r620" ] }, "us-gaap_ConstructionInProgressGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConstructionInProgressGross", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Construction In Progress Gross", "terseLabel": "Construction in progress", "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service." } } }, "auth_ref": [ "r74" ] }, "cix_ContranCorporationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "ContranCorporationMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Contran Corporation.", "label": "Contran Corporation [Member]", "terseLabel": "Contran Corporation" } } }, "auth_ref": [] }, "us-gaap_CorporateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Corporate Segment [Member]", "terseLabel": "Corporate", "documentation": "Component of an entity that usually provides financial, operational and administrative support and is considered an operating segment. Excludes intersegment elimination and reconciling items." } } }, "auth_ref": [ "r608" ] }, "us-gaap_CorporateNonSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateNonSegmentMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Corporate Non Segment [Member]", "terseLabel": "Corporate", "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment." } } }, "auth_ref": [ "r10", "r187", "r188", "r189", "r190", "r196", "r609" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Cost Of Goods And Services Sold", "terseLabel": "Cost of sales", "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": [ "r66", "r403" ] }, "srt_CounterpartyNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CounterpartyNameAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Axis]" } } }, "auth_ref": [ "r135", "r136", "r284", "r289", "r370", "r553", "r555" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "cix_CurrentAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "CurrentAssetsMember", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to current assets.", "label": "Current Assets [Member]", "terseLabel": "Current assets" } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense Benefit", "terseLabel": "Deferred income taxes", "verboseLabel": "Deferred income tax benefit", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r5", "r78", "r89", "r316", "r317", "r603" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesNoncurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Liabilities Net", "terseLabel": "Deferred income taxes", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r302", "r303", "r425" ] }, "us-gaap_DeferredRevenueCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Deferred Revenue, Current", "terseLabel": "Deferred revenue", "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r595" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation Depletion And Amortization", "terseLabel": "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", "r178" ] }, "us-gaap_DisaggregationOfRevenueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Disaggregation Of Revenue [Abstract]", "terseLabel": "Net sales:" } } }, "auth_ref": [] }, "cix_DisclosureOtherComprehensiveIncomeLossTaxEffectsAllocationToComponentOfOtherComprehensiveIncomeLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.compx.com/20240630", "localname": "DisclosureOtherComprehensiveIncomeLossTaxEffectsAllocationToComponentOfOtherComprehensiveIncomeLossAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "documentation": "Disclosure Other Comprehensive Income Loss Tax Effects Allocated To Component Of Other Comprehensive Income Loss.", "label": "Disclosure Other Comprehensive Income Loss Tax Effects Allocation to Component Of Other Comprehensive Income Loss [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DividendPayableDateToBePaidDayMonthAndYear": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendPayableDateToBePaidDayMonthAndYear", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Date to be Paid", "terseLabel": "Dividend Payable Date", "documentation": "Date the declared dividend will be paid, in YYYY-MM-DD format." } } }, "auth_ref": [ "r32" ] }, "us-gaap_DividendsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Dividends [Axis]", "documentation": "Information about distribution of earnings to shareholders including, but not limited to, cash, property or capital stock." } } }, "auth_ref": [] }, "us-gaap_DividendsCommonStockCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsCommonStockCash", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Dividends Common Stock Cash", "negatedLabel": "Cash dividends", "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash." } } }, "auth_ref": [ "r76" ] }, "us-gaap_DividendsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Dividends [Domain]", "documentation": "Distributions of earnings to shareholders including but not limited to cash, property or capital stock." } } }, "auth_ref": [] }, "us-gaap_DividendsPayableDateDeclaredDayMonthAndYear": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPayableDateDeclaredDayMonthAndYear", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Date Declared", "terseLabel": "Dividend declared date", "documentation": "Date the dividend to be paid was declared, in YYYY-MM-DD format." } } }, "auth_ref": [ "r32" ] }, "us-gaap_DividendsPayableDateOfRecordDayMonthAndYear": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPayableDateOfRecordDayMonthAndYear", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Date of Record", "terseLabel": "Dividend record date", "documentation": "Date the holder must own the stock to be entitled to the dividend, in YYYY-MM-DD format." } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "verboseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "terseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "terseLabel": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "verboseLabel": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r580" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "terseLabel": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r581" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "terseLabel": "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_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "terseLabel": "Net income per basic share", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r127", "r147", "r148", "r149", "r150", "r151", "r157", "r159", "r162", "r163", "r164", "r165", "r339", "r340", "r421", "r438", "r556" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "terseLabel": "Net income per diluted share", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r127", "r147", "r148", "r149", "r150", "r151", "r159", "r162", "r163", "r164", "r165", "r339", "r340", "r421", "r438", "r556" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate", "terseLabel": "U.S. federal statutory income tax rate", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r132", "r305", "r318" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Employee Related Liabilities Current", "terseLabel": "Employee benefits", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17" ] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address Address Line1", "terseLabel": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine2": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine2", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address Address Line2", "terseLabel": "Entity Address, Address Line Two", "documentation": "Address Line 2 such as Street or Suite number" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address City Or Town", "terseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address Postal Zip Code", "terseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address State Or Province", "terseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "terseLabel": "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": [ "r578" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock Shares Outstanding", "verboseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "terseLabel": "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_EntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Entity [Domain]", "terseLabel": "Entity", "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "terseLabel": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r578" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "terseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "terseLabel": "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": [ "r578" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation State Country Code", "terseLabel": "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.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "verboseLabel": "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": [ "r582" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "terseLabel": "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": [ "r578" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "terseLabel": "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": [ "r578" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "terseLabel": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r578" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "terseLabel": "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": [ "r578" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "terseLabel": "Equity Component", "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", "r96", "r123", "r124", "r125", "r138", "r139", "r140", "r144", "r152", "r154", "r166", "r242", "r245", "r294", "r298", "r299", "r300", "r309", "r310", "r329", "r330", "r331", "r332", "r333", "r335", "r338", "r353", "r354", "r355", "r356", "r357", "r358", "r362", "r451", "r452", "r453", "r472", "r534" ] }, "us-gaap_EstimateOfFairValueFairValueDisclosureMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EstimateOfFairValueFairValueDisclosureMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Estimate of Fair Value Measurement [Member]", "terseLabel": "Fair Value", "documentation": "Measured as an estimate of fair value." } } }, "auth_ref": [ "r285", "r348", "r561", "r562" ] }, "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Fair Value Balance Sheet Grouping Financial Statement Captions [Line Items]", "terseLabel": "Fair Value Balance Sheet Grouping Financial Statement Captions [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_FairValueByBalanceSheetGroupingTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByBalanceSheetGroupingTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Fair Value By Balance Sheet Grouping [Table]", "terseLabel": "Fair Value By Balance Sheet Grouping [Table]", "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities." } } }, "auth_ref": [ "r40", "r41", "r42" ] }, "us-gaap_FairValueByBalanceSheetGroupingTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByBalanceSheetGroupingTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "label": "Fair Value By Balance Sheet Grouping [Text Block]", "terseLabel": "Carrying Value and Estimated Fair Value of Financial Instruments", "documentation": "Tabular disclosure of the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities." } } }, "auth_ref": [ "r40", "r41" ] }, "us-gaap_FairValueByMeasurementBasisAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByMeasurementBasisAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Fair Value By Measurement Basis [Axis]", "documentation": "Information by measurement basis." } } }, "auth_ref": [ "r11", "r40", "r285", "r561", "r562" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstruments" ], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Text Block]", "terseLabel": "Financial instruments", "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information." } } }, "auth_ref": [ "r344" ] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r286", "r292", "r336", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r436", "r559", "r585", "r586", "r587", "r588", "r589", "r590", "r591", "r611", "r612", "r613", "r614" ] }, "us-gaap_FinancingReceivablesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancingReceivablesTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNet" ], "lang": { "en-us": { "role": { "label": "Financing Receivables [Text Block]", "terseLabel": "Accounts receivable, net", "documentation": "The entire disclosure for financing receivable." } } }, "auth_ref": [ "r202", "r206", "r207", "r208", "r558" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsNoncurrentOtherThanNoncurrentInvestmentsAndPropertyPlantAndEquipment", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "terseLabel": "Goodwill", "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r105", "r256", "r419", "r560", "r565", "r616", "r617" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Gross Profit", "totalLabel": "Gross margin", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r65", "r131", "r173", "r187", "r193", "r196", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r349", "r557", "r619" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Income Loss From Continuing Operations Before Income Taxes Extraordinary Items 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": [ "r0", "r62", "r84", "r173", "r187", "r193", "r196", "r422", "r433", "r557" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "terseLabel": "Provision for 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": [ "r132", "r301", "r306", "r307", "r308", "r314", "r319", "r320", "r321", "r467" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 }, "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense Benefit", "terseLabel": "Provision for income taxes", "totalLabel": "Total provision for income taxes", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r88", "r92", "r153", "r154", "r181", "r304", "r315", "r439" ] }, "us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense Benefit Continuing Operations [Abstract]", "terseLabel": "Income tax expense:" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate", "terseLabel": "Expected tax expense, at the U.S. federal statutory income tax rate of 21%", "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r305" ] }, "us-gaap_IncomeTaxReconciliationOtherAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationOtherAdjustments", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Income Tax Reconciliation Other Adjustments", "terseLabel": "Other, net", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments." } } }, "auth_ref": [ "r621" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Income Tax Reconciliation State And Local Income Taxes", "terseLabel": "State income taxes", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit)." } } }, "auth_ref": [ "r621" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid Net", "terseLabel": "Cash paid for income taxes", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r31" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Accounts Payable And Accrued Liabilities", "terseLabel": "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.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Accounts Receivable", "negatedLabel": "Accounts receivable, net", "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_IncreaseDecreaseInDueToAffiliates": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDueToAffiliates", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Due To Affiliates", "terseLabel": "Accounts with affiliates", "documentation": "The increase (decrease) in obligations owed to an entity that is controlling, under the control of, or within the same control group as the reporting entity by means of direct or indirect ownership." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Inventories", "negatedLabel": "Inventories, net", "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.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Operating Capital [Abstract]", "terseLabel": "Change in assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Prepaid Deferred Expense And Other Assets", "negatedLabel": "Prepaids and other, net", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r4" ] }, "us-gaap_InterestAndDividendIncomeSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestAndDividendIncomeSecurities", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Interest Income, Operating", "terseLabel": "Interest income", "documentation": "Amount of operating dividend and interest income, including amortization and accretion of premiums and discounts, on securities." } } }, "auth_ref": [ "r629", "r631" ] }, "us-gaap_InventoryCurrentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryCurrentTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Inventory Current [Table]", "terseLabel": "Inventory Current [Table]", "documentation": "Disclosure of information about inventory expected to be sold or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/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": [ "r255" ] }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoodsNetOfReserves", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Inventory Finished Goods Net Of Reserves", "terseLabel": "Total finished goods", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale." } } }, "auth_ref": [ "r73", "r550" ] }, "us-gaap_InventoryLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Inventory [Line Items]", "terseLabel": "Inventory [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 }, "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory Net", "terseLabel": "Inventories, net", "totalLabel": "Total 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": [ "r113", "r547", "r565" ] }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterialsNetOfReserves", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Inventory Raw Materials Net Of Reserves", "terseLabel": "Total raw materials", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process." } } }, "auth_ref": [ "r73", "r552" ] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Inventory Work In Process Net Of Reserves", "terseLabel": "Total work-in-process", "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing." } } }, "auth_ref": [ "r73", "r551" ] }, "us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsDebtAndEquitySecuritiesAbstract", "lang": { "en-us": { "role": { "label": "Investments, Debt and Equity Securities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecurities" ], "lang": { "en-us": { "role": { "label": "Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]", "terseLabel": "Marketable securities", "documentation": "The entire disclosure for investments in certain debt and equity securities." } } }, "auth_ref": [ "r81", "r86", "r87", "r95", "r209", "r210", "r345", "r346" ] }, "us-gaap_Land": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Land", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Land", "terseLabel": "Land", "documentation": "Amount before accumulated depletion of real estate held for productive use, excluding land held for sale." } } }, "auth_ref": [ "r592" ] }, "dei_LegalEntityAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LegalEntityAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Legal Entity [Axis]", "terseLabel": "Legal Entity", "documentation": "The set of legal entities associated with a report." } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities And Stockholders Equity", "totalLabel": "Total liabilities and stockholders' equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r58", "r83", "r430", "r565", "r602", "r615", "r623" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities And Stockholders Equity [Abstract]", "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r18", "r101", "r131", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r324", "r327", "r328", "r349", "r565", "r619", "r625", "r626" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities Current [Abstract]", "terseLabel": "Current liabilities:" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Noncurrent", "totalLabel": "Total noncurrent liabilities", "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r12", "r48", "r49", "r50", "r51", "r131", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r324", "r327", "r328", "r349", "r619", "r625", "r626" ] }, "us-gaap_LiabilitiesNoncurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesNoncurrentAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities Noncurrent [Abstract]", "terseLabel": "Noncurrent liabilities:" } } }, "auth_ref": [] }, "cix_LineOfCreditFacilityMaximumLendingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.compx.com/20240630", "localname": "LineOfCreditFacilityMaximumLendingCapacity", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Maximum lending capacity under the terms noted per the related party credit facility.", "label": "Line Of Credit Facility Maximum Lending Capacity", "terseLabel": "Maximum loan amount" } } }, "auth_ref": [] }, "us-gaap_LoansReceivableBasisSpreadOnVariableRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansReceivableBasisSpreadOnVariableRate", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Loans Receivable Basis Spread On Variable Rate", "terseLabel": "Interest rate on loans repayment", "documentation": "Percentage added to reference rate used to compute variable rate on loan receivable." } } }, "auth_ref": [] }, "cix_LoansReceivablePrincipalDueOnDemandEffectiveDate": { "xbrltype": "dateItemType", "nsuri": "http://www.compx.com/20240630", "localname": "LoansReceivablePrincipalDueOnDemandEffectiveDate", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Loans receivable principal due on demand effective date.", "label": "Loans Receivable Principal Due On Demand Effective Date", "terseLabel": "Principal due on demand effective date" } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "terseLabel": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Longterm Debt Type [Axis]", "terseLabel": "Long-term Debt, Type", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r19" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Longterm Debt Type [Domain]", "terseLabel": "Long-term Debt, Type", "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": [ "r19", "r38" ] }, "us-gaap_MachineryAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MachineryAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Machinery And Equipment Gross", "terseLabel": "Equipment", "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment." } } }, "auth_ref": [ "r74" ] }, "cix_MarineComponentsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "MarineComponentsMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "documentation": "Marine components.", "label": "Marine Components", "terseLabel": "Marine Components" } } }, "auth_ref": [] }, "us-gaap_MarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecurities", "crdr": "debit", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Marketable Securities", "terseLabel": "Market value", "documentation": "Amount of investment in marketable security." } } }, "auth_ref": [ "r46", "r594" ] }, "cix_MarketableSecuritiesAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://www.compx.com/20240630", "localname": "MarketableSecuritiesAmortizedCost", "crdr": "debit", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amortized cost of investments in marketable Securities.", "label": "Marketable Securities, Amortized Cost", "terseLabel": "Amortized cost basis" } } }, "auth_ref": [] }, "us-gaap_MarketableSecuritiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecuritiesCurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Marketable Securities, Current", "terseLabel": "Marketable securities", "documentation": "Amount of investment in marketable security, classified as current." } } }, "auth_ref": [ "r594" ] }, "us-gaap_MarketableSecuritiesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecuritiesLineItems", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Marketable Securities [Line Items]", "terseLabel": "Marketable securities", "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_MarketableSecuritiesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecuritiesTable", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Marketable Securities [Table]", "documentation": "Disclosure of information about investment in marketable security." } } }, "auth_ref": [] }, "us-gaap_MarketableSecuritiesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecuritiesTextBlock", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesTables" ], "lang": { "en-us": { "role": { "label": "Marketable Securities [Table Text Block]", "terseLabel": "Schedule of marketable securities", "documentation": "Tabular disclosure of marketable securities. This may consist of investments in certain debt and equity securities, short-term investments and other assets." } } }, "auth_ref": [] }, "us-gaap_MarketableSecuritiesUnrealizedGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecuritiesUnrealizedGainLoss", "crdr": "credit", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Marketable Securities, Unrealized Gain (Loss)", "terseLabel": "Unrealized loss, net", "documentation": "Amount of unrealized gain (loss) on investment in marketable security." } } }, "auth_ref": [ "r64" ] }, "us-gaap_MinorityInterestOwnershipPercentageByParent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterestOwnershipPercentageByParent", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Minority Interest Ownership Percentage By Parent", "terseLabel": "Percentage of ownership held by parent company", "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage." } } }, "auth_ref": [] }, "cix_NLIndustriesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "NLIndustriesMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "NL Industries.", "label": "N L Industries [Member]", "terseLabel": "NL Industries" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided By Used In Financing Activities [Abstract]", "terseLabel": "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.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided By Used In Investing Activities", "totalLabel": "Net cash provided by (used in) investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r129" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided By Used In Investing Activities [Abstract]", "terseLabel": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r69", "r70", "r71" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided By Used In Operating Activities [Abstract]", "terseLabel": "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.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Net Income Loss", "terseLabel": "Net income", "totalLabel": "Net income", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r63", "r71", "r85", "r99", "r119", "r121", "r125", "r131", "r143", "r147", "r148", "r149", "r150", "r153", "r154", "r161", "r173", "r187", "r193", "r196", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r340", "r349", "r435", "r511", "r532", "r533", "r557", "r574", "r619" ] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract", "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements And Changes In Accounting Principles [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "presentation": [ "http://www.compx.com/role/DisclosureRecentAccountingPronouncements" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements And Changes In Accounting Principles [Text Block]", "terseLabel": "Recent Accounting Pronouncements", "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle." } } }, "auth_ref": [ "r90", "r91", "r93", "r97", "r141", "r142", "r145", "r146", "r155", "r156", "r243", "r244", "r311", "r312", "r313", "r334", "r337", "r341", "r342", "r343", "r350", "r351", "r352", "r360", "r361", "r363", "r404", "r405", "r406", "r454", "r455", "r456", "r457", "r458" ] }, "cix_NoncashInterestIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://www.compx.com/20240630", "localname": "NoncashInterestIncome", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of interest income included in net income that result in no cash inflow (outflow).", "label": "Noncash Interest Income", "negatedLabel": "Noncash interest income" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Operating Income Loss", "terseLabel": "Total operating income", "totalLabel": "Operating income", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r173", "r187", "r193", "r196", "r557" ] }, "us-gaap_OperatingIncomeLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLossAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Operating Income Loss [Abstract]", "terseLabel": "Operating income (loss):" } } }, "auth_ref": [] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Operating Segments [Member]", "terseLabel": "Operating Segments", "documentation": "Identifies 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": [ "r186", "r187", "r188", "r189", "r190", "r196" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Organization Consolidation And Presentation Of Financial Statements [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentation" ], "lang": { "en-us": { "role": { "label": "Organization Consolidation And Presentation Of Financial Statements Disclosure [Text Block]", "terseLabel": "Organization and basis of presentation", "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure." } } }, "auth_ref": [ "r47", "r79", "r459", "r460" ] }, "cix_OrganizationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.compx.com/20240630", "localname": "OrganizationPolicyTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "documentation": "Organization.", "label": "Organization Policy [Text Block]", "terseLabel": "Organization" } } }, "auth_ref": [] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail" ], "lang": { "en-us": { "role": { "label": "Other Accrued Liabilities Current", "terseLabel": "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": [ "r17" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsNoncurrentOtherThanNoncurrentInvestmentsAndPropertyPlantAndEquipment", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets Noncurrent", "terseLabel": "Other noncurrent assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r106" ] }, "us-gaap_OtherComprehensiveIncomeAvailableForSaleSecuritiesTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeAvailableForSaleSecuritiesTaxAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment, Tax [Abstract]", "terseLabel": "Other comprehensive income (loss), marketable securities adjustment:" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeAvailableforsaleSecuritiesTaxPortionAttributableToParent", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Available-for-Sale Securities, Tax, Portion Attributable to Parent", "terseLabel": "Other comprehensive loss - marketable securities", "documentation": "Amount, after reclassification adjustment, of tax expense (benefit) for gain (loss) in value of unsold investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), attributable to parent." } } }, "auth_ref": [ "r3", "r7", "r80" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "terseLabel": "Unrealized income (loss) arising during year, net", "documentation": "Amount, after tax and adjustment, of unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) and unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r115", "r116", "r117" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesTax", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment, Tax", "negatedLabel": "Other comprehensive income (loss)", "documentation": "Amount, after adjustment, of tax expense (benefit) for unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) and tax expense (benefit) for unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r115", "r116", "r118" ] }, "us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossTaxPortionAttributableToParent1", "crdr": "debit", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesProvisionForIncomeTaxesDetail" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent", "terseLabel": "Total", "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r3", "r7", "r80" ] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Liabilities, Current", "terseLabel": "Income taxes payable to affiliate", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r17", "r565" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesNoncurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities and Other Liabilities", "terseLabel": "Other", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r20" ] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNoncashIncomeExpense", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Other Noncash Income Expense", "negatedLabel": "Other, net", "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other." } } }, "auth_ref": [ "r71" ] }, "us-gaap_OtherReceivableAfterAllowanceForCreditLossNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherReceivableAfterAllowanceForCreditLossNoncurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsNoncurrentOtherThanNoncurrentInvestmentsAndPropertyPlantAndEquipment", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Receivable, after Allowance for Credit Loss, Noncurrent", "terseLabel": "Note receivable from affiliate", "documentation": "Amount, after allowance for credit loss, of receivable classified as other and noncurrent." } } }, "auth_ref": [ "r593" ] }, "srt_OwnershipAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "OwnershipAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Ownership [Axis]", "terseLabel": "Ownership" } } }, "auth_ref": [] }, "srt_OwnershipDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "OwnershipDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Ownership [Domain]", "terseLabel": "Ownership" } } }, "auth_ref": [] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "label": "Payables And Accruals [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PaymentsForAdvanceToAffiliate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForAdvanceToAffiliate", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments For Advance To Affiliate", "negatedLabel": "Advances", "documentation": "The cash outflow from advancing money to an affiliate (an entity that is related but not strictly controlled by the entity)." } } }, "auth_ref": [ "r28" ] }, "us-gaap_PaymentsForProceedsFromInvestmentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForProceedsFromInvestmentsAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments For Proceeds From Investments [Abstract]", "terseLabel": "Note receivable from affiliate:" } } }, "auth_ref": [] }, "us-gaap_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividendsCommonStock", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments Of Dividends Common Stock", "terseLabel": "Dividends paid", "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity." } } }, "auth_ref": [ "r29" ] }, "us-gaap_PaymentsToAcquireMarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireMarketableSecurities", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Marketable Securities", "negatedLabel": "Purchases", "documentation": "Amount of cash outflow for purchase of marketable security." } } }, "auth_ref": [ "r610" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r68" ] }, "us-gaap_PortionAtFairValueFairValueDisclosureMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PortionAtFairValueFairValueDisclosureMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureFinancialInstrumentsCarryingValueAndEstimatedFairValueOfFinancialInstrumentsDetail" ], "lang": { "en-us": { "role": { "label": "Portion At Fair Value Fair Value Disclosure [Member]", "documentation": "Measured at fair value for financial reporting purposes." } } }, "auth_ref": [ "r347" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Preferred Stock Value", "terseLabel": "Preferred stock", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r52", "r427", "r565" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Prepaid Expense And Other Assets Current", "terseLabel": "Prepaid expenses and other", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r596" ] }, "us-gaap_ProceedsFromSaleMaturityAndCollectionOfShorttermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleMaturityAndCollectionOfShorttermInvestments", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale, Maturity and Collection of Short-Term Investments", "terseLabel": "Proceeds from maturities", "documentation": "The cash inflow from sales, maturities, prepayments, calls and collections of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term." } } }, "auth_ref": [ "r26" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProfitLoss", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Profit Loss", "terseLabel": "Net income", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r99", "r119", "r121", "r128", "r131", "r143", "r153", "r154", "r173", "r187", "r193", "r196", "r241", "r271", "r272", "r274", "r275", "r276", "r278", "r280", "r282", "r283", "r322", "r325", "r326", "r340", "r349", "r422", "r434", "r471", "r511", "r532", "r533", "r557", "r563", "r564", "r575", "r600", "r619" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property Plant And Equipment Gross", "totalLabel": "Gross property and equipment", "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": [ "r74", "r103", "r432" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property Plant And Equipment Net", "totalLabel": "Net property 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", "r423", "r432", "r565" ] }, "us-gaap_PropertyPlantAndEquipmentNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNetAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property Plant And Equipment Net [Abstract]", "terseLabel": "Property and equipment:" } } }, "auth_ref": [] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "Receivables [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Related Party [Domain]", "terseLabel": "Related Party", "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests." } } }, "auth_ref": [ "r297", "r367", "r368", "r485", "r486", "r487", "r488", "r489", "r508", "r510", "r539" ] }, "us-gaap_RelatedPartyMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Related Party [Member]", "documentation": "Party related to reporting entity. Includes, but is not limited to, affiliate, entity for which investment is accounted for by equity method, trust for benefit of employees, and principal owner, management, and members of immediate family." } } }, "auth_ref": [ "r133", "r134", "r367", "r368", "r369", "r370", "r485", "r486", "r487", "r488", "r489", "r508", "r510", "r539" ] }, "us-gaap_RelatedPartyTransactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction [Line Items]", "terseLabel": "Related Party Transaction [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r515", "r516", "r519" ] }, "us-gaap_RelatedPartyTransactionsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsAbstract", "lang": { "en-us": { "role": { "label": "Related Party Transactions [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Related Party Transactions By Related Party [Axis]", "terseLabel": "Related Party", "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests." } } }, "auth_ref": [ "r297", "r367", "r368", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r485", "r486", "r487", "r488", "r489", "r508", "r510", "r539", "r624" ] }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsDisclosureTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/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": [ "r364", "r365", "r366", "r368", "r371", "r468", "r469", "r470", "r517", "r518", "r519", "r537", "r538" ] }, "us-gaap_RepaymentOfNotesReceivableFromRelatedParties": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentOfNotesReceivableFromRelatedParties", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Repayment Of Notes Receivable From Related Parties", "terseLabel": "Collections", "documentation": "The cash inflow from a loan, supported by a promissory note, granted to related parties where one party can exercise control or significant influence over another party; including affiliates, owners or officers and their immediate families, pension trusts, and so forth." } } }, "auth_ref": [ "r27" ] }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RepurchaseAgreementCounterpartyNameDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Domain]" } } }, "auth_ref": [ "r135", "r136", "r284", "r289", "r370", "r554", "r555" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings Accumulated Deficit", "terseLabel": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r55", "r76", "r429", "r454", "r458", "r466", "r492", "r565" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "terseLabel": "Retained earnings", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r96", "r138", "r139", "r140", "r144", "r152", "r154", "r242", "r245", "r298", "r299", "r300", "r309", "r310", "r329", "r331", "r332", "r335", "r338", "r451", "r453", "r472", "r630" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Revenue From Contract With Customer Excluding Assessed Tax", "terseLabel": "Net sales", "verboseLabel": "Total net sales", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r174", "r175", "r186", "r191", "r192", "r198", "r200", "r201", "r295", "r296", "r403" ] }, "cix_S2024Q3DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "S2024Q3DividendsMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "S 2024 Q3 Dividends.", "label": "S 2024 Q3 Dividends [Member]", "terseLabel": "Special dividend 2024" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail" ], "lang": { "en-us": { "role": { "label": "Schedule Of Accounts Notes Loans And Financing Receivable [Table]", "terseLabel": "Schedule Of Accounts Notes Loans And Financing Receivable [Table]", "documentation": "Schedule itemizing specific types of trade accounts and notes receivable, and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r23" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Accounts Notes Loans And Financing Receivable [Text Block]", "terseLabel": "Schedule of Accounts Receivable, net", "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r23" ] }, "us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Accounts Payable And Accrued Liabilities Table [Text Block]", "terseLabel": "Accounts payable and accrued liabilities", "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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureProvisionForIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Effective Income Tax Rate Reconciliation Table [Text Block]", "terseLabel": "Provision for Income Taxes", "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": [ "r77" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetTables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Inventory Current Table [Text Block]", "terseLabel": "Inventories, net", "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": [ "r13", "r59", "r60", "r61" ] }, "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Schedule Of Related Party Transactions By Related Party [Table]", "terseLabel": "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": [ "r43", "r44", "r515", "r516", "r519" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Schedule Of Segment Reporting Information By Segment [Table]", "terseLabel": "Schedule Of Segment Reporting Information By Segment [Table]", "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r33", "r34", "r35", "r36" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationTables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Segment Reporting Information By Segment [Text Block]", "terseLabel": "Schedule of Business Segment Information", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r33", "r34", "r35", "r36" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security12b Title", "terseLabel": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r577" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "terseLabel": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r579" ] }, "cix_SecurityProductsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "SecurityProductsMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "documentation": "Security products.", "label": "Security Products [Member]", "terseLabel": "Security Products" } } }, "auth_ref": [] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Segment [Domain]", "terseLabel": "Segments", "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": [ "r170", "r173", "r174", "r175", "r176", "r177", "r178", "r179", "r180", "r181", "r182", "r183", "r184", "r186", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r196", "r201", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r267", "r268", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r560", "r584", "r627" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformation" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "Business segment information", "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": [ "r169", "r170", "r171", "r172", "r173", "r185", "r190", "r194", "r195", "r196", "r197", "r198", "r199", "r201" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment Reporting Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Selling General And Administrative Expense", "terseLabel": "Selling, general and administrative expense", "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": [ "r67" ] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsPayableAndAccruedLiabilitiesAccountsPayableAndAccruedLiabilitiesDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureBusinessSegmentInformationScheduleOfBusinessSegmentInformationDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureInventoriesNetInventoriesNetDetail" ], "lang": { "en-us": { "role": { "label": "Statement Business Segments [Axis]", "terseLabel": "Segments", "documentation": "Information by business segments." } } }, "auth_ref": [ "r98", "r170", "r173", "r174", "r175", "r176", "r177", "r178", "r179", "r180", "r181", "r182", "r183", "r184", "r186", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r196", "r201", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r560", "r584", "r627" ] }, "us-gaap_StatementClassOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementClassOfStockAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement Class Of Stock [Axis]", "terseLabel": "Class of Stock", "documentation": "Information by the different classes of stock of the entity." } } }, "auth_ref": [ "r94", "r108", "r109", "r110", "r131", "r159", "r160", "r162", "r164", "r167", "r168", "r241", "r271", "r274", "r275", "r276", "r282", "r283", "r287", "r288", "r290", "r291", "r293", "r349", "r462", "r463", "r464", "r465", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r491", "r512", "r534", "r540", "r541", "r542", "r543", "r544", "r583", "r601", "r607" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement Equity Components [Axis]", "terseLabel": "Equity Components", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r9", "r22", "r96", "r123", "r124", "r125", "r138", "r139", "r140", "r144", "r152", "r154", "r166", "r242", "r245", "r294", "r298", "r299", "r300", "r309", "r310", "r329", "r330", "r331", "r332", "r333", "r335", "r338", "r353", "r354", "r355", "r356", "r357", "r358", "r362", "r451", "r452", "r453", "r472", "r534" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "terseLabel": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r138", "r139", "r140", "r166", "r403", "r461", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r491", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r504", "r505", "r506", "r507", "r508", "r510", "r513", "r514", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r534", "r569" ] }, "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 STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "terseLabel": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r138", "r139", "r140", "r166", "r403", "r461", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r491", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r504", "r505", "r506", "r507", "r508", "r510", "r513", "r514", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r534", "r569" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets", "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders Equity", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total stockholders' equity", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r53", "r56", "r57", "r72", "r493", "r509", "r535", "r536", "r565", "r576", "r602", "r615", "r623", "r630" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders Equity [Abstract]", "terseLabel": "Stockholders' equity:" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r359", "r372" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r359", "r372" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r359", "r372" ] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental disclosures -" } } }, "auth_ref": [] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "terseLabel": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.compx.com/role/DisclosureMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r286", "r292", "r336", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r436", "r585", "r586", "r587", "r588", "r589", "r590", "r591", "r611", "r612", "r613", "r614" ] }, "us-gaap_UnsecuredDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnsecuredDebtMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Unsecured Debt [Member]", "terseLabel": "Unsecured Revolving Demand Promissory", "documentation": "Debt obligation not collateralized by pledge of, mortgage of or other lien on the entity's assets." } } }, "auth_ref": [] }, "cix_ValhiIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.compx.com/20240630", "localname": "ValhiIncMember", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/DisclosureOrganizationAndBasisOfPresentationAdditionalInformationDetail", "http://www.compx.com/20210930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Valhi Inc.", "label": "Valhi Inc [Member]", "terseLabel": "Valhi Inc" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted", "terseLabel": "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": [ "r158", "r164" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.compx.com/20210930/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeAndComprehensiveIncome" ], "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": [ "r157", "r164" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20" }, "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": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c),(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "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": "4", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A" }, "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", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "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.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "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.24)", "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.25)", "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.29-31)", "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.3,4)", "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": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r30": { "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" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-5" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "720", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483384/720-30-45-1" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-11" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-12" }, "r43": { "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" }, "r44": { "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" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r46": { "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.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 201.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 201.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 201.5-02(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r51": { "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(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r52": { "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" }, "r53": { "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" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r62": { "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" }, "r63": { "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" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(7)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r68": { "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" }, "r69": { "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" }, "r70": { "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" }, "r71": { "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" }, "r72": { "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" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r74": { "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" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r76": { "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" }, "r77": { "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" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "940", "SubTopic": "320", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//940-320/tableOfContent" }, "r82": { "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" }, "r83": { "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" }, "r84": { "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" }, "r85": { "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" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//942-320/tableOfContent" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//946-320/tableOfContent" }, "r88": { "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" }, "r89": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r90": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r91": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r92": { "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" }, "r93": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r94": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r95": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1403", "Paragraph": "(b)", "Publisher": "SEC" }, "r96": { "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" }, "r97": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r98": { "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" }, "r99": { "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" }, "r100": { "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" }, "r101": { "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" }, "r102": { "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" }, "r103": { "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" }, "r104": { "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" }, "r105": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r106": { "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" }, "r107": { "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" }, "r108": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r109": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r110": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r111": { "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(3)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r112": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r113": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r114": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r115": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r116": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r117": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12" }, "r119": { "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" }, "r120": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r121": { "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" }, "r122": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r127": { "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" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-2" }, "r129": { "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" }, "r130": { "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" }, "r131": { "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" }, "r132": { "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" }, "r133": { "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(k)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(k)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r135": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r144": { "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" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r150": { "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" }, "r151": { "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" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//310-10/tableOfContent" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-42" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "44", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-44" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//310-20/tableOfContent" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//320/tableOfContent" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-10" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r241": { "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" }, "r242": { "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" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r245": { "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" }, "r246": { "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" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-11" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-14" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-16" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-5" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-4" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-7" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-9" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r271": { "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" }, "r272": { "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" }, "r273": { "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)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "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)(iii)(B))", "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)(C))", "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)(iv))", "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)(5))", "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": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r285": { "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" }, "r286": { "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" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r288": { "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" }, "r289": { "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" }, "r290": { "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" }, "r291": { "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" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r294": { "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" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r298": { "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" }, "r299": { "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" }, "r300": { "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" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "r310": { "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" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r314": { "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" }, "r315": { "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" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r323": { "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" }, "r324": { "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" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r335": { "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" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6B" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6B" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482736/825-10-45-2" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-10" }, "r349": { "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" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r362": { "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" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//850/tableOfContent" }, "r365": { "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" }, "r366": { "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" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r368": { "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" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2" }, "r370": { "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" }, "r371": { "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" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r379": { "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" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481444/860-30-45-1" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-7" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r403": { "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" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r420": { "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(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "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" }, "r434": { "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(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r435": { "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" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r437": { "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(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r458": { "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" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-2" }, "r461": { "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" }, "r462": { "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" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "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" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r472": { "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" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "27", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r483": { "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" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r493": { "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" }, "r494": { "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" }, "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(2)(b))", "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(3)(a))", "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(3)(b))", "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(3)(c))", "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(6)(b))", "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(6)(c))", "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(6)(d))", "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(6)(e))", "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(8))", "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(9)(b))", "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(9)(c))", "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(9)(d))", "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(9)(e))", "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": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r509": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "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" }, "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(7)(a)(5))", "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(7)(a)(6))", "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(7)(a)(7))", "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(7)(c)(1))", "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(7)(c)(2))", "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(7)(c)(3))", "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(7)(c)(5))", "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)(c)(6))", "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)(c)(7))", "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(9))", "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": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r534": { "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" }, "r535": { "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" }, "r536": { "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" }, "r537": { "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" }, "r538": { "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" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1" }, "r541": { "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" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r546": { "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" }, "r547": { "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" }, "r548": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r549": { "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" }, "r550": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r551": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r552": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r553": { "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" }, "r554": { "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" }, "r555": { "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" }, "r556": { "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" }, "r557": { "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" }, "r558": { "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" }, "r559": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479081/326-30-55-8" }, "r560": { "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" }, "r561": { "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" }, "r562": { "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" }, "r563": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r564": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K" }, "r565": { "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" }, "r566": { "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" }, "r567": { "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" }, "r568": { "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" }, "r569": { "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" }, "r570": { "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" }, "r571": { "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" }, "r572": { "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" }, "r573": { "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" }, "r574": { "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" }, "r575": { "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" }, "r576": { "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" }, "r577": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r578": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r579": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r580": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r581": { "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" }, "r582": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r583": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3" }, "r584": { "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" }, "r585": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r586": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r587": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r588": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r589": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r590": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r591": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r592": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r593": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r594": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r595": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r596": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r597": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14" }, "r598": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r599": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r600": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r601": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r602": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r603": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r604": { "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" }, "r605": { "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" }, "r606": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r607": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "55", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55" }, "r608": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r609": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r610": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11" }, "r611": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r612": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r613": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r614": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r615": { "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" }, "r616": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r617": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r618": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r619": { "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" }, "r620": { "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" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "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" }, "r627": { "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" }, "r628": { "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" }, "r629": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r630": { "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" }, "r631": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" } } } ZIP 53 0001558370-24-011092-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-24-011092-xbrl.zip M4$L#!!0 ( .Z!!EEB/IK*3 L "%D 0 8VEX+3(P,C0P-C,P+GAS M9.U<6W/;N!5^WYG^!]0O36"\[!=W '$+X^//*== SX8)Z[.:L>=XX0X19 MGDW9_.;,E[/:A[.?/_WEIX]_K=6^WCX-D>U9ODN81!8G6!(;O5"Y0!-ON<0, MW1/.J>.@6T[M.4&HV3A_?]XX;Z):[9-6<8L%B'@,:5VM\V9$Z(;:/':-/M0O MZZU&ZP*UKYL7U^U+]'@?L=V#83.Z@V\E[&MA+8B+D<1\3N0#=HE88HO6YRY7ZJ]6TKAL@^M82DZGOB1W'G=[9(9]1T(WL#]\[.B&H7<< MHOQ/,23(T)U,7(,)J;9>VN<>GT-#C6;]Z_UPK*V+F&VRY,12[J=D5E/N1%)7 M=>XYI+[AC&0YF14*7=:!&C'ZHJ94B)A[AL54ZY'U)2(XK!E6B"TY%T](,:L3J'1[?K7(66_)\R6ZV6!V9J2LD%P6>1F M3$H)^)(;.AVH"4/F&"]S[5"$E%8'/#!XJ,A3& FQU=3*[V<@I-V32U[ "91, M3Q3T7$Q*"1#FNZT\]%J-.EE)P@2=.J2FV C'$M*%J+54N@@#QO.9Y$7Q$A!3 M[3$B=X4[L,375W5-34>>Y)O=5/*%B#7%5FI;]4: M[5J[N;%_7F;(AFQQ+Z^L1;X;BI+RHD0NBI(-W9UL:I0)B9E%DL.5&H)TFQ^B M)C>44C;;A.9[!X1T?J&KGP#,5*-<*Q0F$ %(??GT:%)O=;%RU&W6)5Q[SW'4 _Q@: MT?-%UV,VC"%BPP?A.=1647&+'=7%XP4A4IPA"M&TCT!D:&2J36:44>T48-]H MH!J*U<'G[NBAUW\8]WOJTW@T'/0Z$_ARVQEV'KI]-/[<[T_&'^O;JK8:\<&D M$?ND/\-L)$"W[D>5M4/AD,4@:&''\IW]Y39F%8J%#R/8OA^8,56,9@-80KFD MPX#!A4Y:J.SY3(*G97 NKP+_[_L-DC$9W:/#0'=WW4>=!<=T_ M/O4_@\C@2S\D5!%RB@CI8K&X<[R74L,^7]"(_<5AV'<[X\_H;CCZ5Y4(###W MJ+ <3_B<="R]MA%/Q"+T&<,*Z8%(->/:OD-&LUQRCTA,G0#WDV@R!,(%! )L MO]"F'?@2Z4(\5O86P6)+!4S8(/)FQ6QO@G;_7H5(F1 9L&?PV^.4"( L_2T_ M%$I(&"%_EX4\H>0M>M!09QY5L!XR\A_Q6HT,F)_A"?>)/:1X2AVPD(@R/.9L M<"+MQG"Y-&2(9: ;868C'&A'SD;]/JQ5>.T37H_<>Z:J* >[OV"M-\$K(@H> MYP?103J,H?(^&RJQ-C3S.*):'Y)*H9E8A4.)< B+K=%_&.)])JE<#V";REWM M3@AZ&4[C@K%QI1:,D7SRHQK0@3*4T%;A=HIMP%AZUN\+S[$)%_T_?.CC??<# M.1J,.+\Q_A]4H[%[&Q/*YWJ]LPY/+8P2FG05FHP2@B;14B!Q<:2M51#.C MM$=]K )J_WJ7N;9EAF97':N"Y(2UJD,J4&;XCJ@K5; >42,J608R@[=7I:>" M*[NFZ'JN2Z7>E.EWMTQ2-B?,RAEJ)E8C2!^R("5TZ<%E);55.)495G>48>@N M[ R8D%S7P#*0Y?(8L;K*8A4K00DM%49E,'HBCBI\/&(NUQ..F<"6/I*VC5,A MGPFK9B.+5:@()B[0A&1"5058-OFI]3>3X6P/Z0>F#@8?+9([F'9P&Z'**5\$ MZM!&'THKK [327JT7-HWG2VAZ0!VE:CV6CMK$S=1I6II'KT)FJ@JCH>6:2: MJ%5Z!N&=_ 9A=9='++<-4P)UXM]BQ M;6VG0BQ>V^>?6SQ.F0'^BU*G'?+WE)"WXT:3Y^"J@XPGVFIN?NM0S),?+R?1 M:0R;5K848=RRIG]($;.&C5?A<\3N-NBN4MO;B-4(K?F41G)_&ZJKD#IX*N]B MSM>4S;]@QU=+ZKZ0U%5E]3M,N7XXFN7)Y0_[;]"",5+*OL%1;^%",Y!N,CA! M'5F"E"DA 9)#P>JCR@HG>!NTQYKC$!6F:#&]0]*-H&0K_^^K"_5'W8CQ1&9( MW\]PK6Y=N#D3U%TZZ@H"_6RA;SNQZ*H671+P&WAZOG*=B$-2Z8!8:N&F+!)O M$79B+F6#X>8#'5S;71A:%ZG W,IHR5PR 4J\)>%J]JA''IZA^HE'V.0[#E.-Z+0_! O],Q_/K<=O TQ^TAGA+G0(\=)?M-G3ULV3>6 M,&%B;JO#,+Z0GMM94='S7$Q9> ]*9OE71L20KL$K_;.85+J.=")0B@*M2*E% M@5X4*?[?3,T?ZUM7HH0/4A>GZ&M3(' ]+A'+W+)5< -,<#?7T+.TFH!;%+&K M#VH,M,^AJ3"^S*V:KK+):SI71'V+K\RIJ4>U9JO6;I:V(O_ZJY+M1P*JX7>' M.9Y[^\!& MI:]\_@?W_&7$2('E#.%0RP& M^S^0K8.2L+=95S]B:@]8%R^IQ([^F=Q "%\%9.S_OH))QUV/P5*=KP]P?88= M4>C[-+CS"2SD!"PZK$N214Y].&8](2MYZX O&_>-3(&K\7UIUS(BG=K?_1S+ M*PXS>TSGC,ZHA5/'RL)#03 /$F6TV'A^G)97%OX'.*/?=1S5':&& [K"EM<+ MH'/+G^H._3:=\C <,-M7)A%Q3]PIX1MW\VC;X6[K-=\/Q?4+=A9TP*QM\[>? MOT+3U9EVCEG7XS!E:MYM)XHY7J4[[O+K@$G"&8Z*0QE8C$ROT*FPU+V&R=[V M+9D9)47T5^C*/8;,HWY6L80YF65=*:*_0E?"4R?!]A-68Q[D6S;O>B*Y;#/P MO)(52K"5DD8_=YZWR9FX]Q1[93-UZ4-&^SG\VN=B!K*D!^[:._8SZKSQ!WWW"AK)0=U/ODH6'>; M'>.5<;D@RQ6N#H+=L]Y,9Z:>7.*1\\X^D&R/9\,4FGF?WG$]+NF?ZNZ9Y/13 M@O6U0!<.UB*G$T>05.DCY\+=H2<@O:Z"T24ZCA-6O)H8S4S"V:++=VWT MB GP6T29JC5AL="K9")D\H)DO3'+)W_C:,ISX[!,,%8O;WYI]^@SM6&2RBZI M"^@_-A\$A?Z@6OGIOU!+ P04 " #N@0996,*W\(H, ")JP % &-I M>"TR,#(T,#8S,%]C86PN>&UL[5UM<^(X$OY^5?I0_R7RTH45%%@$U+Y[=>__^W+/ZK5/Z]Z=Y9# M[6B(_="R&48A=JQ7$@ZL)SH:(=^ZQXP1S[.N&'%>L&4UZ@>G!_6#AE6MQG5< MH0!DJ&^)R@X/&HL[[;@^ZE]89[63VF']\,AJ7C2.+IHGUN/]HMP]=,\E>04] MXO^\X/][A@8M@.D'%Y. 7%8&83BZJ-5>7U\/7IL'E+V ?+U1^_/^KF\/\!!5 MB1^$R+=QQ8+R%X&X>$=M% H=)<0GS\R;5]"L+=J2EN"_JO-B57ZIVCBL-AL' MD\"IQ%WDMQ4:F1?G=TE&^0266?F5^F,=-,[/SVOB;@6T9UE?&/5P#[N6N'81 M3D?XLA*0X= _MD/@45N(&WJ.]@'MN&/@'K$ MX>Q>(8_WIS_ . PJ%F_E]][M4H]L.AQ-^/\YL8WZ>;->"]&$^G0XK?'R-:T6 M!&XEC=8V"GQQ-^BZM_"(#7'+AP+#$<,#*$S&>'9U(SI1;]Q$=;51,+CQZ.MF M[$72TO84<4T"VZ-!Q'#+MFD$'>EA&Y,Q>O;P P[YJ.1$'NZZJ;>O<8B(5U S MZVEZ%ZJZ]<= &64$!]"3Y5]K4HE*$[NTDDB4="Z*)* MF35;SKJZLPN5/C(Z)MP'NJ%L-A(^H0D.))?7I+ABC6JKQT:>'7G">[F#>[%* M>%\V.>LFN,"3$(.$L[A*0MXV.%WUNE6U%O7"W^WNPW7GH=^YYG_UNW>WUZTG M^''5NFL]M#M6_UNG\]37T('0 .C H_92ESSNSE&V;!^\N@#J$W6Y*'@6%8(3 M_(+0B&NE6<->&,RO<%MJ"CN*+_QH!4$"O(>>L2>%X#%ZQ>1E$(H[(T9@6 ^G MEY7#K=/#'0[NBL$_G?]&,+-ZW!%IA6W$V!0687\@+\(2VI1D3:4SB[15HHM# M-=T 4AVKG,89$ M.:C6!1A3?)Q%\4Z5@UP;6I362ULV;J^4NJ\$L^36,S\]E]6D*V* MO1A$WJLL:Y1X7_8O ]#0B_DK#XDFY.O'+!%3;2-]1:&)8V^Y_,I@0M)E4PB9 MQZ.83GXMNAR-&Q[.\ M@*P'-5.FI 3K8S;=^[I']H#XF$U5QV>Y0$DYUP1L^J3,7UV'++)YMVY]T- + MPT'F@YXAL:R!,6P3H4;XV\."'=]I#2D+ MR?_$=>W8WYJJWR-K4G?N-JJ5:M2LJ2:ZN&RW1'5R4=3RT'0:$&HYG/ZJ,\+Z$H:M/M0@30 ME&U 4KI$?.L@5%GB[&ZXSHTIIY9= GI<-V M\\%!.P>:@1Q>8Q=#AYU%)G 2 MC308G"-E-*\Y'*WR6P2L@2_ZW@\V:J^!]N^YU>97$Z>!#[&RQ[]:T&@JE8=@ M15RF1XT>63S4"#Q9N=DI)D0$W( V&I$0>0ELLE5LKF")J"X(UO0QN%Q4-^=']=+97(O+:E'?6<\B^U=_M>M[D95N.XA02MTGVRAZK[9/M/ M\,]]Y^&I;W5OK-N'=O>^8[4>>*G[QU[G&XC<_M&);U1,W4:;HJBQZ8)MN*&T:@+_%-S2)&#MF8V+CH \K,ZD'+!,H ^V:Z(S/!^MC M,7U]Q3Z,A!Y/(W&&Q"=!R,?%,8YWT\O>$2D)FT=[\6'_ XB--X6Y"P.HKLF8 M.-B/WV._Q4:DZXE<2?.,8/=.8%&U&?A:>:&D^ FX@@=$[A-*2IMG(\77CFK@ MC!\3-AS*WDR$U@3+T0Q<;501ZN.%,:'JY.FW*G'IHV)QZ7:K_\VZN>M^-_CY-9[]"[]G:Q-8I R0_X)[ MH+:.ZV);-F!ONQ/;#Y3S/HOC3L&ZKJ:_!SR';^$FMFQP[K(<(/4*EA_0I@$I MR;LQL'=1^X]HS_05]&Q]F1$S?2M@GG5\D)NTA*U,L*:3J;)E3)H)G2_Z"0R@ ML!I,S_U:2?Y66@OE2'T*@]#7P(93P5;.9X<+/_A:'X#/5^W+>1,QJ])R)>91 M#W-N'E=U1_L=%A!XU[/CGM+R)6:Y&/;<+*E=!SA67=?5$Y_E4:Q:9C;$Q;57NFQ[I@3A9OZF#D MM4%SX@MR6D>4J5=@GG5]D-N4F/C'E)$;,]_U6 1P;(P=D6C#WV#?HY"_P9Z* MK4B>A\6Y?EVW/Z L##$;)L[BEK\R*5KC9["G-6O'P(2C'DS/L&T))?QJ'Y4;UA5ZZU!^#&OU&*+6G^Q M?,SS'.4.("DG9W\[-Q6=Z M^E?R4V[7-'H.WIA,'[H7L+Y3]E-\1,3&@1[)G6(&S (P\ M[&@#I.X:+ENH= P7@%MP(\K6@B@B(22 ^L"A2[APDLM:H9+3U5#)HEK+IB))#?.JI\(L)C3ZM'?T[G#/PY%/ Q)- M/^VER63_A[V__?1??_KQO_?W_WER=^4%U$_G.$H\GV&4X,![)LG,>Z"+!8J\ M:\P8"4/OA)%@BCWOZ/#=]^\.WQUY^_L_956C\%V37G+$),="%)/KZ4?SOD;?F.)E MI3\FRP7^M!>3^2(4K6;/9@Q//NWYY&5?('7XW?&A$/G/]PE'6YC1*8T"''&C MX'_$-"2!L((3% K.[V<8)_&>)UKYYP;M/YXL7\7]A 4>''XX/#Q+T0B,Z M7QX(^@.G%C*QK71_L$NYR[?Q>'*?4/_KC(8!=\WSWU*2+'>B"%.3O6GFC,1^ M2..4X3&;HHC\GCG=*.)0Q80S=\MPS-G,GP8!$?^B\#*:4#;/'I[A!)&PI9(Z M:WT ?9VD,8EP'-_CJ0"RPI3HU8(TQ..)FJ8CM77#Q #:NT;L*V_],<3WV$\9 M1Q;'.3O&GJ>F FU- T@V\GV:^PSXF3X*O&YRLT9"^[L@:MFEZ $U=1D_< M'BGC@'%&-G]UI!&;)@:TD5NT%##P#H\_82D.K@AZ)&%FPS8T'=M-5^P,H-$+ M$O&9!1�YRP;*H9R0N1A]+Q!AV',3% :9I/;]BJWJK\B!&)^("9]^[D?)_\WD_-]#]( >M0Q8E=7?* M<&9KN^%W574'[&8U[<_Q_+&MQT9GG"?FIX]XOU1#A^Q*:Z\PS0V$ M1%FO><5_;K2+7Q+,@].@:%EPVWT/2!)1ZXN+C3)VK![^NX_<0Q464+G@KV@G1(PX_[1GI?SVJ:<*JQ$'_$E?9.-OH &JB M-@F5,LI)-X1;V^>(;8K)_:>H=N5*6W2Z$T;G;FA1)XG78GRT:,1[H)Z^\C3F ME=)%/MO9\RCC8^:GO6$LHQ0D7YXZY;T"C<2TU,8?9&7,/J$J-8#T-5:TKB&E M54JKI ;D( ;XJ*OL.C^1MU7U%64;NW*7&/OOIO3I(, DMQ7^Q]I$^(]?K_ 4 MA><1%V\I<0<)A40E4IJ=D%/BVNZ:U9185L8\)5:5&D+ZG 7M5'B#1BU=G0K0U-< $[65 M53?EE;=1G?(VZH;D!N6VQ&B0'NY\A MD;RQ2)D_0S&^973*T%P7$BD+J",&;1$P0NMC(TT11\&W<:=:W&.#!;7GIV:8 M77FP)JC2"+ 141D8[WWM[ Y%4]F<;..=="%IXVV?W$KCF=I;-0V1%$B4A!_2\DB"WN6AM# HJ0Z/+4K M"TD?QBC"HJ2[/K:-+S;[=#?(J#-_O??Q5@)M1.UV@O3>YY(%]K/O!96[)4I:N60ZZFU&$)-RJ47[O8XM"H:+<4;+ MZ' F_AF+&=9B1GP4FLR\3JLW=1EU7]+EZ_)5#M3FKJ*52Z>C[L3<-4JF%CP, M8_)-IDNSUS';N]D_"#'&D\LH($\D2)4F+Z63&H22-7O@T[@;-M6%*A40]_ZX1 M#2B*/L;8(#**TV'D(-3&M+_!',2=!_>MAC9["T V$RH<6>\K M-,JXRMZ=0]@!HM@N-"74 MGZ[HRT"0V[A"I2EA+W>W*U)V4%!K?GIW(JT &]_UZ!F'YD(G./)G<\1T'[F9 MBKDX4Z,@"#443+FY5:V8@QJ:!7?@8"J,=%XFX0R"J]5$T?J;1(3>%P.NT;\I MR[]LQ4R5$M\DD@; !!&3Z?%D@P5EM*^DE8JEI=XF@M>JE5HTWFN@+N.V MB-*U7 Z; -P\K$27^"NG5B?\JND'D#6;"4\$.%%PC]D3\4DTE9_7(H;Z6'&4 MBVYDZ;()I5:[;F3;$8(""MF"G M5^^0\U_FE[GP/>A\\4QL,^$HT'T>MD&CG,4TJ(:41CNIJU&9)>IN:J52)=6V MVON*TDJ=5%IDNOUU.K<[Q5M/#D%6?UJZB=Y&W MPX1VH_*I)2?]I[*K6-_(8]>Q/.PN??H8$O]+LCH7MCAW5_=IE:Z(>MO;4 B0 MZ.9L8F-!9S5TG$MLAQ!UY:O_K &M(!M9!%8"#.IJEY%/Y_@!O8S29$:9_!0J M/;'2KM3D( 35NI.*W$'8[ES'J'=JQT?OKJ)BO.HD.H8'=HV51/B*/.'@,DI0 M-"7B\/(XQDE\LLP7U,7QBUJ?<:I%8U_.]<#3V9I'8^9:BYK:ZDY5U_9NVQ9Z MNC7O [BZH[";?4 K(7M?N+OB,D^S#>)3L5@B7[9K$DG7KN1D@PBBG%SJ2"V$ MZF8":=0I-;?=ZV*;C-EBJ4W'9/_KT.D\%:G:3_A\,L%^I+0L"$5]]6)]5P58JZ&BYV@TAZLI;OVO75L*4)P!:"U%SMQ\/:IJ^ MXC^S%](C\#6'W2ON)W&[VZX"ZS_FO%N3ZZ17N>PMG3I.J=4[1N+FVHI%MR[1,SV:>]]HUOH%YHM[A_8%1C- M:TLLD5!9E_Y2 5!HT/FFCJE"N!NU9]7#\*>]A*6]#R5Y:#MZC!.&_$0!4YVH3\]XOPU8=<;78#6GCT/H M_31E3*3.V:B_00N@?Y);3Q.!!N]P@. !\$Q< ,7_$:>J/*$P.\$XV;CD4#5J MV)4% Y3"W#;&$CN1X. GNSEW):<"-6T) %V;-59:0> @)+VQ5P^1ODB?&!UO MB9%>$C@@E;O"G#WE7DB5I$\0OMD2A$W.X2C]EN$%(L'YRT(LQ/!N=YS,,-L0 M2Y5G85.R3XB^W1(B*X'@(&>#T8!H?+=MK[4CO3>N"^8/\L9N:.3GS67 /\Q0 MM''H77GBG6*NO$U%8,9\&23;" ;'7S*6UV/@:))PYPY#^BQ6FR\H.V4X(,D5 MC>.UF JW:E?5@'/P[6V\ZIKMQ(=C"9\I#9[)^JKK&KKKUP-Z9;>(K46"@T)E M=+5SN";M@+/P'7A44SXX8-5Y*V5=/Q(SW#C)+U^* N5QL=J92C<-#!@7=&L6 M72H%CBTIF>2AD6$9TJXHF.!<'VW8B ('M2L4!0I4\E< EAA=+&OC1I], #BZ M/DE)&)!H*ESZ%T MF.D* .C$V@*F$PL.6B+G*&%I=B#?991=7H)CK8MI2P!8C&R+EU8N.( IQ=-A M9BH$8(&R+6PFT> @-_+]/!D1!V=XP;!/LL1?_G>(,Y5'P6@N;H7\/7ON'#MT M5CV !=*VUM"=$N#8C4X7+2*$?O']OB=O![:AE$<^VB@?Q&!IFS<"2;=7!#VN M/J$5Y_>(E+P9#;F4L;"&9&F(GNV+ YA\VF57V8L$$D6[Y"M= 0!1MZM5*O # MG*!59%#$ (!C'JGL MP &/BW-<##P2WF:D>AT1\2U;=<1P\B MM7GTA$@H5KLN*+M'U>_?1L&_TSPEC\<5XPD/-VYE?6[.88R<&:AIE!FEQ[I>\S&L\ M^TLN"9P3IVK\:8\ 4] ".P5,9V]5B!32P(&F$JY:G 6V00=@D4MK6(IE%1"' M@2D6#[00&,H 6.JRAL,@"ASWJ"\4: %2$0-8VK)&1B4#'$@LHG.]&]F7!S 5 MMW[%@'(/X&H]I-9V[]W9,*Y0)VMLQK4//S=H?TPH'@[@-]B_I M[*S:X+J%C(/N"IV16$Q04H;';(JBU6?'HR@X03'A,]5;AF,N>_ZT[%LNHPEE M\]67RPF7SFJ#Z)O#H\,C;]];M\E_5)OU4!1X6<,>G7C5ICGANG6OTKSWEYR! M_]W1AI%T))+I)@KNR30B$^*+#W_S+ZU(-+VE(?$SI)O;1=M5U;Y/B+'_;DJ? MN%61O#O@?ZQ[ ?[CURL\1>$Y;U5ZO:J48O MHBZ $1XME6XWT9<9B)P'Z;I# M\_6PJPT:NRG4NLEN9SJ5^NC-U644\'D1XQA+5PI41 .N$J@0+V9Z,G9WJ\6? M43@C?"13:K!.,�:-)>G=7=:DZD?C 4G5*VH"SKB90Z5),.& B:M*EF&LY* M53G9UBREUV@&7S[O:AA3R <##^U">H,*QBJZU)BDFB[X[KQ/N1=/_G%<-J3L M452$ %; %390="LJSKNW6\-EJ^/G"+-X1A:*2V5K[_OO-R0G'7?1;TADVW&' M;@N$\GK;!L6P'8;2>AKJ[68-)J(5;;6?\ DT8+:78V"__/3L*0''#>Y2Q2(^M;=L; V1EO"1G_@??F MIH\Q_BT52=?BPK('WI2NIU)1]]]/?;OC?DHE*32TM)V5AAY(GZ4W/P,B(#JN M&E_:ODM!"Z#[,EJ6!HHN.K*NML>N%*EDVU?7>\)95QHH)LSMN\=7GKQV3:*, M_2RBPW%2!A:W?'01JICBD^4MTMW?ZU+#@$%@ER;32G8XN2>5M)AR#9!S?#_C MG)YA/^3_J.ZWL2LZ8'2\"YCMA(:#[YK)_!#:,Q[\%'R>H>4U[X_$K>+_PD@U M&#O5,& "WR[0=I(=-NCCR1WVN>;:@ZZL8:EG$18U M>ZL)K$JE]HR* M-C7M?K=O?28);S[S#\7^JXIP\#S$#J J-@I5,@Z[(=OD2KDSJR8=?HM6;VEJ M".!]%#GFMHF$8:UL2?]!OI)ZX,U=DUEM9-NK9( #2I$8AV_X")AS:=@?4=(/ MO#WM HQ&"CC0E#MNM?F(U0%)\C*#IPUV-.I8B@L(RYPO_7;*)@V0+10;(]R M9%.*W>8,K3Y16MXR&J2^8D31$4+8&Y&91IEGJ.![MVJ]1HQCO3XA2ZE6%2&$ M;[)U:E7Q#:[#D'6+JDTHMZ+#G7#@(-E&Q])FR'CE>TMG)$;3**N[(]&\0GF@N/R!CT'>NEG6Z^VBWG.V)K!>CWYHZ;)WRL*_76M18[;3'8 MK3:9+G0;:AKZ?CN("VY;JPDX> M66E6_:14 &;"NS#?\J--F39EF(<$,3;C:4SX/X'&@UNXFF:Z7:I5HZUO:6%M-] M,F8K0-]28]Y28]Y28]Y28_[8J3$;72/O%;/><=TCFF)@^^*#A<.N$LK39!R' MD%>>*M.<0'YF?/Z[6KS&>3=N^O/'XMI;I#S]>\TV0$A6)V);+F M8\R>-'FOYH( ',H16XTP<$*9DMM?*/MZ&?%>UN=#G!-HNI( (E1'U'32 (3M M@JLUGN'@,Z6!&VRZD@#B44?8=-( A(US:,(G(P&0L^T(1,8VD)"_6)=8'>XT MB@+^A ^,P15!CR3,LT8L:)R6![[3;.(O\D:RVQ=1WHP7KMMQ(1WB-D8;7:FN M7W0H^[:,T,4-CBC!TU%#&#&W@HIE3QPX%F)=1G%*1-9 M9,8Q3$X-8&;?"B"E0, 00N$%9=F1'.-DAMG##$658SHL0+.L ,">17L<+67< M[;>EH^!)&%)^QLKJM#)I%">G [!7X02 1I0=ZSGGLFCO@5)>8JKX>%='/.!= M'.TUKI$'6,^%@UM&)SB.,Q8NL%5OI2G4)US?=S_2*.6" UO6>2IE5,!F*M0G M;#]T")M)+CBPV82%3BL4^AH&OJJLZU4FO;! MN)EQ]2<(L:6O//_&86ID.(\ M3LA)X&Y?M^ _-[?BR3J]2*7]>\.-E;6<[[R5+GN!I]8).%%5 M3_$O]7JR/$&AF/C$Z34HVRS\JQR/J-N><:H"QVV]IJE44G:0< M=DMUU6_FQWKB8#07PY,KJLZU %@#;6'+&QNVKB(/NYR]&@OYH-S6<]VJ +!T MNB7 ;O(.BNZZAY(,->5TI\Q:.D49G\;C^K:O=K!/.;K2B&)HU@SIKR\;X!3% MXIY4\<_Y;REY0J&8$$ML7=GY6Y<'T"OLPC(<- DI%OMX=TBEBRSWE#!-XU MM%^B6*0OXT"PJ)UP2RD!!$YZLZJB(94 #A1V[J_IZ%PJZ+_[4^6 =]7]N4@/ M$W1MAR@CA-$9NMNM"K9^/DCAD^ 9N8Q\Y1<3=0( G9S:3(K-\#K38*Q:.ZC( M" %$97IUZYCO7NTQ2RHJY[_6ZLXO^D[%]4,+P<0-FLLFPFJR_DMQ6*X#OB MBC>9EEK-Q09;2K652'X*K%/O,NQG5=*YBQ!S/#GE,0Q)+I O,C26U^B%S-/Y M%8[$5;"G:,&?)TO)O,:E,+!!V(2TJWAP$I9JAV-F^[CW"X91,(Y^1HR(AW=< M#\IU$MOB )+3V_BNO8"[S;2M\7'+2.23!0K/4CR.SO <1<'Y9(*Y0$_XK(E7 MNRH )*([>Z&SD'!\,4MS7/,^FO#1OGJR<-ZWB(MDQ 6@YDQ0YZH Y+VW\=%V MPL+!_0]TS;(BM[X-JMUUYN\! M]G_@]6(1&Y!F/.-L-C827[0>8PO1J!5)SF.-A4%UL:6ZKJ[JL*HUZOSU2[)> MK&Z2Q6(]>&IN@)MK33=YSOE.\SM\'_[Q/U\W$7HA- V3^$]?O'OS]1>(Q*LD M"..G/WVQR]:G?_CB/[__'[_YXW^?/UFW?H]/1[(>(,IZQ*$B,AZ_V;=^47 MYX6T)/X._>'M[]^^__K][] WW[W[W7??_![=?BR+?62&K<.6[MVT^?/KWY],V;A#ZQZE^_>_OWC]?WJV>RP:=A MG&8X7I$O$"O_72H^O$Y6.!/.D:J_/M*H%/#-VTJ7M@3_UVE9[)1_=/KN_>DW M[]Z\IL$7A8G\:PLE97'^;9!5%>3"__MM_F55]$AT ?_=M]]^^U9\^\7WOT'H MCS2)R!U9(_'1=]E^2_[T11INMA'7*CY[IF2M-C*B]"VO_S8F3_RGY"B_Y2C? M_9ZC_)_%Q]?XD41?(%[RI[LK+=YO&[**2@*-E8O>"CAY0^!UK]E?#53D-2-Q M0((2%]=FD"R,J?S$12>KAKR(MY*$'KLI+7^;E*S>/"4O;P,2\E;[#?_CE/\A MO,/^\$PSBE=9*4F8_ZS/%C\4)=ZN M$L:2;78:%3^,J+ZFR49M::XN47SY2_38_8%$E\^M-]!YN_%]+0SZ6\__?'7.^(+>FB"-)7\3JA&Q&^'O!CS6()JJ$H MW/;5AJ]L:KIR,%M=J[6N#; 4C"3)Z&R08HU"L FF M-K5WT\O%(B87<<'>>BLO\$8DUH'H'P33#^P3TWSCN"1\2>8,XYKR)XC@-^<2M=:RH* J?:CI\1W.K@W*PR::U MMO]$I9(\XH#1;@+F#>,(=+N,LS#;?P@C.CPEK0Z_ATDG MK96N32P7B+A$E(N1[+W%V@S>JZ96F&'3:J'$UJ=,L YD^ M&DM[-K=:*N)B/='(![;1Z'05KQ+*NCNQ3'^?L?G<>;*+,[H_3P(]N]IJ02>; M%>HF]XQ5(%/1SO">K;>A! DMJ%"#N!Y/5)T>^TD!/J$F_*/1^0&_7@5L.!NN MP_RD4\O(4E\>.H5;D#;)JRD,F;9M)O=LM$P\:LKW.S8% GSXM\[\,3HE[>IB,R"=PMB!*,US$NN/G"B* MP*6%#D])CDPCT.6>K':44?3=^\>',%/>N544 M@4L7'9Z2+H??PZ2+UDK7IB4)1$+BY&P9')*0@I(U>O?^R\>O4"E_?,H\4,SS MC=SO-X^)"NGA]W#)HD12,J7Q)4R:J$UT;E"Y-)2+FYP@$X(9L1^Y?%T],XN) MYNBBIAAS8V(1254CW1:'IDH]'H;+9XEC?*^E*0Z>5$6637LJBD&EF-KAGHRR%HUPZ*L1[XAT J./U9\\D MBMKX=U (.NU4F XZ,ZD$9)(I[>P;\+E,SXR:&M=X*X_)9L/ODR:K7^^?,?/6 M-I@/UB(--2#3S\KNODMU0@<22E"N!4EJO*V&3(W] MI!W\>"PF<49Q=!4'Y/7/1-\/'I<#SU4UL@-Z-@N!9J3&U+X-,1>+A%S$!/O: M%? #;XS3MOGJ9IT33Y\%U5 4+KW:\%4G8'.%M>+F_-+=/_CY>7#O=>6KGJ@35MH M)JWWZ%$V=8D9M,AA'F*KQ&E>7QNWH_ $:EH:G4 T/IS0VY6=" M+AU2)<\."\^ )C& MR5@0-@OUV&3Z'9>"RSN#K?V:8$VS7*P?HHT&SRO#Q+:8L&/QD2@NYQL+ F>8 M%EN#84>E #-,;ZMS$\SW1?.6N$ _YV(],6P$> 4N>?O7Z^CR6O-PL;$@;)[I ML2D'DM=PGRFVL'6 .,$Z.;A&B+-"59VK+"=U0(-L'4F&1R-4O M)9;&3N=E9B&.S;X*@7[X-#2H^WM/*XDYD&)GV8I"QV7GP"0-PF-"'12$SBN= MN3WI51XU $&SH3&6X+"0_IV7.1A.GQ=QP/]S^<]=^((C9E"ZR,XQI?LP?OHK MCG:Z=7W;NK!IVEN@E4EM* Z7RC9&NS;= M6C:JA9^,F<2@E;,3P4TKX5[&PZL5?TTMO2,KPJ(%,^B&9&::ME2!S5,;O(U! MLJ$\7*9:6>T\9"Z$HUHZ8N*].-_+W<..+TDK71E<)XU'$2_08!8X8O_B*$H,B MRJ-":,8U232XI62+P^#R=4OBE+ )U3)[)K2Q:J)QB%U-V+&C WHYI%A4@QMI MNACOVKX+':A0(M81A!K47!WT$INF= #)E:1B#2'A>KPOT=LLE((G;BM%9T+& M85O=!.1J'4P/"BCO)U>-U78' JW"5TZ*WWW]^V^^%L1@'^26WK"FEDL70>#A M&<>W--D2FNUOF'NS''H;9 M**[TYGT)RIAFM"U4HRW7+1:IA?(W8P0 53#S[I=:;S'*X)I1J1H)W:A2[FM+ MTJ.;J'IQY4[::$.<[VH4HS6"46Y:L1UGTCQQ\N$QHN;;I*,2,N9 MB+=GYJEU&(4#))-PB3$_)$GP*8QT7I*^AAT+#G'(_"Z_@\O9(PM=&U@IR NE MQD8Q7:>;3\CL>E5%6=A4,2(\ZA,AAH MS4TQU*\_XEL*:;81YY;BH#$%8/^N9@'&E9:!%,"F^?"^/%XJ'$(ZW( R L:> MBY3J.;OTJ62/V#\XF,[SCRJC/"YU@O!IODZ:2+-\/WN)&GPWI.UB@&55V&&J M"_[F=F)[/;BAI9/U[OMI>O*+HU*>KQE,ZP2^F5@M\WI9S[MF)FA<47P%FZJR M_3(5^>=PJ=:PSK45<2%>.#*6]9,T^+-=&/&,W[P?O]IL:?(B;JZF/]#DZ)DE MVSJP*6*%6.:.L0)<4MF9[=I>*^FBSY+E(Z' "Q,G@NSGCLSJ.8P)W81T M4.LW)JZV5H)-5SO,5JLUP$EK:?>16*Q)=GJP*Y;I\GZ"8SA=7B[.KZZN'J\M[M+BY0/VADX_*9 :2975$ MM"7"J%;AY<13F27J%N_%)2LVZ5ZMZ(X$Q]CU\_@.$F 3V,$;JAQP%M7A4MP% M1.^$:86R?-DJ5X<4 <%KRKA)';(M',)GMKAPB!0KO&:4F\(1!PGFNKECNFMH MUE%27QIV1&Q!>709;4Z1KLW@?M>U),%^T]..!?,J7B4;@C+\2FJ"9HG?V]+6 MA)PA%^UH."<&CM JIQHUM'66H_6)J^.9@V>BU1?#[*?VRCJSH9\>L8:)QQ5F M04J#V4/P4[H6"6>F/P)F":?O^?X%61-F29!WW@_X54:NW5YNKP6;NI:H9?*V M5(%+7UO#71MS*1\5XS^FH3%5]Y6;>3+DL7* Z^=MZ8YG3F9\RJ3;N9(YGB09\;P$P+,B$Z']K3@JF>V] MS#]O:3&,%A:97O-4EX3-2 .Z@X3-)HE;.:8H!IM@.ES-N\?-,G"II;74_=HM%^B=5,/CBG":H@5:Y?B\T6H1 M!"&_%82C6QP&5_$YWH9L_"OAU7C$JB)LZMEC;QR):JT%EYX=;'=>HJE4(*Z# M9P8HM""9RW[./4T*G[\K=1K&:)5K\<'N.Y+A,";!)::Q2",DWU!T MJ@B;W?;897:WUX++[@ZVNS;O4@4J=:#FS5VAQ0NWIP1/"AV>$P>(16$6O+:4 M/),X#5](OE/$'Y!8O. PXN>7/B3T'LOO>"^"_]KEJ6YO2+9GE^=L'CUF*%:SPFJ;#A=)_246\$^J[27#\PP M WSG%X#C2"G\YVFM5[)5*.)I5T[1+J8$1^&_^"%G_@D;!FXP_94%5'[$,JTL MA+' ;KV:"3Z>Z;&9%]+A1A.#K0,NG(_![RVA81)YW XWDEI;/N)E=M_G M!L8!GK,Y.CBD!(7=?+DKK-XZ.4_BC,UE2;QB=AI6O_4U8'/: NWA5HNF.%PF MVQC=9P,FE%[W:4CWMA[3\@*YNSIZ!OX79\_F.=8\;0B]?5]&. M/TK \T>Q_POTZY-NDF"W_Q[>:>YB=!8#ES=]P+@O]0N=B"M%I5;$U:)2+ZH4 MHU*SMY5!'R[BZ0I3'(TS"'@A]#&!A[DX&ZQ!/M'H/-W3JK MFG!IV=%^YUV]7 TJ].2)V!J:4*'*S]682;UP@IX*-XA\8TTW$*4;IKGYO27< MB/BI/KZ@\9>Z)&R.&] U+GD?%X/+7I.QSK>;2YEE!H9K7R^(C8&N>/.]PIAG M6_ RB!CWQU,"FVAQG/VR).5/,ER$+V% XB)I1GWV2;LH:U,3=ICI@+ZY@-Y: M#6X8ZF*\>SK 7$<1E4Y0U=2]Q*9)(?OD;=J.H@QRK MQ@?=,^4I-Z[>[,C-0[5]*#=02I!%4M2P$0DC4=-*5)KI9; S [<_YF[UG7^K M\D QZSQC4:\0C(J1'L: HT#\Y8F M+V'*'Y5D?#31<RY(5GKVL]A&=AQ1HE(CBZ- G!CBMK, M/L<%?*_N#(_(XUK.1&"F2P"JN,ZFO\K&@F/+$,Y4OGO(!F.=<;IX]J;A;6@Q=OHQRKRDOE")< M>=%+=KB1[^C_M[F8/^9M_,__"CZ8Z^(#!42QB^WKL"T89_Y47ZIOA$*$*9O? MQ4\H8+K9?_8$TQ-^:M73;;-#1[7$-',-V&'* NW!;3-=<;C!Q,;H'O>OI Z^ MF"^648#/49(UYST+&5E&P\==5C[1=8N]I:&>SA_^)FAE5J5;0N^?F:O/DD$;1G*1RX4 MI5P^! 9>A-$N([I+'_K2\V+A 4H3#XNB\V'BH<%#[+,W8+(4YPM17=I4!F[U.'I$YW4D M7*:[P7#E1:D-%>I0KH\/E7.-2%+ILYOVY!97&J3,,H*T><4BANA$S"Z*M *9*([X'&)X_N&5 M CETOG*6Q"))U&NH.UC45FU3X++ZCVUGW.A?O@U&C9H M;ZD9.=96!S;?K!!;/)X&G8=V9KNV6\.3:5X9.AEJ@"^E&4FK+0R;K6:,IE?0 MH/.SQ5[W+*"'KYUYY>/8*($_:V;N1SO4A\W2SI[H^+ 8="YWA^#< RW/KS0' M"3UWO-.YP.+Y+H=PL I?.<5_]_7OO_E:T)Q]\$M] CI]2#1C"S$=N$K3W=') M)C<),*G>PQN<[ [5_=(]2%@K8Z:*K O]?]7FA3/J42BLGYSA] MUG0BAN(PHZ(M3GF\HRL+=WC3:K%K4ZT$-]Y91USVH#3]-L<8DR<^:C -8T:# MRH6@H)0^GVN=0]_CG,.-J-Z>ZG]3$_1MJOZ0(%Q.]Q1A/#JO[3ZZYXV]*O:6 MI_!YS.3#I/;=&%-5V+&F"W[-CJ"V'MP(TLGZ0?8-ZZ%&=>5$C#/$7,'W9N*( M/F@,.\0E%&^73Z1C?]RL#U'R*;4_YZFJ IO:-G@UISJ/RL.ELI75(YSA/%_< M_X@^7"__=N\I!9S@*,]+%Y#@;/]32MATOLJVO%AEC'0BB8*YA3L)@MWNW7US MD'&NHQ2X'.F!I<_-P[Q_*Y2BLSWB:OFZ6)W_OM;L.U>3!Q\)_ZQYP$*\!4OO M'>!*F9<,3/F;28;LDHT"L*/!,1:9Y?6W<-FKL+%'TE8FRE\VR0&A^,V^>$'8 M)'85BMT9]G=$^!_\1:)-0K/P7ZI=FXY58;.J"_[&XK-%/;A,[&2]\Z*TI 15 M6O*WN"0]7O@[O0/$VUMZV!.1?4TH)4&WG._MM:!3W IUD]W&*I");6>X>Y/. MY4NO08!(#C\9[K'SPUL\?NT!*WI4_K;.QX'XRQILSE ^J9$C46SYZ\K!##BM MR,H#/,I"L(_IF$UV/GFR27:Q2.P7-A^?XO^)=H%HA.+-];(M/N,,L7*[*!/? M)(A;Q?[DLT_T9;++^!]?37I<9QS7%%+1P4-D$V^VC8\O]/_JF-C/JU!R*\RO M$)O*PXQ,UDB/-MQ5A>$.?]I-[K?G6Y-21*,QWA#NN $^'EAO68,9%DJ8'1V P?G 9Z$*E;J:2_S5O3R_Z_L3 M.N3\F=7C8S&$TY1DJ5C$B$+\&$;^UO2/\2]6*SZ,3._(BH0O_-B/M>N45><6 M$O3XS<'@N-Z.).U I@"3.*KRR;;PB=C3 M+'P2:7WB*?)<[,A#LEBOF5$L,-L'F>-Z2/F/Y*1,K* M.JN)K;LT=6<6"$P>,,8 5<49T=]H?F_F9S7S:T6HU@2%\N-X@5G^S/[R0W&: MK @)T@^LV?-L11]QQG'M63P[3Z*(K/B9?/Y69D(S-IS:Y$,CX16=TWI)!!X. M^GOKX.*TJSC H6, 4#VN9@O=^= Z3R)6ZA?K?+4%^?.2S(;3!V8$DJSP=:D; MB-BS!=J&($ MUR;'!M\+%A,ZY";)B'00,P\.U9ZLER6*.[+-\2_7W#KIZ"EWPAT1^>1O,35, M2SJ*@!T@7/S1?&[%OC[<(.&$POW1DD(96JZ14">=S<[#1:$1%2H]/=DRH4_J M 8KO(<,B>.%9TZ5#*>UQ5%D'-N^M$&O& L<5X#+;SNQ!>OQ"?N.8E>=5AW%0 M%R*!;V#VWJ\!S^'NOG#;J(3+;@<,DVU,0CKG,)9#CLXY?+E+1=*+KY2;DH " MQH&)AW7EECJX MH%.?,X?E6O5D3,OP3%L)=MBPPZR:/*AKP T'EG;WGCXLUTC]!I+7%<*14-=( MM\=O+DSSV @+)_Q__+C%"XZ(N(+.0E6X8O,J_L4B#IH?2"5O"0V3X/C$.4_X MQ2+2Y>M*I)VX8S.MR_6:K+*6<84W8V '&;^_4>.)%2^6P V*GOW1:PS!3X&) M/R234&X3.K[YXGF@-6='\YUR,3LDDJ-/12[$7+$8R'G9 IK6K2!^VW]'>^5O MXB_*_SNZ'_BA5[ YBNBU@:@*^X>?6?4 E>FHM!UQXU%NO9N\\PS3Y'_SV2IS".>2/5>7&:-SQWVVTDGGO$$7<. M?^[Q*EXG=",@MSWG:5T;=E?5T0N-1S[MJL+M(+H"<&W[LIX\9G--2%+E>YG& MBR<"%FFB).77^OQL?%7/MY"4OU!\0PSIS(\+PN:U'MM!PJG#9:K"U1Z*@ MX@DEDHK7L]'-4>J;:0@X C@1:$3*(\9CTZM)T[SP09]P7#R\=LX&%$D4!KAX M\NV6N;1\^&:Y+C;A<50]Q]QVK&4HV; 9/:@'&Z^,#"$8;MP8%I[S&I)D!6J8 M(>9FLB%\*[TR!=6VZ <)SJ^ G>$T3)=K63NSYCY\BL-UN.(7^O-Q1I@U?D4UKY3PO;J$= M;0OUD[Y*YMD]+(HTH@H/,Y)R5&M'I7KTLS!@VCG(9^6J*2/Q=1B3*]8W'"[) M#R#NLXK(1W[J$94K69]=9#Y&]N_H/+*+G,(.-P()*V81IH'[#/[<]Z):)7L@ MK]E9I#^2/8(:F/W V'X=;'*LT/&9SI--2'U.F6N[V("-68:$:7X6V6$[F/?/ MCZJ>V\O>''GBJ._(-J'BSE_+9IR^..P(UH:SL=VF*0LWHK1:[+R-E M&E>1^ M2V/]F^OJF02[B"S7AY"E3;2S??&E:@6MGR3@C=S=.XWVWUT,8&KT ./,FD(G M[RR/&23O1I_MJP(^5H0^$R=YZ2DE"W7K0QVK @\N'?";>E-5/<#AHXOUP_6R MC1,KOA8BYN$#+^2W7RNPJSDOZEO.Z"VJS8?X8TP+C]L\I%GT%!XXVZ6,V&F* MTL(584UZ/P?5JL26%^2QS+*?[>OTVRT3Y$X"8+.^NR^:!]YL:\.- 0X8W _( M5:I.$%L_3;U4^>M,DVU0>=N-O12JW=6UAN$V[W637EJQ\4,'G MQ$T%M6W&UE9G?HW7.$>O0$U=P;H=3'BM$[2WS6C5)6$'-0.ZYGL$1\7@ MAA*3L>ZO"U0RP6SL%N?*4O&.P'6"8\[/*E]H;;'=YFY7:;#;=4\OJ3=Y.XF" MRX^^@(;8QRPU%R]U"-WB"%6=FE=ZO0/&CN^\O35)<&JXB!DH+*U-:UM,Z% = M=OCIZ@)E6W>)]O4\4!F^O1 M'8[:]AC--6#SU +MP>MFNN)P66IC=(]WS?)E#[ZR5TH?(0-;N>Q0Z"NAD. Z MQ(]AI#W+VK4NS-;JY($R?8]U1=BY>KK#Z+W$M&HEK;I'EX/, O M5-749O E;=ZRH,W&%:-&.]V,U:7^O*.>.NDS1MF&8Z@:4M#)L 9HQR2U>7 MA-ND6^QU;;M<[$&#]7A$Z0BD;N'7JL+,FJIR:;>]](R:['"K0 M6JK #@DV>!NWL0SEX=+=RFKGNUA,.!+2)2;[3HM0(3[;%^^ZWS\3DHDGY!G! M3',-RZHS:=<6^)7MVU!O!NW+X] ]\+$ 4#A@N/7 M:\[QEA__:)WA#2!V+H&CG]_40<5-YAP"3D]D0]!0S4'%HU.HM,/_S9O/V('> MQNNM"11:ZLPD0)D0MPW99S!%MS-[Z$&[[_GWR*@K*HL@A&+)0$ MMYAF^P>*XY3-DW@\:4TIV%H--GEM<3>3#9KKP*6PM>7N:0B% B0T(%F%Y^GW M.6\*,=//C;D+TU]-$VYM8=AMV8RQN6JL*@FWW;;8Z[[8*8E%7*[/">(1R+:I MG['"S)JJ<;JF+SVC)CO<#$'5;#V/^G4=B_W.7C<)L%NW@S=LQA>SVM!S 3'" MJ /25IX/EVR%2S))FX_P<$,^%>?SP_CIEB8Q^W-%JDW-9X:1I%>Q7"9DTZ)M M>T[S823##B<#>D\.,P.(A1M^A@3GRD%F ZH5H*85^;&#W YT%3<+EJ9XGC09 MG+BDN>U*%YKF5GUESI:J]AZS)&F[P%G2LP.LGG?%.-?N,QP'F 8I^FD;L!XS M/_0B#."OJ:A8Z7..Z.JWMJGD$'(_3V8:)Z:]A7Y^#!UNFFON/A/:2E//<^(> M0Y"VR?) HF?+V,[^&VC<.X-Y]Z#H?(Y\?<_603B2IVV/,[TOATHRM*1/. [_ M)584;Y,H7.UU(:B]-,RH8HFR3!=D* H[.9"-X:ZM498]:;J?J4"A7+B_X#,E M6!]CHC.1TK@PS KGY0!ZYV-6$.S;I:+]K(Q=JI&?)1+>9 M$]LWO[UX(EFS40-)RT[#[Z.0]^2)=U]W9)M0#OPJ7B=T(PP[VQ=?M@4"=VFP M(T-/+ZD?A>PD"F[LZ O(E4+R,X>%<%2I1I)N?NN@+. ]OGCW%HLY9[LTC$F: M5EZ15/N(0?6+S?6#T6V1IJT.['ABA5B.&L8*<&.#G=FN;5IZZ5MZ03W?!$"^ MB3XN=)G.&R@/GCL\>&L]GG"1"#L&#."MGH]-PX\?0X :8GQQ\$!JZS/*8 89 M'MV62&Z[\_\,9>T3Y8MI]I&HM?I/X,;T':'%B M9&] >#+I."BV/DW1?7C22>1< H6[O\P#%'MY<1,XE3KG[2QVGNLN;0YSJ M@6J(.%6I1U(>:FX!:IH +TYY<%PS;77M,,\9WS39@FR32;17AQUQNOJA2]8L M^)&D,X*1\T9!24,QMCO.,:5[#CEW"1^Q7*99N!&WR21?)6LI#\V5W^05!]OH M8>NM,6,%V%&A':OB+29%:;C,M[!Y@(L?I>P!KUBE9/7F*7EY&Y P;[7LC[JQ MLG_\<'3)#,CVB]?P\#*&N@3,YFA P]N?XFMX#'YUL57\-EAPI'20WY.YB\4%KHVH!*.N3BIB?$"&"& M.GA_HECGI M8?HQP" 9#?HY%SO]T?FQ?Z>A6,^F4,_A5;S2,OZH %RVJ[&43&]^"YOE&EM= M6XX0QU?3)F7W6"#\D7HL1$.1F3^107%\GM!MDN?DTM+:4!0NP=OPE537E8-- M^E:K>V1IXX*1)'G20# E,'_!84J4/I8V+\*7,"!QD"K6BW1E8(82(R)YS;)1 M -[LV&RF:W.KI*D7C:9M:\K%%WVIF;2WXZ4839$9M+F!UC*D5J=>FW$>%-WS M3_[R3:5 .R32%H39JMJQE<,A=2G8@Z$6FYT/9B N%_WE&U1)GG0H-!TL?P.A ML3!NB=CA#0JY O)@G5-*,ZEC8O^J.R7VCU^6GV(&^3G<*@8_JN]AA@PM$AXI MCKZ$U_GH373.0E%*\[%#-B*=-H:[K^,PV:@A?/(U M^;'Q(05 GTMRD_^:7BY0[!Y3\L\=:]:7_-;9 U-E6*/3EX89>BQ1-FXTJ(O" MZ[!M#7:>,U5RD1",N&2/ZWH*G,85/E/YV;56_:J?MO"L6NQ HS--FW5?%1RZ MU2H'=FUE9]5:CP=UQH*S::5#K40=ME#- &>:7%)AG- PVXN1"$FS:G)S2RC/ MV(N?R-G^%O,[[AHG=9, NR$[>*.1=9 M6,9Q(%Z''/7\'B$6/%9@\X[GV&W>UQQ\TFB>^S9/5K MM43/K+Y_9I9=D%7$_A-H'&E9%7:(Z(*_^?1C>SVX0:&3]3WFQ$P)$EJDG2BF M!PE%J-0T1AAX(?0Q,0>"*9V0"B<$E1.^#&,4)!'3D:(MJ)+870P9 UH.[YPG<9I$82"V+\7KA)K3;=J",+GIY_]IOS:*KE)XL(.(Q--Y6%SL15I.,DZD"7';:F>U\YJF4 M?O28GI?IXD2@/7:;A6[S\=B#,L")J$+4()Y< ##1E&;V;&-^YH&C0AHL1UGQ MGN#^EB;!;J69R!D+PB1&.[;J!K^R%.RK5"TVNS>N7"S:%G*GO;\_,JA2KL?; M^Q,A'"HX?,24=?S\-E82:U=YC 7A!@G:7.ZD MP6%<4+7HZ+PR6JC=']]T**1\6X=-\$G09PF /^,F+BO_)"U>IYIOIU)L-R ML[XT;(JVH&P\BJ8N"I>:;0:[ME+5PUT>\Q,\4!RG:T;;11S<$_H2\D?CEVL% M^I3?2D_57QG7; =6 9L28_A3YM&0\N&2;Q240S)V^*2MQ:OLBS0EAB4==2F8 ME&A!567..BX">R7'9+!K&[LC6V:J:%C9,V$#F'5"-_GLBHUJ,M;0^+@F2] J M5XZPT#YM)JT1W)[\UW;924-K9@X?M,SC%](FN5CR#!&&Q4OI][# M&=D)RMAS@FK?<"T^MGBF_?'9AR&880PN$W"^N*] M]?2.K$CXPF'_0)D]Q:Q$XZ/62K!9;H=99K>Y!EQ66]KMW'45XE$M_P0]DG5" M"5I$4?()L]\"L7^BH4.^%WE-YA$H>>>(:O)"[_ T^)/0BV3UF MZUUT[( 6KG>4 9SZ+AYI1((N @ '!B<8@\:)B0/$M[E38G[J@P3&$#&M;QIN M" I]"!<*?82-JYAG[TWH_@Y_^LB\14,$ M_GH5W])D1=)NO#;6G FQV]$KF:VO-@-J6QC?G]M<";J*4:$&%KM']$!.[T], MP6D8GVYS%5X)_B&,P_29!#\D2="-X,::,R%X.WHEP?759D!P"^/[$[Q4@H06 M6/P>T0$YO]NP6O"$+LT(<#/_;2@4J8$@7#NQT1'G:']TW_ 2OWQ.23\ M*&?T18+)\FB/^:9$:R787+/#K%KX5M> RT1+NWLO:)7I2YO+ M]W)I0HVQDT-F2E1[@LZ-F*,1$A +!V>?)_+1'0FN0_P81F)OW+KC;*T'GI)V MR _8::X$FJB6IO=HSUP#DE0 ZD;;93L";DCD=@7.T*L\9!- M/=B$MD8N$[JU$EQ"VYONVJ9+#:A0H6*V%SI/"/V1Q&0=>DK90=:$P0F*? 9F M FL+PV:M&6,C+X>R)%Q^MMCKG(6C$%LFW_![_&ILD#27ZW%H?!6G.\K/<[1. M3#6E8?.O!:5B\'M8%"X#VPSN.]:K!'L_ CD*S$J@-_;AZ$-"'_ K29?9,Z$/ MSSC.,XB(SRP(:2M@!ASMY(LCVEK5!L[D;AAZD1M'B.E"0C 2VA!75^;4R3_W MSOEI')*#3803,NZ$)"Y2[0QUY7(1O/ PDWY@K?Y\EV9,-#T\V6 J!Y.]KB5:$%K2* MG1P'_$()=_H0? A4VON0)*S&D^:VMK$PX%C2BK$**-J2P*-*N]W. M1Q,PI7N>3$7D"N"1@T48GG/E$4?BL'[Z3$@F7J;EWR2/49AGD^37M460"5AQ MFNR>GGDG6)3$<5!NWHC3_E60RG+3IPU+XWFOG/"4LE$AW,\5[C&;R<$/Z''= MX98F:\)ZNB1FPSQB-=LQ58(9U[IA5BQ&:&H G\FTV]V7J;)\Q!6 6*(8"W4# M;2HRQQV=7YTF5R^?)6DW&S7.::T$F[MVF!M)>XTUX'+7TF[G3+9BBFW81?>3 MNW<"T'XN5Q0K)9>O6Q*GY"S?Z#M/XBR,=SSQ9)Y8F T!6\["N$F"3>H>WFE> MQN@L!B[]^X!Q7X,O%QQ1H145:E&M%]6*?1^T\>BCC/F(Y%J]G+RIH-\13C 6 M)_,7I]4>660?2,!<$?&7_7;\QDM=GTTMV]P[D(Z9!*$A/:H,3T,HF$'@&A3F M "&M:0\R!+M%A@JK4&667/[N^-;)Q $/A&^YMA4_J24%PQ.$,['4]=.;^S=H M77@QK;P8UN&3%LM?[]_]+R]G%]=K9GWX0AI.:3K6+6X.(QEVM!S0>XT3DOW% MPHV,0X)SYFQIPV$\.PR/8&,@!"_:!3= XT+QHO,B#JZ9TDC:MN_6SQBDP(Y6 MCEZQ&+WI1,"-0JY AA^!"96(Z41":>.\"Z3AU6BNR1U01PT_R\@:U/E27/!? MNR*3=#>?*6K/,D3HO& 1&@ZKSBXD: $,'PJ*U>A:%R3^#^X'(= U::_R2,I% MF*ZB)-U1(F3SQU\I>683LFJ(ZB3V#?*J"&7B""A.1;",/(+F5_LY=P'/UJN%J_M0%.I6?,TIUSXQY MC:)%OV9PS[N./X.=Q'G&Q@[>L@F#%N+F%_&Z@!HQN,TM>DWA-I'?T\OS[SBD M?^7W"\[V'PGF8U<^+3KC#X"9GH%OK04[BEBB;CP+;ZX"-QK8&N[:=+E\)!2@ MLSV25""AP^.+\15C*Q=4?]13-6,BVVX28+=Y!V_([;]#=;A<< 'A?,"_ZN&0 M1!'I3VFY0)-2=YJ4SL4ULSNR91:38"%NLW9E2G^X6MF&A>ZRH(=)GIY2 X9 M3H+@AH]^<)P/2A9:\Q>C\O3 0CR2-?-5K.:W/POU?D87GX.G)@E&UTG\Q+RY MN2"/V0/38UB]UA2%'4I,^.1(H2H'-Q 8K75MO:50Q*4B+E:]"#T-@T>#>%IA M/!$@(;#N(MG@\/! 76OA>3&OB='$O;SD?-AW8.^0_,M%PV#@@# AQ_TLQN7&X:CG03 )FMW7\@]8Z/SS2_C2%=9<#[\TH]SCTO- M@U^#'0UI\&OH8U,IS:1FR/Y5-T'VCU_.^3$,0K=<^0W>J-88#<5@-K\V7+SQ MZ+8PR%.Y8"C:UVXC;2S M!\J6:UT19G/N;OZ ;5P]@/$YK[X.8W*5D4W'V;1<#68;[XK;8N9Q=X MRS[/]@?^Z%P9)H'=?%"FWK"O"3MSA@,.U^9=B$51+A>M"L%H%P?BX3>"^/9, MBN*$LV!;?$8+5N3]W$I8BM:%J9,FMYC05X+ORS7*E:%2&RI]6.A#I<+)7\CQ MT6X2'!>/M_G9.V?Q^(ZL2/C"3\V(VW+W6TIPL(S_BFG(/S3DA^U0'6:\=/5# M<\?=KB[< 5!G!.[;U4P1JC45US-S76@9HU*;OZ2LD_GBBL]S2)H5V:-C$0I2 MUC-L\7YS?/_"TR,#(T,#8S,%]P&UL[5U;<^.X ME7Y/U?X'KO=ALU7I]JW;W9Z:R98LV1-7?%%LS4RR+U,P"4G(4*0"4FXKOWX! M7B12)$" !$D0GIJ+;0FW<[X/!\#! ?#]_[ZM7.L5X@#YW@]'IQ]/CBSHV;Z# MO,4/1YMP_N'KT?_^^3_^\/U_?OCP]ZNG.\OQ[J%E8PA"Z%C?4+BT9OYZ M#3SK'F*,7->ZPLA90,LZ/?GXY>/)QU/KPX<_1T5<@8!D\3TK*NOLXVGZQ3@I MS?>^L[X>7QR?G9Q]LLZ_._WTW?F%-;U/D]V3ALU113H7>;]]1__W0FJSB'Q> M\-U;@'XX6H;A^KOCXV_?OGW\=O[1QPN2_>3T^._W=\_V$J[ !^0%(?!L>&21 M]-\%T8=WO@W"2#F9[&\OV$T+.#_>U<5,0?_ZD";[0#_Z<'KVX?STXUO@'"5- MI%\+5)(FI]\B3OJ,+''Z0OF)#DXO+R^/HV^/_OP'R_H>^RY\@G,K^NB[<+N& M/QP%:+5V:5'19TL,YS\CM U7_R<7Y"97COR8)-=*?(\^Y]D(4;F^]N8]7 MD1:/+%K\3T^WN9;8_FK]1O]/\3P]N3P_.0[!F^_YJ^TQ37\L5G0DJ) *CYM) M^AP2LM)VC'W/@1[A-/DE\%WD4!)? 9MZZCLBH'H9DI MP.2K)0R1#=P>U'10OX8Z&X-@>>/ZW]JQ/8R:.M/#! 6VZP<;#!_Q GCHWY'Q M)YV=S"T0:=,4PX"TKM%H(U5%#Y)?;0+DP2!XA@N*A(+Q5:CH'B2]!_@W&((7 M%SY#>X-1B& EK0\D*B^B!UE&MNUO2+]Y@C9$K[1!#S!L#!BCU![DN_5>"6-\ M3/2K0K##XGI$; JV5+'$ I!/\ 8Z=PB\(%>(C<( \BOI0?HI]E\171?>^#B> M/,W FP*!F>7V(".9(:Y0& UGT7R1+"J\!5D RYL9;DD]2':#/+)&0,"])0M! M'*V:FD-77F@/TCU!ETY&R&0LW,XP\ )@TS&JN83L@GN1TJ:+W=A $#J1GN.1 M7VTHA&9!,GYA6L[@IF3:*=(9%45K.0J/' ?1 MG[3%NW%C0@PNJNN!4U:[5F,UW49R-BY\G+/3*%*;FD9H,N;'S5$QZ.]*TF74 MWZ-1^K4B-C2INO8EC(\5Z:U>I9K,8L8 MXRWR%C\#=T/AO Y"M*).CQN 92>(= M*3ZIA!;32GA)1BSX%D+/@<[N4Q322D](HT^L#U9:4/97X#E67*I5;U>-RDSQ M\>U<4UP:H.3CHHH#4EQ45 #MCPO_]=B!B&K@G/Y":7T>:9;\\>O8?X5X]$+Z M%6%46I)+=?W#4G'_]_/7SYT\G7SY?7'X^.SD_ MV;_TF*XW6T\?_!7B)W!_L<^ZM2#26U^8*-]K$# M\0]'IT?6)B!M\==Q;SZRB!1SB'%"?$XKHR:&$ N$-F1\ ]Q\0X!OR2< !\"#EX" 4:7\"XJ>!@1A-YZ))7*4M/4PZ.!B% M!$AP_#P0'..9W0URX<-F]0)Q"7Z'20:#FU##$[PN!H77$UP@*K,7/H!5V=!7 MEFQ@N DT/L'NRZ"PHPX63,Q'[/2F4:ECZJ?"V['OL*'DYAH8LO*R)$!_'130 M,_!VZQ!-H3F*C^)46%A&^H&!*R-% NOEH& =.0Y1>I#\N$,>/&5"6I)V8'"* M2I!Z DX&CN69!)9G@\>R7((4RZ&X=7+2C(D*DH [%UY,3<.H'(7#_#ZVY M,]VRQ,,$M%J$%,ZA>'VHR1EA"!@ 9K\>#&25C4Y!&HI+AY[\=Z=+WV.[= Z3 M# 8LH8:G@ W%IY.$@6U/SUYF=#^V!+##)(,!3*CA*6!#<>3,,* 7C3QO5R^^ M6X)6[OO!0%7=ZA2GH?AA4O)=O]E+X"T@PUE:EFPPJ DW/@5O6-Z6\093U<0; M+I2=1.NE>X6\Y(,!4UJ(=.]^6&Z76X_41V/ 7N$$A""1E^/[+DN>U\=74LU7 MG4&5$"(%M:G_I;N(C/U.&QZ31>S"QUON1N(NUD#'B1^Q_"Y?TXBC@L?M>:>J!(2DN0XKH4+PK M"5.7T'6K@,PF&AA^E4U/81N*OR69M/FK%=W-]NW?GI=$1\'C)J0W&=(E%7NZ MRLDT,%BE14EA;NJEZ7J6,R9ZPO3$@@/?_@K97?0@W=#@%&A]BN!0W#;)G'L? MC;HSJR,B MG!,)Z(*RH3+W_6!0JVYU&K:OW'?S_?'A"3.UQ\[D+OG-8, \?79Z0D^?[Y&#^-KZ_DOU]>SYZ,.#J'-0? 2E;<) M/BP 6,NQ"X+T(N'1&SH<6BO3:\L -I(<^(6D M,XL)69$G_@J@PX Z=D)ML1>"L4@#00D-PS]:T$>BC^YA22 ).Z%N^ OB5P*\ MF&A:'8-N9/7)O!#>DE\KS?TNH6Y8-[/S?+$4G936I(./@H#,T"OFH_E$6:U\ M.3DA15[J 38?MR+@ F*99[DU^ MT-= 7H$+Z7W?8>[^(M;P+I)73W:( %TRZ-<6V"S2E-U36!ZJ(Y##)(+(BMGJ MM.&T\Y&D[%)&/B]X64PBAK2<+=SI<> MD9YBN ;(N7Y;4_<_&2P?PR7$.04R"""0TR1>U!6WA5MD=%E\B"PZ3** ,-B- MCROY(7 ;@UVX.I1\$,OPX'MV+$5$XMD2>%/LKR$.MU,7>"&=+*]7[.5E_8+T MI(,@#Q2+;98/*M+$?KHTFI-VC5S7_T:WD&]\/";RH/#.#X*]]A@&I$Y1NA!+ M,4>*1DB99< M;8@RD;>@-O%VM<;^:_Q^ZH_8+YSX%,IC,"7DY39K:GP/B)X]B+=9-?*(PLY@ M,$LDA39KO* !_R'>1,_XW-*IW8)>>,;C"">'P221E=JT;2*&(GE$X6U3:3'>F5DVYO5)GHJ; *)!#9*'@1;NS""U'-&*WHE3OSJJO1R6U'Q>23. M3*)@JRIJX:4%'6T;._B!E\5@4DF+K>I9!TVL6N26X+H =0._06PM#U!#W&K9 M-V8])SI4LO1=(F% F1UN*UQKHMEU(T7M6/M& INULLZH0BP4GYU!-WHT0IE+ M&A'!S7+6B3Q=+19Q*U""QD020;YT$MM(=K.X%.V0"?.&D=HXCLC(:5;XOC 5 MJK1SWMLUNLI8("BB*M>M=M/7_::Y^#2DF$=C6BB>B0C*;M:<=9*TF;[:MX(S M\)95"-/749%+8\X(@EPD2AV1S9YKB 76E68PD2"2TAH[[ZBDQ;MAA#09VIF# M=$X&::>9Z"BN%2U4S#XD!3;>4G&0+*^93T0SY\-&7TA LU8>(\=!L0!3@,BT>@S6B Q?&4VPO)^5&8VC M1TV1S1HOGF (D >=:X"]*'XS&\XP1S9B32^J,QI'F)HBFQ6@EA$Z6IS19RDP M7$(O0*\P7L?3,Y&C5X!3\AR/- M%$;GHQRPS-<>SD1?>WB>D1_WUP^S9^OQQKI]&#_>7UNC!YKJ?OIT_1>2Y?;G MZ^2+(TT?@XA5LY.VPM')3-WU2NH5>AMX0[H4[0&T";^@<#DFTRO2/'S]9KL; M>D2.!GV2?QWVQ+=&2;J9D@H$\ZLJ-=(._D;QL1^0&3B]3R0:7B%^138,GGV7 M=P;F/X2[N#0;7;T2-1'#D ;R-%M\TO(5.B/W()2A&P6ZVT< RS#^(2120#\A49K]DS4T;JP1-&3*($;#U> M *X#]@,,*VQ?]\\Z]502IZL2W9EU?W6)EBJ(R(P0(^;.B[Q8_S2/+@<1,&(?#H'B2OMTN5,6!F-)OYOZ_IO/]W._J%K3-!.N#(U51Z%%,K;TP/RT:OK52TO/,W^Y>1+ M[_&E4IB4/A[/%LNL(WD[@6/=T#64[T7QDF^(Y7KEYM&6"FQ$.300EM L5F2. MFMU#.B1R8HASZ;1%7QC(4K^"@)"#C_)CG#KDXL_-8R(7Y 4>?!S@X>%"+B'* M$YO(! E)6SA5H-W12KZ9$,UO(E&:"3_X&,,#S4W\%>DV+&]E65H3.2$NJ%F/ MA^\]#BX(4K^"R$KC,+VVI*BURA"2SJS[0.))=23X2&")D4VH+?9",++6%Y42 M#GZ!D54/=Q@H)LPKY&OOH<:-(1>3T*PN7SS%6V7U[\J.^VJ%?RUSSQ?+K&M\ ME-UHH1'H?/S*@!<239&!7T."-MV]P6'_\#>,Y!TPZ-52:67=;?1&T?MT';4$;.H!NHRIX,$%=4'U3X9Z(<&JP[,+0:$#II-:#33U.%7P;;AWJD7Z M&2A%1&53=, UGH->>VQSHW-LTS3"80E#9%/1!0.=/JL*=++^F&O __P>^-1] MU,-NA$[#C.GP3&=PU8$0S*SY'G?9^\-;M8.D:@O;E@M3'V-"Q;]Q_6^!H-GX M5"\^G5/_F;>S-N^-)TQF,O)WG+?M;._5Z15W G/A6; M?],C,[WQ/*FG@9;]I)V/+T1B#,DZ<0+CGQF-)IM6U==="Q;P;AC54"4M7#>H M%<%&MNUOO#!X@C9$KYS3AB)9=2-50^Q%R"2HA*;+*OTMU:WW2M @[>'<9\K) M\PZI4R5]T[63_IQ).\\4;&G/H0M*V\8;TMC]:S+2YHA76$[/IR>][S=W:*"D MU:+5TJL%\DTV<.:/YG.B ](_Q'EVD.\=4DI$ V8];%C4P13#-4!.ZM-(5BFD M=T4K&/H>22A.*9'"WB'/:JO%M'6A^.*H\1:8;C1K;5W84"4MW.:M'\'H##50 ML=?**4@WPBG::Y65>/!W%)#Y91IO;?]K@S D&B%]*=Q.7>#15QYH4,N:)F'M MQ0H7H!ME%%&@9*^VF4I,R+IZ&\]Q'_P09C8OJ$Z> M8'13SA1@SG@J4X1N)&O(A2*Y&BO#K*B[C'Y'SBOP[*R[L-ID%?/D=79*='9F M%H'DI3=M'I3?T(=H,\TMT4N+@X!>E&.$4N+EF) M!W\'8VJEZ>7TQ=/C%0-;>2;=J*$(:O8()Z$&LR9%5*WT/^JR>R5+WBAFB*@0 MV63\I5^0M6_^@TS*:728M[A#9KL;^B;"]9N]!-X"/I%^?3V?D^5SA0WKIS&Z MD5W6#FJDM<'?2=JM+K7H!KK17R,Z]]W76AU_])C_-E+H3G43%*S] +@_8G^S MCIYN#^SXY6SH[!_.;J.[23;A]\[656=3 8RBW6^M[MW[O>!F\[G;[VYCU_G%&37,$W$;.$B M_,[#>..3QS"@%^0\0,XYNH.$VN'> ,?2V%L1>3OQR+1]DQ UDJX?;#!\Q O@ M);<7$.M)'R4-'N?33$5'.2@95PB=GI!_K _6OF#R1[9L"WB.]4)+M_RYMXH))G!@Q!2W=6M'1IF580%VJA M7*E:VK=$_B>XIO?7>(NJN2$S><>%WONOC32=S/%:=EE,\$U$_B2!K^'V[TB*N_&$"^@ZV7)KF6W7M*V M/3:%5GK.&&+Z\N$, ^H%B _"B=N"MJK+][!S#=Z@EV5,?DG4H9:TMT.5,XOB M/1B9U76%:?I4-$UI<1;>E?)S!S=#\Q.&B*R.#. MRJ);-Q7 YG!$EA)M^+U5YH*Q@&0](MQEOQ:[;*;0:#2W#XK5LM=R-"'13[][\6A@?OGC44'SM+43E$+_;O+SUB*8VN6LH*HS%9=%8[$JS M\L5I:21N ,(_ W<#]R)4S?;Y63KVN96TI=+GQLNC6P<7P2?G?),6;OC=-W,3 MP':&@1< .Q>^R^_"IR?%+IR42%;PI$@KS)>I93]FZ:#2;5Z5K>LK-,K;(SZ> M2Y2@6U\7Q3!_1T8S<;7O_86^;I/\B8>"3%7(8MHCO]I08M ^+0DLC,NU]@5; MA9*U[/TF5YD3%47K8F<4 M-BD(A9[Z+A+V39R=G)Z<589$7Z4AT=EZK#^F-6G[ZK)IT=&E M[YIE&Q(ALF59H(K4NAB5UF*0Z\@_^*=5$PN1L961U'RFR&7.*^YS[T=X6PM> M;Z".MJZ-UB$D?19M!0J--^?T#BR9P'3KCW'IVHXQ0XU0MY?0V;CP<7[8H@RP M5]ODR\JH]7JEZ68XI"+9%8JL_;14(+I=R@B<%XU )L9]7ZCVO;_#8/=?.[_> MN!3F"DO S:-;?Y=3?M$&R NK?4^O%S\NU?D_%3L_*XI<^_X_J'#R_9"5ZCNZ M!/G.!Q[UJY1$68N/^](EZF8+!$/154L\?(.0#U27L@2?BY;@,%Q=>PLPZ+CU M/9MWC1IO,.TJ,[GNS\^N6U^7C&=O).;P.[A(\*Y4M[_@3 J(MRU-P>##G4O M#FZ5F,O/$,2+S/>G"]*?/@TIZ%VYZ,,W)8S(=RGK\:5H/=CQ[]K;BT$'PN\9 M'M^MAU[AKG7TQCTR"?;);)@^CI&ZB<7MA7R1NMD+R4!ZY:(/WUZ4A=%*&8O+ MHK$H#:;5WDZ8$E5[M;T"+GTWYWD)81C=ATE6R\(!MA79=;, M6-MZ\@Y_.Y> M'=PRA:Q2=K5;M]DMRK@!VMJ.@_WJZDT) M7H;F 2MEL'K.,UIX:(YLD(O%3*J/C'-)-$O=HG2S$]4(I?$K2B76]^&6 -H? M%_[KL0-1S'#RRY[8Y(]?[^ "N-=$T' [>D.'%VN7I- %<^4H[@DB*O60<8]% MF_@K@+P2T+-?ZX*X*"QY("LET0K%4DO_<'?K.1MZ.3H,[N'J!>(2&UY,E)?V M2V_N8B$4\N994!C]H2.ST"4BRT\F;/D$ X9,0) 6@O<4PT6/V6+@C7V\]N/7 M!)C L9(.&$(ID5I]@KSSMQ1VC_253()*T^@"'B ,K1R1% VP=8$OM\S/]Y&_GNZ8SK7-Y0FUAXT"0-]$2OC-X_4MT3K$CM<^%X7.%NTP6(R#V L%L6]U J7I- %>S& M&("V;WE;G2NOUG^_]4@-'DA]R>QU#B>UEE *6V19P?0'5IV[H9\'\>KA*"J0 M_HO8YCZ'(>$F(LP QD>9<)'TD.78!0&965])USD*KEIT?E]IZ=4#>T!=$J M@5E,-#W7PS)V?_,2P']MB!JO:?C\C%3%L_KEJ75!O0N;+Z$!14^]]F(#2N3D M&GYF>EVX40= (?@-'00.).6. Z5I!P"\U(@@+J1N#NX:)O$.>?"6S),.!X*F MQ>E"BA9'BE94E%#JPHS%YCWRHJHC#Q<,PMT"?0HQO9@1+.#5=AJ!Q[ X$B4, MG')\7A3-5%/-:.5*5+24B:?_Z?864<3SDBA@ FV7_'"XBQM^UG?&K=HJ4>3? M?(7XQ2^A5>>WK^RECT\-3D"X4\ $;.]]+UP2Y?\# M:42:*$O$8O32=94\VT MZI?5@FF/5QMF'8B8H L M%A@NDN>HGN K]#95%X!6Y-*.176Q+MODD)=H;X%='7'S,O MRV=?+B'-",J_XN[OJ:Q"-YK)T*1(LM8UH]LQV^3=0>J+XFP[E:32#??6DW8C3=%R2%[8%AUW_G)"@PA 8P$=0C 5=&83ZKA96 M,$)!E-&*KO;_#9VQ7W""".4Q"?/Z K?JJN_O^V_0,,BZ_CRVCT,C7>EQN_"Y\_1,9/I M?H9NKZPJ)UAIRK[?AW[P0]*C?#*7)_/X9(;N+?9-%3L])U5:OJ>=]6YC. CR M7X.N+ZU9NXPOG& M+2JE@D$R99A.J,:Z:&J2+F-^>33P/TFKF5%Z@*&L2=IG,9T_LJ*K\J)V$P=8 MZ46E<54>(2&" 1$\_Y>4M_1ST5N:*>U/UD/D)2U\I+M'-&WP-N-XK@X/9.;H M.I8Y:4I":)[_LS1MO@>EA)2F>5!V@UD5;[(8D+= M,&\R)@M*9RCV3^#;/1G2, (N77;1JP,"B%\YQU2K,FK+#3Z^'&+(B:J5P5=' ME%]\_-NM1P8\F\QZI)C"SFD>521E-=2HW" /!4OH_.C[CAQ7V#G-XXJDK&9= M^+33 A&\BA0DB7GHLX0:UEEOX4C9Y#6.D>>03_"&2(' "W+C\'.!-%+^X M. M].PZKL0"GF.!N!K+W=J M3[UO&@F@D"Y%F\EHUL2S93]R?[QH#G0CO[*99&GF5^[?2,@#*.57UA'T]OW* M&L!:"8F\7WDP6"KU*P\/2PFIS'(#[-ZW$'OI8_AHRXC4PBJ^FWDY:Y- .K\N M2*NX&99G$G2YN0Q!#Y3RA/GM?29:.F+$?20D-:L^X(2!=YZP0;3\SZ5\Y*R MU*:R0D9$W3D MO-).$5\4GSRD4^I"*4MG&NIR@B;@?M;"6+#\9E0?J1@SWR[M"H,.XQ/+/ KH@:8S,4SLV_& MQU+AF%^*X9B[8JVYCRT4%6R%M&3^E[J'7.Y4)'%DGY.CC^?'2%.NW];0"^ 5 M]. @91E#KOGC(UJ-+8+\^=M'1/E"=H^YY-)FV1 AD*&84WD$@/ M7!ILNZ%GD1JV>QVG+LD;'%**+[VSZ^MAN.2AG.UFE:$O/1M912MJ^PX/; M(D[LNG/^N4G>494CS&%N,XDB)&4+.YYF3.Y/!\D $;%4[8-FYNS-MS[WO0*D$OW"^8^#D#^Z-M%+:3-_"JHV\A16HPM; M=: ?8P.Q;6V;M1"H@(ZCG%-)R@N4F-?WE]YN@1D6N^LJMI,8WNXV.,M>S1X# MC+?(6_P,W U=HUT'(5K1T/<;@'#T(>.U;9GMS\OB]N>N3"M3*/D\;8\5U1U= M/+-KDD7;E'SASQE%Z+X_NM/K7AU5>XG\+-U:PUU;KK97P*5QC,]+",,?L;]9 M$]AX=YR+9-7%OLF@E;5 M64TZPA)1@WW$%"M13=[@ #Q+J^IR*4M-V2QYM)& M6')%C.EE;;$;B7>"EW0T[N4)$B5HS!MAL(N4::J (=,GG20\P371 G1&*QK' M)DLAR5)THU%3 A0II4(A@X_>26>;9-I;US;)%&$^JQIK8_ [XGN#7S)-V*UB M=A>@C4$D(?.^&57%ZD:]5N93"E5CUM4 8Q LR7J?_KC^UP:] IYFBN.9N.54FN%E.ISO?6Y"FK";P)9R1>CB>IK*DNE%# M'P!9Q7#G!\6$@\=84C1%5EO=-F* PPS$ MY*\]O.2/7\=T2POB-17K :S*%HFL9+I!V\98+B6[HJ,ZG6'_!-<;;"]! $<+ M#&/O[H&LI4.U5%Y=6"*%9)X S63M,;"@I4&ZGX,US9&0'+A/#1NY,Y:P:BNU M*EM>6Y=$6_T>MNIA&ISJ&PU@N?%Q;)SI,:<'W[.K+TZ5+,HPDBE7 MA:+9C]O[6<=;NK2 03CRG EZ10X9WN,3=/OSH Q:">0TE$5U)>_DR$*_O MCV, DT"F/_\_4$L#!!0 ( .Z!!EE% *A[V#T! *!;$0 4 8VEX+3(P M,C0P-C,P>#$P<2YH=&WLO6F7JDJR/_S^?@J>ZKZW3Z]5U&82H?8Y^[]0<9X1 MIS51"=N"=EGF_ M;;'[8W+S8/]GYA?]B\ ("B'O<>J>H)%JZ;'A^MZBUK-E>[D=Q#U\&';'L 1Y MA\7 #V3%, DK=Z2"YUC\3(N*H2!(52@)3A'T9!6:471P'1P^480RH@ M)J^?,70AJ2"Y3.?><]"!+$_^N1FZ[N3^UZ^^[/3N+'OP:_.#WV?R9M-8U\SQ M0\OY?'ZWZ-EZT)K ,/*7_W,/TF/;?.%H3UK/R6U;_%>[5!24(3!D5#,=5S:5 MQ[O@,U7WX<;=5\1^K7_<-M46+NH Y[@37[I9FP.\ GU"_7EDVG;]F& M[$*RP@?A,11C4!+?/L>QW7T"P(M/!J]HBR /3X:F.19%X/'7'KUNL;GA MT*SB+,O^6OB<]=#=/79YTM3_]9%3/L$H&; \T$W6MR3V)3=S?\*6_X,]/ MVJB:,]'EY;UIF_U14U5@!A]A@[0M*_Z0$<_4W+K/82+\(*6T MF:8"2112DC.4;>!(26YFI-S)0.$SLQR:H3-Y><)R-^MQ+M:WICP[H)]$2;CD M,X[4L"1:(K'UETY'2'G,A.[P@ 9"O+P:L?U\[091@:(9L@[GEKA!3-F 0]B@ MRCTOVR8$9J<*;,'O1TK3/8B4-XBF_G.3#48B56MZ:P9G;,4+5FPPL*M$C%D- M;OY@=R3Y]Z^GP_R685.[PZ8D2VP1;D,Q!+XU+@^[2T[KQ!-?'S8C6<7T)#.M MBW*J4^$2EF/R%!<,F_W>8>,'9YML#KB4MVH6>;IJLU"FVU M"DH1 Z#7Q_%I*DV$3[W \J@T X:[(2BTY M.+)DH^3S4;> -AC"87+0C)$'H.P9/6!7^IO!!X1P*I[K8[EOFSVA1HP8L+52 MR=3%3*Y;K0Y5IY'T(#5P@L0Q^-\9*/)AH3\N1>(@V\D/!9?F ==O3CI>;K%KBF#L>2CR8:@X+D68\R:T=)8YZ'G9$VO] M+$AB%R0MSW3M9=)2P9/.-;I=I MDL5C7":S<$I,SZL]G[:D91B:ZWN1#F>J2?A .#G0[=2 \V24O9I3HGIY M5!+E2I&3NJUQ)S8?^/;AR:AEM!"/YZZCU!CQM /E2 \^=OWTF]=P+_$W81"9S6 M>]^U^^?&T8R)[CNCP;5AX,4KV@+=1@/N%HZZ??KN(X.OCN79P;? I[_?4"'H M[G,J;,8I!2CJ#S.IRXY3Z0NNI8RYA>8\M/ I89G!SUP)^ ID_V8>>JD0$RQC M IU(GV3[#P@>O+F_Z2YQIYR"BA7M)SUW8:KC- &5[:;?($"8[3=H=,/O?0W8 M2$ R<# PD\P5G@+,\YNWCW/ P._Q^JL*7[:8Z)JBN>NN(:H&?PV"?0^L\"*) M;O[L]^L)ZWV*$U]EICIP9 M 02G9Q4N]!SU^M0>'NMUSR^GJIJO Z#FDS4U9R;EB>;*^F::E4JG7T\SI8Z( M5D;9=INB[6*L=N'3_.J0KWRV%6CK>+J_G%%QA\#VF]E@Z!-R!GQKWP";F1_F MJ/FPYA6AS3-K&A9E5I:%],7/_'N'?QE<0&[N"SHOV<@4,@4='+;P05VHYHQA^C@J7=1&&^7W= MNFBWIMZ<-Z7T6%X6:9:J+6V:O'0C\DS612AF^]W616*6'Q $H2]YKY7#M11M M3ZIX9%V$E M&P$SAEC64Q<*H7T>]>F:^XD\NIV<=_$X(^:RV5;J.G8 M^ZW&55@F^'7KJH:AI?EPV)F/!=0M6^-:"13M2S>BSV%=A6:ZWVU>6>-A31VN M6@M>EI2A7B@TV;0PN/2I/[-Y=60V>$R].*N!46IZY61#'RH8?&%:<4:-KFN& M7QO\< /C),'D(]D7RPR>ZY.H2/'3A6+B34*N%.?A-UE#95^$8GY?-R]&5K>? M(J<)E2_(EDX;[C@E%B]]FL]C7H1CMM]M7;A,8Y8#TXHEMC2YG5RVI24^N/B9 M/[MU<9*EH3-;%V4%RSI$9Y8?)X5%:S%9-NP5%WY#]*=;%Z<((QXK>B%KI>4< MQT2QP#>&97QB]2I,^#DJ7-9%&.;W=>M"+?=K^G@YHG@C6ZXO!1UEJ504O+C< MV7ZW=3$0EJ30U.YF2&BR$VH;2OB1*'D ZSX M*>-*:?9D)X5FQMJL%E_(AK,$T_"S5(B,J[!,\.O65;UKZ/J8I&=8$E.O8,UA7H9GN=YM7RK!J98=J;B N6TZ1S*%VA0"7+N+G-J^.Q@9O;%O> M8XJ$YT!H\U4RC:0A* XMFPZU7;4CW%W0+\J-K7YSW;YODDFI/U1,5+ M&D;X9__0,&_^P''>'Q[G,:<93J7M^OL7-UE&\'\/$_WXVP,!U9VFNP&][2]G MY(F2;,,?'F5HRQ.%13K5M5,JOVS402'6&F8E*_RN]LL\<7B2?ADG MFEYCP:=C9EJL9%&V7VV:XUXF_ 9"F' "OUB>> $G%NTB.N_GNAX_S4U&^FHQ M8>I8^)=]PH03Y^.)PX5AOHP31H.9)-2:K6/>D*U/R^7%Q$,CG'@W3Y#OUQUD MZ'CB!9S(#;FRBH[2R7%FA)%*H2 .6YU+YHEOQHFS\L3AXD!?QHE8JU*.9RL< M)0(YU10&2K/$LI=L8WX_3KQ7=X2/)U[ B5K7%EH82&5X83AWRU:ZT(G-+IDG MOA\GOITGGN\^=VQ7"DI" 7L"7[\LRP9XF/>FK ^UG*D\6^\H6N8 MC=2H.\/$7;-:4\I^_55DD-3\AA=.S G7W_E^R=S M-Y+_?#9/%,\[VC[]C\9NCI6AUV4%4EU:,D9CG)?(E1):HQ#^,%\(@[P7%^DY M$@=E;+;4K-7%SCB9\ZHMG37)!A5^9_\"."CT,8 C<=#2JC6[XT4JS6>Z;">3 MU]*Q6#;\YEW8.>@2O,-C98*5N&I&+ME9T8@ENTJKD*PF+[X*2"@XZ'R^Y&$[ M:.U&F(ZE:VK0+@=)^91M*O!ELE\35[5%(. 9(S6K M-;)HZ*RUL//P3UHW_C0/)S<%P4'9,C>&P9WE.G3P G"$IS*.?AG#HY MSR:-54[-ML4IVU-KLN05F\G0Q>#"SL,_*4?CTSS\LDY6;*ED)BJJ)@HYJMPF MEK.VG+E()CR+3@Y;K.Z<.GF21)NTBK(,WZ)1=CRA1F1R&>GD<.OD$.87G5,G MQ_E))U&9- 4,B$JLENOCO89[D7#X@W3R9?+PRSJY6A*HJFR,E^/*O)-/,0F= M3X=O@W,X=7((5S_.JI.9U8"Q"),>&V/&9IU\@3S\LD[.U3)-@[,6^!A%M62;UEJJ%KXC M3$*KD\^>AZH"32J"@:SS0:]?2D'U>:0R-X'M#+7)0Z-R,6>JGN/:&GC8ZU3% M34&IVZOQ--8@*X;KQ3TZ=,ZN?R+DLU$?-S_49[@G]%H_?I]@QV2N[S@UZR5^ M.< *AWG&1]IVSD_/->5UT8%'+C.FA?:@%:\V,,]+LU5>;'67\="!R8O,\X'9 M_2P#O4*]:^$DB-.N+9O)Q_.37^6G9T#%8XJZ6'3C*U&6C$1M$$-S9OCBMB^R MT$N#/SHCO1/H0L([[\SE36NF;"J:+Q10"CV_RX]LM3YJ'CEFV!LH+H]LPSO[PKC.^OVO#'C@0X*,LD%:J'8 U1_8X M@QO]DIX7"8T)G60MA MBO]1ZE,"PN*8 IF<8LE!VZVC*L/;3N@T3>CJ4X8]U?0HO&&GFW$YCX^;XRD5 MHPI*TRHE$J%;"PL];X0MY>DHO%%UFYKD],D%GUQVQ$ZSG(][G0@W/JI3PK;T M?A3>R$E59SYSYQ:&ZC%EQHV9JG3QI]E\/V^ M[9C+!_".[QA]#)38)^*:TF8^!=6=7"?_]QKY\,-+B2:?.FO!ZSE@ZOGX.8-_ M]ASX9[]O[DXP;MH$JT5#3&K3/#Y5^#P+0HL.3RBZR7 Z2-(C)J9\\Z$.AV?Q M\:4'I_&45G/\_58S@SY.][&T'RDYHUAIW)YG.V,B4Y2D1=--C-&3QX4^BBRG M416$-$TOI^W9G+5%T$NTS42FMZRD0G8*S9&/"CBP;"AK=E/6/9!8EH#L>/8Z M94QVM*=V,.^XF@&YKM)_N./A0TIS%-WR[]T:1CF>J,3%3$RLQ,M%+RO,+%H) M7;SQ86'I=1(\ L1':' 9AM/G^2$IV_82.@EU,+%L%ZB6A?LPG#BR&SQT6,"]C*J MM\&T9;75D498D2=*AF#FF_!U%UL/?B^E^I*0_XB'@4R,=L-N80:#"4Q,[2]& MQ:0=%>^^H'E]8>>-5!\1Y=X,&X^%SF"0CY=,--4-+4"'8A/,>0*?'Q58=# 8 M=F?5U@S+5'K.RNT5J'G[DB?V6P7V]!;7Y_?*%56T#I86@WE&7&S-1YV>D;U4 M]?KM$GODB8T_(#'3*MHH[3 $/YT6>_TA[C2_H=3MA^$J?MIPPP=3EN7J &V7 M&NR(EU'6G;IZT93"5Q\I#"G+WQL>^. THDU% 6(,SXY!C4\8Y1'?:(?8RPO' M-!Y_C8T)UMAP>KW&1FZ^?&?2ZH&<60Y/Q-L"/N=%+>5U&(X<]K/IT*JKD*>1 MGG:[T^Z"%DX'JU3O6=!:-SW&MH@U((6&=&Y=R65\]BSU*J2%E6C<:$V4Q9E3@-XU.AY;3W5KG_KK/8PY/: M?)A3++%%N W%$/C6N#SL+CFM$T^$85T^/(0[RL$VKXJ8UVK-BM6E&>,-NX1Q MJS1JK/#0NAIA%[&S[^)ZQBE,O^3U$C$-YY=V@^YVA@:6QL(H8I>=6O^ZB/%: MF;?3(X/",GV!GH@\T\27D8A=7*+]84[I=(24QTSH#@]H(,3+JQ';SX=.Q"Y^ MA\+K(E;"EF8^,589$1 NLP2K>+.8C@S%2]FO\ :GD,T!E_)6S2)/5TVNQ$QC MEG+Z"@Z70+CG >=E>RD[;70\Y2N"V^V+HVJSW0A9LN?IXK1&M\LTR6(NRX-1 M+I-9."6FYX4!BH\5WO1,;3UT$7[P@=-495N51"$E%;."*"SP3DM$28HAS(J+ M];S'F3?6>3M_-,>B"#Q^#V_9OF/[T_:[_Y(W7N@,91LX4D\5)\,FWN%X5!M MX%V1E5IR_YT;>0CN^?A+UXGYP1@WKTUR,R/E3@8*GYGET R=R"& MW8>5/<.O/FG9GZ3&WOW^Q10P+4,S#SWVO0-^\HA?3WO__LF8P,=*'8M:#'!Q MT1Y['98OHY)8J8SF+TR%?\?K$_%+6]S#SEN>K0!G_74(9#5@=]C#/W_#/XCC M+G4H-8:\0.>:Z@[O<0S[W]\3&:HM4W=4_/&2K0V&#]W?=O";=Q!W_E.>4F1S;>])ONBCFNEC3?#N M5?!E<8__[LG*>&!;GJG>SX>:N_=257,FNKR$\*)K)D![NJ6,?T-6VTP4A=^Q M;$!&^2ADO$&&-NC_<_.O1B7YK"?KEO[G>].R#5E?WSL'P<@WEV[^-.2>#A"K MC_CET7Q3Z.]?_E,@N\E_'CZN_SD+<0^\>TOC-7&'ZP'AD\7O!]9Y>*G<'M^S#X^/_[%T-@U.]#;X&\)KOWP5">BM91Q_5KZO/6QL2L'>$SQ+'$M& @1^H^TB$S93O7O)EU/\>D$#6M8%YKP"_T,KO MGF5#\'J\9X$$A6*1?V'!?]O?_0>0/EV?_;S&@("I:NPK5C.-?@4(C2X!B_\_:MW MVODX6K<%/BG6S(V#N]E5[<.41H_ [G 7& 1Q[:F3L=.81/%'%TBW[ M?HL-N]"T#\:^U7!'PU>M'TS$[N"3UV@#E9\)'NB(R)YK!8@

Z; I\+3".F[#MB?O'4E*4$ M.2C^FNU-@$1EV;:EVDC&I)'6+(^GGF.E&MU1P=#CB.&MM M SY0E]/2O50A7?1X@B]SW4:.6AG5^0;=C\N9GX&9-TW(^T[+^__^Q<8I^E'Q/Y>0 M]>5# $\I\M5)O(%6Q+HA]+.NV%(3>R/+*CHQ_T,Y=L()4T@K,D%=J!/<-W MRT;<(4"F:T9% 'R@BAS ^AWIN5?]<#9\UE"5ETOH,P#S1.)3#:)C_#I-!IYU+5=FY-)/?ZK__]L-*[8"2^S+7L2=DNDK]S.;KQ>N5(,LL ML 3V%(L^QQ-S0J^F>;F-2>4,6I].4K5/*A;F@WJ%.J)>:=2YLI#SM<=G% L2 M6@ .CV8YI8QO%8O[P*G(>JT#Z=N6@4C;_Q#7>OP2[CEC#T^97]5'<_P57Z2O MZ0 QO6 =^-1:A@_6G]+PC>7@A3L0H*8FY9**]QKC2FN6*GOJR% *@P\-"D=Q MDL5BW^U$T1?C1!W5.2*^RJTGY[,Z&&B.+\NN7[]ZA]>\,EJK-I5& C,\O-V6 MLX).9]_RSY.54K6-Y,K0;2AS/HQSQ35NY\K)@RSWVL/N@CL.1S^9@#S(;I3S M1)Q+_4S./4+T\.EL_L4O9,4-^,]?'GKD.T1V$&<"%'\57D4T$]%LM>O5/()MIK IE6AF <-+#=.^"VW MP7HW6'+;ZZ]K9C.]SN7U>WUV? =C7H3FWX;"UUFZ=03+"\N3-KF_=M9_#[ MN.(#JT*_7/6] R2N>7#4A4[=+]?V&3=D3/H55]AW7U%M@:Z'?I\-_I$XM P8 M6^A;/#J?4@F^X7J%WF ?QS_;X]?]RXU:2/%%KL75^370AU6(/J_VUN;/_M\' MQ18R@?HHFYW<0&W(B]PF24\)GK?K%4'U6.&SS8)2 !(/5D1Y,NH3#:; ^:]\ M8V9B<11C&9R.D2\Z0U<$!Z^:9D$>,P(=>PMZ]C8R\FS-4;5@KR.TU0+RO';_ MWSW[UY\W6VFF\GA48O R>R";VBKX_M_/R,/9!7]/W^R.^*D;$<2%+E/''I75 MC,-93>$#*UMTS;@HD^%=@)G\[36(;GQ[[1I^>4U4;.,[F MGZ)F GS'L2]::(QL9ZP:1E?XNCR*I?#Z?#^(] PL*1)#BHD\DK8!F,O+#SOS MIU^=>6GLQ,[8D\V&,.L,[+98X"6<+E<&O=;JK?49P=-JJA:DK][5)DE+W1TP-Z#R+"[$YV.C(0L.NJP21?PM2(G'" I#"9HX MH40Q)UP(^6M#%#^:-;$A"V@364? BB>'\&#EZ%* LZQ0U@?'D[L?<-Y#,CY M%@D>_^T@+M#!9&B9VZ6/6P2.4O=\"P.1;2!#3E,!\M>I6=!''@Z^[AG3-9/5 M#%;UP(JOQ!+EO)?O:(!_B^G8./%A&?OOR86L:$'SKNI3>F_)QQA1+MHIQXL\ M0),)*OWF;]%\J:O_C(*>[]182&5556^A@A2PI&,1)%JSV)Q4%< M8GKQ'HL1; P'L>X- MS5WO .R,D04_U"DSP1WUN+V$EV"[).)GZ'HGI(V#_;C2Y1X.;S[<>&[)AZP MY>_>5\*KRWQI*?P@$;9+DB)BAOEOH#' +92B; WC!1.9##5YYM/P. M1.M>!5#7FAQ$S_6VP6^D6-@"-ML2XCC1"U#X89&$72S:+"DG2V,Y@270)3'M M2O-MML%A_.!>M+Q,8A.\HO'+1=KEO3S'5>:U30;,J]R;:Q^-3[_#K@TUGSY5 M4)?(JL^#Q;Y..DF<>(O#_$;I/:96^IE?56#V*H[9P0"5CZ,,W4^ZTSGD9NH- M;BYW!![A@J'(YIM\?8)%KR-O2S\Z2XP\Q]7ZR[<"HO'W!41SINHO*0*DMT24 M(5#&"'S.&!HO(%@D]\-0]F,2XU_X)D(UE)T@75Q%9%V'+?Q=''Z8:^II?I#+ MM9 >V#2 #WX:YR+]9?&=W0Z;:-=.N&S+47X$S+>M_'T#B I_A<:VWW1B P4$ MIC=.K)\1[.=R$-E4D;^(G3[V(-LCCM<;P1[XO7(\:)/!?OGW;GH;G&/A2\WZ MT;+C(BRV?H(J+YT[9"^AY>0+$9OR]>O-,;ZF<&7WR0ZL=FHYC.4FQ&I,2YQ5 M)?+MQ'CVUMI+!WQ\Y65O[(>3I@[OP7G^J,W.S3<6NE]R-N>OEDGIK#8)LG9T]=9"0+:>)><_@6ES9>X0!R=H15LWMQLL'&'LOM\ M1'/Y*;BL>_8@S<#Y[SG$=(>(/@TW4KLCIE7#:*)T/(_S1,-LY^-TDUI4WEK6 MB,0T?&+ZSL72CXFI!O45HL,7 416%"BF_L&$:L#/]BU490>O(I ET ,_. :4 M;O@.>ZLS?#\6&B'+6U_;PH=!/>:;@&^5[_02L.W 'G6F7EUN6,ZV7LDTA M/=C9CO'0DHV!MMA#01-K37-5>5:DYZ9V[=V7$[W#F-6=X9_/3 MSO.?%]S;?D?GMCRY[]E 'J-S2(0W*PKNU&5YM3!;:)>;=O9I?<3_OF/(B.K? M376*OB,CLG\[V8D[.J+Z$:F^651Y3K/8'754Y#^#%?J6Y5D\;*HAGUF1? N" MSS3\]Q< V:_F\<'M!F^AX=$IL"Z8^OGIYYY/_*"/T'X0I H;PW=*!92]/E"WNAX_LY.8=.Q&0QFJ5;]!Y0L<,/%.W&ZY06:)O M14#*AUS<3R:-_U#LHW\.]KT1;MIM'-211B%=%' _L4%@,/F)NB_%)Y!/\5 H M'MZ^,,JH5BJ#)B2R6(\L'A!=-)EHS'PPPSD%Z'_C6VNUZ@* M7I,1_J6@VM>V:H<4+<_-ZUMJ9P)B)]>T?N!Y6R0]SIA6\R(:%X5%9;B<,YX? M,,-/Q/.7#/R[]/B>/*4P@O<1J7#:7<*?M&8>>?VV_\H2C+_A M[."ZD=8_M+(;K.="J]BT@N58SP%!*]C/=?7; R4++3MXE[[T7S[7X*M]X\:$ M9+%\JP>2.+"R3=E4-%GWPPB69P:&D+,YML=!_.VFFOKJ!B;R+_EI2L>3)9FK M6A!\<=Y?JTKXB>5!9PAT_<$<_0M.?[!4MRXA]HZ%L&?KXAW@O+%,?@;+T!_B M$R49>(Z3?(4QK!3?&E=YONGY'%=@79N,)*[WJ5[[^E),L@[_9 M\8,K]*_==7<\F7D'5)+TOLR\5 XW/4.U7!4H&O1F;A"_/C9\-?94+-;G_,4?Y:!5 MM%':80A^.BWV^D/<:<:R\QMD\Q@G>,!>!EB0A"[X.>A"T+^*YP98#$%Y1T@H M.]/O6,5\@3>JL7DI+[&%NE.[^8,3MR3.W,9B\2UK;ZGP=J$19$V0X'2KE_+B M;Y%_WV$X,I%M9";K'O US?J^6\1Z[.D1>2Z\J9DG./'IT*%.[\U(/L;"RK?, MU@N/11*0#7>?=?!@GH\.9%LF/:@I^K%1[<[O$8>%?6%8KY]]MFM"G_PPPD-T M^/CRW?^\JY3LSB@W\T$$PC4 Z'K54^Y#6;J7];F\=#9C9O$[[&%_W?V#I)"! M0O*/=D0>/_KC^-!YD3AV1\:>'QBYO1BB$R,?5#")/>I@^<2G('[UC+Z;A^2M M'DXS9)\!$DNKF$3%E+XDJVQ,PN/]'HC'*)GHJ9MDH^-0;4\N]P'[&6%]5W5# MV->J0]_MY*2MR1Z6<^CV/!6P"-$I%WM=_'R@8$W\9*6^6)(3P>YH=EL',?@83<2I)H*^>W6O:D3T3^7.'4MQ MA,J%?#@'ZC.^UO$ ^2AE.DY2EN,3H/83)SB G#/6+CE$[K-_ M='/@/G]F+G<%-2PU'$XQ\R$77S^2X )CLT9Y=VD2^+PA/0U2$I.G^25H M<.7)L-,/:_]!O6=C' MTMME(0:*D @:X4"$ Y$ZCM1Q>)@V$L.0J./]I7GIJ.KXT>WU\UERIF(9(%"X M?F*R#8;P%K]4VN:'';W[5',WX!C6]SG: MD4.UNGY>]J[K4N]U7XCMI&+A%: M4(2*]'8$&)'>CO1VF)@V$L.PZ>U*FJ^)N4;GA%H[V"TQM'05V,[F=#>$GWIP M$B*%O:.P8Y'"CI B4MB1P@X3TT9B&#:%#1WM)"=DT\7*"55V4G:&2%JWYLZ+ M*EIXGUY&+E\QTY%BCA A4LR18@X3TT9B>!PQO"-B^Y*XOOB">BY7&KS0J!S4 MT@^)DE!=?TX]ERUW6PO$M9 7E/6AM+"K6G2.1RHWDO7SR7JD>"]9\3X@=0YZ M3$2)*W.9M>>4R@E)41#\K=_E%+Q<[ @Y0:(/G^/X)E(_9E 3=U\ W$BXO]_# M/BUCE&13'@1*>1/M=I"4YBB>X_C5CGS'F#-E?>EH@:O]J,M]9;^N#^>WJ0/' MT]?>>&4"UA6]]@LY7!;JH A.1)H]$O[(F8YT^A=T.ED3N7(CU^ :N28/$1M^ M+6Z^212-Q_$O:W0RTNCG%^J/N^:G9(Z:7UM5Q(O"-O/-+<7];<5+)2;M0K10$"<[5>2?(I ML[YJ6PI0H7J^ @\ZTL:1W$;: M.-+&7]/&?E6>7*[2R/+UG9HN$D,P,8*]V2M@_Q+<[M?XV1;YB51PZ$7Y1,P0 M/&>_4M!E*MQK!H,]J^K"R_!%\GW6^8W$]1L]:;S(9[ABX"OQJ5PY(WS>>T;P MR'&^(*D^!1L4P4#6UUXR\#MU^6XR@5VPFQPIX^L3VT@97[$RYOR%OK2LN);M M2 R%DPSSU6@VSD5:^8+$^T3\X#\'V3PHTLG7Q=&1C$:AZTCC?D[CTOQB" ?G M0G3%"98BOZIMZ4C97I @GX 5M@^Y1B5[W&/EO\R')ZIF[R#$+4+>(E2PXA_S M$^=WEZ40V0:(96BNOX&N!Q1YQ_%P_@F4NJW0 M??(M'AJ>]7!-]U>&J<(6/]/LY(%%!B$J62C,02 M-",1@)55*L;VXWWLYL]9#T\E/WQVZ@=*=H=E8)L.([L]1C9=1M9]/M-AJT%7 MZ?<=LO17#BJMH>4Y4/[IF!?# M9KVYZ5H:RL&6L>I/E4ZJ2%08#B9"PYRVS.)-RL=E\@!E2 M39B"2LNPQ#ELN??VHDRTY[+2(/AD)E61A=&0Z2HM:DQUY6:Z$-LR91^_UTTU[+'!#9(5_I$YFT MPM3G:"0I6N6L*36'+?=&-*DLN;I0;)1XP2)K,2%= M:FB#&FRYU\]ELT8-W5RK*6K93%+1>J-./5N3Z/VW&TG3F^6UY(SW:L.N+I82 M71S.47R_93WG61DQ2#E) MIR:Q^RT9I=SNXY66Q]/<8HYE3:51 MD_ #/.)H(\_3$JO\6%XH#-4L3PKC.IQ6<0D^8Y2=,C8=-#Y U;^1K*#Y.NEA!U\69#(P4$X,=.$!7 MS]&6M12SHOEDH;,8]T@GAMF0]P_05I6AQF);$V@#!#X?M.. MDI/'MM,JBO0L6Y%K=G$Q@CQ-')B"&L$UYF::Y3!Y%>?+,7TR'Y&PZ0&ZIE"Z M0MN+Q11KS6/-N,PJDU4:]O4 73D3;\1:[Y(=$:#ZF:WW1/KB8#Q_!B MU:XS)MPEX93K(] #<%@'9LOL%)U28IHE>"UM5LE4*Y9P80?( U.@3#AVD&W. MLIBV2G!]IA)?KC(UB3PP!;GVHN^UQ79F# :QD3M)8VBVP/E-]X8U;;3M>7Y8 MKF#R:-P<>L:JKX\'?M.]8?'=3*(GYNW4>&K(E1'7 7VY )L>F%BWXA7T_$@> M8UXWRS*Y-LMDI+E$'I MRF>6)B>!2B4)>3^3@L Y,K".(-,5D6AFQ M-=$S"8JQ8CT!#NO Q/9G="F)37)UK #$<2H?&Y(#R*_D <222Z+@251-XPL= M2Y*' @]J%3BL [,EE5:U977%+\<5/6TWU)CCC;(#B3HP6SQ(I>LHRRUY0B19 MX%'I NAR$G5@MA9YO=Y)S,4QGZG%"E:7=5,F9!?J %VY$C/HY6K=-E])F(+6 MU/J#[A)VX !=RY-495"5YWT,55'+D;(5H\K,)>J ;/7KA19K\+@I3@4R+Z6P M7L%AH;XZ, 6E6K8]Z]@QC&\)B18U!(6\M(1]/3 %CNTJBM=;H)@'U,(PNY+9 MRASV]< 4\*Y<&G:SXQ$OXR,.YU)%CX J"S;=XU>,S*5=HS-S,6'@-?OHM(Y- MND'3+;]>[ZGN-'E'_-!CW30C@O$9"%]P-IJ8DTW,!_,* MWC20ST&$DR5J?A;$3[^2?&*R0"?.O_C/#7'S6;F-W>'QT-'HM0C]WN&AZP\/ MH?J(9;Z!95[5P:%C&;^B_H9=L(/L\GYT?8DHWP2X1R0*)PC!DEPD-M^*M)LX MW#;_9+) @G+4R#:/(60T?(V#_/,I(O[Y9MB]+OZA?@8.1Z9P2,GR5CCAIY(E MDJ*?*44_T3MXB -#OGS4,D_1L&Q((D1T'N,[]T80@ M9,/<>G5'T@@A&]WI=JF\H0'.0(<=R0Z2!]XQ[4>;_%"R]ADF/Y*!G36-RY2! M2UHP"';A0%7E'Y;I[SE2_ ]@ZFDS65_O'+@0RRUD_/LMSLUK8_[W1?HB>R)' M/A\7\K>V\+=_I6U9"?:Y>:;FUOW],B+\( DNY&+95B512$G%K" *"[S3$E&2 M8@BSXF(];W"#!-EUB_5=G"-5^GYNMI^8BA&D9'2[3),LYK(\&.4RF8538GI> M[091@:(9LN[\\WB"D;D"*>@PYD>7+O2Q9G MJOX__*-8<6Y2MNTE)&53UCT +7XX*_ N^.1M3FP&2Y*R8+&B1QH-P65-0',# M*2:1-W\H_)9DR;]_/:7$Y7A9D:Q^P$?Z]Y'BO&^F"9Q!F%\=^&DDG?;SVOWP MI[1L+V6GC8ZG?$5PNWUQ5&VV&X-O%W0VWB*F;-[U,'300*O#-JY,-5_0Z9L_ M<>P6CQ,'!/V*?.6-!5(*3AM9ITT#Q;,U5P/'LSY",]K(KSBW7Q%"W_KBC9Q' MX14>9'<3_3J >/5)1J(+4FHJ:@6.YZ;NI#M;SGUDOOE#QF[)&'4ZTR:2@- # MP=G674(8<;AJB^ECJ&&)2KVLUQ03L)QV]9\A!J?-U. M.JM1Q"D*9$7706R@ &A20E+=(B9P(T_O0CV]XZV51*&9+ULM6^FJ/PA7&;@O M Y ]BS?8WE(NC67*7A;:AM3H,G,I[ILM>/P6H_$H(G,MQ*.#R4Z3]^PV:2X*#:[)N/@<5U4';+O)/+T3N[IG1LKSAS:.??PK]IR>@OX:E)FWDER M[:IHS"Q;5)>#4BX9U*7VEZ4(^I8F3V@F19APB9@0ANC0N>GS8^VKMP!E-JI[ M:D+4$J+16';Y&>_:RB@ %'H#*"?*2/Y9P/%SWR"R)K]4*MU6@K1(BBS(&5^)@BS?D']G*Z;LUE M4P%IRT[:0-7G3-*#BEG)8,LYWY2R\BH^'-?\ MHY3]Q$+R-DY%&R9^F#3_]/C"5=LWKT!!54YHB8:L+L9TS>*2Y2Z;&YK!J>KT M*U!PX1&5]9J ^6#+'3M3\$?B68CS?:*M$A=DM^RD.[_J;2TR*2^A)%,.1N=: M@V9&Z+7X-C1B@@JA<9J- BT_1;RCO1$_Q9!Y+S9(#M.)4Y7<5"1HOIC-UF)Z MEIS[V. 7%25.LP$T-!;]D\T0UD[^0^3#_>BTYV@KQ&5;1L^!+T##QE V'R_Y M6^,=UP@J+YMJU;8F<&:755TV7?C=K\L\,0Y#IJ'/,:<95S51$!1UQ=2S[9S. M2?BV*BF.G["\5X0GEX@G88@9G9L^/]84.RD8U5(%7$X/QN[8L--EF:'BXZHQ M]\$(VF\D>4O3IRE#]K- Y^=ZLS]LS!%S_XPQAXRYHRT8T1:,=7&JM>8/BE*! MK=J/-F-<]XKRE>>'O##>:#/&#V#M,#B^H>+]G[,9HPAU6&2=7JAU&FVY"%$T MVY>D Z$?,;;R]%6-S_"T4$QV)DTN9\YJ$AX4/8S=DFRT@^)JY#':07$MT> 7 MA+D.TJD4<.I+C!"+17'84!I*@?.%F7Y9F*]H)7YC-"0\3?=?&2W 7[=?<.4N M[\6;' ]RR)EJSIC8U@P$JU,9VW*< _!%+B;X<@*$XMAKCYF9@(FQ&#F'7=OL MDR#($V89AHRW(Q&/7/]KMV(^B@_+)(>6%^7,/$'0 M5[AYXF'=/G*[+M3MBL(@(;))2K(RU$Q@+W=38EX"'(JDQQ5^2/3'LL4DXH52 M.E_.0\#!@ST/U"V)'\J+B<3T(L4TBHYAP4/X!@\=IZ/P2X0.80O/G)L^ M/];,^ABT,(PUS.KU/#XVEI-5/.=4*YUE "V^G14_S;.B[N>7H*E\LC&E*DC@7'+GO-YU6.*.,-)Q*:$*'E+$U$&S-7(:A3CN1;C MX\."GJD*154T^R8ODVPO!>A1MI@9^(+NGS.%4;=8_,KK5&Q3:J&1ALB*XAF> M+KM A3,PL2&197_$D3_WH_VY*-ISV>8/]RC6J1VIAI]UX'^ 0,D9%IS)57#] M(WO$*Q.6L?5N/CN6Z54A6:H9WL*%^!D4,8W';^.Q>!0=BM DB@Y%!MJIH:A4 M$V-9NFU9XV1E3M/CY#1)NG,?BOQ0$GM+DH<"U9<:3=J4%RL#UU^3.["S-_)& MOP*I(<;/J([J!9E>+P(8%-P#&-9:UL=LK8V"\;+?&XKU%37/CSF)",JI$K%; MAC[DC4:"?I6"'E54_2E6T0=1(BYE>3,]:I-8QAPOE*+9)H 7H(2?\4S=QLE# M3M<5Q:R>U%:-JJJ>Q:DD(3RHEN>?A1@&L/SW-X:GSC#TJS:2UE4,#P!=8L2G M0*MK8F*RV9EBRS8QKZ9K$A&40\69^"V-45%X*4*"]QL&__[FT%+8H>*:K*@7 M8:2;2BSBA-U+B<* Y&F[87MS:>##B+_(Q\1NL?@A&/F62)I"B2HDB*+L-MNBS-'+)UG.3F MN'-=DX-Q:\"YVE,XCI>K%LHRA-^_(A?*DJ0O3'MT"L=/*,5Y#AD(84G.XQ$F MG.[GJYL'.46!$^$ZR$1>ROY:MY^)+BN*[0%U5\]=C#T<,HX_^_+!$;.K0I7^ M<'&94AM!JZ[ES-\MLY:RXJ.0;>S+ WD0A-QJ\G9AN>"-.3UXO3QTIY"Z7!OS).L'825"Z\\L-Y\I^PO9D0>XU?0 M,<10&!4>N"";Z'VH-;30HJ?6$^,*T>ORO1;3IV,#B5R7N8S?$E@4$/HQXAV5 M&_@I9LV[L('K>FC9SF'\F)[T&[*V+-:&-<['AG7P*$Y<>?#H7$@1>8O1:G<8 M,C["18=(*BY$*LZ:^'BUA+FD ,'Z%67+/! [ 2M M#E?%3#0,LZPL%ZNQD$]@0T.1K8(ZE\AUL;C;&,9&:_L_& Q^FE_Z8Z/;'T>. M#L[3#=;.@+$VSDOCBF7PG,;YR.&'NF]QZC1G?9_5. I2&R(WYEK7\LYF!EW2 MFMZEV43/TY$>0VR'CK#$2'124?3YN-"-U]KTD*);I8%$QGUSZ""B15AP_5AP M7BOHDL#AFDRB#P&'SG7:CN;5V+%A6+1;;)7I_)3S@<,_7> T9RB%QG%XDMQH M'ES"B)S&GYT0'J((T[GI=-76UGOQX'VNDO1=O!+VA58S.Q!6GS?HPG5S0!C>?^WBSCE;1ISG\ M*30"$ZW.7^_J_+ELJY\UZ(BYSS[FLVK]ZZ#"A4<:UJ\07$L9#^'0@>W\)SB\ M&0X]<@^N>EGZ&\I-A"JW,JH&^6-8.PS5$D+%^^\^[>-R7;1-0D'5WJ9;.KY. MB\S4"S53KRG-_Q)BT"M@6ZKL#/?/!-_(4V B-F7= X<*&EEU.=5*%.KCZ4KN M5M%8;B3S+L&N<+-OV:8%_14OS&KDCJLN,@')P50B7 M)?0E,*GI?;,]RVH5D1@Y=E#_LVE1UH>28-8_AY;?Y5J8H,A,!UM!A#= M;.4#Q[.@\CA^SL3\J\O$"E9"_+LQ*VP&58-]^N9FLZ;ZHIRU;@&@L/ @\IXX\Q_4C\V7@5OH->0$!&Q(+]N/08AM; M%2HF.LF*+:TPJY-L8Y:V:A(5\^V[?3_UOQ&<_ 0X.>^NU$O"E]=-O]. SRG/ MF_U.[$DJ\^+8L#U5;*U6G6)_-O'JHP![?*OQ$/9<49#L2:D1Y\ ^H,B)_M%5 M J)3:2\[VK:[M8\/!/H DH%-.,L 7-LU"=.)U7#\LWXW$<5WZZ*8[659 W'_]];/OJ1V+F$P @(0"HEN<''L. D/\^5:SK#..\ M:AMII^819ZKOPC:GURT*BT4BS6NU"5D!PC(_S$*?,:AKBS/Q6QH[=#!E).K7 M*>JOZO9_G_+ VK!CP359/9_ B972+1;BFB9A1(I/E3RUEXWUYSY.^#80$[O% MXN\ZP/97L)[VYV\Y>'!9MFUI2: 4V4R0!:PU:Q>K"I$=JU0-4OR7_*1=.6VE MEXE!*X.!H@UZ_$Q=3.;;=D?G"#_PIO67ZTN:"2'!O=^1'F(C/8\,XB>Q:4&L M;FTI^?,)61:8BF\[_56V7+#V)IAUT/]0YHA/;&=-;=="DI;_$ >H_J? L0J6F-.:*[_G, M&'^IVNS/W_#/]L&*#F3;UT'#9T\E\#N?BS8Z",/^]R2:9$.4[=126RW[0 44 M(1%TI^O!W__9'<%C@ !5+-VR[[<*<6=HFQDA MTX &C/!O(8E?OPW?>R/I>7 MSF:@=2OK]P;$[,O:_R,YGGR)[!#7D!;I#M(TJ1G70=^\WMVVO M!6KTX:+E!,F^]S;095>; ?_I3YX;S(YK34XY-<^XD7R<"*A;AK:O;?_5J"0/ M0@.<3J^\#B^OCQP)GR>[CS*5T/D6NM_B29H1E2 MH3&)C+% HE1*D>08T9?Z%*6P*L80-(@?51'NV3@OKDM%>3 MH'/_O&4UXTUKV( KCND!T]+:-J,6VW/8DGG>LF64%2)O]"=8"^/HCM"=5RM\ M32+VGZF4&U(]V4BAF%QP&D6]0W1[# =;[CUSW(H9\7S*UL:96297+UCS17[. M2>3^,[5&7NMF>G9>1(O=Q40<=',.-H]Z23>-NG"=RQKA5K(%BP2YBDV4- MMMQ[YJ ]EA)QUR+YJ4!ADWA[P"8;?LN]P8]X1FM,2#0)^YD?Q7+&%&^;?LN] MP7,Q5VX-2PMZW.JV^?&*6X X- M:=3+= J]!@W$#(?BTU1UR-OU@13?;RG'\5JMG!'B_-3PO(G5Z--<>2XQ^RVS M&EJLIT>Z*1:T)&XQQ7F+,#B)W6\Y7RV5EJQH/5'N4].\,.@/N[.?B'=K MLVE\S/!R7Y\5$GF5RNM!T[WIS[?:7HQJLD4QXZUZ.=!H#61\[C?=F_^V-]!R M;"DW'WN&2/)#8] NF$%?]QF@@5%.-3DJE,5I$GHKS?S,7J4@80\P-;],$J5Y M3TB)K;Z=FQG)'C&IP,<>8!:YVN*2\5F1'2>-8MWCE\1HD89-#W!+B15GHP7? M&X\+>M;# -G-9:<#O^D>M3*CBD>[_4F-;\V3Y:+K M82U=6:'INJWUNG._Z1ZU2J-F3E+P[G#L.4 3XUA76!:##NQ32XH5U;@+#1]> M:*;**6>1 G89MCW L;5YPM5>5!$3*1S;<9/EN[.]U8 K: MWKH\<<#]]L.N O/-U8T-[MMQRMK^VZJAP#:6/=?:7E@;QL&5)_;S3FQKTP;; MLX-=>]NQS0OQM3Y\WU(21=^]&FC=L4UW'F_!1_9U:[[5G-OOJ!_&NU\[&W-( MIC>-_(U"#EZ\;2KWH!/NN> [[/TWPCSFLR2B[F+?4)7P@S1Z;86],;0!0 SXP]!!@*D"%3E2.NU;&C]BEX!=XJ&C MT6OL(FB+UY@E@M4(5D\'JR':COA5.]+DRZ=.[HH0\5D1PO&[<)4(^RKM_'V/UXS $=^CH$[KBY -AGXS[5V0Q7HW%>!+?"\<_*Y$Q_(YZ=84V M=!+WEV?*G@J'HWZM-.%:1$)6C:L,7,21]:,4D%ZS?\@&>(YZ&OZ2:LC(<(QB M.>O5D,EVP2 MC:FI)7C9C<=:"CM?435_(QAY\X>D;VG\T-%$1S)$0\;XD?R_K>&.54'G,@#B M6TOF/$2P(_* %P?1+7B\1TW!^:3?H;F=H8&GLW!;$LM;(48DVF(A)LK*J MV1G=&J3G?GD) L('>-8EKCVPXLMGI9^Q+#4H+@KLF:8 1X"8?0"_YEFBK,@FEA6UF.W5J%G/4R!^ M!>',DM?&6-P:U%D%7R:+7 M'_N 04/ H&[C!'':D$D$&N$"C)$D^N.FQ\;$LHY*'ARPZ2 M!')9M:V^YAX KW*'&4_C>&HN$DJ=2RESIX+&Y]+Z3";LEHB?,"H2,JZ.A/L\ ML9&02_\5AT->AX9\NM6H\@;.\A5+DX=EAR)TC)/6QS#AMS@=BU)&?AX\1+K_ M@@(?KPMXU\QEV!G9*F,5):]XNNKF$H:O^]F;/P1QR\:C?) ?)MS?'N\(N?1? M<8CC=6C YL-&&9UF4V*KF:JIS5E264YK$!K\F :!W3+D6XL?%Y?L(0!=AR^\ M10; !+:L!RZ,EGDN-2RZ\%]P#2\>6QKI13_;DX93AI.(W;%LW4),8/@,1N6>R$NVHBZ0^7]$=9 M(:$SA;XE#/)I[!#:B9PY=-HM'I4&> ]M8+I6XR!VT#=_Z%N,>>N8Z@@_K@H_ M(NOA4N,DGT8 =UXK%U%\EL'HMCSN:2:JC5,^ K!!C#06CY)%?HSX1\DBH3,? MOB62\FGPP(:L4XP3C#-&Q5:A2A,3DUKXKH&TI\SLGCB0%$ M"-J/LF(,'J62_#R4B"R!"PJ1O$_.&97 ++)4Y\?)?BN9FM25D3CSY7P=#Z&P MR!3X84(>I92$P13XED#(^R B*5FC6:$;KXO3:9RM5+%VS=/G$"+\J =S&V=/ M$O0XIPCD_%JUP'&/'=_XD>@6X@!PM/YSJ6&.K81RIIK29AKD8'6-80)0/%MS M-7 (R;KI))4IZ4J"SW3J#0ET":['#R0<\^,>+'LH0RY:^KE*R8\R1T)G\7Q+ M\.-SN%%T)D[/J,TG8U0N+./M^&"@&)R/&_[.FEN"/?'&F@@]PH4>D=UPJ4&1 MS\G_1#8\7>M.YSP]KQ25I9NMIV>!W>!'26Y9DHTLAY\B^U'22.@LAV^)E7P. M.89B9TX(G"/PFD9VARMY-$EHYES@>&4+=,?@6T%.79;U#P C2E,;"7 ,D?Q7EK@JCVJE$O8T*C"UQMYR-@) MC:J024D$%E$22FBLJ6^*PWPGU,P:**T QAZ+-"? ;J4IR:UQ/M0$^W[(^%LK M6!'<7"'<1+;)105NOA,P"M2R/,!&N:8H))E&!P=FW$@%@.$'?,A;DHK.[OMA M:!&EQ83!./FF4,]W8HWA30:@/Y&'O%"JL6:C1E=<>NYC3;"K"+\E\;>6ERXN MP:9J6SZ20,: =#Q-/.A'0F:(X^;1FMEEAX4@S&TV1B: "0X7H5HV&[@B$4-4 M;(DNBH\LLD]Y-8AC07':6^+@F:71.ME5RGN481,ZX^D;(SOO08O6*,''[60K MBVEZID:B,X4:93@?+8*LFMB;%>LBQ+@JQ(@LA,L.SKQ'Y@FTP8E#=5'AI]IL MT,I;:6+1&_@RS][\(6^)J'K;SY'W*),F=!;"-X97WH,6JFYHN1$]+8X-&VAT M@S.3<2E BW7V3!P_Y%!<7?9,^?]G[TV[%$6:]O'WSZ?P]#/S_\V<4_3-HJ ] M]S/GH.*NN.'VAH. B&S*XO;I_YFHU59A;=TJJ+R8FFHKA&;:8_C2]/"BL>(7846E+K@6:48&VX2&][U&/ZX-'$F=-'<@'=UE?S+ M1\C"$*2IR/4JHBWP8='*#@9.@_*1A83(DDY>N 9NC"XWB2ZQYW$GN9J/\('N M)==UCZ!RJ%"7UA;!"7HFJT!\R/@7#&+)"U;(C<'A)L'A6J[':5I,Z**Y =?C M*HF=CZ EGQ79?&'<51EV9-G;JMHW!QW?]=A5DDEETO=&=+D^@CPN^^6QQKQS MIAYKS(^[CQ.9,0<6K4=4]G"$$&O_8XPY8LH>Z_9CZ'9HR)Z^%R'8YKP)?$^]CW?58JI#7SX<409U%OQ"C"#*-BN<1FAF.)00;C-M4$A((Q,#_-K)@ M/R5,V8TWF^[U8$582V:$#U@$A)3XZZ8)Q'X6)G>"97<$ M_:A"*?V<@FG(+COI"NMO"0?("[S\Q'X]8?.I[E0KEE!AXV%UQEXRZV2+QTA( M0C[!0/X[3@0_ J*$&KM&&&(B0O6YSB62YX.? '1KK;SV&S0XG+]U+C8KE0, M3E(@ZL!CX:?(A_&9\,< GAAGKNW*7.>BRBNX,EI'5X0*KJZY(@B2&,W-N\J: MAJ#BLYIC7^9!(274W$F$,28BOLQU;L&\G"_#]] *DYVE>EJU7YZ/+&R56>=7 M$'8@X_DB9?TBEI'+G> )Q+O_CWU<)#Y+]M-UN^DDU G0? <,E::";%-)=X@N MJKI.<3QNR"G@@U'[,^UH?+ L1HKX3/MM>6A7R39]#6=R;,.==/(9B>G,$+PZ M;VV-GM2".+,[X9Z*3[C'6!-[)7=[POUK:"&E7)FL2M,V*A2%JC?I-@KMA8\6 MN_/N*''J4&H,%8\,%?%Y]ZB[)5=)''T-:.;+L6/T\QF9V8S*):U16^47Q14$ MFMWI=Q(EXM/O,2'I5S'TL<84?L?4=ECW8YU M^UX/N]_CV?;W!I\5'%5,@) R(:FZY\H2/ 5Q."PQWQUJ-T 0ZDP%.]ZD?O0< MS[&<$$<6$76-[(3TH^3_CV^V]/X21[$MT[%2BF(W\51ZJYQTEWZUA[M_P@MLN?/S0-N7]_5_&=H&>8*CZTD1#:,O&> M?0QOOP)O>BN)]/M5L8;*\GB"88O>'!G3L9,6(9B[+)+]*N?@EY%L0LT+0K?> M$;3%3)#Y6F.0$H8KB&09@&3I^.:>&,6^C&(XPZS;:%[BT2([$5/MHHQV<.7F MG;1')SBAN6HSOI$$.PW?JH].Y,8,A M9C#$>P'Q/M<#C3EBNATS&&(&P^-J_R,J>ZS;CZ';H2%[E"@-OR6$^^0X[*0! M?A' 8 1%WM$;G(3EN0[DUX/NQ5R'QTY _7__BY'H/W%"^I,)Z>=C*?N-J091%5DW-T2;"L7ZL'\_M[FZ9W)-SQC+-OLQ,_M..Q/PW^9Y_EY5B5M M"GA-V\Q&'%(IRLWY,&NE-C2/8Y!G@.%/Q,DZ;'$6^Y%!Y-T\Z %AX@/[9SX9 M]QL0=-DS^[\+0:J!8')=4U>:8%%=$VG;V:WN0Q"YAR RI@3$,!3[,B'Z,EEYK#=0M6UV&!*$[;)6'^ M1U*7__X7_#A\3]1EP89@.'VE*3CV'0IEOUB@Z)\7 ;#]7.S'A2O^:X?/?/1^ M_M!R5 @O/VQ9!PBZE.'37SS7GQW7FE]R:EZMO<3/B?BOD)C:$.'_M\OF3H'. MQSS;KG_QK#6!-N-"TWC63.$SVOE2KJ?$)?BXSLMR>D()>(J71&+")RE!YH4D MD>910B!0D4 %,D5]V[WU/%(+@.Z;&GX0+/DLUQQ;;PX2Y4:7:3?H;IEMT+4= MRI0;N1UT[$:58QMYIM%A\N"7#ELKY^DND^]TP<\ZT^BR!:;%E;O#_; ^\Y4. M6^B J:R6V C)8M_AQ'&/$S^[G& +B7VG:WFFW8$(AU'_)':#O]IR$83B][RL MO\IFPIU:G@-\$>?O9^_AKGR%O>41N"B2F33%4Q*6!I8WQOFQB N\C"=E82RE M9 Q+OU!1X(,UTD;-*B\E0EOT:9T>)A%T7&A![_%U2[>*\E7,S&XYN9,=U?K9 M.E)I V^-Q[#730U&J_3K;FJ*YE 23]MU4 3CY(W MS=F!W0(M4Z];%J5ZHRF.JV5MX4U7YLS)TCQ'@Y;!US?XMJ4.UEZ)\Y)$G]KD M1D1JYC=-OFZJ]#8MW.KUD\RB52V1RC:#-*<*GPSVU)&P<;[)\ 5-7A)I6<'6 M0C^[ BT#/6W0AMV6:-=E^E:/:@V[?9YV8*<3X\T M'+8,CFF52\K5<8JO,KDDOQ8LWL:1 @V;!L;DI5:$DT2W-&/,,UW4HIWYN*GP MJ>"8)HJY[M=-B?-.=73)VVPFN3K@@)"&S0P>JQ1SW1'=A;M"^5\V9)2+E6G0#HR<[:5+@B;K,>#;!;.;9M#/3X3,#H_=R5HT% M'NM ,SKC?LDK*4/5AOT,CKZF8NBXBU76J."*G:*6SI(E ;X^.'I'7S%NI:++ M8$;'^27'()CN*CP5''U^ULU1\VFFSRQT>TH64:.=I&%+(O#,*3Y(9?N;%B?@ M&ZK%:HI$+FG>KP;[JJ.>U,JVB[VAEJLYC79%1+=&;\7O"K2];,J+2G(B<$,; M1?C.7%2VA:IBK?ATL*,\7LN5'=VL: 8^&5&4W2KM>Z*SP0[2G).9YU<#YIO:$NE5I(E: J?.='1;7*9Y4=3P]1R&803 MNL5*9X8 ?$:#/75KW1+M%LPMMT@1S6JNJTQ[BQ5L&NCJ7!\,9IU556**78MF M%+>8DQLT;!KHJ]3L(2.!GZ080:^-:;M)9<65 IL&Y#_!IG-UNDAM-:$F.%;6 M&G2I#7@J%NPK.UOD\VA]W>'ZZJ@DJJLBZL ;($ZL.PS:EQBQLA@SU8XU&_?' MA2'=\IL&[%31MUQ36M0DQMLZ7&4K#"UFKL"F 4-MU69-BROU,*TSE(U*:S"P MR8K?UZ"EEE#;Z*QH#5@J)F00ODNQ"\KO0=!4&1JS>1FZFW! MU8)- S)8IRV\UJXL2\R&T!J:.]_4)D7_ MJ<%UDDK:N66/GG'5HI@JYQ?)L3[UGQJ00;%JS,6Q,%8 GHBBUR<<-%-58-.@ M##:K9F,C=5<=-,=1V16*U85\;M"2KA+HF)KP:[]IH+,5\#*!M=9)9K.8%,6,I_#KE=\T8#7><%E< MM"HDC2+9=ELO9FM,H[2"38.=]?HIMMY8=0FMGQRN#(;=EHVZ?U]3H+.;M23. M54_TM)Q=1\BB7I\J[.&6RI=-TV9.'G8V_0F*9%HEIH77&&O.E;Y?\B\V"()L;8ML MV9:):.7 M^EYZW$ 1FI]4\VI9M7*'&L8OFQ:2]?Z\/89/=2MYBM+E',^"OIY8N;2Y5IXW M-ZS#&>PLQ]$T5K8F+=@T( '*L]U.K5Y0F.*:E@KI5I%I=_VG!LP6K98D7AZ- M-%1MH.EZ!\\U!U"[TT&SK4OY7L9N%&=:?Z8[&P*U-AO*;QHT6X7 B0S?%DK: M(EO@=91(W\ MT0=\T-WW/A]E'J4 ?WOW*Y.*YR6*\X*^2]V.YR6<>4E_1ZEX7J(W+P#'WCW2 M$L]+6/."Q3@6P7FA8GN)Y+S$.!;5>8G]L2C."_#'8GN)X+S$<654YP6+\S!1 MG!?L@ZHZ\<2$93#4NW4#XGD):UZ26#POT9N7C\HMQ//R6_/RQ0H0'^Z[A":$ MS/?4%\1P45\T9!G\;ED4T=+AA__W#4M^^T4)I=+?4^2?KT[T8/-UPF?T7^- M3V;^#AW^M$S'GQ;HMW^[4UN6$P;XP]1)R*8D2XF*9\H[@C&!/NU^@8<#_/\V>)FDTH5/F=R*F#[:?":U9.%QPG09]M MO;I&7'';ZG++VD*#WL+-*4&/%>;1P\[#>W/@&6-;!>\IR?I2A@.%[Q1,!PFJ MY_52][<1E$9L/UW+?;WTQV'6_>-L M^)9SZV&6:!F&9<9.BN8P!8 M%-F6I[+IJ$LYC@7B6. 7]=6XDD;E6- M=A'$_>J1;CGGTZ$XL/BUP.)^U4M>>$":YX@X(G:+7%;0!5.4$X*;J NV.$T0 MV!,\U$><#8PC-N PKLU#3U^;%Z88_CC;:;,0!O;N=7;?4Z_'^MD[Z[A.GJ^5 M.EQGC0W['$(DT[C)NNC8>W5A'>WP[(0G>&)_8^;^:CG^^0(OG^#&3CHPRJ+7 MJO/<(N=OR?A_INLRO'DN^&7&AQK0&.'?*$Y< MX@K.77P0,2,* TNP^\02*JSYC3J6O L'/[F134&5RF9N%Y/OH4%J3%JZMIDE M&:/4:&\Z.I))YG_]\MY/04.*T$/=^;(I6H:\APJELR$Z8Q=#439GM.65.2S:DS-# M!1 A>,P)S""7'E[.-T@$S36R@^4Z0Y0+!,0,>&M/D@K@Q=]GR_U%79_"0!!X MVO4.$61W/C5B$QZ"9Y'93):"O/$:W,9I8TI[A%5;E0L[!>T&/=G8.8W1V#6% MT;*3S?*#%33P%/ *2.R)R 2M_)89'PW93:@^OM["5EU M>I5(]S35J/=7ZD+DTS5XU7<&A'1/*(5?+@OT:+;^_NT5-V3K'U[X7PPW MP_HZ=[#X\#,?2?+1]<7PJ%2ELX:C[S.7&+7!V(69D42+DPXYYYAT#]M\W7L0 M@0!H:>8Y+NR/T[7>>*N_6P$74%DZX5NL[6JAFG172U00&7PPKA;T=;7%IR&E M"BR$2YOA@> ME;=RG;33>1Q'FLD,FUD':VEL$]^N:]UYA=BN@./H\UO>]1QOC]N2$YQI0E*7 M*E!XR4G\]'2@*G_H?%.V.[!/<$APNI^G%MU-;4.P;;X\V[ $W[!K6E$61S3K,"E77WW[ M]SL>/.&0F,MVPA_F>3B*C[B==4];US'QY^[4,R;^Q.H98?6\)_0,63T#8SO[ MZ8X;Y/T\^TY'_A1TGTYMU;90*]OSTCQC5(;#2:[!VK:E\!E( 2*>4"I]H8,= MC^@TQ1R@VUF68@Y0S &ZJW7JS!2@+RPQV3&3WHM. M%+9F1$M,;]*-PA93;$"A&U"\ OT.?29L,<7TFM -Z UZ3=B:$3$QO4F_"5M. MD8Y_+U649V.U>B-MG2\PQ5%F6*RHA52J].NIV[?>!D_:T$M!U86Q+AK;JJK+3%=8G N^FV*4GZJ@_1!=,AN2K#LEDF16/H7[-GA.'<.*:/2$P MI<*VVFB)Z4TF5=ABBC2XG3FY=TX0TF9NJ8:O!P*34]U2$V>KC;ZS Z'41R!T M>[RKHP+N%<^4=PEL GW:_7+62NZ/A0O[Z.H%"! !"3+ [H8"; \8Q'WL(<9 MB7)H[_ANURSI7N]YC5Q7GXHH>&%!=&;=D6O^.K9^JA:;TN52F1&2+VHRD\$P MQ:N,583F,>SB-=T?#56P1T"5?=(R[&%&'55^XXCDS!I-\L0B*S%5P=))P]7R M7(V^+$@D\TTZ/Z,'C,;2EC/V)",ML2T($KOJ[CAUP>KNCX83C^)]Q#CQFSCQ M!L-O4\3*$P+ADLQB+9I8#Q?8VNK" ,'B+78K;GIE5, KS,84:KE!904!PJ_S MGGD",4ENLR>NP3>?2"'%(/H<]SB@4?+]\;ME-=Y=E><%:7%\5!KG-@-]@ MRIE!X\V"[U.K04W+M5H:5;MEH3V4<1V;^3$(S!YC6.:"Z>-(J4]HN>*PC>S2 M8++/]88]S(BY&\XL5=<&J])0PXLUGE_WW*R&7#C?4"6\2MI=BU-.YHK=[509 MCD8=/Y38%7_'GY)$T-YO.5$;AE$_HE<4]E&GL"B6CS7FQ\P)A'W*-"SVXV.- M^3%U^R%Q^P'G^1%]DK#/88;&&7RP05\EE1"U,8=]9C,LRMA-CODN#C<><9[J M@BU.$P3VE,!1/!E3XR]^MN364X W4[[\HA<^)L-E.$U:/&J;&4M#A3XQD5>9 M7*&9O/#-])ENEY7D?K7$J=QFGE3:Q=(4] ,C+LYPBI@51>BDYZV#R:.6@O\0 M3'Z#V#3H+[P58_(%3=C4R$RRM;%)XL*\!;V2GV!K*=W7A-)P)6SUN>:V:(@- M5R V1Z70F MC%K14QS9HA>EC8\+D,^$I9Y2V'LW5,=!R!V6OS\GJ2E:R! 8ZH5H3+_L-WR: MQI1=5A0F_*#]I^E@F/9$W\6..OKO%A0_CU-#[\ M,OM?UO@+US])'M<_.5-*2\8M.ETE<@LTIPS<-B*E&=OY]9361Y>D"Z:7*_.: MV4*K;GV*E(S::*V#P#0)LUG)IW3RE,]Z+OR(DL<7VHH9-FOD:O@1S7K]UUTR MHWVL+"P;")TM=C4;"/\*@(BOH1;7Q]VN:'28OM:8CC:T.J2ROYZE_6CYZTCF MH$ MR#1J;!JLM&UE9TF&ALL?S-I\9OV["_(G?E[OKBU*=L=V"X GO M7MQ.E*X@5-,HJYE,K26TQD07>/F:#VA9401=O:<$:3YSR%&;,01HJN%?0%NM,3T)ITM;#%%VL6(F2-?HKN%K4L1E]N;=+BP MY1;;X,WITNTO>Q%C=X4MMVC;8,0]S8BQO\+6I:C+[4UV6-B"NV&BR\7N5!QE M.H2TL0241&DO6ZYGU6[UU[,(;[T-GGJCEX*J"V-=+EAV1]#ECBQZMNJJLM,5 MUN_5+).GC=P0*PPX5%B4LFR1'YF&3/,8M:M9=NK2UIC1%PE&7]@&'W&YODTR(^45']!2GP"TV^,)OJL@1Q=F M5#Q3WFTB$.C3[I?=S1GQ-NJ9(\NP;YG]96WYXWQL#2H"N34DKX!>NL&U6I_S0:74ZW();=[6Q+377PHK'TF_?RA%3 MQ\ZRL-!@D2;N6NO#]X_V2 ME)Z/>"3-+;#U9.I*$[U1H"'N[&[\($YLL,?0$_M(%_"18NBY)/2\07)EL]OU MEB1;!88="2M6QFF])%ZX;#C1%S@\TUY;#-EK-MS*8$6:VQ;$'/\V$?*))$]= M,W2/@=DU=Q?"MJW0,>:P6Q"V("),!/Q-]^;3>P'3MW/(I9C)CZ;.W[/'Z2_X+<^IAH_&9&/VRC#!V=]AGZ ML.5P2Q[09K 1G &B+1BVXXXFW*S9&W25RSHO[-(3DJ(T*?6W"K89JE2\K M/GC A#J%/F'IC[(U?E;]/R[,YU]@VD2 R[*]^T0U@=6Z/UXJ^(=VOVOZO">$ M@Z]\$@K.;8N_Z"\)_FSQ>'(\&:!Q M_O<_PN$;<,,DNTD7:0]),T8S1:5[LCBA<@K<_WG=LJ\+?*LZKB-<7W8&E7K/ M:)4IFL=Y#'O=U#(05M\@BSHC-[.;7-U>./JXQ1/!AW)3>85)#&VA!JEWEO:J M)^9-!;1,O6[9M3L&KG6J-H/;S5[627+8I Z?&7R](N;:16LVI!F6SO2%CCU. M"UD:-DV^;EI5\QXOUG(-K8_FY7FSD\;SXQ6?#/9TVS=:;K S@V.2^7Q[1/:2!B?G*\M:84@XG.DW#8Q)7?"&XLR9N8;G4;'*]S)-A%[Q MJ>"8=)I,;5ISO D@!4_WU%G-*8'()!4<4X:WB12:*;2XHB'--X4VH/>\/*2.OW\M5\/5.O4DT%-@V, MR2P[&5QW9WD.'^9:#F\:Y>I8 =B(OFXYI];HY7>EG8,C#Z M5&]:;E?G)0.M)I,H81<=H]B!+0.C3XH%2K,U2N&J])P1B,VFHADKT#(P^FR] MG#)PO-QG5-LLIC,&2:6F+= R.'J56.?JRD\%1Q]H=(L*T@?H[1-BR\ZY++H4@QL2;QNN2!1-"LJ M X$K,L-V'5]65X,B#5J2KUNNN%[5K<^4/+,98%UG,@?&.%_Q.X[(RZ;VL%G: M\OS6X185U&MN1OAP(*_X=+"CDIG/H-/&TM"03D616E)IM.5@RT!',RHV5GN> M56;48<=DM=0ZG?%:O!\]OU)GJ6-V]4QWR&S6#",L4OU9S83/#'9TA(RP =4@ MMQH[=V2\19+DJ*0 -0]T=#RIBOJHRF\Y$B]3K6V>F&@ RS+!CM:+Q0Y>775% MIF]5NY-D72RBF15H&9!H"G%3Q6ZCDT'EIF>8R3%)*@I\>["C*[?M%CR^;7"Y MT#YQT-]C0CCS+F@$(XE%QB>&,YXOCIKFF@JXT4L6EY>1?GY%Q6 M[72D.66/6K!IH*]DL:]Q4J-:U836V,SA9@VOX/Y3 _*?UT:*6J;F6:Z3$_+I M>K786\-*VUBPKVXGU^P6'+:$>AQ?9<>3938W]9L&)%!+FYG./)5J,_W%.JOI MN<&@I*Q@TX"=BJ3:W'*<;*)&6:>Z%6]

&PL*"ABEIOV-":Q)Q!K"I957H] M=K;P.Q"TU)HUJLV1;0Y!F,)>66J[MSB5,-+)#SK]E-B"#>0,OEJM#;8%N*D4U/4U[74KT MFP9DX#4MH>CR^;Q&5BG%7KJ30JWN7U(7D,%LO.U257E>0(5)79PZCK;N]W%_79H*-@WH MK$F+G(0 X^;Z*:$QTXBJ4%#]IP8-C*CC+,/WEQZW0)U<3=ST];3DEY8*=#8_ M[=*Y,3(M:,7&>E9%!&]I36C8--#9]FILC]O;UHCK3+MX%N5-RFZW8-. U?0- M>M$L#)$.IZ+"0&]YM192]9L&.^N5LUI.GB=7W"+7#PQTME>B M/ QK#9L:DA:0-25S5G/K'R4,=-;0)[3<9&HX(XQRX[70L(3RPC]_'Y#LF%RU M[-VP8ZTZG= <5 9[.-M,2/FJ;*Y-0BM5Q4^79UX9,+ YU=N"D_6TUJ! MY0R+L.FUXN+-BD\&"DR"H0QFR #C-8U55GDIU>S8@XH?Y@3Z2BRH5%LRNP"/ MUL!S&;:3BC;QFP8D,-0-U-)KHRWJV:W*>T M=+N#->V9WX-GL_7CLD/ L8_'14O7!; P_CC\[")T-8(W[$:CZ' MYX@N3]SC>!WQXVK_DWT&!$7_A(&.:Q_>NG\:M@N /LV]0M\]L2VIRQ//M\ S M)[JU.L13AW\C,#7Q8VS+@H:L@!#^F5N.OW?YPY9UP567\JMG[J-%_\6'IL+8 ML73/E5\-]-)1XE'#SX>N_P%C>?[Y6YD<_(/J+/%$7&DB/BH)%$_$E2:"^IYZ MM\9(/!'7@Z9WBP/&$W$U:,(R\41$8"+2WV-DBL(\Q,@4D8F(G::(3 3U/?,N M72">B#B>>ZR)^*@N8SP1UYJ(CXI&QC-Q-9-(Q7%$-";B_9.O\41<:R+0.+0^ MZTQ\_0SX^_L0$>&(7=8GO,K4_@975[1T^.'_?<.2WWY1!*GT]TR 3A]J 8D] M\_&EU-XCJ';4=<( 'T^=A&Q*LO1&50 B(9A2 E).$W]YIN!)0"+2;Y>9C:TD M\E9RF0S*=?0^?#E\M.OS*'+X*+7Y*'+X:,_C4>3PP9;#HX@A-HMXN?A*OOM1 MY' =I^F:[;3H^]G^FY/ M+2Z3:'L8.7R4Y[HQ0=Q: 'W/BT.4EX+T]U0$EL?WLDI^,;H$?2;\:3?7R1T>%$.?&ELJ^#!)5E?RG!D\"6"Z2#[-SURG!0Q M*86]4,8ATD^RQC] M($'TRT['[N+#Q AS0940-9[Q\YEX)@+;1^_-^*'DZOFF_,%1_>9+NWK KR_N*!&_:&(Z(+.S!'DFQSILFPGE9J1,^.,^!U;X M9TIBJ#C?98SMD:'K&D$NT1PJ.ME-H;/,-"Y\M\@"+Z?Y-I'GT6H.[9'),3&T M%5@L?W<7(Y8Z=2U:;/RQH^ SPF+K/\-]B'6Q-Q:S^00,$_SK$.[#[PX6&D3+\ M?RYV+>&OK_2?OI=0G#:MTE0J*]RF[]2(,F*SN'RU>PE[W,"JH(4EBB -=]ER M[9%;]2_ @=<24J?N)3Q3OBQR&A0&*B3O!170L**:2+D#B\)F,5BN,C8GC[,# M,UL<;]C\A1WX-E'K\MGL>JVI"V_:S*B(RR_AO5C^W8"I]%.2.'6=^@T1 1JR MFU!]Q+S1/9R0PHRK#O*P\W1[%5P^A@TX/QA^CL&%3:&\HYHKE]&^:]=)B94O MAK[P3ME=W6/*>[8 G\-CO.\R$7S7>KY76Q=:)5'>:VOE]9<9S(J-[(V;A<;<%WPX_*/%H;;)!J5'8Y&G28ZX_[$]D;=4KU;X>A H @'0TLQS7-@?IVN]\58_4P]7/UDZX0I454?J]K/NES> AWGK,OE@[J#42"2A##N*-). M+I]AB=9X'Y@D$<*X'Y)2<9T;IQE^GY8[.T^0/G6_*=@?V"0X)SN_S7**[N6P(MLVOK+9<&.3M M*KI1\S-E-*-U:M7Z]N_W5' B$W/93OC#/ ?9ECOP;Z,Z<<$OG&:PZ(FQBALKL/%MAIW6JF6_Q&4A( M(4\>Z(N=F)B09.^$;9<8GI'-.@=8>M!V')YD_X1MF"B M%5]>JD:)4J>;1:%NES@CE1N)_6JNF:O]>MSZUMO@40IZ*:BZ,-;E@F5W0!#; MD47/5EU5=KK"^D1@2] UAT>U6I%#>&RV-9(E?"FM> S=E3!!\;B&22CTG+ - M,VRYO$G?"5LPT4*L,V?$SHDLPJ0U'6P+;8'KDUJ7K_=:"TJD?61)?8@L-\#P M.2H+7?%,>5\2&OU9$IJ(]X6^%-:\,&P"&+9D>4#=PH&\,U:##GML?# MNF9IZ'K/:^2Z^E1$P0L+HC/KCESSPI4BB=%B.M2H;A95'8>KD$IS0^> ?X5= MO#;TW8,&%KAIYQY 8Y?J"WM8D<:,WSC8-K-&DSRQR$I,5;!TTG"U/%?[=5[) MIR!@G2POTFF[HG"YA5G/%TB1$DT%0L"N2#1^L6*QCX "]^HZ^!G-L,=UNS#P M!J]L4\3*$P+ADLQB+9I8#Q?8VNK"]C]YXT+8S@N\"^#6. M,D\@7HB+'/U>RC=L0SD[ !Q2MF$/+)2RT9?/R+KI[K(L+UB+ZZO"(+<9\!OL M-_BE7ZL:;:++O"33REC#,P4G:S*YPK!)0T#PVY60RX)/22)HS[=.#0SK7%6([*QC#TH6W(<(1"T4J:^FT^%*ZR!NP]):=;EF_SKQ^G-W5>)9 M9Y/.;3;<(I>;Z^BPK91(!5IP3"1ZV(7[WN\\^TTK?NO2^'DCA7(JAVHX-IQK MU-0NLM,+;Q72/)-O.3Q)H/U9/M\>C1L;)>6;+^0!8:FG9"IX8W3L>$>VMM09 M:3YWR>+Y]97WTS0>2YNVI.FVOV8$7ISJU6HO4^B<^<;H-VD\W1I;4BHCO:EM MTJ0\6@_K(R--0WN&-)[@K=$QB>>&"G6=D:/S4*NS,1JE>T2M7&+D6;E87#OU M]-B[\,**EYOS_!S+S1)50PK:Q9 M]6SVUP/3CVY+SN/"*"LZ-9YC"\:RFJ>E[**N\%@2II;23ZE,^H3[>RYU+UQ-J5BS,;N MDJ/AU$ +Z*^GC3Y:+UFT0'6R2BO-J86N,^TN\WE]TX+K)&,.GHDK"NOH:'Z@F&F>QYNU*'3E2*0X8G3.=>G MXT1AU-%C\T3)@SQ3!N<\7E]_LNJA:EYU.#:?-A"QJ"$:X7M]/B/H0[?O-AE! M\.["A'2XU##QUQ_O:\#N^D-__IVI8,L.GZ.71MZ=*R)37):1(EFL"/,,?68U MP%\GZXZ.1SW?R-B4[0[L$QP2G/?G.49W<]P0;)NWIG*[QXAX@>OW&;:HK-6F MMU:^_?O]1#W%Q%RV$_XPSW==;]CS'=.E8KI4S!*)Z5(Q72HVA/M&_,>F2WVH M^Y>^=.@&&%)?N,M[W,Y2;->V<69#M22-9VVE50?! 0G)4M03D0EZCW_';*F8 M+16SI6*V5,R6>A"V5-36W#,3I+ZP7-IE:BQ6\JTE1V::@SF;=&M4N0672YA+ M^]1Z>0-D*?^@,:1)_3QI?.[3=8^1&XK2O:7G3A1%]^K1" 3+#^C"!BY@"/N> MWBOGBV)[B.TAROA_];11;!"1]']"S7$\ID&J_5 MYH9:KNPU^WK&)+K)7R\\^COWQ;]95ZGDL(15_\'?U9_#T9;WY=:4\]]-L$,LFV<6&(&OTN M5TU/:+Q:4W@L_78E^Y@4=!5V7.A&>WT >XLY%[HH;A>_?N/LJ<@.)^U"NC[D M$'96&@R2I%U+7;C\:(_-9\5\;<*@Q9;6956AWA!*-(2C75E^(A.L!1PC4NQ2 M7H/"&+HL[A22WF XLMGM>DN2K0+#CH05*^.T7A(O?,F/6G89F^W9 ZU: M*J-7Q97:TZ0^Q[8F>&4V'2S<40N" M$TSL!\]DGHMU'5--OTPU#=TX0T"J-VFHH0OC9ORFS6 C. -$6S!LQQU-N%FS M-^B>^3Z6UZ@R[Z;T_M:PFNC&G]:;0)RS]44K(3^O_QX7[ M"9%A8]Y5-XXT6 3+EVSO/E%-\%[W!T&^[FE'EA."".FX@KD!]I1H6*[L[+8D M7"N1L^ 7'5F"O_E[$^8"HR,K9E04.$"7CW#T%?"1OG$,MFOC_SJGX\ M RT!^P/PFDC]F3CZ'4HD(%!#6"-'0MOC,Z++$_?'_FN'SWQL??[0P5O_G M6#_W'WW[MPOQ#E8'S4%(![;RK)G"9[3SI5Q/B4OP,9K/9,CD&)=(/D6)!)^D M*(P?BRF"Q[$T*B0) B5$_-ONK>>16L :W]3P@V#)9[GFV'ISD"@WNDR[07?+ M;(.N[6"GW,CML&0WJAS;R#.-#I,'OW386CE/=YE\IPM^UIE&M\,6F-";6!6D\54#+U.N6 M97%4&./8H*3)7:W%4N::'5=7?#+X3'RKV 6/2WN:NBIU3%KI;)#4BD_QZ.N6 M%04=EQK2J*0)52F7)[&L!EL&WMXN M#3:KSF"QYUW6FZ,*6@1'UNLFE5%"R.,<.UH1$((WE@J9Y*OAVO3YD M^YE!@]<0)2?-BZB58?$6GPZVG(U5E>]IC:&&:V8V79BWU*G>XC/!EG6!*Q(E MIJ1Q:G]6'>#MMK?- "<8#38MY/%ZH:(S);0X0+H9A;:D+ 6:8L&FQRU8QRG0U+.M4:ZO MXACJ-9(=>SPWMAP!%6HVE:]B;MJH^ 3#H*8LW0)5;P]+ M3+4U::+I479 3T$'3DP!GAEB2SNIL:@ZYF?=/#;'VD4%Q$7!ILZ"'@'7-FMS M1C$Y%ZIH1=%E8'LGIB";9)2BR<@=%&DO1+-7X,M5 CSUQ!2HK>ZHTMOJ+:Z* M+#,<.M80;;GB\1-3(&K+G&)-28TQ\ETM/=>:#B>!IB>FH..FRXMUH5)!<<:J M,:Z1U'4&=.#$%,C;4<8K]CF9D3?2J,\-!W.W#IJ>F (US28+ZR+19I"IVK6( MB9%1+6D]JC"@Z8DI* X)E2NCQI!CT:W4: X1 MHPLLBS@Q!5I!LKN9DM1DJN65TT_-UC(] %!U0JYXMTY44BX[U4B$RI'FL%'- M%E8\<4*N++ULU:DN@J$+K+F5*4'99$;@J2?DJE8:4WO;,-N:ZHW)7C:Y[22; M %5/R#7;36_KC*L#LEOKMT4% M-@T 5FU%5\:#$I]CC-;,:I70<375 $U/3,%R8ZS7*-7!M5R-L;9-=YFJF$"N M)R!+=>:VURX46,U#\6J=X8I>% 3&%+LP=^TQ'L>AO9@'!O+Q;X#2>EW#F!?N>2<7S$L%YB8$LFA,3 UDTYR4&LHC."_%! M>>=X8GYK8KYXB^%W5'7"0-\/'42LBG)4N*WCIC%AA(;RE<,)4)G6W_7D$X<5XQ-Z3Y- MZ>,3X,&? 5[8LPWAOVI#6.H[1MV5#>$H/"]W%@)=K#CO*\Y]@6_P8/@>;5\% M2>@;,<,+N5+/75O M/J&>X0D.W;_7""95G,3$MHR$-9=A&1)324 R[]*O^O'C;(82L<&?K8;I+O$8 ML=&%4*8V-!5_C\7_QK2?;?)CU7X,U8Y>(?7/JO8M.7H^F?/;OPW9/5^-\.MX M:1%3V _VPBX_YC_.MZ*$>@CL];@N7?B-."[\1O!$3Z'SWK978\BF2=?3BY0E MIG^]"E#3MB:J"\N\G3CO)391LSA'8OAZTA\NM0G>@IWY]B^&/F')X'4$ ML7G>J'E>Y^#G1SN_(=CO'5=U?->X9U-;SE1<=\*I(A#OCWY[=_T M4RJ3/F]]QJC%NWO'(B_/;2 \?U(28#(3@F&!06S]#^XU&@@+WR(FAO,%19$, M=._,4SFV5/"[+L-?:%.BCPSV!,R1:QE%LVZ^I2T:27.X+#G+$KGB*>C#X$\H MFKF<"Q,Q=8^M_K/[5.?U=J(."W?L /TB9O0DIE):DBM)PY?]%5(:,&,F"P\8 M M<(>THG/RHR>(,)EKP\D6U;EO99EH0KK&4G#N9N-)@[MV<3J:3FQ>^#O+0? ML[.T7;&PKK!FUG-88"4KFS*(UMXMJ"\OVT3!9'%FP6\*?=RDY+9)\WXQYB1^ MLJI7;, W:%W?1WLKYM_QJXDAUO,'&@=:I9B2^W^M%V%Y@_<$H(Z M]]6P$4W8-"Q3A"0%%=(X9.?LVT*1&6\DLM[0]X! MX@G8*V1;0V&"]U<<*?98N;7-,+TAS6>@UY-.!6LLG\_KB8T@\E@0#L\SFIF= MA_"COH(!M$53R,@Y3J-Z17Y/Z*6'*;ASZ MW6CH=T^YFSO;@O*MZQE\(.CL@[?WHK8NNG8F-L:I#%)FR]6VB@_L%@WKQ<$= M* */*33W8KD/E;1YI&VD7[)[7"I@4]FQ>VBQ*I.FV>R3G?4*VCWP/G"2>@AZ M36XJF(J<4,V$X#BRZ_@4&UT5?#2XY[,D<:SV"!2;-\9[WV=)8M6.>227S7GW_[)Y ML+[VL_&]YYF/&FX.1?NK&L,6EFAW,MJ:*X6&M=9]3BB5"68&8S.^43..8_([ MC6:TW%5Z65+.<[^:0/ C[)D\3O_/S+WF\IFTO9="T;Q.+G M]5/Q&Z1%O@]R1O9[::W!8H]K+4VETXR17758U\]FZ?S6,[]FD MTC%;XM$L_M'3%(_M$[V$BS>=(;ZV(8K3K=W6O'J[@ G9MLVG5A W(+7T"4># MW/+;I4J\SMC,A8U_^8U_^E<4;4]^L441AWXW&OK=4P;G_AV;@SDV=]8(#^GM M;+'VTQ3?@S"476YY8S1K,CB_,'M%I\'54_Y5=X0?SV'!@[[Q\9A;->V'RNI\ M;?0W2NN\'# D*7+F#=EMEY-)5T7U8J%Ʉ&,A=3!0\S7M?!V=>^SLKU9TF MA,D$R$YPS^C?1&; W+7HI_-]3VH:];Z:B;)C].<013,F3U> M%%.;%;S#%Z9_T&!&.T[^W+?Q/WKRY\%=IR] QS:W8O-%5U-0=H(V&$%MX V' MAM !O*0,>J'#Q:$Z1$U;G@NJM..D6O'!F;/@7\BW;ES5$XK.#2./Q_C9&^^A MFL*>CP^"0Y^K3_MD\_?P3A]QN,&54KHF$_4Z/^AEM1:G\)A?VQ9/G\IWQ[!P ME[!P?1_IEG#CH7;+?A=4\M7FEC(0P4*+^6IV/M5&/273@J "M]'2ITI-WE&> MB2#]=\!2_7Z%EKEM+55XZ>9X<_(>F3CVO'CL&3;4A)R8"GOX#^2A :N'=T?C;[4\&G.^2$MHGG4&/@F!V$ZY*$ 8)/OTAOYHDB3W$Q M8_!X8/"(0F(K;/G$?MP9H&>^*6?%8;^;[80R$? MTXZ8P_WZQEO57,K.H]QX&Z%HX\Y3$9&"@+A*R<.H=A0"Y4CI_B<$R14D_5D-%F0'6P86\CT! !R&__4L2#W.M2%VQ- M=OV#N(XL>G8<>#]"=!)60CKR44I(.>I8/R)O)J%FLF_*;D)(;H=[H,&SQ:G@ MQ%'^S48(<91_0U'^3X^U\^RPGJK)E5=GZZY5RS.&D,>'P[HCSY8M'M]5&TT^ M9?!+%N6*+3B.\6.6V>="_*UL6Y+@3,]E^?W)AD1KXC;)L1.V,)62/9&L*-#R MR9WN8_@_]WTDX/FDI05Z(>UWV(&\]S*+PY;'"5L>.+J_,ZK_P9H+P)@[ /+J M.WO>T*:4LW1=]H?$3CI3RW9=V3;*/J/&1]!3=9C="5IHT\F:AK=3-H87AH.- M"4#2+UF*X4_HB;/G,6X\#F[$Z8Z[];>NB#+YR;S7*RP4G,-=(D>RJ79^5O)1 MAO2#L-,H<^,$D(;ERD?WT>R\K^?"7^?;6XD,5CQ(C'G76:*+-^:4DL^43%8?JCV?^C'RUXI&C\ M-]&C+ZRKB+N9N0RKC!F5[8_4JN*C!SQE3SPE[RK\/A3P+!J#6"\A.#WW+%?B:33,_,A=&E>=RO%PD0 M[)3_$[,X[M7RXYJ1CW[2X[.X80_2ZDI+VWF&U(93DJ562X_S<8-\-#UWA[\ *1]^9QO5&FK7PP_!=EVMXLL4LWNVR# MSN4Q31W5U[2 &-E)$N IM:>+)%$BON4D!I+():K"ED^ MRTM4'91D!9NX-:2]@N"S8Y&0U#VEL>)BD:$#[8.-.8)TE+A8Y -J>ZBR8,9T MVIJWK:7'>"4423:26:>\:,'N$=_^)9^P5%S/XG$L/V9"/#H3XM.XP2GR%%TC M%5PCQ<:PB2UKG1&FP.[!.I=/1.;>F1![7FA4$NJ1D4L<1SUH=N$F,O&Q?D3> M3!XMW7!3*?S0\_7 B]HQ#^6%IRZ!4P*KIE#Q[I$-4F%)_PBCNDGZG1J+P:=1P&= M.$!_3+;]U1'J-3"UV55U/'0Z)8Z=F6VCUM.3=8>&P 09^P"9J,P=,?9WK\@* M.CR7FA#E.["-Q,"Y>FXMV>';"8SA/^"B)\XO" M9C%8KC(V)X^S S-;'&_8O!(.,#Y#8%YUYI8CZ$6PNLW!-\"_X2!4TY.E?0!H MF:<.,C$38]7;>FB6\ZICGNUO:;/1;?%$TK^3A'RBDL%[1V/@N%/@B"DD"KEG$QANAB/@E]! >B3+@[71HP#$?URQ MUD4(0X^ 0_?,4G5ML"H--;Q8X_EUS\UJR,T":ZU1$Y-4C4MSI,%.K0DE M)K?$BB=VU5FIITSJ@OY$?I@>LA?>$)1\C.9Z_^X\-ZT"TR@"&)LV=Y]HIK _'96>:1"'WE9>X,^,'/P MS]MT/)@O#L:OKOUB-!U93@@B4$/0CPWD[/HW[>T(6*Z5R%GPB_"^%/";3YB" M=^XE"KOS7(*> !;F^GD6Y_L91_&VP#^+]I*Z_/>_X,?A>Z(N"S;$O^FK*<*Q M[U H>_Q#T3\O G/[N=B/"]9D2: __P.O1!+D(3?E=]W_^3_'(_@9.2&BI5OV MC\.>Y='0ICM-Q'W@5F1D;,N"A@@3\.X?@KX2-LY^H%3F.W'@Q/UXWO8D8'\P M]#N1^C-Q]#N42$"@AK!&CH2V7R=VR_+^:X?/?(Q__M!R5 A2/VQX?Z.ZE.'3 M7SS7GQW7FE]R:EZMM,3/B?BOD)C:<"GXWRZ;.V7M_N\ ;@'&Z_\-5/XC':^E.LI<0G^VL"GY!2)XC+.)R>I%)\D1(K/@(": MQ\?8A!!28,$2Q&^[MYY':@&T>U/##X(EG^6:8^O-0:+ME?-TE\D7R@VZD2O3M4Z7CLS _ [O MAM)E$\_]3AQW//'<\P3H>I>I,XUN)Z0E[%7WWW6O*IXI[X9&H$\)Z (]NQ8A M=1RNJ)_I^5^>*7@2<'.EG^6\=EY2PS- 5\1SN'TOO3G65@13W?H/^KE:@G_0 MIM2T90=N1L!_LI/GY?/GZIE_WJ/H@DYE=;^:F>\!CGFQ/^\Z;E=;<<4%(RJU M9F-EZB#4E(&O. <=<&U//ALRON'1G)H Z"KLM /;_0\NQ!CV3^)8$O[Y[['@ MJ([/.3V2PX]+3HH(GGO<\["^B[>F(=4EWP/!'\]7BP("#X]WNB+R?^:@P[3(+V92N8/Q*Y M\N#OQ$JV@<\WG]O6&@0EKJQO/AM%S8%Z\D,KN58P;CW0O&&&:2 \Q[*SU?MD M(DE6^9JL"#ICNL!UH]>JPX,9XANULBEYD/4C.W79&,LV[]@NSZY,V7:FZORY M80XXJ(,R! C3'Z&@@]AI_PUC41TH?:K913VOD&DR7'^TH5YD8O OQ&1U%:SC MH(_^RV3'?>Y+4[8A1 &W*KMI"C;X]3E80_"=/C4$V^;KZU[>'&V&I,8.>IMT M>XDHY4+KV[_I8'+FSX0%GNY?2MBH)7Z*XFF_,IKB]]T4_@!__QM2MR$@)PY8 M_#U!O_ID_\6>H$_5$P_IE^_.\BM58%!16J]'U)83>"/;4E)(V2RV0IOAS;#7ZQ>'NHYZ[;5I MIA5T:YC !\U@IV?8'\V'DPP,.&$(,[]K1U-Z^-[.@(^_O+3\DBH[#0$KZE36 MI82DVK+H@ID&,%)3'2%1_9[HJ/ MSE.B.P4KDY/(?8 M_O[ND^>'@,;'#WV6^Z[S3PD@ & 38)V$@=E3 BS.2QE^Z(] !LLD"*AU&5:F M 0;SY(\ /@-'_V'![W:BZX_4_PC[YV^PLJKN- 'T: Z^DW M_PO'+8^[?ZJS M4_70MUU?G*/.[%Y_Z!EH:,,*!80"E YVQX5M?BQ>H#OS._FE^Y.ZV MJN_^CN-P*2+0'8 !3V,.+ TNV+#_P;=U09=LV1"@"V2?L('$A^H_ADID^=+W M1[K3[_W\%7:JZD_+8?Z>]E.S$KZLO/Z@X)N.;.-C%1; GU5;0N:"#>Q\\IP[ M4TW@ [J>C\H!/?#5V0%S#S )*N7KQ?]TWV#_C\<,9AK@@@Q@$X09O@I!*+X>:X 7GGCAAA\YF7"25=#P M61N O[8S\.=8_"OY9%\5 "Z\U\>IL(3V"BP.C!*8%VAK'<'<+NR$-@4^.>K" M!R]6_>,&N_=:GIV@3=,#+?;O!"\H +]C'_BB2/4 '+M/-K)@PQ.6X.MY6?2= MF7T&!?,-EP!-@2VO9 $.FBT@FL)[%]'%CU[=YD7E.2AT@@4NJ$Z#@2)O_:H MUF%R!S#SNR./;0\:'Y[>8\,Q!/KO?#&$GPM9>3= :ZZ:X/E/L%>^2 U! @+3 M]80)AN X\-F"!%5T)Z"_=KBVEQ/H IB17?83: L8A>U7>OOYA;]]2<)<,T04 M!TH:.!&J#7$-_ 6^"#JKMNH_P%]6P3H/>R8>3]9/Y#QD19^.M=-Z/@#RL_KJ M[MHTP?\[E E\D/,,S_"3W2E8YV FLN0'SKX4Q&=EA0U?Z,WA-&UG*LLNQ.8W MYOH3.BQ 33=VR@ND T?]>545W)TZP28[*#],H66H+OR:*-NP!^#].V_YD)*9 M6)9K0G?BF!W[EWHX:0,>:SG0^'7_Y7LGYU=D\/=>-<"(CPWKYV0Z/X?S;,50 M*P!BVY+_!M]&A&<$!\W D]2Y#GJL@,7:]A\._B[/GQ%-3L#P!OS+%Y8___LT MR+,5%6FZ^=,46"#WT\ITT!05XIYJ/&O,SLA?+LIP^012A4LH7#A%/V7O/\\W MLWUYQ.<7'1X]\73])WSL0//,4.E,+0]Z2W!.!;\=^-+,,W=!H2]AV$=?:[_X MPN?OO4"9<^X'_MY"R9J)SW@9U)&7D09^AO_[WHW@GZ^;> Y8._#O+>+Y#_O M]?"%9V'E@*<,'!#_@@K_RX<6NXLK_#_3K[\,EM"=Z\KKM<3EU4L(7(5#*R\C),AG,*WNI.)6$#=4TV7SM,SP-J"AL8+^7! M-X!EZ] N\\*F#K],F](0?/DH0&:-XD8 %HEJ;+ULU(49/K6[JV__TIX"W5#R ML'OPTOGS56=L";8?B.X<3[^D(1+2<1YR^$ BI(@C* MX/3K;R:@9956U] J:''B1&\+TR1S#4^N7+ER+68YR]KSL<3EEX58GLX7Q7F: M>2/^XVZ%X6L.E(,B*\_R $_Q0+BJXQ,J;; V/C=I3=6)7NL;FGF"B-I%>?UJO#]2Z;60 "CQZ6ZV5 M2GHL%,G53&U-:K6GE*X3"_M9K7<&YY%>NV8>) S<)4*KSUU1H6[#]=RS6*!M MI2'S CX>.A9<1R"3(V[^*4K71DV7QF^SLU0SC3T[ MB?1I=H9H*7\VHUP[WT3F#+(VO)V?B"5(Y&!+4+$5 .JA207W;"^VPMC<,>$V M EC(;';-%F05+_9FTZ&][%N4G['(7._785P5LK6] >]W&LCT/S8BJ8>](8WM M]Q&HNU=G/\A&A+B)1B[O3%QW\W!J-CN;%;V_Z, 'Y"?>];#;E+G^T4=H66NN MPB*OT4JQ]J8ND%'+$8#B"G>->U/48Q""!-_P7@'?['[8/7%VSE7$//\9G,ON MH=LIYH:C?=8!\8#9HHH\Z%>_QW%L7TUCBT9Q;%%<6R?B6-K2T(\ M:903/:F64!>KA*-K8WT]2J[02N^'>>U;JH-\O#=;T ,.D*"O-2M375^.8RQ0QWWFQ7C#&LP'0ZZT2>97@XP^G><:L&7B M=?3V?#=6J;-2)8W/XHP\6"78T41';R>( MHX$VN_61Q7,TY[!.K[3,#A-B?"7$CP<:JV^WBYPV4O!8+CYD)$UIM#=C(2'@ MKUNRY-!4^D_3(=[E"US6(%2^0HRA"7;4DM!B]>EJRW?Q36Q;X[:QDF#-5\A8 M>]VR5^VVI3B?6^&M1&GYM!BQ_7P*]7E$IF*7 UIJ4"KRL9P6YY;9,I'F4I2CG97DI3O*5UY%*JT";BZ@JV/)J\F&*6)+E>S_E:1VI(\^93AC;0VX\F MWWYRMK-<66=4T *3VF95 <,A>OOQY(7A5.[JZKK%SXCMPII4F$FO"U4)/YZ3 M7>RS1;7RRK>FK80K/B[/J4V.]C N+,6IZ1(%6 M/#7MBHT8RXM2N^: >MD<=]VFQR2HQ33'3*T44RWEDSQ)58P&6# H%^;1O*A% M-MY>Y?BBNJ@3U?1H171$"C:ECIMNZ4F/)I[D-C_31XE$G[7HT1)2*W[E]CB%D5#O:$^A4*C+00YG6"=Y*I[5)=*=4%FM<)_6L 7.#- MME549_WRLD43BTT2:@!Q0@'M3'Z0HH@5Q8OCZ28VUPVVS*]0TR,>\%4KJ=2K MVP87BZTJ[6ZFF8;0B9H>\2#Y9"36=5%MX Y;GV1&1F;5R;M-]SRX\+%?"XR1 M(>ZY(KW,46_&5[(YG.XDR\T1+\93W6Q_0^8*R8!B /\@Y/4Y')-\&8Z9V6VQ M+8\HAWN;G]>*CFU)$R [&MRDOF9-X7DTF8W_Y3&3DDVA.\B3C]2U._N!A[8 M@0>=&[!#= JWH\?N[QBZ=OC3,^Q7D +O&M3[[\4AW'L[-O@7V=;'4PPB:8#W MNT]<1GW>&_WAC4WRD?KMY=P+,\7??+HO/N+/=^8+\1B/^!)"OJ0?:3KB2_CX M0@:[N$1\B7#LIO@2X5@X^1+A6#CY$N%8./D2X5@X^1+A6#CY$N%8./D"<2P> M\>5B?/ED4NIW?97WF'GV/5?@+653A420# T]_.^/Q(^O$B3^F+ANELK3N6(^ MGLZN/3$!P-S(OUUHV)DR^[VWGG]'X8A?-]7AGPI'2UG_3C0BB(P@\JL0&:+B MJ'^J)2]25IVUD&P$H:E,>C&P/W@:R0FEQ.3>"0FD9A$:!*,F-#W)B;QDW;9*QR]F[5VKO(-HD@OJJ ">(JW0$36C'A.O)W:Q8IGQDQ5RCW*L[>ZA^W>\ M#Y*T^;JS4YU=89=V:IZ1&Z:&.Y-TC6JLFG&A/G@9CMM,92IY).KP)& U.NX,[2)"KJ3"(, M%DPU@E^CC&GI'[\2U -.Q".KXEZ0X%I6Q6_O(WTCJ^)TUJH_QI&.TUYSN82> MXVM/L?2HWM'583[HW4F?Y_#):"O3G+-<+QJM]/AIVT.[$X*$0))Z($YD7;^? MXUW?%5,13'VL*$J^,0Y=U: Z'4D3-'ENPJ#Z4P_<&RBV[I5CJU%A MX'"+PGRJ;=?S5!-G D8Q7J[4%6=;$#DPHDC +*E>O(Q*BB /')& ,)8ZOP]. M.\SZ_5;62S6V':Z-MO-XF,AA?Q= M%/U $W1T1/EMH."*D5&!T^$F3*S3/BN#[Y)V6YJUN*Y:G0PVC-)/9H(&DJ*Z M;<_).3M626=37O-.T5J,4=DS&@))XB&52D:13]\*3"*[XDI^(ZHS9K+.ME/F MZ+K.5%*+A"&E@G;["(L>4^A.))E78K%LKNTLMP2/X"#]XU%LH9Q"0(,]+DGI(7<+S M\NT=QU%@5'3C- 1WJ<-%ANA0Z4:4XF@IC;0D0+I$:G,C:A-I2;261$H1"LP, M+,?'=>AR,X?AWBMJ ,9=R)?ZDT) MZ+5O$X1*@C^<6SLZ.;QA$8\P.!+04 OHM0.00R7!7\3@6SYDN7BNO]#,--KF M7R9 )5RY.(,/=;5,6V -W;TTX;8KV&#F1?[O[@?L]]2[>P%^^/\?9_"8L[$. M+5S M\;% $"B.-OY 4-&U\6^&+M>,I0T]_(0I>C9(;(H3,K?(9@0!%T5BT<67%+EY M^GJHWL>P*3ODVO-Z==GER6XGOBTXLE+5&81-](]?B8=X_%1NT^@V^)WC4V3] M7"P@-U#K)[4=IPQ2I]69FK+3U>V 3!I?3ZKS,81QNL7J4Y.3RAQ=;,^K$XEW M%NL50ICTCU_IA\3)K*<1NMPQNEPSXC?T\!.F&-\@L6D,F)D@B<4N+J;D4K?6 M;VH)Z=([,ZLV8J:)::Z"TQJY'C,U9\$_N=CD7MW&'U+I]^R?FSFMOGBFQ.^( MK-%1R7D>FS12 M*EG1:]EM(C\++MLM)]BES:Q,NWU:)NN!:N'25LE3?1NOK_'LEH\1J^)\:4M" M&V<06J"J& \D?2J7?804-XD4WRF2)C1628".GS=PIIAF9]N"_-3C%^FAW! % MI]QA+XTS-3Z;2HZU69MCG[+51-J)<00W1CCC.GX>XB1QQQ?'?5<0:YAS Q(+ M8,;^#@-8SX%NG3&E7V@F'3H7?-!Y1*]HQ85P]I^*>\3^"ITW:J^\54/WH=8' MU'JE%:^+,W6CUE;]8C:5T;CN!E5X,UN:S7(;!X\58UFRO&Q7G#B#H,IU327CQ\F#_HZ"G[X]7$6V MT95LHR_[Q-X&G$(CWYDQQII08S&%[=%*5U;BYXZQ?!-PB$H]K6TR TM5Z&VW MN63;>FWJ D[ZQR_J@:*/\RE'MM'W!INHWL5-V$9?=JN]#562*53T3$U6^%8A M7NV1FV5/S)_;+_8F5&6)6EXL;X0"7I*2=:&[(D!162&H0@XRZB%!')_;_7VC MD5$OBEH8K])Y1.%1-WJ\$!U$AK<\Q<><]*4!S8[*V7Z;D<#O%SL-00B M[MV;HZ(TT?>CK5&(4FA"E,Y<0>)CNEZ_1ZAS>(@\?T]A1JCOANZN&@ MXGBT/-^-ND:Q.J&)U3ES(8:/*3M1<^:,I=LB-YNEINU8(8%GI#%2=N0.2#TD MTZ=*P=U9O$P!\L@$EGUNST!HYAEY9J-CH! :/5=Q2>R4F]'EK+)4H*3+'B+Z M]U45< H7X[FN2+#RI,F5BIF:('3-8,JW9D-(\>IJ+.==Z$B[=[ZI=&2O1+ 1A9_N\J$2NZ TGJ>\4-WNH"#OWC%_U )=\[M8M Y[Y )[)3;M7?)=KDT)9M;J M=F(,@@WD)Z(>J/@IW(@PXSXQXYKIFH.FPTT8*E=R]EP3<;JQ'IWCA5Q-[>:[ ML19E9UIXUT4<-Q\/\4 1[QUKN5ZB?VP1BLNO7=.J,X-LELZF)8H>FW@\AF+P M0FU>@\?S+]&7'X22L\OPU+%L9;3Q'BDZ?+']DZ*?!XX"FUR%WWW813E9WE4T MS()\LC#1!)ANV!B4'/A&47OTJ'X9&G^ I,2U21JZ0;T>D^[V*^[42>G'AN71 M8E3@:L6XE)Y/4NE<"]K]0@(._Q_QH*5@\%8( 7R=E,NJ@L%S!ED=O M3V:'UK(_DE>[85G_:4!FQY]'8M18OK6&H]46FV(=@.WV^RC;% ';]= MJLFK!#.32[A3TD>UXJS%IJHKN+O#7[?<;'!JL'&a.5=BF$3O=V*IZM-SG$ZZF8E#/K--97,/Z&61W,G MYNW9$S]76CQ=RF[QH:YV4JD&;'DT]_[2'O8:NB1S&YI6>LOMLC%RQD+R>)Q; MN[N9302AS[%MJJQ(6YG1BV,A==Q2*J1C,R+?4%1R!&?4+'7&C6T#MCR:4;9, M9Q?%6!M79VVKH60%2>"4%6QY-*/"3'8**8N5\&ZIKBIJ*_,DMU"?NQF] (QS MK&VOEZPE7%WESI2#[[]*D%[1YQ;X.?NP^&@T/+K M#V@&([>ZO=&>#/ZP"%9 IJR MO]UIRW2N*AD:(LE_?Y _OJJ> MY&/R"J0X.'^2 #I,BB0DDI _D9#?$8>9&7"&6R"?+6XMDH5G64C>E"SP.C05 MM&-AB);-2!'^'!1#= _M3Q7%.Z;#EJ+F@ @W(W%YAWB28=G84+04*Q*6RRRR M=R0LFF%9#Y@.[)-K\*O=/_[&9O@%<0E\3]T7D_\G6MEO5?O.282]G*2^JH1Q MZC%YW1RB?ZID?Q5T#Y+LB>%8HBY;?Y![W]>*D"5HR +)K8. 4<0#AJY4_#R; MZ(=LIF=+S>*YQ4,VNP"N5'C':0'0X5.52EY:%I%H1Z(=B78DVB&973"B'0P= MSB#:7S"W@N'NKO*W8YKH>H_HAKS?WY[B2EP3SY7N:IZYB5_F1G<$"Q$L1+!P/5B W9^$A/TY.6N&=JJGEB-JIH M19Y4_B#?S"D(>0ZOR(N*_EX!69VQINM5.K7F-PTP'0ZJ<6D@(4!)__AUG,KA M[_MP7?O;JQ>@XK5\OM=YQ3.>T- E8%LL7&0XG^?H-KR!UV=[)/V1]$?2'RJV MA\?.#AE=KI9@_T8<[.<3E)MQRGNO*#HZP"C<#7:(GR_8(31*?T4=_V9S?N_Z M<-!:_!VCVB)ICZ3]^TA[D ;==R?">W>N@]:':]MPH3'P+QMK$9IIALZ[$?@) MPY?W>^=*IOVV:R1PVH0YP;9WEON<\_*K9S%B?1SK5=KI*2?&TO;"ULJZP'X] M$_<'(SR&:<&1B3BWX)VG2DV;VG29R:#BS2[4)DZ.[-&,ZLU&.0JEE*9]J+I@">L(JB*H.I/? M/'#:?&Y3]EN@NG24VKSX6YM.GD MC,S%"C.\2X^+=KS;;U%IE/,>54HZ%>9R=$LS*EGRQR5+:HZ)S4XEO4L1ZP), MTN!6'@X1,]Y\K0C_OQ05#3V/06F,H3HJCUA[ K"1J)A>Y@TTJ+>[4"QL#'1@ MBAH \1!G(#VCVD"D;3!(M^ ULZ@\!O1.5>4'"NH2=Z3+ZTCN$7#BB"<<0 _ A M&KVKW"\'.83=R1A\BGJ$-+*]%Z)ION[F 8-P*TW@>^'/T#B7J ^OB2QN+&QN M*H:)V0;F_P"#[W6)+TJ2,W,TT080H7:*BHVAIEKN@%'Z 3@I0S\DZRM>(_;, M8;=H9,_]P:'#89I09&9S$TP %)SEOGSS7ZC?O]V\!NA7;OY!^ L9C "4&OE% ME>?3U7'V53(676U(#$9YG5]LR'BB,9MU)C54<>6H\L9J+70W@R=CR $EE8HE MZ3%1W)ZLXE*@T[FY0(U)5;26J^IDS=EVBSE5FP7([79FZR0*:K[;H&Q0=-(5 M^F1MEJY0GS97JY*@TH5TP2+84CS=/EEQA>WV"YE-;990NT4QP?>D37Y2'9^J MN%*AU=I,ZZ?S7)>VXT-\P7>UU/A4Q96TWM&'E,FDN58]SUF:UI4=D3E5<673 MF*R&396M\/FA^03T3*LRC#$G*ZXD"U*:Z&7[G-BQ^K0RQYM)LP%7I:.WIV)/ M^?ST::+"-@XHK%Z[BX2_* M^K@))* LD0J=J.*Q5.I=L@_:>9ZM.-4V7L\S=FT5CF(H'I+$=Y?UO+(HC"1! M\PVBI;F?EJO05ZF,TI(F0'8T4!OMAH'&:94-44>5:$Z0_)CBV52K*=5DH<:W MS*WES%9%AMM)3I\[R!BE_;/V[I3Q,-9[T!$ M(G #(H N0OCLQT^R_];0+9@CW2!D/2Q9E1,G]1"R0!N&/0B03BC M(,3/EDH[>:Y,VH%CZMU"Z$7,A<17%8BB'N,!%P1Z3T'.F@O;E^M \1@G[\_ MJCJ'4 <]PS.F3TT'?>DCF.L/GL\D7->Y7ZWND;1&TGJ+TOJ%%>/:8;#/]\O\ MR,4-5C<-V9'.#)8UKM+/%\;6EM[6(JO>E]/NKNSSYZC M=?*F85E^Q/*),.%-+!:SV.%XBW<+E>(@I5MUUO;3[Q+QAW0"OT1ZS:#5.*B[ M#%?7Z^M<1 B?XH?B\M.706$^Z[7-+CY+X:U40AZMIV763'\]9^:G02&>2?0H MINBTU5II'3/4:GXAS/RE8E'^,*93G6!!LCA3NS)-]=3?O#V=/X>A@W MXN=B+S4Q96X&JDN%-<:E3!O%W$/#AWP@4L=WI.X3 X(TA0(GQ/5R'-X$:MR( MU?0&H@C-*5D=+G%5;?7'XV*RHL>R@RMNI9J+[9'CH9NK;E$NX,]XC5Q,.!CX,M: M2N$YXS[A9SW[_?(C2VDV&*0Z5+GPQ(%I(9]?6Y74T/GZS?"]XN4,,^NKW3%4 MO8U22JO4;J?RBR(NIJ1UE^PU:^L\(R21W9,\=O;\?0>:'*B)$R;5OKZ]$VK= MOV[BB=?VSJ:W$:U>3%UPM98]&/'3>J?7_H,-T!_BPJ;LM,?I?$+A\QTEOHG3 M19Q3QQ 7Z+=PX2X@%GJ/F4N=?89QKJ%Q' MYS:(CD"N"NRW<:XCSBS-8? IW]*H<=R:MON2L?*S$28?<#IR_$1X<-5SLS 2 MXV:\1N>VHCX')JQM<9.4L6QQK5S#J37:A7ER,O;S!28>XN_F"WR1:"N<5_A> MI0NZ3#:P=_)L?69>?IJ-W9Z#_/A4HZF$<2H7SG]3T)=P+H:YR2J6I!F68YY( M<#/(FTVBN1W37$P1)VMQO)"3[8:'3(KN )FQ?]-.0,V(*R<@.I6.[LWU7T?X MJ%U7N/Y\8_(:F=QKQ@>WIR4-B"9:A2>OQ(\D'E'2GDM]ZN3B"[_XI:BMQ M8_D33:8?]PZIGWL3@G)E!'^D$O_!#CXCBAP1%*4W.B#:B_1%_L]>9C#:/7SG MFKO/'900Z(*L>;7[IPXL&!&;F A1_J==8T_"&/J\TY(3BO/C5]O-&F6,,-9P MTS]9>TD5#Z_"OR6=+^EZBES[)&S#TJ3F-$FARW6KG>1BQE<[^>'X5)J^\7C^ MA.OQ25_=D&:Y,TI6)G+Q9)J^7E(;]XP.7L9%IZOBU7R]M&1/INE+\")).D/; M4<68DMW6J@-'9L>GTO09_:?6-)E.5=5\>ZZ;2K$E]R7F5)J^?'*\+@_3\QI> M8K-$A5C4Z^78R31]V\%&R"WKVA)GG4)&F/ D5:\W3J7IHR?MWK1HV1(^ZQCD M@!RG9Z/F^%2:ON2ZG^JS+;NGQM39VGA:QE+%_/A4FKXE(1F3='PRP1?:IC/5 M*J.%+HY/I>EK;>@IF&?*(DX_;9UQ+TF,MN;)-'VI;5?E.HU1A6.K]C(U&2T MV3J9IF\E<-M9EY*KW&(M"MTX-97:'49('[><]-K3;+V(+W&GXV0*C#!^XL8- M@<"/F^IFS*!L9LRH,3P_GHVR7"LV9@2".&Z*,WJ_#.63PIW>!A3Y>532LA=QBV_63 9S@?@QOR8-A3;1XTI2&2JO'"B(D('&" M50;1;?07^>;K!*)?@\13#N:&.\G7=&R.B?%UA8424KRLDG(BP*22, MB+ I+(R(L.F\G(@RP]QAK-VW2"07Y1+\]B(0Y1*\6;B+4LA%N00C08AR"486 M8R@6CBB7X"T&X,,^F^(*FXF0#HJH65$"P;#>D8Y2LKU@;)1 ,)+6VY76F[IC M'B40O)#//]P7J,)TMR%$>72NDT!P'X(#K;/*SCBK KLV:@)(SB6P3ER#R!:J MW0&93V;P/$MERBM*[2:6#2^)(/60H$]EOKAY30[R_E1X_!Q1#L&@L^%<)X?@ MEW!!+[0&S3'1H+A\9\17YUL]2S8:7AY!ZH%.I*(T@C>Z;0CM1?)[2YX3OOG> MJ/GT1M*P,Z$GS*50X$J1%%4)% M"SAU3_@(4QC"LAL^9L_%\"1L2FTV?C)/C*4\NJ=R3DTHFYASC M)3),/)")^)TYG6"?7<-48XH>FYN&!*W,^XFE")&;Z;8-F-LXG8ZD-9+6VY'6 MV]C@1K$4-W?@>FY]"I-Y&J(3@2L'5" CK:#7/1/M/2,VGC%'.(D['$>:.J [ M(JY4BBC9#\I22SVDDE%(Q2UK^-5WL&&"@!MQS5\YKN)3\) "9'O;T@6<;_5S MJK4=E>1M ,B?5 -W@)(.; M=5:YGM-NFPF<0:D0W9,"@CX%E/>()%%L18BLL1 2Y X-N"O'5GP*EY:M9B79 MT/$\YV2+5'%2(?,EE'441Q9<_"%UB=#8H*,K5B]/*>Y@O_I=#V"C^(H;C*_X M%#Z5^$XWLYTLZS@IFDRF(=7!K.'FA48.J/0#'BJJ)VRPXHV&=.T15K F1L;!AR M%&01'5O?YK%U)*V1M-Z.M-[&/C<*LKBY(]@HR.(>@RQV-EH>F6CO6;&@U0+< M4UGD5'*>SG"]XGH39U>H3)&;MX)(GJK>>?,*'0591$$6H?'17SG(XE/P,%N; MR0$<(LOE,URVDE*3&ML8(WB@T;WL%/FAXKXWM,>-@BR^^TEH%&015COJRD$6 MGP+*D@+$>%E/UU0G/BGFM1N;FJ:B$(M[5O HQ"*LUL^E M0BP^A0[Y>%ZSUY/8'*U6@U4@Q"#^3-23Y0)^_R'5E$_]@B9&98:UQ[XZ\Z,_@VR?L;<4#1'=&; MT-E%;.I8MC+:>(\4'0[-*[/XT9EY[?:["O+CDQ5WG%VE.FJIN(U/^8U"/?%K M-9O(Q2!G!1*^^1_QH&4S+Y0840 *SFZ%F3&K+$;96@.V3+QNV1\9Z_IZ,RCS MLVR_F;"FUC+160GD<9]@T);32;XP4^GD-KO@9B,"S!C8\JC/=&+--L9F0^/$ MHE&H:'AI4)HU!.JX3[7>B8%Y?$*HW4FJE%_)0FN]6@EQ 7_=,E6*/Q6:?'V$ ML[6VQ1YB51/316LA]%>PY=';^WUM6*"-9@Q? M#%9IIY"PYGV>@2V/9M0>5M-*C#2ZW"*_:;.M3I==+AI0Q8_>OLIF57I#U'O< MK-'N)X<3+6G-5T+RN&5\KBQ:?3:GT(Y8$5ABD!B@=RE'+K2;F]9*.$QPP M%^-*H34VUC/W8MU1TXU:J0U2!=90%;96!*HDDF-T;$4<-RT4AO64I($N3W?+ MSH*G1);M-) E==0T6[=8&Y]W#97L2C'<&99'Z5$#10T<->TUV:0Z2<0DM81O M6[WRLE/?T.ZYV5'3V':*ZR5J*N*MC=,M+.KS31V*"7%"3O!*75G$ZQV2W["% MIT*B]43DFBO?K?2RJ1:S+):)Z2P78[*53&(YT/"Y"ZE'O?)&6FU*-3.#U[)+ M$A0DM6N5(5U/","3))%:LDIPO +L*5&JCK?)'(.:'DGJ*FTY[6F?KO%*SEG& M$IHU3SMNKSM1?0&(+U:CK&.ZF BUG_#6H[9QL#BE1A5GF$DH!+LUA) DN_K95%S=H66!T&3XQ'2"7%=&%,+COS"J6I!F68X(V?'=&,R35 M7Y2&0J/;JS3)_G; .=QFDNFJEC;-,S\P )>O.7R/#?LZFV%PM,3[&(U =[]S M]@V#JF'[]<7I76!MBB2(?['=C+&Y-V4,&@&8Z$T:TYYG[=UON##Y6]($R(X& M:J./,**-OCGF@:,LEXXPX4B<-KCA@$TVG^+\I7@P@VO=KACQXT?72?SCBZ)K MG>QZ\$U1R= T<6Z!G[L/AX.B8=_^@&;B.N:R2-\ORQH8V3]%QS9V#UR+TGOB M&Z]>FP-KUF^#GOBV,H[_!TWNJ!PSX4WZ(PZF^"/UVP@Y65F>Z-R '8XT8[4C MV>[O&++D?PY-(*JQ%232OW/#4I T_C2!!L5R"5[UN?]>'%J&YMC@7SBV$U,, MIU4()[+_]X]V/>1C,D@N^$:B^^(CAGPK1A"/=")B1!@803W&(TZ$@1,1-H6$ M$1$VA841$)N2$2?.QXGWCT1W+/F8T7H7QX+OX6[8ST+@I@@]_.\/\L=7]2SQ M2%SW^HX$MVC _,2Q1Q9(;F"EMY>GB(>S!HA$(H!$X KWT_Y$!(J.[GMT*/PD M^V\-W8(Y! U"UM^/]#K^]TBUSX9S(8H#^[02H*B%&P:]$ E"",(A_U 0XB?A M[Y5!_);K]04ADWM"OICG/[>'J7<+H1, <]L_/=]G"=-T%/)X#@5L^/>R-9C2)I MC:0U>3/2^H65XKYR< 5M\%PI.OCW;O_PAOK__@#O"D&Y84T:<9WD6Z]"=UC' M-.$H3D3P-LTFE9DS8*IVE=5"U?.VQ5=0!*.;)B)!G*K,>_.Z&U2H_]65^5IA M^[\_$KNVMM](FH;KY-GZ,!)T&_+(+N8'K H*:B8.^(Z9?$(1RK2;> \_:V*& M$.Q=KY%9*QQ;@Z#LEJ#G?';R(;7Q+E.7JP/ QM;Z-IYN6&K?*DT*4_B M2K^ F^A"!31Q:.J"!D[0\A\:FR=P0EPSK4/XG BW:1Y=)XO5AU&DMRXW&KTE M4+C82AL3JUA;U#-CP;WI2*?P\QM'P5E"K&'.#1/RYPZV>G>[LPO*FQ\>',/< MZU/D^5SXWW-Q_G:SCMP5GUZ/=ZWV*\/.I-_4NWUABI9:GVUI;RVU+SH@="TFT&)\U!U,(_!3>&?OIJZ!WMTOY1IN2^_9. MW.LQ>R2M][A#/JMES[UBA,<$OK6D>CNM M::)+>B_R8;QML]:E'EZK+.PDURK$+#%?9J#=VA#2;O7FBR7:"UH7O\_.]MH^ MYO!H[STEO/N*9AM/XF(1(P8BOL$M0;"H_-K(HTQ8R#7\D*)/*?8M[TA?VQ!9 M, *0-C)F@B70G?.YC8,V>K^KL1^%BM^#D;)3RZ:GE6_CU^1)ZJV39;K$=>$; M8^GUA@(0OPC<+7J02$QI#8HNO, M)A4\Q[>ZC=@VU6UW1ADWKR^Z9Y"ZH(GQ[9;1R/41&007UF9KDE$:JUJ\I+;B M_>RZW"W,4OH*:3.Z*W RI/:>_!UM<0U[,NP),#%[ A4>LE;1)6,6>3YN?1]T MWX?R]V!NB%K.,%T-K"$%;$/]*[BZYSY[&[-J^#H_&2!"'K8U22")DC=#)RB-R+SD:W'.[&W/B,@E.DO*G5 M]+S(Q;8EHDML-PE6CW'#"0&H8#K\3BU^;A9CT?=-$; LN L1 V# M/UXJT'B[@\W4M]@[?5-_1Y38X+;%-MKRW\W:^BHXXG UR8'?G2J4;*YHY#=<8Q-WO_]WCV#N<_,0[%XAZ (QUW8*!#W?^W,:["#- M5='CBNYO0UJ%7\VEU-.&X&M,I5B>5.5FM02W#6XF12I^*@?:/>I_R)P'02M( MZ)P+01/D>QI(GT83IUG3TX(^A@^ M#B5Z;@*W C!BM_>_MF&+&B:^*JJ$05ZCAZ^S0-U/_;!K8N@+?* @/LB&@X@< M"&*>L=Y&X!.[7UOI568Z1I<_ W7*P%HPS#)#X8I ,%IO$9L49BN!2+JG+HF' MY"4/7KZIH12T+GS<+#IS'8[ 9_X][9\_0P@@#5193=@C?-;)YK)/9GY32(\1 M0KC1(@\$_:$PU']L].XK:;;7<'ZZENLIM?;&7W5F\&W2\=_BCAA+7FTDLWBV MQL\:XW%&';;X(;(,!1(.XQ_QH*74?.HU,XEJ$V>%F#T;5YN%G@B!54B];CDR MXL9\UNED>5'"&^O!),^DJXSV9LM02+56W%DT]9NSH:5K)"=P5;)EZW;+25 M;;\]G@2V/WDZ/@)BW:QN>5ZHC&Z2TB=&+H[<3Q.NF.3E? MUJ0\RW*SSE."2_<<+I5I"/'C@7*4;1,IH2WB"WXQ'R_F=,Y(HR(P^.N6K6U. M$UK+2@U?@.2&:2RFTGPUABV/^EQK3-[: =:KUK,YU\>R,+,4-,F6@EB]029(S9T[H^ M:JFT0C36>,*9YU1&<-?SERT70"[9>%T7>+9(5%NQ;;F37C6$U'&?#*G;Y95$ MM%5E1I/I9E[(K0$#6QX1%/0W.JUU.9ZO<0N\R\Q7E4$=]7E$T,T@WXC74@[# MU0BJ%\>[G-F:CF'+(X*2BP'7IY2FA;-B7M))>U"41JCE,4$32;FKM+0:P2TH M*=]HXOQ*,U8H'\#1G K-9AK?)%H.+L8RH()3@V8WQZ"+@D=-!4O3A]4FFX3: MQTU DV;XCNC>$#Z:O[I)Q12AL5KP^<%Z,2B"WK V=:\?'A' B3?I&?&DX"I- M3/+3A9X5!,5M>D0!=BY4YGH:%[5V%RS"FS74?.I1E>>UOBD[=T[(H[AK)7MS"#=^^*C7HBT,S'A53ZITC@!I MJ2CR31H.F.X CT:G ML_59W1W GEPO\/W%6IQU3!&M81"I"6\U;AL'2W-J5'&&F81" MPQNO5]S]Y8ZL8DF:83DF:,,79#1#4OV%=2@4Q7HJT:NEL^J&'68WW8116=9] MRT#1X?+,V+]I)Z!FQ \,P 5[#E]MPP7];';2D)?5%$3+;_0/(*6BG\+%;/1A1="2)D!V-% ;<:,1@';) M$NS9TA1MT 3PE1*T#=Q7M9%UVNA6\VQLVCGETNMU% M>313]-BN:OWC1VTB_.,VD6NO[7KP+7?)T#1Q;H&?NP^'@T(.)7] ,W$=@V,#\11=.>F !@,_C%Q,* +@,9.U-<3<1^Q/[? MKG?!L[^EK'_'_ C7(L%^&]="=&/@TX)?='3_9)C"'\YZPR(2#Q_W[EH\;@T9 M@PDJ#D(7WK]*=?SOD>KOE8#\JA(0^"-!W+82H!L!-PR*D2"<41#BD2!$@A A MPKD$ ;]Q\_D8$7R#Z)7;$'_#J?:"D 2UI^2+B?X3F5GAU:6+;#D(XJLZ%:MO[]^+=L7\J"3.W#K.9!L(*.P:0S /W0+/&"B M#><(,/ZQ]8B- ,0WE#[.%FW'-LP-]K]#\Y\3HK,;#PNG.C05^/XGH"T!FCX: MBZA;,7] +W':EZ7G\&W,%&V &:./7H*;.R80^D9\/2;X=4]U^FFN&A/X6FVZ M^O';J&_J,.J;$JC.F,DZVTZ9H^LZ4TDM$H:46AU>BB,_4TS[ S'AC)WSJ-O: M$?=%X_U=N1CIQ8M71=,4AL5X/7I:GUP1CYD%&+ M+M(R7TC9<9[4\YMZ>='H3@>06N2ITIVO'OSG;*@>M)H'D6Z # &\G2/!@!< M$NI$KN>^+KQ7_?A)H.SW6UDG-:?['*!!*UG=3M.CXM?S"SQK\0MUWS_FO&4I M W0P4NR/HL#S_6("CCL_[[6W:JF65S5ZYM0[971?$B4@>"!(^C+Y!R*]#VF> MYW/E'+@!8+AJDH'7J/'*8##X+FFWI5F+ZZK5R6##*/UD)KRH83\Q)6,V'N7Q MV1 P2:TC5=MIA!HH*<$#1;V7HRE"CIM$CLAB^#/=_^K6*E2ZOUIF^V1V B> MQ-M.?2H56_/L"NI^&FX<'E+XJ02VD=[_23AIX-.^CL& C9#C0O!& Q?]3"$ M"C3D9G/5J/>8.%X;Q3O:G<Y1Q*'X-R79 /5/+4/N,/W8=7U1%$"? BS<(= M>+VO:-I<=9)GRT[]WOV7N[%<@O1UN*K%Z'+9@(PY*-Q[ F:F;&H[65&3/@_: M;$E)#M14UQP+;AYJ@C[EU8QT-*0Z>KV$T6%3XN_GE_B$AA=Y)DMHL:+)EP;= M;;HZ8O,VL1+32MU-6V5 M56/2@"-.__@5QZ.5^$+W2V]\(?[]G) %ME+K5!."=3:>S7)15!Z17$$^0Z^&] M(X!0!Q(\%\M.N2_PBC[.WRSE$'E-/V4K!5T [5+!E$'/*P0FT'4#%%Z&0YV MJ.R2L5;)7KO U_),;-VLTR171%63W&L59"H9'8#FBXFWN38D$=6K_$T4LW#(81.OZ[;HVWE5G M>TDI\]$@RZG=ZD@7QUW5$9LKJ,[I'[^H!Q*_X'7)NU?EHX1Z06OR->\]!#WQ ML"_KUW5)O(L#B>VXEW^:IRR5;0G)4IVI5P99MRJJ>Y\A29PR\#_GAGA/<$(2 M%?$GN4X.^OU,;O)[\PT'089P7"@-G R!W4:-=.CVA2?2H4B'(AV*="C2H4B' M@M6A,"0)")H*@240"(,*A?I4&_;)&K.Y"29P4ZTLP6\.M#%1TPQ)1)X/V_AY M![ZSX-;4[S7GZ]S_"X.J1ZH0J4*D"I$J1*H0J4*D"E_?,'VO*5_G;G48-.$^ M3M:>(X%)]P558/L;I?OTFWPC9V.41?6N0GT'PYS9W'**@K?FS0V3LJVE$V\( M!'&%6-^@1?F[JG"40OT#=/@N(;[-PFC0JJ:20,WW-@U>2M:S#C-& '"=&-_ ME2%HVS8E>SA*5A:O_5P_Q#<[KX%[&ANPZ/+SUCVO_ MT@S+^AN+8?#7*K#=(UL+2(ZIV$IT,?E/+C %G9_AZD0X==LI5$D9$.S]==/N M#%>17P1A>$C(+$5%0[H+>[(@ K;V&@PQLFZ87FE)VU2&CJOB;:,NFD!'@ D) M!0=Q CD-)]VFQJ.G$4=*\V&WE6PKY1H#8=-UB!SG9_@[ HO[ (LC:R%"C]!8 M5U?QF5P 98[J53J-45?/;J9X:987M@E:*Q>>7'!!SI9[O4P=H%WPX0505DF MQU>[0P4>G[),]FF@[^\:\][M0<;=%[AIUR)O[J53TP:=W^&B)S:!3S4$1SJ! MNC;*AO6.I4"8(6 N5'<]"G2EM'0''?0!%L MN$?@M(A\&V>'F?(FQI0F1B>!;TIR5EHH#)^B79CQ8T;>JY]S3U 3JIB1P+4M M,E'N+NKDO-@QC)&Y,DZ,6AR;;G92Y?70?N(9A!UN9 J1/%5JXQYQ(T0Y]8/& MB6!#5P*G1=@ME*O$MIP7949Q(S>LR#J+B^Q"C,VE<8GP+)1/Q;_\X[[H GQ& M!0*4T<9[I.A0^^V?%/U1.^,39H8WQZHS@R.23OPM*\M?_PO_V;U%TH!H(EV: M^$/9Z05)/*+Q^;""X_^YB/Q+D!# W%$!.;3VWBV/)#$LC<6\J;E#=__]/X-;PF&1HAOESI\8'4YMXBD.Z&CT&L:$)1#4FCN"[?XK:2MQ8_D23Z6?7\,\] M$E!ND!'^2"7^@QU\1A0Y(NA,7,<.B.8#2$P#(_NG_[/=,U?Y]P\-2T%B^=,$ M&E3#)4"]O^C7Y8YMS"_)FE=>1NH BD1L8B*8^)]VC3TIJN@S%#:H_]J_AW#E M/_KQJ^V&71DCC$6HH]O67G+%7PLW-FJUO!N[UA8_^K?U[] M[-23J\#([ZV.ETKM!LI]$$I>(,\#M@+83-Q@0Q1#N32T)9#A!VPIFHKA6!C0EXIIZ&ABHO;@ M3@NMJP[Z8VX:LB/9F*:(GIS!1R)2>.PO-X&.#30-N&U1TSDTZS9_/V!@-M>, M#>K0)93A!7-JHC+S*"E":(.- 6P40X,3CZ1ZP-?SV"\S=,"]'"@@,T/8)9#FSN MO\9%%UW2'!G25YP9L'-OFO8$OLAZ< >APS&8+DRZ/]V-0A+AF!]>#?.M%J*\ M5"2W#PV,(9TDN#Q:0/,("^D!UI#J"A1"X Y1@2(GFEX'V%^*._V_'[$,_!NV M/YJ#+QLJFK\,()5GBNY-3K0\$@%W5K#5$&@*6 +8Z=^>7B@VIEB([4-W,1 Q M%)B+3> /AP"XU'%,2+D'=ZAP)):!_G7G-(.3L/>S=G^'Y$G$3!$JE#M9-\@7 M]@^7=\O0X1LV$!B@.*-W/6"P\5_*RX$<-(0K"L1%."9H;F*Z80 M.%Q%>G,H7G\SB$*/6!? [R'-T1Q$28* *+OR[(W-%C&1M!:8$J M#+]%@NQJ)11;$UB.9KM2C2#!'9N%N4-=.(H,)_]XTL(5W95!P(&4!I(,UZ-A M2A+B<1D(0XE("*GD*(X3%"FG).J'9VF(NTW#W&HMC:4P67+T$S=1LIU6@\VL MT)KVNJ5A=CN];IX%H,26B,8';"R%UU">8#85TMF6K-0(?-DVBQ%!P M(T(>]VD+N,:F!B.#+]DQ(=M,-,G&@($M$Z];:MNDWGOJ9E.\,NGF&LM1;#;5 MQK#ET=O[;+^8UQ>K)]SI3/K;K&Y,!Q/4)T&\;CI+<]*XV,RE.-"G!!X:ELD\ MOA*H$P.=L:/D-)DK&F]1&W5##Z49VMG6<:@CQ MXX$N2U;]R:PZ-8ZVR6YR3%%2,L\("0%_W9)3UA3-4JD7 <(Y:H]B%TM?6S3%L>31Y MD6@T%DNG1.)B72FP591G_O)7]CVRHF*V8%H#IXM+>O8U-(J=64S3&5J M7(NOQ6K=%C%(-JYM:NULE$-CY=G82K\TMG)[9%%T"P[/A9:?U[!F]Q3-;#*B M!@-#: ?\_,59H4=C9 0'!BR%]P5S[/ 3MR[>0R-_>O:;X:F M&2MD27GCG$.M<.UV=T:G1,M;]9 AB)9+232A30571/MP_LB:\&Q&$\"%S'Q! M''FO?YZ4^@3R'1N>GU*"PQ+G%OBY^W XN7)=Q<)^\<$P7]Z/IP5)-*[OI/]]^(0FB%P$_$O.+9B_+G M'KYG-]@?GY%09(!,\5T2[HN/^/.=^4(\QB.^A) OZ4?ZMTG)(KX$AF-!+BX1 M7R(/7_K\F*_RRD2X4EK]W[L"@V#\'UR E@P-/?SOC\2/KQ(D_I@(5RJ%EY&2 MIVGXNVCA+)# ; A,[\2,(AZ\#^@"P=GNZMRRXIQ%9N(AR$%R1IDI.KI_T$KA MS_(2_^JE^E#B:S#)%NX5<,FO*@]!/.*IRU/DC,K!BJ:Y@0.\3_2,).+S$H&" M0")IB*0APH=K2<05BD1=%!\BV^DV;:??<7D7DOCZWR,<.!LHWM&.PXM1OQ_( MC 3E0H+BQD]&$+_L99Q O"$M2>LB\F_D]D M\]VJS7<.WS)!?%7A$L15Q.","O570=_=830<2]1EZ^_/;GZ.;A"$(._JX?Q9 MT9IXM[K1!W2] Z*(E]C@3!(?L@D'D= H'CXRG"//F1>]%+;*6H^)UW,]=Y8A MQA)J([>\BI_*S+]")QQL,J*E6,Q:L?;M=GZU)I@;I@UDQK7P M3EQIK+CGG<(3Z&^T!=L0.78"8NJ35,N6">;+>8N0SJ.$%? _W+/"GWC]B2Q% M?6&P7,>>&$IEI^WRN"47Y,$<7?RD?OR*$P]4^E0>Q3-9K2%3H0A)(B0)&DDX M-^N"#6JC_2_>AI%%F1W0V]0TIXKM38*Z:1=%#I>?\ 9L7+&Q1+B4_O$KB3\0R0N6 M%H^P*<*FXZ#J")O.BDV?,I@:!8ZL)?E\@J\EJV7GJ;4T:"D8@VGD3!VVE<_/ M^!B^-"8S8Y:NR0V4<(?\(#*]R [[.@75F51&T6,[%_/C2QUZ.S#^+6?T"22Y M>IJ54ZE[LHZ781!.U,1T()HQE#8&Y0OS4\)X^>LD?Q'_)Q\Y70ZL0OG"6JB.QA KJ.L@6U3U"U/ MVGZ?\E)YFC!X-6OAL6D96 O*V'1KXX!27IY,PT3@+_,P^;/TDB-B]L$\;R'C MI9O?3C/@H#WYDIV$.(BN1P">X7R[SE>FUU63/-@XE"8L;EC6H[H M29XKZ&XB2S!#_]$A^:Q'CW!=@(V!#DQ10\D D=\=IXC_W9\H(/5#T);#0R]S<2>X(%-U/=GF0 M0,G+H+CRASLT3--882/$F8\/%JJ]FX1P=3!4E&/4A -X-4#4U!O?1)2?4QC: M$\648YZP(N$9PA>[Z41]YDP4^"8)VA\BFL/H!5?@ ,31"**OFT343YB*T K3 M8 \H@RE\@^+F(W43.+H#>G5<\"*EE$NCE0)?(.Y*2J*7.!X)=ODT=VD8#W#. MQ4WO9:9BJ2[!T3,D=Y8_;$R.8:FQ,.^9Q%9&VZJ M+MBW"5 &6"3XOO#.(8\4RS+,C2O'V$JQ)QAY0C7;3ZTZC+WZ\8L\+L2!06#6X(='K.:8OL8;'M=>LG8(5=]Z MUCH1)4]%T#K7("A^D+$0OH#0-^+K,<&O>ZK33W/5F,#7:M/5C7.6_(296T9: MV=Q;.*X-WIJ;0)1K>@>N,NAA$XYIS]H8> MRF$[@S.:R.)F U!!BA>Z^9)]]1T-H=U;T[,N ;G1"$CH'F[69>.>=XN)*F=2 M])10NVNZTS3S4Z,FKDY.710 MQ_YPU1C9(\9**8VL2E9%'$^2-@J[%4%Q:[M@?WG9SY$$ M.;J#LHM+^_SXV @ ZV\$-,;KQ>8BPO).4:T;E)UBKSU+=\MJ'R_%C&::EO(V M/6F\EIV7 K+C$*/+666)\NK+7AV>YP+F)^5AV!\OM@VR..)8 &H+VU&M'*3P MKT?Z37%P;?U+<_'5KOP&N,YB2#PU$U#AQ\EL"\],D&9^:V"?MC&7=VT4UFQ1:K&KX:I M29$CI:F:R"= +-WTA5+1'2 S]F_:^>5C DGS?,(O?^ /^:TCVDW_3!#8LX,' M10=BSQ3#7I+UY]Y[&@97#]SB5HVEJUVN;'KFS'.R\(-I[/#'PC(&_ _V%YHQ MB?^;8UH9]R/Q+ZK=8*&:"DR+=[N+X9&J'ZO/+JSB"1N!GE4:^ MIJ'F:L]L+NK(^00[\O-+(V4=Z\H([OQA5Y;?)2H"HN\*H7BNF=U7"K1Q+U>]9P" MV\)\ T3;[&8E^ZTUY)C9OQ[5+C%D.(#ZZU>M%/0"-)PA>.[CD!"N1T2Q?=_Q M+N'-SCTB312PKS_A>CLDQ?**9*B0/#MI8&O9REX:W#(RZ[F&G$,H&3KJ!S7 M',LO*V/Z1[G8S#M<<-_"H]B-;F3IX?=OZDD6(^U]=! T#;$7_?"#<0IK%#^YVSR1WHCAEN>1*T M[?![@_.'0W?]4[L",R@!NUO#1G9Y@S:@>QG9]>,75)),1#0D53ZM(!%.U\&[ MO;IW!!X5OO/ZC0K??;'PW6]MD-"LS3L'Q^':#)?;XV4V_8!Y5BW6%M>H4I6W MPB;CGU]AG_OYP,IZ@$3^XG4 2'YI,G$\1AYT^]!"=D\C3 #)+;D'!&[I+'\G M;+LSF(N*[*^LNZ>[91D;;N".6$:''0^86RAIA\U0N'2WY12:]I:L>)L,UY._ M&^F^3IAKS*#>42TG?SEZ"TU=V'<7?K]&F;P#Z1,3\4I?S "P,1$M!E#X;%<< MX1>09A-H-WYE/4J\7(^>N_!/5MPE!;CG#\^;BG_1N@N6P'Q 9V?N;L<[PW"] M5O-=Y3;TVPTJ;_5BE8)[DC,N2?[R<].%'R]5Q_+ML7XJM=]M+>)$M(A'B_C' M%G&_DIT8C\MD2DP*DIR4A#A-4X(HCE("12>D%#D<2GAJ^./7046Q0INKD!6F MRN2Y"E=MM[*%%LNW6H5:E:EFX>-ROU5H"?2NM-G':@SMA>C'>W?TD#ZX%_7> M"L5+DI>*M7LC6.4%Z!U(GF]Q0'+YN>P>3P4:AF>DSSQU_2[)?UO8,V\QR%QL MQUVLEL-R!ZSFBVT=VV:7(LOM]TFM3K79- 7K8O6/?]$#%'&K]R* MU:!8+16P"HW3J+NK\ J5V#VP@*]T4(E7N.2[VUZ@PU\"-_0".2 ,W36B'!NN M8UO/=!+=N"!@;]R D.?-L.6;?#(X!(P]*\AWV6Z02PV5T;7V?@ W M/FD_"&A\21-11ZKH^2!035W3_5,2AW!H-H8D .SP#SG4C[Z:U0@5F@3T3?J8A9&PM9IZXU MK.@HO 9^ D"#%O-$A*1\;C 6G;$72FA"_=* 5Y[8T- CY-2 TNZ191=E-(%6 M\DHT]P&% !U4*GZ?".2 +%!I4Z.Z9KL^L=%^YXV3%:\<^2X?/R7/6O?N$ MLN6]V*G0J%@;Q1TU]H6:/9,?>1US<,W=11;&&B[W(,==;D NR3'-,%PY?JX? MZVXB?/M]!D1W7^'[].JFLD3[E^>C$*S\7/VV"9!K#6,DMV@OD4XG#B-;'I%# M>/<*Q8^4.AKQBRJ L 64>%<-D21;[A>O!PZ[\LL\>U+HEQH\B.;S$=_R(KY& M?O@?W!'/YAZ$#'?%F9^=IL\!8P3[0OV(-.O!=XCNGB,'HBX?/8;[N->/X&;1T>37 M3Z53#]$V$X4=V,?O0]MF2.[=4Q0?B=S"IA= Y]:FA/;U>.-66(;S\NN >U6& M1W#2:),[1M*!5-Y$8W_$& TE+QA/#D/O7&XCJGAO]!$=&I<(?P]J?O^&K**[ M:_2+*WN!I[+A2H\*+2>_EK3UZ@VN;WN(L SR6X);XQ9ZRQ&S4%RU)UI^V78X MFB'R!-CHJ,.+#$2RA,YJW(A&VX,M."F7Y(='!6B[#&DHV?Y(W$A MTSS(](8 MQT5^V]L#>]6;O2YD!>[VS7T5:-B-&Q(":6FY9361SP+(+ZNF'XS JT,MGGR! MZ\O_3>\RL"13&2),ATLS6H1-SP_PULQW]>#EM_4;_>AU[Z/7X<-N?"L$?6]% M0!&A^MB#)??U+8[=.7J\\N\HBFJ'&9HR4]Q@6<-SW.PKD7ZZ*NB?[9QVYBA] M;(VZ8XAI(D0/^^=(60/Y%/@?;'%V&PC/BGZYA?":N:L#RHCS_,4?S>'3&Q,B M=;0Q^7__DZ:3Z7_?V1,<[1[_:/%^?^N9\W3 C[U%-@F2M+EO'S[L-Z)']GPD M.=]<)JCYL']NOS@:<$MP$6]O_;^]+FMI$DT>_[*Q >]X8= :$) MWI1G.D(CNWL]VVW[69Z=_>8 @:*(,0BP<4CB_OJ7F54%@*+OAK/!6*TS@\F,>K M\Y-$"$\^-H_%XE,@=H%D6$P:%UR+A)%>G3W@ET6N3Y%/W,GU6-W+(CF%&T%01;""B1A+:G2":,(@Z8V36W; M#3!^%!%M^WF4)#X=#.)^;)"'7S4!:0+:1D"?5QS).$J92Y6R'ILPX6EBE#G MP"N&"N$1"BO$I!+I8 55O7+[@[\E+3(5@+\_="),8:6Q3S/-A9% M$9K6-*UMH[4/X9T?1R&:ZE21D*882,UC5CSBRBM3D?P8GKV69S QY34%7!85 MPKS0@3WX22HC%VC\3WAW"9",.ORE:7%G^ L5Z(RZ[V0IE;)3%YZ\J-W)/!_; M_>#O( C3@)?T^"%0%Q5 \B0 EX[PC"!HLQ3M$,H8OXVI:$.3I";);23Y6P1[ M(^EH!,Z]+/:ZS8)2 5[NEKHB29;RDH$RT:$49&51:XHB-AHA<28L79A&DE%) MFO16>LXEFOBN(%!4P%75&(3]](FIE0(O' MV9PW;TDR.ML"A(SD2ZG3O%P S LQ@X@S"N7$.1%JT6,#P\ S>;8(7$EB\OM M6$8?%T9!N9V'6R2:J3L<1A)1!]S2"4T/] "0D)M'$.&QHF?>K2S"PC?OHSCP M3%[#Q,_9. E7!?!O',4^]I?"2+<$%\!E$OAYB)(?"19,ZL+CNXV74SQ3TM9G M2O29DOW.E&C=@: 3_:@Q2-H6HIN7(JZ6(0;..**F8/,,BVWQ%,2/ M9*-8GN 969-:($0\OXV-(]TI**& D?K)PGG@A"&JG^@^Q&))<^5HP?+BS+S9 M)M<-HE:)- -O.4>J*M>3)ON L\ MO0X>*^C=Y)V11).4#I. +<7]7'%\)IO?QH['I)V5'TA_!Z9-O@!Q^I@\7LQ;)&.5Q'\1;L?X MP18&S.=A>3;UZ0NB M=H $/*H0([_7C"J9+B%!1VR' =:CY.,6U^<(7.&%+3!L>?45-4.J#$*02$$9@,XD08 M-MN>>^3M8@3GCEIQASN.26'_&Y,K!FA57*)2^>Q3!G(+ R9O.5W3><" M"QM1M$61AW&/V,QBX\41K0U+%$%EP;@)&H'>2C>J+N\7VK/LO&DA/PO&%>;K MKM7-O]@U3H>?4)+2@NK0G[:.\K34%=%/J)LR_"F:ZV\X[>L$HB<;CYUPH @] M2IQ(Z4-1,,_[WF\X:;IQ%,M8 Z0\XI6:.B[!!N64H 4Z/ M/0[.K8O9!%!L-0[[!]87H'T:3/@5 R1/!$S'BWVPL_61I<'WIX\=9*C._2W_ M8CRQ[8"#B G$,*/.353U++9/%B>_0L"XQZ9_&.B37AZ]+1I(B_K\Y>I[U,2F M('8I_N$UZ1#.J1TIAD/) !?VH^@97+)J>4>B"3^^6I1F+XED#SNEBKHA"DIR MW(IF1KY \]*"\ZGP=#T];N:VPS:.6VK+E,RP65T.$5H);V<(AL %_VW_P>D< MKU XI M7HK R$@0,^B#MH!Q/";9HJD?A?!6(A25]SKV IQYUY#,CO8I8)L;# M7!Y'DT8YQ1B=+(WD!SS 2)\LQ2%;A8$KGFFMQ1/36"Y,3&@+D_VQ.\KR"]SM M71>XETS#TOB8QYJ 0).-D>3?%VB>7_*H+9[+?C1:6O)8\D>=,1!!EK(#!TZW M7U^%.WQ2\R?Q[PLO"VSU-2(40(1MV4.-" 40 =9=6R-" 42 :.II1"B ",T1 MBB"B;0TT1ZB "-O2#*$"'K1D4@016E?/UZK_+]\>GV,TA0!C\[=7HU3.WWNU:O2/L?6LUZA[0 M^#:-&5N^%FP-$">#=XG(^8GRXQI^&LN@5>ZZ,CX5Z0O9XGO^@"D7WS-D-;;* M?(QW^8D+9UOF%H%V,N2A^?A$$'48/FX_EX_MEM6R3YN/L7R@.L;=Z>^J3@\O M<2Y/F01^VFF5'B8JJYBG48THZ)PV'6#!D18%YRT*3M>&>S;["V-O)?#4VA*6 M69(6=B$NEC;XLS8A3X-.E'$%518*;]YC65TLB@:C+'%"+WE[NI*B&F^O.$-] M^1?796PR.>XN/LD:T,J04/>.CA\JYO5E=>_[=76FQ_%W4A(L5!9;+NKM+)W0 M6$)O>2/SF%$J!YXQ.GVS;_:D"[.F%Y@J'P MO \,]<#ZY;=2]X/F.%EG&AG7<=.U^('9'E1NN<*X;F]M"RFQ8=5\:BKQL. M.H3ZLA"J;=K]GHZJ:Y(H$BTVBLLF!=5K-NB/NMFBX2#V,N,]S+ I9YCH"+R. MP)]@^&$?"Z]GCEJ5E[EH_"J#7[M?O05_HBI(!^#/@2F>$7,U6\-3/F^B::%" MIVY0<5G,B%&&;9%K48H'+5^O?:L5VX5= ML],?Z/C]N9.!W=;E[\^-UM=."PK5Q]<.BX-:A3WP$"H,["K (PI$^IM-,G:W M::F I];7RXO$#F+GMS>KN3W-X:KN[M 7>F^NVXEJO)S] MM1UJX^5\^R"KC1P.(VFC1:E]-O&BUKR9> MM-I7$R^:7PZ*%]5+A1\!0B/[5>Z#^'-O7[D!1KMBYC?%G?$G??W(^K9/[1:# M Q/WJ:)130Y7J/SPI1*@.5>7:!G05!E0[85B3;[@Y(G J_:^DT:0R4N\Y 91 M1G5W'QSWL([:TD/Q.U&>+CTJ/+*BI4=S*.-4;TXYI %VGC>K[!VL&\*79VO@ M'@XDYQC4.NTK6H9'<6H5."57WE3#[F]1(3JO0-.Z=3 T^W:7K0C?VIEX8 XJ M/@&G'NE7>2"N'LE5/>*;=^7+.MZ;=P/,$^V0YE\(LRY\G&WR]KCD856KQ MURQ;YK!3X3V6ZHE,G5%X.9$,K6:32,V.1)U[ M;]C].0JY# I'W73VX;%R$]OL#73VH2F!LKU0WL70F,X^Z.R#SCX\UU"TVV:K MH[,/YR%4GT$>?:M!IV=U]J&!"[3L_B,?1;>GTQ4M# M;4VDC*Y5*5THF-\XP\M_5#L:43MH#FU\#LW!J%K71#$F4B#1T7@BLFUK=+8T M=/C[@DKH^W>6I/YDP3_R0["MT\M.OUB^W9;K+Q;O+RV"?K_T4QC/?;=T8MK_ MQ3+R/PV/N3%S$N89KZV! 0L/_"BD/,CKCC7*/Z"S\#$* 1*)6/H\]@$< &HY5!K=CR,G-4H] M6DL]:-V .3$2YE1 47)JV[80M(=H0[NU34&[NX; "\/N&!>K_67_8ZF-;LXO M>/=3%%]*R5+:F^@4TB8&NF47O$NO,X')+YW@WEDD8J>#D94W&+K,A5,'%V2W MK$[O)Z/T.X)D#:)XKU0):DM72XG7EF^7DA\^TBU8H">-YH?$S8HDZ)18R3&F M,9O\[=5?OGV^WA3KX,P51O',"99Z;HB/7OWRC:[K A:XCNC>K22W89U?]B#/ M9;AN M?!1,X*6.SBVC+XY@=+30/8-_6= /@NFDP2D"3CA3&%[0.KWC WB_UT M87R)(R]S !V+;[P9_,8P.49':OUTQ;Y M*T3L+IDJ1:IE7.%,((NS '!87M:.-812.2#B5H>VC'+1;7F XKT7K[LDY852 MV$IJMUM6 V@P\47'@#T!41B ;OC*E"-M?2]=5SV6L2_ZD\0%J2J@.A@QB<*0!7Q(4[P!U#/S"8CR;?(?$IP[G]'S8S ;82(Y M&-#3G&-LZ\1BY5Q3PF#PRCB#88'QC2ST4WK%C>)Y!,\S((\0:(+PZJ"%"GJ6 MP2*!F^Y9$!!7A0OCUO'%.@.@*9@7< \+@;T!#1&0_LS\.8YB[89ASD9/-Z-+ M N6UU5XVU*V>_/M9QO8V"8A6SBX\XV,-(C^]\@I<+< M$RDV^!(PB2W@,R7MM6M1B#< '3SFC$%(TI>%5^2BW!1KW3F,4\AF?)8+/MK9 MR5@OJUDL+A50Z? RA;,F27 \!=W8?"Y6E ^U#'NG;*B 3L)6!=> =%/8\-? M40QKGDR0#V!-8I%N67&OJL]P-Y$H:9YN,-%WX_J ,H"#02^;HRH=+!4IVC;NV)._B>T#<&<1:Z2 ,);/A^ZJ0EZX'SK7Q+ M/HH2'Q<7L[LHN$,: ?F/&BR*%T88I?B-R_P[\OHF\)7Q/TXP]3G9?(IP31U: ME=W"U4=9C(ZAA[3EX6]4Z4 Z[E<_A!G!IC%N4OA@1D;GB= 7: ',"0.LD @$ M/:7.@[0OKN"/,=IU"*T(=AGX#HI>DJT $N#<##8.;R!XQ5""+/YIW5C&A'F MEP#6X*19BK O)B'4HPT*'P69QWT/!#V770,YT%/@;GR&50FY0*9*S(S[:83V MYKV?3@43T-*$:(L9;)W1;A@70'=LTR(+@H8W O$<@&''5NE5LGCF7CM4::;RHAY>! MU=5X41 OCQT&U'C1_HO&B_9?5,>+]E_4Q(OV7]3$B_9?U,2+]E_4Q,O ZFDY MIB!>;&N@\7(XO#SQ_/^C:?>,MIN69V=QH5RMXQ^F\:, MR5(H%F)]2D5'Z1[3YTUDB,=B?76@?_NMWTWKIZ79_5%VORGJ'C6S']@P;ABS M/V9O'K]1R8F;:"\U5[3-5J405ZC-VTN%_#^R4%07=UIFI3TFSE/,JV?3[>X( ML2SX*^J+H2T]+22TD#@E6_#H0D);B(H91R=K(3[>-&N3BS/>(O7;SY7ZRC4 M?BG7XZ'%ZBP"326"2@:CIE%)MSFV0"54\A+7H4&4<3UUPEO6')]"&0FB]8S6 M,UK/:#WS$N^S0911J9Y1UBU=*<_!9S$O2PQ[FXF-I&S]K9_=4G5TETR$G M)"S>O,?^%G'"N

5[4[DA<:?5L%;#6@UK-:S5\%FJ MX5X]E%TG2GGD0C&4/IN=3RGGQ:]D+]UXV+3DU;$N7M_9'NPT+E%_K)G6$2Y> MM7H[D;GMLM5VS^P/VI4F5U2BX7JRT(_UBFK(/=>/M5ZJA^J??N%P>VBV[:H* MW!1((AWMCNJCYY,K$WMVJTGYY)\J-RJU4JZ3.GL=LV5WM5+62OE\E7)O:-JM MEE;*ZE=T**F4ZZ_H^*DQQ1P\TK%T(W53ZSCJ"H!L $/=]?]'BMEN23#5O?N# MR#?P,WN=JLTZE3FH3DM/0:)2Q4#8DOJJ&SR'-RKMD=GNVY4:E:JQWY&#/XJE MVYXKFOM5AX-4(PMMUVB[YE#,TQF8=GNH[1IMUVB[IAZ[IMLR.X.^MFLJ/'W? M#+MF5'5$336R.(=*([M-<_P61TEB\$=TM=&))C8KMC!/428-S*Y=H5S2R4WU MDYL'L/-4H_RG&VU#<]1KZP3G&54=M>TF51UI]7V6ZMONF<-AM?%2K;^U_JZ; M])^13!J8@_/J>*@KE"H\*5%_A=*1@R?*A(YX/=/G.8N=%*8TW"A)$\,)/8,] MS%F8Z/(FG0;4:<"GIP'-]K"GLX Z"ZB =:D@> YOD';,GEUMQ;QJW*>+FYX5 M<-?%3=JJT5;-,RL#S]Q"Q=4@D=4 E>E(T#IH3*K*ZQ0^W;/(10ZYIV1S=^.(AI M63>Y/-L$J+8S1.UP.$+K"+/;U855YU18U:FV@]V9%E;5+AJTX?#\@QYFSZX\ M3*4,$VC#01L.QZCH:IG#D;8:3N5JB] M(;4_"NBF\RW]49;6JQ9U)ZJP._"*5M@J*^PJK,4W MUY^DLFU$M?_5\L M8^UC(V2ID3@!+-P/W9@Y"?,,N_43_&4PQYT:T<1(I\Q(F!N%GO%GYL0IBZFO M]L2/$WC7?S!FL(!I@H^V6^VNX4:SN1/#.&G$WW5FS)@#""(/9\&'.I;QE05. MZM\Q?&H.W\7&@CFQ26_(I>#3*S/SM=X[";X$T '(&UY&H[QN6T,#4!'X46A, M@=SSQ\5";B,@X7 &P,51.2!@B!\ EAPZCL!#!9-)@E\,%X8KZUN/EP0W9=' M\_PDC?UQED9Q8AF<2CS_[I>_PC\2+6X ^T$NF0HLRF.V;=M"U HN:;5^.@B_ MN[!-%DL":G?7".C"L+O&16GM].]_E+=0,.^%&P51?"F/!9?V-N6*HDWG]9)1^1Y"L073F/%R4 MH":$QT7 )NFE>$U^1M(N_S!*_!2P>!D+FL/1E\8E]*31_)"X61%+G1(K.\8T M9I._O?K+M\_7FZ(ZG+G#*)XYP;NR>A8?O?KE&PHFY,!K^!8PG^0"S/EE#_)< MANLF7K"!^(_T"?R2HAHQS41?-LQ2[(@79W"W(A[QX"O "+.7103 M&[J #@ @A\:<:UJ@CH>5%>YAXQ8 9O-@VC!$$H!P$-L>,Q"-O%3J87( M0,G%-^_N *([<.8)NY2_E"D)J42(7"Q(0VEWY[)MS:UL[48DFTE89'(I@ 0TH#3_Y-/LPEUU7W *9' M=830W32Q?-09)U&0I>P8ZN*1N#]_#[[!E M8 UV'GC0>*E+CNVN$]5XJ4V.:;VO(%X&C]2;:KS4@Y?'ZBHU7NKBEY:VQQ3$ MB];[:N)%^R]JX@7TOL:+@GC1X-:7CT4O/0;E1@!_^[57OU7,!TCIVXXWE8J_-,-I5 M\?]M&C,F2S58Z#'/:,XQ[Z,SQ&.JLA;TZ\8KQY<"QVAM5Z$4N"G*M;0,:* , M*!?X-Z[QP^I63MMPJ^6LJ? /H/ MT=9(&WJ\%9 6$EI(:"&A#<23L(U.UD!\O''%)@=GO$7HMY\K](?6L-^QX M$2>\;8Z&T4%-7>.B:URT2- BH6XH*&M2/LWX4ZQOYQ]. M[(?,N(YF\RC$_G:73;W3I,KKLQ3L.UZ#5!K4Z.I,[[U]7%JVH4\P\^VJTECGJ=AN;6JDG!_U8\ZB::U=>5U:DLKL7 MTZE-J+YGWIM-ZVR2)]U/E)F5#='+-U/E MITD4JG6RULE/T\EV#WA@J)7R&2GE?H5*N?YRCI^:4LG!XQS744+WJE4;ZU!F MD_6&/S: H>[2_R,%;+<4>=2]^T-8=4.S-6I5;=2IS$!UVGD*TI0JYL&6M%?= MX#F\2=DSNWV[R1??']O(5#W3MJ?=V:X\&*0:76BSYMAFC9J[/T@":6#V^^US MXB!MURBID<[6KK';9K_7TH:--FR6#9OVL/* FFIT<09E1G:;YO@MCI+$X(_H M4J,336M6'#A3377ME=LTASU=;G16JS?LL$ZTE5-VJ+154W/K6HRAQUMTVB;IFY]=+8VC6WVAP-M MU6BK9MFJT25-S2EI*L)P?NA&,Z;+FEYBE2YIA YH!"_*Q@%30F-6UV*I]FT> MQM@<=76[AX-8EG63R[,M@&K[0=0.AV,8C)V*#49E:4-G9*F@JOH(ES(R4QL. ME1H.*FSS$(9#SVSW*V\IH P3:,-!&PY',1RZ[6K; BA+&]IP0,-AT-&E7*=? MRE67U:2KN_3]*'N4>9T7&-3/;]:;SCPO,-1VM8I:8% S[5@#-=24?E0+#%I$ M:KMACV*J\P*#9@IM-VB[0=L-VF[054JJ52GQ*73?)=VXH1%]E_I6H_HV'.#. MH[KC^+H)PQ,S=^VA=28]&%:H_2SR=T=T0+4^5HC6JQ9U)]II"81;OTETWCR% M7:55V0A];(^L,ZG /1-]?)"KZD]2V3:A5F;UO%7540W%MJMS6X>(?2AVC/3Y MMY:@ZW@^::Q::ZD5@TO]Q_=5XYAGF'I#J]%7J54H-4_N\+W._-^_<.) M_9 9U]%L'H4P7/+7G_U?+&/M8R-DJ9$X :S<8V[,G(1Y1J?UD^&'1CIE1L+< M*/2,/S,G3EEL1!.CW6IW#1<&<&)X-(WX8\Z,&7/89N3AF_!,QS*^LL!)_3N& M#\WAJ]A8,"CZ^,,[2*$XL@[A&"1XIEWK1'J+5@"F VD$\NC"<<\L0+ 6)^+-Y'-TQKPIF M6%[*SEE#29AK1. 8$^O!S!QO4&&>DALFLWF0;1@N* MP,_X\V,6LHF?DDAPY@#P!T!.RF"6UX50>@KP=RW*6.8QR_AUF[ 0P#37@+$= M/["< )C>VPL!:S0X!=C"NG#-\- =3!#%"T& ,)27Q;@E6FN4Q>ET!>T=VF<" M9N6RS%TE#GSJ)42[&1,.@"UF>W#1;M)]*D<4&ZE SSR/)UY,@YL!>B@.*_%4 M[0JEM:?-]3E+@RCZ8:&I97S'!<@>=P(;4T)V'$D9L!5 %-A2#F+\'<,^9.G1#->$"%^R,W'VZ1 M*,(9P !)GB^,C_O.F +.[I ,D,Z%W4 T!)3EL1G9#%Q3TOMHOA0$PA$N'J-M ME8T%I,PPPAT[8WC?,J[2=:,M-Z!0:A4@V&CXK$H$? (X.(V1/8"@!?_%Q WX M";=R^,!D]RS@ 1ANS&[!4P![CNV24QUC"A/B!'Z8,<\R_@62 5,!((%V0)X M$(D-21^D(2X,?KAHW_H@&@'0,8),@"< , ?"VEI"I+,1*O=\+LN"CP\$)1.D*!1RX"M[N1N'.X]X>OPQ9P+2M_] M 2N^G[(P)PY!AJ#&?N,$'2Q,(W;N#52@9&B"EL%U3!TPGI.4QOT_YIDT2Y+- MYS BT*T?)K3CA/PPV@D@-H29XY20R3<7W0*%$8E[8) O^#LS/P1%%A"&:!H. M-L01S$$]<0#FP'QQB!:,V%"22UJQJG1!8A-165X_K=%G]1N_A:R"?2+.09VM M21ISR5CCB@>V.6:"6X$!A*H!XL;-E^6/0"J.#9([=%>5VM0))KDZ\Q.Q"*[1 M8 ;2OS3!JHS@JH\[4)O$4;[>DEZ6D^%'Z&N1]<>]*Q0U^#&W8OP@2E&__QL! M<@^*!<4.('D.4@"DCN?Y7!@@90J^RL(D@Q_^9#.;2A&,<]RA$N.D@7]*@;PN MXI%[F"!B0"E0-*?DA$A*&B.%1"%W[0'9+H'UN"S&5V! 'ICP_+M?_@K_2&IS M P !!F:F@BYDEZ>V;2&QB,!,J_7304),:/JP6))DN[M&DA>&W3,N2FNG?_^C MO(4B7G3A1D$47\JN5*6]37EHLDT!I%MV,0;:_''A3&#R2R>X!XZ7<;>1E?>) MN\P;6W7(26Q9G=Y/1NEW!,D:1&?.PT4):B)>=1&P27HI7I.?48 M_S!*B* N M8Q$2P-&7QB7TI-'\D+A9B81U2H:,8TQC-OG;J[]\^WR]*4O&39LPBD%FOBL' MA,5'KW[Y1I0+%'\-W_((DXB9.;_L09[+<-T$KH,)T5( \M4O,>CYV..&*S#\ MK#!6.)N#J<]-'9(+VR3JLME-\F7,I$1#. $?HR "W1ZDTRB[G99&VR+G!QE#F)4R>(X'=2Z-)(+UO^"?@%\+"9VYBX9<=#-0E& M$)?".WRL7*H+_[30-KMB;GG(*P, D;R6BD*"C(].-E7A")$('S/7 9L*X39F MH&OO6&%?;#($:<0)>J"$4H*:97Q[S/@#CPH6"K\B]*;,\>[AJV3%^?51T#%0 M=@ HZ;S$D8,VA)P=1%((4ML"6B'Z 1/#!]J 7QC82'-2;6*Y889N'.B:>,E5 M$M)>VANYECNEO"-^Y-&LA]S* L'%RVEQ)W"4SRZ MLT[@ZTC)*G2XHY*O5786;H-H++C' VY%3VW)Q<-_@X"%MY*_,<0QR5*RQ2G, M19&IE863M/? G$>!$,*+,Z3DB,0AX"^\I<'R@3P_B;.YC BLC"7 (GRZ.,&< MH#UX5WJ$1R3X:A (Z(Q$,]@(.B5^ QM*I,#HI?N92,RY M3C(U)B#LHJ0J-=%%D=741L L/N\&:N9S&6=@=4S416^1N(5(^D<@$) M[H!'&]XQ01SD-@ZJ$>[5.TDB@YB!SV,M]# )D%L9-P(*9J%4WWD(,)^_%.]R M8E0/H&ZO'YM#ZLXBU9$'#T +DHZ9E$PG4X9@,4H'-#OEH:W'IRDVD:*80M<> M1 )*3J%' +66\5\\VFJ*J#_XB!AANQ>UIQH)4XF7)<5;DD>SMH' M:U5*BY=1*>HQM.=HU1AV]M&6&B\V+GM[ECT/4>7F$@SQVK8&>9)[Q0O9,4I' M:OMO*\&R]77Z&W+[.#(^R0A'..@E09N'.65DA/?M=J,@<.8)NY2_O*L@1"#C M1 7@*31!N,(U7 3. LCTDDST3>@K^?(RW,(ERO(!*U'L17>V_US^XD5[6"E, MHN7!\G>4)@W7:H_^\R^C_F#T;K7F::5 :4U-O$A?/AYCN<**EV%.D&7*0IH! M(R?C9O5&?M@D+]"^D+8QB5=PAIE_ATC&#%_,YH[O4:YO09^19 DCH ?G@0^( M9KWKQAG:[B)X7)1+K95*:1+6)-PNE2*5RZ#6''=-3IJ<'B>GDH8N"\0B)D<2 MC[CL;MRP=(=?,6#;DU+B M/D^1PU'!ZB^Y5_=1_(.<1Q$[0&>'I_27HH73I4D*W(TCT@3O001A@(P_V;%-'NH%1/TC"YG1 M:9D<>Y0W)EM-QG(+WV M)+UNS"U[J(57BN*"B01 7*I)Y@6_GDQ3BU(67EQ8 MSKZ#5SN/J'#K7@3P/9"F/'\B_Z8#-)4]K [%[CZ:32R(]?]09)U&0@=XY0F;YD2.7_#V4 MWGN>N"B* P[ M,9IAU,2+5C 'Q\9L4MA:L[TD*Q^\?])@JJP4NNRI M2#LA"+W'7-4-Y8<^%[FJRR;ST3X5N*O_5@0/(6<;1#^8X]/$*>X^6A*BQ77ZNMS?*ZB4(%311L?01I@Z6NC^QIO.@SKJ>#&,TP M:N)%GW%5$R^:7]3$BU8PBB)&,XR:>-$*1DV\M#2_'!(OSTC2[W3TFY@(4_)X M2OV'C94L%])GTE4C$Q5KE71S"Y4H1 L2329:D%1I%)\VA3S/)FW0<=GW(BOZ M468K=;L/?2I_/X#I=A_Z5+[NX% [K312L&ABT8)E7UKI:DOW<):N6@7JN@M* M4T]6V"U]1*I)1RML>_5L1;/PJ<](;8/,H-F'X\Z-D8?#JM#94A&=S^;CT\MF MKQUU.!G_ZIB6DEK<-ZJX.5PC,*5B=L:V&]0\1/>#X3@=:.X[$>[KKG:$43P* MI)!)HIA!IKO@--8S'#4[)'!NGJ%M-]O3UR&>8WDEBB'^[!BYNMA[ V,\];<# M*K6V^*N_?"8#?[_T4QC0A6^QB O&#&\-QTW].S_U&769\:F/D.O,\4F#/9,Q-;8,P9SLN"A66\+S78V?*N:?R/$TQ]>''N^)[A&"%+C=>VU;O/2CO;5MK:;Z6=$GRWK[2[Z:FEE=XP9GS",>T6MB&) *E@+@/A)&0K MEPSG7_W0"5T?L'V3P@WQG2^2]_\YR$NF<-(7L MEG-B[1ODW*9O#!?V[2>XZ2@,%HA T>L+_G"=9&IX/G;<"3T P,YY:8J/H?$K M&\STHR5B297VK+3]8U0O?1)\X:H DGA:9*B72K/B M][@-9P;V1(J_QBR:F(8_@:\6)C9E\_P$@(RC.=@]#E[ #QEJ.1PUFZ- )>AC MCR9:<@0@I?D3$P D.0$(Q:-SER:GBYC]F0$FB3>H6Q0A.4O\D"74LPG;),5 M:=B,;NEASN-)&ON\\1-]$.'BC8G#*<-C\"P^%; [[$LW7FRA(0XSL7\"AS\3 MG>WF#J"V@!5L&U0.*"<7UL=;^@&[@?E&K:;@^1(@83?%. #)==.D39F M6'&$2+*,CTAU/JJE6UBFB51XE=T"?QL[N8 CG*'F1%I 6.>$CP0$LJY,Y0)? MUX$#LO$*^V4!Z7*R,V$=L7'G!!F:+6"XYF]9!F='!-;:)+!D6#_O=58L>2@Z M> %EK](TK#R"73A$<88;1 D!4"*_-(H]XJ-4+CR%I-Q@W98%Y9:>;T)F;:B8 M^Y7C>8W I?6[3W7BL&W;14FB^@KC=Q_V":R]0 %N&6@-\ZZ7"R,!2G,)MX%\ MR""Q!/_>1L@?8P>T!U)01$8T@ V/=W.!+>3(DKXQ!>? &[K[ MC?^6 W$"%N-&D]R$9^1#9/T!>4=Q>@'B>(9<&\"Z^!\(F3&H-2)(4#19C"Q6 MM/-$B;5Y!I\ A5$$SL(HTN\"=IIWLT60!4@DHJUM&%G!^P)MEZL(=)1D( C ]YV0^ 1EA3TH,XG,]!2F0A9V5D2L>%*7@?"7CZWR#+ M4@,/>4F.X+C>R!<2OJZL%4&L\':] #"@[GB1KY#=":Y'(X+V"R91F#@N-Z3$ M*LD&1Q<9I[LM42.2 P<\?5Z 'FD,P%-RJ:)8FM-20BU)0))#U).8ODNR,\-;DD'0/+9"!T71]1AX3)6+I"EEQR M(!W=1_$/SK@KPF59IR F %OQG>\R[PE8&%?7,ZX 'U /)]?>%ZX^0G(:_[A@CEDW/,&UH@L M\F_$P,*K*.1F[KU(SO6 B()HSM<*HFF"S@71#[R.N'%3Z>(LH]:56W&\.S!W M:3?PM@N L$ZV)?5 MZ3FXQ)Z=$OJ.EI2/T$/7($8%K+L];!MV47\)(_!<,U( M,A]U(=B#>6AA2\@Q7>E,3<']*0L\J<\Q>*B,*MSMLEUO4#(6NF\@J\'WD?%8 M"@[X:1&BDDZ>MV$?]:=E%R1?)ZI 74%@I3$^8PK1XQW8;A!6-GD(L'HCO"<<<# M9M6AG^L2KY#; 8\ #3*P?)B4LBLA'D7H!G@2 X-@TR-3(T>X+"8^<'?MB8QD M?F='AE$8CX&UYH^Y>8CHI?[Y5V&(IM97AAZ4R=T,GD09/L=LY.]_<>+4^/C1 M-#["YX:=N[>QF 4\F2"CT(K<20!B/Y"I('3 JZ2T/>AC._2_,I>'BEPTVG'- ML,H0?G?YEM6DF2);:M><"WL1\*]1N[NPMC+X,>P ]*T&X-_1E1NQ$,9CQD(C M! 8%+_66)8\6$)!G*W)$$D_NCCT#[;$$'0)BXC\HI((8(R@,WB7&>^X#RN32 M%7C "XS@PH0%HJ]EJH>>^5IDACX7SO=6&5$E;2R!\3F5*H[A>W][]=WKV".G MUW*^CP;][O=N:]+[/NJ.NM^=07?D>.U)R^Z/7G$;FK_Q\=N'/SK_[Y]7G[Y] M_';U[>/_?+CZ]![^_%W\];W;MP=V6[Q2(1^4J7[)[2&J*I/9Q6/&1!E:X(C/ M V=QZ8=X>\O%. 5OZ9,A??6GF_H*U !?7#S?&U=\___.;\<>RQ9@-:3R? IY;A B^3/+TB1A MY0D3$"L8VKU'*1.(5/LFS8XS4UD)ADH6488+1SW-,2-T-?]C<+4D6PW\V6Z] M^W^9 ](HY5%W' X^".3?*'B"*,&P\M4XRN@2-%SC5U@CO0_C;)> M.Q,YF!);8D0IC@(N@[Z@I>U17,' K?^+%=ZU5[SCEM^9Y^_P)"\Y&!XFE[@Y M\N&!"RKC"HR9KUD@X\\=Y\+NO6%O36/&,)J\-"@/YY:&IB P"ECP5P ^7,(" M^^-RZ#MP[Q&E*:\-*\($8R97SO*8#WE6/M- M$51:VA% TQYUNK1K9X;U-9[Q!E\0XA&>$8+N+57F\"H*YIDR!(._)MD, R+H M9/,R&5P?_(&&H%@SA?[GE!)->#''Q"]V!&O-C;T88"S,8(JN UBPON]Q]''_ M"]/+,"T*Z\"?^3Q@;FY]:1]\W'/=6$:+Q,E+4(+@!XB"09S-,EX-R-W=V2P+ ML<2'3X7*8I;;Q&4W,^)%#Z NYA3. A2+LJ )J-^84^+2,T5AE'B&?&- 2X+6 M,?S$35-Q ( .R]HFX!&*C ,2",;$8#2,96*6/\"J"<0L.>*NGX@,%U+MS/&8 M*"KBN0X!O((/>=5&L37N-_#$,):HPXHEP]^X49H:UY;Q#Z!1D?WX NCS/7D[ MZ/749Q,@;0F#SW)_Y##,%L85J&-G!OOS^.O%H_\##VX8@GO"(+M<\JT!"4.Q!KHJTBWF4*O%C$B:B0CZ'(G0J587R^ QXI M<,R--L >:HXUVB31E\PQYRW#D&#_.N/ 3Z:4YJ88/M$'<7 B?)YIC,33A3F5OE!R>'K3(C>8K0 MP,H1D8G<'H URY NZ4^:(F2!*0+F5)V$U0)12,%@)P$ZIAJ00M!P:1SX,GF. M%:@;@"V+4.=8D!7G@J9X-"G"?X1LF7F7UWLB8O*-C+ MB?_ O$T\6\K7R90J9]#EL\S\,6+J5S^7OWC1'E8..-'R8/D[#ND-U\XP_>=? M1OW!Z-WJV:F5@TYKX?K#6/9Y'O6+B"L+PM MBWE"BTPKQ\<$%#C/ 47JT$PK"GTX(:*S(S*NN2(#MF-I8N9>X=K!JE.L-ACJ M:@-=;;!?M8&6P^9(B1^E^4H.8_<;T;S3I[FH/H!,'+00]S'#ME@QRV5]*28_#:RWZQ-;1$*YLJGIBS/3@?YNDC(/-%7WITK MYF7=^WK!7G'.49Z!Y%')E3HOQ"G-*'%9JGDE!Y5+74%X"R/P?S!1L;7Z@OFT M)2J5CCE%4WND36UM:N]G:HMLX\1Q[:X[&7[WAL/6]Z[CC;\[K#/^WO%8;^", M6LSN3I:RC9@#_OCQ\[?_^O#UXZ=?/W_]X^K;Q\^?O@_;PUY[=-A,XXX3845B M^J-ET.*,TNI*Z55,XMF_?_CMZG?*U'UX__'3;ST.B9PQ/X;YP:LB6I2B,I4<^N@0^<&;O=_ Z>()!;G%'&??&<:]%:/P>9[(!N#,L"$"/Z?M1DE* MV=V8S< VIFEY99B/Q_YHE"2;SV5/$%QT@"%JL5XQ*.\X0@O/%UI:/(V*)6;P M\?*RQ=F(!2\2!6_.#]>QGH="X#\DE-1(HIE8*PC V!]G/"R1]SXIGA1&HM,VE)?@A1(L1-]+9N.H7@]/V'B@(^#W._\6>"1+@H+% QB)=9Z MW1D91E=8?O-XXK"!8W>^C[QQ_WO7;0^^C]Q. M]WO?&]N3_F T[O;':W6/_0\/4W#F4Z!6NSWJ=BJEUBW$N1VH%=$KGP!G59)^ M^V7RW5U;*)!CY>UOGA"XY@M$@(J(!'JU+O>&90"&,.-D:20_X&$"^F0)>V5T M\F<*:,JH0!K+A8D)A:6:3G>84:L(>V(/T)'5&NWJH%[R[TN+PO@9=@61\2OY M]P6.?,D#-O< W$<#):7H?OZH,P;G ;3:@6,FFP_ET8,8N7]*C$[\FTZKP=5> MEQ!HQ-2$F"&XD-UMF#%:5G^4M[7%7S6NGHZKXFZ$@TL^A6Y7E0I]_[1.<0(& M/.+2Q:K5RZ%M8*)D^-R)"Y5XC*[1[W9=O5LY! 3#/X]2-@L$!6A'F$8B: T& MWL,R 3U^/PDELM=9B3*B1^>CEV?;]FJE7LO]0(??T3*)GS(>ZV=4OXCFW9 MF@)W6E5'0@8)Z7XYB2JFO$B8>P%O8O?@2\8%YU)QTW_^F47INT=7PQ][]THD M9UW_X0+#V*U^I_7 'CJV9UO3=%9!-<^CV=UK1,6$F@U'X5IF]S09:8LAVM[? M$#T:P[>6&\3YR,]Z6JMQ&!M.-OGS$$X^4DOKS.7-BV2: ZJH=?J[Z MO9,ZQJ_8)V#,7 >+V+'D@:9,G5MQ"GLV9IZWW$FAO#8YGZ49]C@,>W/]7YIA M%6?8;\Y#%$:SA?$!&W!3KO_&G;*9HYGD.$QR??6[9I+38Y)K)W!%^9CQNQ_^ M&#L)TRQS')9Y_^%7S3*GQS+OL5&+KSFF!H[Y_>KOFF-.CV-^=\8LT,QR9&;Y M\O7#63++#-X,V'&9Y;F<\84WP6Z._66WNF=)=,I): STTF'V+\XMD[4\FP)1 M;WC/RY2W*?%+]"KO87"*OG2ERB 0,6]7*%4V0U"REO HBRI74CVMMW*/#4>V M,VI]'WK#[O?NH-O]/G):WG=WTFWU1Z.^"Y\<]L#+U@/]4JIM.R[0W*X%[9;N M6L#'U5T+CG,=V8NX\N;C;Y^NOF&';V5.:WW)X@2;[&01QRN:#5FG>R1H+PNEU[): WV(Y-G&Q/+!A%V&86&@MRV[72/(U^$L MVZ4U"MY+9-ZQNG6"_'RH? GJW:[5&6JP5P?VQ\, 3Q/N)^%1[R\XCW^(B*\; M+ #M5_MQ18#:R=7'-C!$;-L/_E#;WK8LI3"42L.S>JW&":X)%L*?UO[ MFAOD=$X$(Q&?__CRO\;'3]\^?/U$;:^N?A-IFM9KH/67;.?D6"!W M\7E#U]TGX=X43L=;3:6:2A76O7)E-?!7[* M 7;T]\7E4U/GY.>5FYY.BC>TD%:<30Z\HV664N!XM>8ES4LG MNJ-'PTX'V-)S+A343*69ZF1V5 =3-=D9TORD^4GSDP)[T_RDXPS/B#-\L(RO MV42SB&:1D]F1DC$&S4>:CTYL1W68;INB"A'=5!>L!1*.57U?]T&GU<;S^U;? M+->8VRJ"TR,#(T,#8S,'AE>#,Q9#$N:'1M[5M_4]LZ%OTJVG1>6V:2 M."' L@YEIJ5T'CNO/UXWG=W]4['E6(MC^4ER0O;3OW,E.W%"V$)+V]"%&2"6 MKZ0KZ1S=\CP2,?MU]/8W%JNHG(K.)8*S?ZQYU^_N'W5ZG'<]_KATZO?+LY8JQ,$_QR<8%E;:3)R>!/5_;SM6\>+T))8S9NPB$R]: M4ZXG,N]8582#7F&'J!G@]H;-56=H^/5T5: M3M)EF?)#"[7(N)4S06TW6HTRP74X5C8=;G:PK691UTM4;CL)G\IL$3X;R:DP M[)V8LX]JRO-G;5^"_T9HF3P;.FLC_RO0-(9GQ97M\$Q.T#CY.O3C#W&/T6]_ MWW^@'L=K/';^<73Q MYN+LY>CB_;MOY^1_2F-ELO@?7EZTV3\B92T[Z[*_:&TQ7;,WJ &]NO.[TPE[$Q- MBW^Q"V)-SOV^BJNH.SP)J)=3/\B )C]P"_B(NQ^+N_U=P]TK;ER89],%NX3W MF8 @:'OX5:"+%3K.%90$&N R9SQ?L#*WNA3P%#+!R0R@D;,IKK0$"!,>H4@S M-470L,K;73/(122,X7I!)E-^*=!OHTV#LAC.H,N,O*8^R""2&MH&9E [!IY@ MN1D6(4J9*>G/JOY<:%$U0@.82H,@3-/MU9 6IA"1":BC%,K#0F9;QH M3L,CI7:44H,'0RG!$ID#M(3_%4C;X!/,<5LW[LL\H?9H3\?G*"MCM DB-!#9 M!HDD!8<"."8*$C4AZI<[1I_1&M:>/AG\;6@J M>E0JFO9OE202EPZ#%XQKX= .]$K"$E#)A*&%DB8E]H56R*!1;-ASH#P6H(V'\OD54LX-LZ^%P6" 7"? /D^N-FG# MB)?F]E5(I(T%*%+UY&6?*C4:0.R92>,B&JQ$[MJA5'L5"YOQU!^S@'.5[EMQ MIUW%6KHI$1?ABU&9C-U9F"G'1L:2:TD#D%Z=N@B?4TNE(<7H-BKCY*6+?\H( M.&01;ZE2P6GQRXQ3V,:PG!,KY8D:7LTCCF2./WX+6#-M)(Q..%Q5 RI*78"_Q@GK* +TG ,N=9R(''HY XUQ1Q2T M/Y )TF+J\NF3_E%O6(#?D2P0OQ\I^Q I&^T:9<]G/"M=+"(\BR1!=B=G0*+9 MDJ4Y,?I7:.=;Q%9_N3UQNL MVFTZPL\$_!E2XP^37M\ZM]QM=L6[QJ[7'KC7"4#GG54VYNYL9=D=PB )4Q5% MI2:8-U3@EE:GREB4TX,QM&4PY?5# ?;\ABH)^(H M6%=.1Z!1>ZHEDYQ\W+I MUY[W*N5F*9DIM#E^B]C%?#L$Q>BJPZM]VP;W_U%'V&TP\]>_WISY0. M=XW:7W*FY)['Q?6>T%X%((J'35ZN8A$QZPY"^EKZ63G&D8!:IX_G M13]KJ-VY\Z*7&;(N#$>"<'1D20>?D11@2"5&E^+ M]2.+._&N.F+Q1\9;XAF/4=&(93B[@:-5SHD*H!N0T?8"UT#=FG(*K&%.W% J M$;'UT'V@C-JYTYR7T*B)1J!H ]_"138PQ#WTKJC4]A)/YC.5S03IO)Q/ MJF?WN@J&8EID:B%P=YXJ'P'Y&E%!K*TBV''BUA3L?EVD^0ZO=%$Z@'D+JY.< ME^4$)NRHS>A%R'M\KVRMQS70T'&8WV/"5,:QR&% 2KHW6!TF%6Z^ZGWB5N3W M71^AO]0CB-Y%I/4"#FH^NQ<=>6E57>!? [K\67\&.UPSPTY%T/(\R M_/N!K=N'?RQF'_'Z4/#Z'>'Y70?Y02/[B$7UEL59*D7"SJ]$5-(I.'OO#Q!^ M<\7]3O=1"/+J<:%7F,>DAI<-ZVVI\&6/]1J6*2&]F,A>= MZKJWIHW\%S[6Q-%:T?+;)044=F>,-/.RPQ,(H)#/E(RKE3\&? ^6VZLOZSF5 MZ[^UXKX&<_HG4$L#!!0 ( .Z!!EGM#KP$&PD &$Z 7 8VEX+3(P M,C0P-C,P>&5X,S%D,BYH=&WM6W]3VSH6_2K:=%X+,W&<$&!9AS)#@+9KC<\_G0W_ MKWZ\NZWRS/2"L+P7_VS,#P?GKL;^YUNCPP5+30W7!94A.'%QQ9I9<:4 M41A.I]/.M-^1:AP./X>9R<5^**34K).8I'5RC"7PE]'DY#AGAI(XHTHS\[;U M9?@^. (+PXU@)\=A_=_9CF0R.SE.^(1H,Q/L;2NG:LR+P,@RZG=+,X":(=Q> ML;D)ICPQ6=3K=G\9E#1)>#$.!$M-=- Y.EH4*3[.YF72#2U23%##)PS;;K0: M"T95-)(F&ZQVL*YF6==+96&"E.92I5TB8Q4UB)F(R:R/IEZ$@P,H*[3+UM=5M@(H3'U?Q: MES2NK_TP7(T@ED+04K.H_C#XIO%Y6@ ZCZ@!ZW7P=R)3NPE7<&1R'V,N) M&V2(DQ_:!_B"NQ^+N[UMP]T[JJW,$UBPKL%[P2 @:#OX>= E$CHN)$02T #E M!:'%C%2%414#3R%,L&$&H)&2'*X4!Q"F-(8B160.HF&DL[ME4+"8:4W5#$UR M>LV@WT:;&LH2< :Z%.@U]H$&,5<0VX 91#L:/(''3> AQ!G1%?Y9U)\RQ7PC M.("<:Q!AG&X7#2FF2Q9;!['=$ER3"0P3GC1,RFC6G(872FTII?K/AE*,I+P MT"+^%R!M Y_ '&ZKQGU>I-@>KNGP.195 FT"$1J(; .).(I#"3A&"B(U(:B? M<\S#6Z]T#31.;+S91HM*@ $02P+Z;7?:^A-3G9%4R*FN6:?8F&L#$;PA% N= MW^!ENT$>73MSR]MGRI_NSTZ?_6VCSW ):Z]?]?\VT)X>/HK&]5NF*8=+B\%+ M0A6S: ?T-L>=,PV O3;\^CJUVA@9QK32FU?!$&W$@":^)Q?TR4I! Z \ M$ZZMGH$5*VP[F&@OE+"IIFZ3!7CGH[X%=]I>:?$F!U4$7[04/+$[8;H::9YP MJC@.@+O8U.I[@2U5&N-%NTQI&UQ:]9.:@4,&U!8KE10??B4HBC8,RSJQB#NA MAHMBF\$W?!HQ- 1=A?H Z^>IHW]RSHZVF[,;B]4MZFXNXS.F("VYF&*:NZQ;7$4LRRQ^W!"R9-M)%&S;<^ &5 ME2J!O]J&U7$,T+,.V,1QS J(E@70&.ZP$M<'-(&D&+M\_:IWV!V4P.^8EZ#? M+Y1]CI2-MXVR%Q,J*JM%B&>6II#;\0D@4:_)T5Z_.MKK_14BYPVTU5VN3]LL M0Z$BZ*)VR>$('OW='FRB_G1NS3#S3;^^^4)&=4YM%QWF9@+\&6#CSY->3YU9 M;C>[DFUCU[D#[FT"X&ZGS\CLG;4LNX<,8F JX[A2"/-&%+BFU5QJ ^7X6@S: MTC#E]2L!LG-'E13X"@*U8NT=CX%%=J,6]W"+:N[7KO,JHWH>,J.T67ZSQ&J^ MG0^OQS,B^#43?M=VQ;[]S5/T%4X_]^SUI]]1.M@V:C]D1\F^C4OJ-:&]$"#4 MPR8O%UJ$S+I'('TK_?2.44A C51Z'KG: F@PS[DQS!+X5J61A*@8[R0<_++5 M=X"U(*H:11O^8P)<+S7L]XJ#VW99J8H8G=]]V2_Z6:5VZ_:+3@5D73 <#H3# M+4O<_(PY X;X8'2^;S-E]!JC2Y>%V?C2YH_VU6+]PN)>O/-;+&[#>(V>T00J M:C:7LSLXZG-.J !TLR<\;("K(;K550Y8@SFQ0_%!Q-H7.R_!ZS-EU-;MYIQ" MC)HJ$(HVX)M990.&V%?>GDIM%^+Q8B+%A&&<5]"Q?W.OO!BRO!1RQN#N-)-. M >D248%8:X-@RXF-*=CY-J5YG -=B]-;J\^K"03(B@,+!<@/8"(C0DZK,2"9 M'+8)'HFN"Z/H3^,@Z6RLAG-3.M)25(8M#?OIX=$PQ%5N,[ X1OF_RRO:'\WZ_E&GO_\R[=]A MVJTRS>=\[P?.^>V)KH7_.4ZX59WED.-;EIDG&/2[F3LG?']:^O6^3G[*&V+? M8I)77?OS?8<1ZG#E,/0&H[H'ZK=$=9\)J!X\M(< T(9N/Q9]+\C[/&;E23/.$^2-89QEG*7D_SWX^N=W%%PB^0/ 1A[1SY0X9 ,!N M06WW)\=:O6?P?78%'A!H9O/,=D3CZ[&259%@%BY55(MAXSN!RS=\!(\;'X(7 M+/#7M7PVOXNXE)(O%U:;5/;.!#^*WOI7 LS\5L2N-1)F0DA3.FT0(FY M:S\JMARKYU@^62;)_?I;R79P.-H"I9"V= K8>EGMKI[=E;S;_\TP1DE$$I\& M\-I[]Q8"[NWVD-2PG\<2%KK5KM>Q6!^RVZW10R65,7S5F1$Q98DB>NFT[E3V<:6'WE3$+8\X"&;F.;?_> M2TD0L&1JQ#24[H[9[5XV"3:-5FV\$,T5-":275!%NT;5CRD1[H3+J'=U@>MF MIM6\D"?2",F,Q4OWA<=F-(-C.H"8J7%E_8NG!R"]WH$X\'9_N!X-#9. M/KP=?83!T%,]+=MN?3\A/N699.'R"U(<)>#S)*&^LNW"_TS$A"0T M,TX6,466?;UW"F9-["?2U4B39!)3F* D5+QJV WD)([+@+%ZSU+B5^\E,(L9 MAL_CF*09=:N'WC+2.K#.J=WR3(A=I/G\0E7YI%%*$WCYBDAM(G=1,^%R2M M>.WBK%+O);-;SO95GM8']-6B]\)N\:H((5=B1N)>W96538T];V56$.8Q^@0? M\1LKXUP9K*#_Y$Q0=9;+%-[&I4-QVEL$78( 9V[T ME WU+<5+N3V6VD!+@V"SL6O_VM!M;2)T61*J5XU'C'62L 2=*"OB1X5KPE2P M2]&+*P@W53?!NP=.P^71@V-'BIC.FGI6N/+L2##0YV+M]W%4'FL<LGL MBM,W/P_L^PG_ZT>JNL(O6(;GXYC)I1NQ (,5#GC^K-NRV[T54ZF^#E1&=B/+ M*996D(P*[:N;@U(T:K(R!GTM(;GD54-Q*=$M:U<7^Q)4Y1C54K..!FB XE5% M']"TA51\ENL[I>6L0'@5V[S"<-MT\%)4T]@5N-9N1C7:'.F%,9]76JS>#64= M[@1OI7\;O3<3D$P#7CRZM6YQ=-@N/FR7QQOG3;Y#XQT/W3WPF74\2_/"P M_+EQ^*N?29_ ^@361SN3WBE]NHD8O4= 5GF XHO3AK#W4#4)NZN2A ,BJ0N# M?(H#8;2B45^7J$F\[X%(G/*6 M6 :T+$C"QX1+""B=T0"4DEMV3Y<\Z&>GI^LDTERD/*/K^=/N#7.F18' C"8! M#9HJX6HIZ50FD6QA+WHTSL MEF17=7MW*=S((I584_I@B<]19*%*.-;T-5FB7D,J:.+3)K;Z%'<$Y;N4B2Y4 MJBZ+EP@)70.(*L]R/U+\H(F;__M^&ZV21!/B_ST5/$\"E=#BPJWB<:WV;;VC M_#"N3N9(G!KE>Q7!ZS5W:]FMM:95,5]*IM0H/J&34%+AD@O.@M)I=;MFJ[,Z M-Q1MMD[U%D6"NNIP[S]02P$"% ,4 " #N@0998CZ:RDP+ A9 $ M @ $ 8VEX+3(P,C0P-C,P+GAS9%!+ 0(4 Q0 ( .Z! M!EE8PK?PB@P (FK 4 " 7H+ !C:7@M,C R-# V,S!? M8V%L+GAM;%!+ 0(4 Q0 ( .Z!!ED1"1'H 0!C:7@M,C R-# V,S!X97@S,F0Q+FAT;5!+!08 "0 ) %<" #O %[P$ ! end XML 54 cix-20240630x10q_htm.xml IDEA: XBRL DOCUMENT 0001049606 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2024-06-30 0001049606 us-gaap:RetainedEarningsMember 2024-06-30 0001049606 us-gaap:AdditionalPaidInCapitalMember 2024-06-30 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-30 0001049606 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2024-03-31 0001049606 us-gaap:RetainedEarningsMember 2024-03-31 0001049606 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0001049606 2024-03-31 0001049606 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-12-31 0001049606 us-gaap:RetainedEarningsMember 2023-12-31 0001049606 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0001049606 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-06-30 0001049606 us-gaap:RetainedEarningsMember 2023-06-30 0001049606 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0001049606 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2023-03-31 0001049606 us-gaap:RetainedEarningsMember 2023-03-31 0001049606 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001049606 2023-03-31 0001049606 us-gaap:CommonClassAMember us-gaap:CommonStockMember 2022-12-31 0001049606 us-gaap:RetainedEarningsMember 2022-12-31 0001049606 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001049606 cix:SecurityProductsMember 2024-04-01 2024-06-30 0001049606 cix:MarineComponentsMember 2024-04-01 2024-06-30 0001049606 cix:SecurityProductsMember 2024-01-01 2024-06-30 0001049606 cix:MarineComponentsMember 2024-01-01 2024-06-30 0001049606 cix:SecurityProductsMember 2023-04-01 2023-06-30 0001049606 cix:MarineComponentsMember 2023-04-01 2023-06-30 0001049606 cix:SecurityProductsMember 2023-01-01 2023-06-30 0001049606 cix:MarineComponentsMember 2023-01-01 2023-06-30 0001049606 cix:ValhiIncMember us-gaap:UnsecuredDebtMember us-gaap:RelatedPartyMember 2024-06-30 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-04-01 2024-06-30 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-06-30 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0001049606 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:SecurityProductsMember 2024-04-01 2024-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:MarineComponentsMember 2024-04-01 2024-06-30 0001049606 us-gaap:CorporateNonSegmentMember 2024-04-01 2024-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:SecurityProductsMember 2024-01-01 2024-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:MarineComponentsMember 2024-01-01 2024-06-30 0001049606 us-gaap:CorporateNonSegmentMember 2024-01-01 2024-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:SecurityProductsMember 2023-04-01 2023-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:MarineComponentsMember 2023-04-01 2023-06-30 0001049606 us-gaap:CorporateNonSegmentMember 2023-04-01 2023-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:SecurityProductsMember 2023-01-01 2023-06-30 0001049606 us-gaap:OperatingSegmentsMember cix:MarineComponentsMember 2023-01-01 2023-06-30 0001049606 us-gaap:CorporateNonSegmentMember 2023-01-01 2023-06-30 0001049606 cix:NLIndustriesMember cix:ValhiIncMember 2024-06-30 0001049606 cix:CompXInternationalIncMember cix:NLIndustriesMember 2024-06-30 0001049606 cix:ValhiIncMember cix:ContranCorporationMember 2024-06-30 0001049606 cix:CurrentAssetsMember 2024-01-01 2024-06-30 0001049606 cix:CurrentAssetsMember 2023-01-01 2023-12-31 0001049606 cix:ValhiIncMember us-gaap:UnsecuredDebtMember us-gaap:RelatedPartyMember 2024-01-01 2024-06-30 0001049606 cix:ValhiIncMember us-gaap:UnsecuredDebtMember us-gaap:RelatedPartyMember 2023-01-01 2023-06-30 0001049606 us-gaap:RetainedEarningsMember 2024-04-01 2024-06-30 0001049606 us-gaap:RetainedEarningsMember 2024-01-01 2024-06-30 0001049606 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0001049606 us-gaap:RetainedEarningsMember 2023-01-01 2023-06-30 0001049606 us-gaap:CommonClassAMember 2024-06-30 0001049606 us-gaap:CommonClassAMember 2023-12-31 0001049606 cix:S2024Q3DividendsMember us-gaap:CommonClassAMember us-gaap:SubsequentEventMember 2024-07-01 2024-08-06 0001049606 2023-06-30 0001049606 2022-12-31 0001049606 us-gaap:EstimateOfFairValueFairValueDisclosureMember 2024-06-30 0001049606 us-gaap:CarryingReportedAmountFairValueDisclosureMember 2024-06-30 0001049606 us-gaap:EstimateOfFairValueFairValueDisclosureMember 2023-12-31 0001049606 us-gaap:CarryingReportedAmountFairValueDisclosureMember 2023-12-31 0001049606 us-gaap:CorporateMember 2024-06-30 0001049606 cix:SecurityProductsMember 2024-06-30 0001049606 cix:MarineComponentsMember 2024-06-30 0001049606 cix:SecurityProductsMember 2023-12-31 0001049606 cix:MarineComponentsMember 2023-12-31 0001049606 2024-07-30 0001049606 cix:CurrentAssetsMember 2024-06-30 0001049606 cix:CurrentAssetsMember 2023-12-31 0001049606 us-gaap:UnsecuredDebtMember cix:ValhiIncMember 2016-08-01 2016-08-31 0001049606 us-gaap:UnsecuredDebtMember cix:ValhiIncMember 2016-08-31 0001049606 us-gaap:AdditionalPaidInCapitalMember 2024-04-01 2024-06-30 0001049606 2024-04-01 2024-06-30 0001049606 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-06-30 0001049606 2024-01-01 2024-06-30 0001049606 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0001049606 2023-04-01 2023-06-30 0001049606 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-06-30 0001049606 2023-01-01 2023-06-30 0001049606 2024-06-30 0001049606 2023-12-31 iso4217:USD shares iso4217:USD shares pure 0.33 0.39 0.82 0.70 12310000 12316000 12309000 12315000 DE 0001049606 --12-31 Q2 false 10-Q true 2024-06-30 2024 false 1-13905 COMPX INTERNATIONAL INC 57-0981653 5430 LBJ Freeway Suite 1700 Dallas TX 75240-2620 972 448-1400 Class A common stock CIX NYSEAMER Yes Yes Non-accelerated Filer false false false 12318557 41393000 70172000 35354000 11934000 17061000 15435000 30712000 27363000 2110000 1768000 126630000 126672000 10600000 9200000 23742000 23742000 769000 723000 35111000 33665000 5390000 5390000 23239000 23262000 74315000 74651000 676000 770000 103620000 104073000 77757000 79336000 25863000 24737000 187604000 185074000 15745000 13164000 1460000 560000 17205000 13724000 1509000 1141000 41000 26000 1550000 1167000 0 0 123000 123000 53275000 53396000 115457000 116665000 -6000 -1000 168849000 170183000 187604000 185074000 36616000 35887000 77767000 73858000 26343000 24722000 54790000 53026000 10273000 11165000 22977000 20832000 5906000 6084000 11570000 12036000 4367000 5081000 11407000 8796000 992000 1295000 1939000 2519000 5359000 6376000 13346000 11315000 1287000 1532000 3206000 2717000 4072000 4844000 10140000 8598000 -72000 10000 -102000 5000 4000000 4854000 10038000 8603000 0.33 0.39 0.82 0.70 12310000 12316000 12309000 12315000 123000 53155000 108166000 -47000 161397000 4072000 4072000 120000 120000 0.25 3078000 3078000 72000 72000 123000 53275000 109160000 -119000 162439000 123000 53275000 115517000 -11000 168904000 4844000 4844000 121000 121000 0.30 3696000 3696000 -10000 -10000 123000 53396000 116665000 -1000 170183000 123000 53155000 105175000 -17000 158436000 10140000 10140000 120000 120000 0.50 6155000 6155000 102000 102000 123000 53275000 109160000 -119000 162439000 123000 53275000 115457000 -6000 168849000 8598000 8598000 121000 121000 0.60 7390000 7390000 -5000 -5000 123000 53396000 116665000 -1000 170183000 10140000 8598000 2009000 1846000 -421000 -370000 855000 574000 -232000 -267000 -2794000 -1628000 2585000 -3201000 -1619000 -2586000 -208000 -900000 -281000 -389000 9768000 11499000 478000 730000 24925000 0 12000000 24000000 14700000 13400000 13700000 12000000 -12403000 24670000 6155000 7390000 -8790000 28779000 26748000 41393000 17958000 70172000 3847000 4006000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Note 1 – Organization and basis of presentation:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Organization</i>. We (NYSE American: CIX) were approximately 87% owned by NL Industries, Inc. (NYSE: NL) at June 30, 2024. At June 30, 2024, Valhi, Inc. (NYSE: VHI) owned approximately 83% of NL’s outstanding common stock and a wholly-owned subsidiary of Contran Corporation owned approximately 91% of Valhi’s outstanding common stock. A majority of Contran’s outstanding voting stock is held directly by Lisa K. Simmons, Thomas C. Connelly (the husband of Ms. Simmons’ late sister) and various family trusts established for the benefit of Ms. Simmons, Mr. Connelly and their children and for which Ms. Simmons, Mr. Connelly or Mr. Connelly’s sister, as applicable, serve as trustee (collectively, the “Other Trusts”). With respect to the Other Trusts for which Mr. Connelly or his sister serves as trustee, the trustee is required to vote the shares of Contran voting stock held in such trusts in the same manner as Ms. Simmons. Such voting rights of Ms. Simmons last through April 22, 2030 and are personal to Ms. Simmons. The remainder of Contran’s outstanding voting stock is held by another trust (the “Family Trust”), which was established for the benefit of Ms. Simmons and her late sister and their children and for which a third-party financial institution serves as trustee. Consequently, at June 30, 2024 Ms. Simmons and the Family Trust may be deemed to control Contran, and therefore may be deemed to indirectly control the wholly-owned subsidiary of Contran, Valhi, NL and us.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Basis of presentation.</i> Consolidated in this Quarterly Report are the results of CompX International Inc. and its subsidiaries. The unaudited Condensed Consolidated Financial Statements contained in this Quarterly Report have been prepared on the same basis as the audited Consolidated Financial Statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 that we filed with the Securities and Exchange Commission (“SEC”) on February 28, 2024 (the “2023 Annual Report”). In our opinion, we have made all necessary adjustments (which include only normal recurring adjustments) in order to state fairly, in all material respects, our consolidated financial position, results of operations and cash flows as of the dates and for the periods presented. We have condensed the Consolidated Balance Sheet at December 31, 2023 contained in this Quarterly Report as compared to our audited Consolidated Financial Statements at that date, and we have omitted certain information and footnote disclosures (including those related to the Consolidated Balance Sheet at December 31, 2023) normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”). Our results of operations for the interim periods ended June 30, 2024 may not be indicative of our operating results for the full year. The Condensed Consolidated Financial Statements contained in this Quarterly Report should be read in conjunction with our 2023 Consolidated Financial Statements contained in our 2023 Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">On August 6, 2024 our board of directors declared a special cash dividend of $2.00 per share on our Class A common stock payable on August 28, 2024 to stockholders of record at the close of business on August 19, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Our operations are reported on a 52 or 53-week year. For presentation purposes, annual and quarterly information in the Condensed Consolidated Financial Statements and accompanying notes are presented as ended June 30, 2023, December 31, 2023 and June 30, 2024. The actual dates of our annual and quarterly periods are July 2, 2023, December 31, 2023 and June 30, 2024, respectively. Unless otherwise indicated, references in this report to “we”, “us” or “our” refer to CompX International Inc. and its subsidiaries, taken as a whole.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Organization</i>. We (NYSE American: CIX) were approximately 87% owned by NL Industries, Inc. (NYSE: NL) at June 30, 2024. At June 30, 2024, Valhi, Inc. (NYSE: VHI) owned approximately 83% of NL’s outstanding common stock and a wholly-owned subsidiary of Contran Corporation owned approximately 91% of Valhi’s outstanding common stock. A majority of Contran’s outstanding voting stock is held directly by Lisa K. Simmons, Thomas C. Connelly (the husband of Ms. Simmons’ late sister) and various family trusts established for the benefit of Ms. Simmons, Mr. Connelly and their children and for which Ms. Simmons, Mr. Connelly or Mr. Connelly’s sister, as applicable, serve as trustee (collectively, the “Other Trusts”). With respect to the Other Trusts for which Mr. Connelly or his sister serves as trustee, the trustee is required to vote the shares of Contran voting stock held in such trusts in the same manner as Ms. Simmons. Such voting rights of Ms. Simmons last through April 22, 2030 and are personal to Ms. Simmons. The remainder of Contran’s outstanding voting stock is held by another trust (the “Family Trust”), which was established for the benefit of Ms. Simmons and her late sister and their children and for which a third-party financial institution serves as trustee. Consequently, at June 30, 2024 Ms. Simmons and the Family Trust may be deemed to control Contran, and therefore may be deemed to indirectly control the wholly-owned subsidiary of Contran, Valhi, NL and us.</p> 0.87 0.83 0.91 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Basis of presentation.</i> Consolidated in this Quarterly Report are the results of CompX International Inc. and its subsidiaries. The unaudited Condensed Consolidated Financial Statements contained in this Quarterly Report have been prepared on the same basis as the audited Consolidated Financial Statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 that we filed with the Securities and Exchange Commission (“SEC”) on February 28, 2024 (the “2023 Annual Report”). In our opinion, we have made all necessary adjustments (which include only normal recurring adjustments) in order to state fairly, in all material respects, our consolidated financial position, results of operations and cash flows as of the dates and for the periods presented. We have condensed the Consolidated Balance Sheet at December 31, 2023 contained in this Quarterly Report as compared to our audited Consolidated Financial Statements at that date, and we have omitted certain information and footnote disclosures (including those related to the Consolidated Balance Sheet at December 31, 2023) normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”). Our results of operations for the interim periods ended June 30, 2024 may not be indicative of our operating results for the full year. The Condensed Consolidated Financial Statements contained in this Quarterly Report should be read in conjunction with our 2023 Consolidated Financial Statements contained in our 2023 Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">On August 6, 2024 our board of directors declared a special cash dividend of $2.00 per share on our Class A common stock payable on August 28, 2024 to stockholders of record at the close of business on August 19, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Our operations are reported on a 52 or 53-week year. For presentation purposes, annual and quarterly information in the Condensed Consolidated Financial Statements and accompanying notes are presented as ended June 30, 2023, December 31, 2023 and June 30, 2024. The actual dates of our annual and quarterly periods are July 2, 2023, December 31, 2023 and June 30, 2024, respectively. Unless otherwise indicated, references in this report to “we”, “us” or “our” refer to CompX International Inc. and its subsidiaries, taken as a whole.</p> 2024-08-06 2.00 2024-08-28 2024-08-19 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Note 2 – Business segment information:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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: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.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.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: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.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.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: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.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.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:9.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:46.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:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.51%;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;"><b style="font-weight:bold;">Three months ended </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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;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;"><b style="font-weight:bold;">Six months ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.51%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">June 30, </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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;border-bottom:1px solid #000000;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;"><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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">2024</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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><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:10pt;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:11.06%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">2024</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.33%;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;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:46.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;">Net sales:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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:1.42%;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;">  </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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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;">  </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.42%;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;">  </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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.64%;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;">  </p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 25,672</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.42%;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;">$</b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 28,213</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 53,014</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.42%;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;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 58,100</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 10,944</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 7,674</b></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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 24,753</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 15,758</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 36,616</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 35,887</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 77,767</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 73,858</b></p></td></tr><tr><td style="vertical-align:top;width:46.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:2.32%;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.42%;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;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.42%;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="font-weight:bold;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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;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.42%;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;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.42%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating income:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 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.42%;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;"> </b></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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">  </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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 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.42%;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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;"><b style="font-weight:bold;">  </b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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 3.5pt 0.05pt 0pt;"> 4,134</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.42%;background:#cceeff;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;">$</b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 5,442</b></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.42%;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 3.5pt 0.05pt 0pt;"> 9,513</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.42%;background:#cceeff;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;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 10,892</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 1,943</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.42%;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;"> </b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1,387</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 5,260</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.42%;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1,421</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Corporate operating expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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.66%;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;"> (1,710)</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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;"><b style="font-weight:bold;"> (1,748)</b></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.42%;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.66%;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;"> (3,366)</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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;"><b style="font-weight:bold;"> (3,517)</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total operating income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 4,367</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.42%;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;"> </b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 5,081</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 11,407</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.42%;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 8,796</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Interest income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 992</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1,295</b></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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 1,939</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 2,519</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 5,359</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 6,376</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 13,346</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 11,315</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:12pt 0pt 12pt 0pt;">Intersegment sales are not material.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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: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.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.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: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.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.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: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.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.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:9.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:46.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:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.51%;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;"><b style="font-weight:bold;">Three months ended </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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;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;"><b style="font-weight:bold;">Six months ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.51%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">June 30, </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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;border-bottom:1px solid #000000;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;"><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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">2024</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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><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:10pt;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:11.06%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">2024</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.33%;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;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:46.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;">Net sales:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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:1.42%;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;">  </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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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;">  </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.42%;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;">  </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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.64%;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;">  </p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 25,672</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.42%;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;">$</b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 28,213</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 53,014</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.42%;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;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 58,100</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 10,944</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 7,674</b></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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 24,753</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 15,758</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 36,616</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 35,887</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 77,767</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 73,858</b></p></td></tr><tr><td style="vertical-align:top;width:46.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:2.32%;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.42%;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;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.42%;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="font-weight:bold;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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;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.42%;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;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.42%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating income:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 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.42%;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;"> </b></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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">  </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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 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.42%;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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;"><b style="font-weight:bold;">  </b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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 3.5pt 0.05pt 0pt;"> 4,134</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.42%;background:#cceeff;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;">$</b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 5,442</b></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.42%;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 3.5pt 0.05pt 0pt;"> 9,513</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.42%;background:#cceeff;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;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 10,892</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 1,943</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.42%;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;"> </b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1,387</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 5,260</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.42%;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1,421</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Corporate operating expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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.66%;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;"> (1,710)</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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;"><b style="font-weight:bold;"> (1,748)</b></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.42%;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.66%;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;"> (3,366)</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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;"><b style="font-weight:bold;"> (3,517)</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total operating income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 4,367</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.42%;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;"> </b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 5,081</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.5pt 0.05pt 0pt;"> 11,407</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.42%;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 8,796</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Interest income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 992</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1,295</b></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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 1,939</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.42%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 2,519</b></p></td></tr><tr><td style="vertical-align:top;width:46.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 5,359</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 6,376</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.66%;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 3.5pt 0.05pt 0pt;"> 13,346</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.42%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 11,315</b></p></td></tr></table> 25672000 28213000 53014000 58100000 10944000 7674000 24753000 15758000 36616000 35887000 77767000 73858000 4134000 5442000 9513000 10892000 1943000 1387000 5260000 1421000 -1710000 -1748000 -3366000 -3517000 4367000 5081000 11407000 8796000 992000 1295000 1939000 2519000 5359000 6376000 13346000 11315000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Note 3 – Marketable securities:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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:11.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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:11.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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:11.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:53.53%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;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;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.77%;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;"><b style="font-weight:bold;">Unrealized</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.53%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">Market value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">cost basis</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.77%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">loss, net</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="10" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:53.53%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:43.76%;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;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:53.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">December 31, 2023:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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:1.63%;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:11.15%;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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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:1.63%;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:11.15%;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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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:1.63%;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:11.13%;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;">  </p></td></tr><tr><td style="vertical-align:top;width:53.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;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:11.15%;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 3.5pt 0.05pt 0pt;"> 35,354</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;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:11.15%;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 3.5pt 0.05pt 0pt;"> 35,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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:11.13%;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;"> (5)</p></td></tr><tr><td style="vertical-align:top;width:53.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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.63%;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:11.15%;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:2.69%;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.63%;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:11.15%;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:2.69%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.13%;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="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:53.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">June 30, 2024:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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:2.69%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.13%;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="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:53.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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.63%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 11,934</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 11,935</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.13%;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 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> (1)</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:12pt 0pt 12pt 0pt;">Our marketable securities consist of investments in debt securities, currently U.S. government treasuries. We classify our marketable securities as available-for-sale. The fair value of our marketable securities is generally determined using Level 2 inputs because although these securities are traded, in many cases the market is not active and the quarter-end valuation is generally based on the last trade of the quarter, which may be several days prior to quarter end. We accumulate unrealized gains and losses on marketable debt securities as part of accumulated other comprehensive income (loss), net of related deferred income taxes.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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:11.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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:11.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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:11.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:53.53%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;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;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.77%;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;"><b style="font-weight:bold;">Unrealized</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.53%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">Market value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.79%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">cost basis</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.77%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">loss, net</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="10" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:53.53%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:43.76%;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;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:53.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">December 31, 2023:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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:1.63%;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:11.15%;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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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:1.63%;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:11.15%;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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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:1.63%;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:11.13%;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;">  </p></td></tr><tr><td style="vertical-align:top;width:53.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;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:11.15%;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 3.5pt 0.05pt 0pt;"> 35,354</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;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:11.15%;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 3.5pt 0.05pt 0pt;"> 35,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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:11.13%;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;"> (5)</p></td></tr><tr><td style="vertical-align:top;width:53.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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.63%;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:11.15%;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:2.69%;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.63%;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:11.15%;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:2.69%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;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;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.13%;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="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:53.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">June 30, 2024:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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:2.69%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.13%;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="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:53.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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.63%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 11,934</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 11,935</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.13%;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 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> (1)</b></p></td></tr></table> 35354000 35359000 -5000 11934000 11935000 -1000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Note 4 – Accounts receivable, net:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;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:top;width:63.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</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:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accounts receivable, net:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 14,950</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 12,596</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 2,181</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 2,909</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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;"> (70)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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;"><b style="font-weight:bold;"> (70)</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 17,061</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 15,435</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;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:top;width:63.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</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:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accounts receivable, net:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 14,950</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 12,596</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 2,181</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 2,909</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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;"> (70)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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;"><b style="font-weight:bold;"> (70)</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 17,061</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 15,435</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 14950000 12596000 2181000 2909000 70000 70000 17061000 15435000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:12pt 0pt 12pt 0pt;"><span style="font-weight:normal;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Note 5 – Inventories, net:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</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:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raw materials:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 3,569</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 3,658</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 2,169</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 1,596</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total raw materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 5,738</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 5,254</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Work-in-process:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 13,879</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 12,213</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 5,163</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 4,858</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total work-in-process</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 19,042</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 17,071</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finished goods:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 3,175</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 2,825</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 2,757</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 2,213</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total finished goods</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 5,932</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 5,038</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total inventories, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 30,712</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 27,363</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</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:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raw materials:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 3,569</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 3,658</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 2,169</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 1,596</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total raw materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 5,738</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 5,254</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Work-in-process:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 13,879</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 12,213</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 5,163</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 4,858</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total work-in-process</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 19,042</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 17,071</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finished goods:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"> 3,175</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 2,825</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 2,757</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 2,213</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total finished goods</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 5,932</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 5,038</b></p></td></tr><tr><td style="vertical-align:top;width:63.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total inventories, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"> 30,712</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.21%;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 3.5pt 0pt 0pt;"><b style="font-weight:bold;"> 27,363</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 3569000 3658000 2169000 1596000 5738000 5254000 13879000 12213000 5163000 4858000 19042000 17071000 3175000 2825000 2757000 2213000 5932000 5038000 30712000 27363000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:12pt 0pt 12pt 0pt;">Note 6 – Accounts payable and accrued liabilities:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;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:top;width:64.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</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:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accounts payable:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,514</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 3,103</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 634</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 680</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Corporate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 8</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Employee benefits</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,712</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 6,862</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 559</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 461</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 289</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 334</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Taxes other than on income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 285</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 344</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Advances from customers</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 267</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 133</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Customer tooling</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 347</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Professional services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 533</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;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 0pt 0pt;"> 340</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;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 0pt 0pt;"><b style="font-weight:bold;"> 359</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="white-space:pre-wrap;"> Total accounts payable and accrued liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;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 0pt 0pt;"> 15,745</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;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 0pt 0pt;"><b style="font-weight:bold;"> 13,164</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;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:top;width:64.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</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:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accounts payable:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Security Products</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,514</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 3,103</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Marine Components</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 634</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 680</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Corporate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 8</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Employee benefits</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,712</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 6,862</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 559</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 461</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 289</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 334</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Taxes other than on income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 285</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 344</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Advances from customers</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 267</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 133</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Customer tooling</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 347</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Professional services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 533</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;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 0pt 0pt;"> 340</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;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 0pt 0pt;"><b style="font-weight:bold;"> 359</b></p></td></tr><tr><td style="vertical-align:top;width:64.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="white-space:pre-wrap;"> Total accounts payable and accrued liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.45%;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 0pt 0pt;"> 15,745</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.47%;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 0pt 0pt;"><b style="font-weight:bold;"> 13,164</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 2514000 3103000 634000 680000 8000 10712000 6862000 559000 461000 289000 334000 285000 344000 267000 133000 145000 347000 533000 340000 359000 15745000 13164000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:12pt 0pt 12pt 0pt;">Note 7 – Provision for income taxes:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;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:top;width:50.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six months ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:46.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Expected tax expense, at the U.S. federal statutory <br/><span style="font-family:'Calibri','Helvetica','sans-serif';">  </span>income tax rate of 21%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,126</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 1,339</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,803</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 2,376</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">State income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 188</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 401</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 333</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 5</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> 8</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Total provision for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 1,287</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 1,532</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 3,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> 2,717</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Comprehensive provision for income taxes allocable to:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,287</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 1,532</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 2,717</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Other comprehensive income (loss) - marketable securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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;"> (18)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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;"> (31)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> —</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 1,269</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 1,533</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 3,175</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> 2,717</b></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;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;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:top;width:50.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap: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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six months ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:46.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Expected tax expense, at the U.S. federal statutory <br/><span style="font-family:'Calibri','Helvetica','sans-serif';">  </span>income tax rate of 21%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,126</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 1,339</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,803</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 2,376</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">State income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 188</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 401</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 333</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 5</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> 8</b></p></td></tr><tr><td style="vertical-align:top;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Total provision for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 1,287</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 1,532</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 3,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> 2,717</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Comprehensive provision for income taxes allocable to:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,287</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 1,532</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><b style="font-weight:bold;"> 2,717</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Other comprehensive income (loss) - marketable securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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;"> (18)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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;"> (31)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> —</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:50.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 1,269</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"><b style="font-weight:bold;"> 1,533</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;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 0pt 0pt;"> 3,175</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;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 0pt 0pt;"><b style="font-weight:bold;"> 2,717</b></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;visibility:hidden;">​</span></p> 0.21 0.21 1126000 1339000 2803000 2376000 161000 188000 401000 333000 5000 2000 8000 1287000 1532000 3206000 2717000 1287000 1532000 3206000 2717000 -18000 1000 -31000 1269000 1533000 3175000 2717000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Note 8 – Commitments and contingencies:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">From time to time, we may be involved in various environmental, contractual, product liability, patent (or intellectual property), employment and other claims and disputes incidental to our business. At least quarterly our management discusses and evaluates the status of any pending litigation to which we are a party. The factors considered in such evaluation include, among other things, the nature of such pending cases, the status of such pending cases, the advice of legal counsel and our experience in similar cases (if any). Based on such evaluation, we make a determination as to whether we believe (i) it is probable a loss has been incurred, and if so if the amount of such loss (or a range of loss) is reasonably estimable, or (ii) it is reasonably possible but not probable a loss has been incurred, and if so if the amount of such loss (or a range of loss) is reasonably estimable, or (iii) the probability a loss has been incurred is remote. We have not accrued any amounts for litigation matters because it is not reasonably possible we have incurred a loss that would be material to our consolidated financial statements, results of operations or liquidity.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:12pt 0pt 12pt 0pt;">Note 9 – Financial instruments:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">See Note 3 for information on how we determine the fair value of our marketable securities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The following table presents the financial instruments that are not carried at fair value but which require fair value disclosure:</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:top;width:46.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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: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.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.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: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.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.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: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.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.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:9.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:46.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:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.51%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">December 31, 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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;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;"><b style="font-weight:bold;">Carrying</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;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;"><b style="font-weight:bold;">Fair</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;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;"><b style="font-weight:bold;">Carrying</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.06%;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;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">amount</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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">value</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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">amount</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:10pt;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:11.06%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">value</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.33%;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;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:46.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;">Cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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 3.5pt 0.05pt 0pt;"> 41,393</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.42%;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 3.5pt 0.05pt 0pt;"> 41,393</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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;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;">$</b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 70,172</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;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;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 70,172</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:12pt 0pt 12pt 0pt;">Due to their near-term maturities, the carrying amounts of accounts receivable and accounts payable are considered equivalent to fair value.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">See Note 3 for information on how we determine the fair value of our marketable securities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The following table presents the financial instruments that are not carried at fair value but which require fair value disclosure:</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:top;width:46.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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: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.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.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: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.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.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: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.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.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:9.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:46.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:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.51%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">December 31, 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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;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;"><b style="font-weight:bold;">Carrying</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;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;"><b style="font-weight:bold;">Fair</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;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;"><b style="font-weight:bold;">Carrying</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:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.06%;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;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">amount</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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">value</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:10pt;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:11.08%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">amount</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:10pt;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:11.06%;border-bottom:1px solid #000000;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;"><b style="font-weight:bold;">value</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:46.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-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.33%;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;"><b style="font-weight:bold;">(In thousands)</b></p></td></tr><tr><td style="vertical-align:top;width:46.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;">Cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;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.42%;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 3.5pt 0.05pt 0pt;"> 41,393</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.42%;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 3.5pt 0.05pt 0pt;"> 41,393</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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;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;">$</b></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 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 70,172</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;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;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.5pt 0.05pt 0pt;"><b style="font-weight:bold;"> 70,172</b></p></td></tr></table> 41393000 41393000 70172000 70172000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Note 10 – Related party transactions:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">From time to time, we may have loans and advances outstanding between us and various related parties pursuant to term and demand notes. We generally enter into these loans and advances for cash management purposes. When we loan funds to related parties, we are generally able to earn a higher rate of return on the loan than we would earn if we invested the funds in other instruments, and when we borrow from related parties, we are generally able to pay a lower rate of interest than we would pay if we had incurred third-party indebtedness. While certain of these loans to affiliates may be of a lesser credit quality than cash equivalent instruments otherwise available to us, we believe we have considered the credit risks in the terms of the applicable loans. In this regard, we have an unsecured revolving demand promissory note with Valhi under which, as amended, we agreed to loan Valhi up to $25 million. Our loan to Valhi, as amended, bears interest at prime plus 1.00%, payable quarterly, with all principal due on demand, but in any event no earlier than December 31, 2025. Loans made to Valhi at any time under the agreement are at our discretion. At June 30, 2024, the outstanding principal balance receivable from Valhi under the promissory note was $9.2 million. Interest income (including unused commitment fees) on our loan to Valhi was $.6 million and $.5 million for the six months ended June 30, 2023 and 2024, respectively.</p> 25000000 0.0100 2025-12-31 9200000 600000 500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Note 11 – Recent Accounting Pronouncements:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">In November 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-07, Segment Reporting (Topic 280): <i style="font-style:italic;">Improvements to Reportable Segment Disclosures</i>. The ASU requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis. The ASU also mandates public companies to provide all annual segment disclosures currently required annually in interim periods. Public companies will also be required to disclose the title and position of the chief operating decision maker (“CODM”) and explain how the CODM uses the reported measure of segment profit or loss in assessing segment performance and allocation of resources. The ASU is effective for us beginning with our 2024 Annual Report, and for interim reporting, in the first quarter of 2025, with retrospective application required. We are in the process of evaluating the additional disclosure requirements across all segments. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): <i style="font-style:italic;">Improvements to Income Tax Disclosures</i>. The ASU requires additional annual disclosure and disaggregation for the rate reconciliation, income taxes paid and income tax expense by federal, state and foreign tax jurisdictions. In addition, the standard increases the disclosure requirements for items included in the rate reconciliation that meet a quantitative threshold. The ASU is effective for us beginning with our 2025 Annual Report. The ASU may be applied prospectively; however, entities have the option to apply it retrospectively. We are in the process of evaluating the additional disclosure requirements. </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:12pt;visibility:hidden;">​</span></p>