0000950170-24-125440.txt : 20241112 0000950170-24-125440.hdr.sgml : 20241112 20241112161622 ACCESSION NUMBER: 0000950170-24-125440 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 77 CONFORMED PERIOD OF REPORT: 20240930 FILED AS OF DATE: 20241112 DATE AS OF CHANGE: 20241112 FILER: COMPANY DATA: COMPANY CONFORMED NAME: FTC Solar, Inc. CENTRAL INDEX KEY: 0001828161 STANDARD INDUSTRIAL CLASSIFICATION: SEMICONDUCTORS & RELATED DEVICES [3674] ORGANIZATION NAME: 04 Manufacturing IRS NUMBER: 814816270 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-40350 FILM NUMBER: 241448433 BUSINESS ADDRESS: STREET 1: 9020 N CAPITAL OF TEXAS HWY, SUITE I-260 CITY: AUSTIN STATE: TX ZIP: 78759 BUSINESS PHONE: (907) 312-0717 MAIL ADDRESS: STREET 1: 9020 N CAPITAL OF TEXAS HWY, SUITE I-260 CITY: AUSTIN STATE: TX ZIP: 78759 10-Q 1 ftci-20240930.htm 10-Q 10-Q
Q3--12-310001828161falseP5YOne yearhttp://fasb.org/us-gaap/2024#OtherLiabilitiesCurrent0001828161us-gaap:CommonStockMember2024-03-310001828161ftci:AssessmentMember2024-01-012024-09-300001828161us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-310001828161us-gaap:RetainedEarningsMember2024-07-012024-09-300001828161us-gaap:PreferredStockMember2024-03-310001828161us-gaap:CostOfSalesMember2023-07-012023-09-300001828161us-gaap:CommonStockMember2023-06-300001828161us-gaap:DevelopedTechnologyRightsMember2023-12-310001828161us-gaap:EmployeeStockOptionMember2024-07-012024-09-300001828161us-gaap:DevelopedTechnologyRightsMember2024-09-3000018281612024-03-310001828161us-gaap:RetainedEarningsMember2022-12-3100018281612024-06-300001828161us-gaap:RestrictedStockMember2023-01-012023-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-3000018281612023-04-012023-06-300001828161ftci:FernwehEngagedOperatorCompanyLlcMemberus-gaap:RelatedPartyMember2023-01-012023-09-300001828161us-gaap:RetainedEarningsMember2023-06-300001828161ftci:TreasuryStock1Member2024-06-3000018281612023-03-310001828161ftci:MajorCustomersMember2024-04-030001828161us-gaap:CostOfSalesMember2024-07-012024-09-300001828161us-gaap:EmployeeStockOptionMember2024-01-012024-09-300001828161us-gaap:PreferredStockMember2022-12-310001828161srt:MaximumMember2024-01-012024-09-300001828161ftci:AlphaSteelMembersrt:MaximumMember2024-01-012024-09-300001828161ftci:AlphaSteelMember2023-01-012023-09-300001828161us-gaap:AdditionalPaidInCapitalMember2024-06-300001828161us-gaap:ServiceMember2023-07-012023-09-300001828161us-gaap:GeneralAndAdministrativeExpenseMember2024-01-012024-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-09-300001828161us-gaap:ToolsDiesAndMoldsMember2024-09-300001828161ftci:AlphaSteelMember2023-07-012023-09-300001828161ftci:AlphaSteelMember2024-01-012024-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-300001828161us-gaap:SellingAndMarketingExpenseMember2023-01-012023-09-300001828161srt:MaximumMember2024-09-300001828161ftci:CbpAssessmentsMember2024-01-012024-09-300001828161us-gaap:ServiceMember2024-07-012024-09-300001828161us-gaap:RetainedEarningsMember2023-09-300001828161us-gaap:RetainedEarningsMember2024-06-300001828161ftci:AlphaSteelMember2023-07-282023-07-280001828161us-gaap:CommonStockMember2023-01-012023-03-310001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-04-012024-06-300001828161us-gaap:AdditionalPaidInCapitalMember2024-03-3100018281612023-06-300001828161ftci:AlphaSteelMember2023-12-310001828161us-gaap:CommonStockMember2024-06-300001828161us-gaap:AdditionalPaidInCapitalMember2023-06-300001828161us-gaap:GeneralAndAdministrativeExpenseMember2023-07-012023-09-300001828161us-gaap:RetainedEarningsMember2023-07-012023-09-300001828161us-gaap:SellingAndMarketingExpenseMember2023-07-012023-09-300001828161us-gaap:CommonStockMember2024-04-012024-06-300001828161us-gaap:CommonStockMemberus-gaap:SubsequentEventMember2024-11-080001828161us-gaap:AdditionalPaidInCapitalMember2024-01-012024-03-310001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-310001828161us-gaap:RetainedEarningsMember2024-04-012024-06-300001828161us-gaap:ResearchAndDevelopmentExpenseMember2024-07-012024-09-300001828161us-gaap:PreferredStockMember2023-12-310001828161ftci:FernwehEngagedOperatorCompanyLlcMember2023-09-132023-09-130001828161us-gaap:CostOfSalesMember2024-01-012024-09-300001828161us-gaap:AdditionalPaidInCapitalMember2024-09-300001828161us-gaap:SubsequentEventMember2024-11-082024-11-080001828161srt:MinimumMemberus-gaap:SubsequentEventMember2024-11-080001828161us-gaap:RestrictedStockMember2024-07-012024-09-300001828161us-gaap:RestrictedStockMember2024-01-012024-09-300001828161us-gaap:AdditionalPaidInCapitalMember2023-03-310001828161us-gaap:TechnologyEquipmentMember2023-12-310001828161us-gaap:RestrictedStockMember2023-07-012023-09-3000018281612023-12-222023-12-220001828161us-gaap:PreferredStockMember2023-06-300001828161us-gaap:CostOfSalesMember2023-01-012023-09-300001828161us-gaap:ToolsDiesAndMoldsMember2023-12-310001828161ftci:AlphaSteelMember2023-02-090001828161us-gaap:GeneralAndAdministrativeExpenseMember2024-07-012024-09-3000018281612023-01-012023-09-3000018281612024-01-012024-09-300001828161us-gaap:AdditionalPaidInCapitalMember2024-07-012024-09-300001828161us-gaap:ResearchAndDevelopmentExpenseMember2024-01-012024-09-300001828161us-gaap:SellingAndMarketingExpenseMember2024-01-012024-09-300001828161ftci:AlphaSteelMember2024-07-012024-09-300001828161us-gaap:RetainedEarningsMember2024-09-300001828161ftci:AtmProgramMember2022-09-140001828161us-gaap:CommonStockMember2023-09-300001828161us-gaap:AdditionalPaidInCapitalMember2024-04-012024-06-300001828161us-gaap:GeneralAndAdministrativeExpenseMember2023-01-012023-09-300001828161us-gaap:ResearchAndDevelopmentExpenseMember2023-01-012023-09-300001828161ftci:AtmProgramMember2024-07-012024-09-300001828161us-gaap:SeniorNotesMemberus-gaap:SubsequentEventMember2024-11-180001828161us-gaap:CommonStockMember2024-09-3000018281612023-01-012023-03-310001828161us-gaap:RetainedEarningsMember2023-04-012023-06-3000018281612024-01-012024-03-310001828161ftci:AtmProgramMember2024-01-012024-09-300001828161us-gaap:ProductMember2024-01-012024-09-300001828161us-gaap:CommonStockMember2024-07-012024-09-300001828161us-gaap:SubsequentEventMembersrt:MaximumMember2024-11-080001828161ftci:TreasuryStock1Member2022-12-310001828161us-gaap:RetainedEarningsMember2023-03-310001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-07-012024-09-300001828161us-gaap:RetainedEarningsMember2024-01-012024-03-310001828161ftci:TaihuaNewEnergyMember2023-02-090001828161us-gaap:PreferredStockMember2024-06-300001828161us-gaap:RetainedEarningsMember2023-01-012023-03-310001828161ftci:TreasuryStock1Member2023-06-300001828161us-gaap:ServiceMember2023-01-012023-09-300001828161us-gaap:EquipmentMember2024-09-300001828161us-gaap:PreferredStockMember2023-03-310001828161us-gaap:LeaseholdImprovementsMember2024-09-300001828161ftci:AtmProgramMember2024-09-300001828161us-gaap:SubsequentEventMember2024-11-0800018281612024-09-300001828161srt:MinimumMemberus-gaap:DevelopedTechnologyRightsMember2024-09-300001828161us-gaap:ResearchAndDevelopmentExpenseMember2023-07-012023-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300001828161ftci:AtmProgramMember2023-07-012023-09-300001828161us-gaap:RetainedEarningsMember2023-12-3100018281612022-12-310001828161ftci:TreasuryStock1Member2023-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-012023-09-3000018281612024-04-012024-06-300001828161us-gaap:ProductMember2023-07-012023-09-300001828161us-gaap:ProductMember2024-07-012024-09-300001828161us-gaap:ProductMember2023-01-012023-09-300001828161us-gaap:RetainedEarningsMember2024-03-310001828161us-gaap:AdditionalPaidInCapitalMember2023-09-300001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-310001828161us-gaap:CommonStockMember2023-07-012023-09-300001828161ftci:TreasuryStock1Member2024-09-300001828161us-gaap:CommonStockMember2024-01-012024-03-310001828161us-gaap:CommonStockMember2023-03-310001828161us-gaap:SoftwareDevelopmentMember2023-12-310001828161ftci:TreasuryStock1Member2024-03-310001828161us-gaap:PreferredStockMember2023-09-300001828161ftci:MajorCustomersMember2024-04-032024-04-0300018281612024-07-012024-09-300001828161srt:MinimumMember2024-01-012024-09-300001828161us-gaap:RelatedPartyMemberftci:FernwehEngagedOperatorCompanyLlcMember2023-07-012023-09-300001828161srt:MinimumMember2023-12-220001828161ftci:FernwehEngagedOperatorCompanyLlcMember2023-09-130001828161ftci:AlphaSteelMember2024-09-300001828161us-gaap:TechnologyEquipmentMember2024-09-3000018281612023-07-012023-09-300001828161us-gaap:DevelopedTechnologyRightsMembersrt:MaximumMember2024-09-300001828161ftci:SouthLakeOneLlcMember2022-02-012022-02-280001828161us-gaap:SellingAndMarketingExpenseMember2024-07-012024-09-300001828161srt:MinimumMember2024-09-300001828161us-gaap:EmployeeStockOptionMember2023-01-012023-09-3000018281612023-09-300001828161us-gaap:EmployeeStockOptionMember2023-07-012023-09-300001828161ftci:TreasuryStock1Member2023-12-310001828161us-gaap:AdditionalPaidInCapitalMember2022-12-310001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-310001828161ftci:TreasuryStock1Member2023-03-310001828161us-gaap:EquipmentMember2023-12-310001828161ftci:DayvLlcMember2023-02-090001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001828161us-gaap:SoftwareDevelopmentMember2024-09-300001828161ftci:AtmProgramMember2023-01-012023-09-300001828161us-gaap:CommonStockMember2023-12-310001828161us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-300001828161us-gaap:ServiceMember2024-01-012024-09-3000018281612024-10-310001828161us-gaap:CommonStockMember2023-04-012023-06-3000018281612023-12-310001828161us-gaap:LeaseholdImprovementsMember2023-12-310001828161us-gaap:SeniorNotesMemberus-gaap:SubsequentEventMember2024-11-080001828161us-gaap:AdditionalPaidInCapitalMember2023-12-310001828161us-gaap:AdditionalPaidInCapitalMember2023-07-012023-09-300001828161us-gaap:PreferredStockMember2024-09-300001828161us-gaap:CommonStockMember2022-12-310001828161us-gaap:SeniorNotesMemberus-gaap:SubsequentEventMemberus-gaap:PrivatePlacementMember2024-11-080001828161us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-03-31ftci:Daysxbrli:purexbrli:sharesiso4217:USDiso4217:USDxbrli:shares

 

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION

WASHINGTON, D.C. 20549

FORM 10-Q

 

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

 

 

For the quarterly period ended September 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 001-40350

FTC SOLAR, INC.
(Exact name of registrant as specified in its charter)

Delaware

 

81-4816270

(State or other jurisdiction of incorporation or organization)

 

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

9020 N Capital of Texas Hwy, Suite I-260,

Austin, Texas 78759

 

 

78759

 (Address of principal executive offices)

 

(Zip Code)

 

(737) 787-7906

Registrant's telephone number, including area code

 

Not Applicable

Former name, former address and former fiscal year, if changed since last report

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

Title of each class

Trading Symbol(s)

Name of each exchange on which registered

Common Stock, $0.0001 par value

FTCI

The Nasdaq Stock Market LLC

 

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

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

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

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 Act). Yes No

As of October 31, 2024, 127,767,183 shares of the registrant's common stock were outstanding.

 

 


 

img146223903_0.jpg

TABLE OF CONTENTS

 

 

 

Page

PART I - FINANCIAL INFORMATION

 

 

Forward-looking statements

1

 

Item 1.

Financial Statements (Unaudited)

2

 

 

Condensed Consolidated Balance Sheets

2

 

 

Condensed Consolidated Statements of Comprehensive Loss

3

 

 

Condensed Consolidated Statements of Changes in Stockholders’ Equity

4

 

 

Condensed Consolidated Statements of Cash Flows

6

 

 

Notes to Condensed Consolidated Financial Statements

7

 

Item 2.

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

23

 

 

 

 

 

Item 3.

Quantitative and Qualitative Disclosures About Market Risk

40

 

 

 

 

 

Item 4.

Controls and Procedures

41

 

 

 

 

PART II – OTHER INFORMATION

 

Item 1.

Legal Proceedings

43

 

Item 1A.

Risk Factors

43

 

Item 2.

Unregistered Sales of Equity Securities and Use of Proceeds

44

 

Item 3.

Defaults Upon Senior Securities

45

 

Item 4.

Mine Safety Disclosures

45

 

Item 5.

Other Information

45

 

Item 6.

Exhibits

46

SIGNATURE

47

 

 

 


 

FORWARD-LOOKING STATEMENTS

This Quarterly Report on Form 10-Q ("Quarterly Report") contains forward-looking statements. All statements other than statements of historical or current facts contained in this Quarterly Report may be forward-looking statements. Statements regarding our future results of operations and financial position, business strategy and plans and objectives of management for future operations, including, among others, liquidity, growth and profitability strategies and factors and trends affecting our business are forward-looking statements. Forward-looking statements can be identified in some cases by the use of words such as “believe,” “can,” “could,” “potential,” “plan,” “predict,” “goals,” “seek,” “should,” “may,” “may have,” “would,” “estimate,” “continue,” “anticipate,” “intend,” “expect,” the negative of these words, other similar expressions or by discussions of strategy, plans or intentions.

The forward-looking statements in this Quarterly Report are only predictions. We have based these forward-looking statements largely on our current expectations and projections about future events and financial trends that we believe may affect our business, financial condition and results of operations. Forward-looking statements involve known and unknown risks, uncertainties, and other important factors that may cause our actual results, performance or achievements, or industry results, to be materially different from any future results, performance or achievements expressed or implied by the forward-looking statements. We believe that these factors include, but are not limited to, the factors set forth under Part II, Item 1A. "Risk Factors" of this Quarterly Report, and more comprehensively in Part I, Item 1A "Risk Factors" included in our Annual Report on Form 10-K for the year ended December 31, 2023. Because forward-looking statements are inherently subject to risks and uncertainties, some of which cannot be predicted or quantified, you should not rely on these forward-looking statements as predictions of future events. The events and circumstances reflected in our forward-looking statements may not be achieved or occur, and actual results could differ materially from those projected in the forward-looking statements.

In addition, statements that “we believe” and similar statements reflect our beliefs and opinions on the relevant subject. These statements are based upon information available to us as of the date of this Quarterly Report, and while we believe such information forms a reasonable basis for such statements, such information may be limited or incomplete, and our statements should not be read to indicate that we have conducted an exhaustive inquiry into, or review of, all potentially available relevant information. These statements are inherently uncertain, and investors are cautioned not to unduly rely upon these statements.

You should read this Quarterly Report with the understanding that our actual future results may be materially different from what we expect. All forward-looking statements attributable to us or persons acting on our behalf are expressly qualified in their entirety by these cautionary statements.

These forward-looking statements speak only as of the date of this Quarterly Report. Except as required by applicable law, we do not plan to publicly update or revise any forward-looking statements contained in this Quarterly Report, whether as a result of any new information, future events or otherwise.

1


 

ITEM 1. FINANCIAL STATEMENTS

 

FTC Solar, Inc.

Condensed Consolidated Balance Sheets

(unaudited)

(in thousands, except shares and per share data)

 

September 30, 2024

 

 

December 31, 2023

 

ASSETS

 

 

 

 

 

 

Current assets

 

 

 

 

 

 

Cash and cash equivalents

 

$

8,255

 

 

$

25,235

 

Accounts receivable, net

 

 

37,345

 

 

 

65,279

 

Inventories

 

 

15,124

 

 

 

3,905

 

Prepaid and other current assets

 

 

15,502

 

 

 

14,089

 

Total current assets

 

 

76,226

 

 

 

108,508

 

Operating lease right-of-use assets

 

 

1,720

 

 

 

1,819

 

Property and equipment, net

 

 

2,409

 

 

 

1,823

 

Intangible assets, net

 

 

137

 

 

 

542

 

Goodwill

 

 

7,421

 

 

 

7,353

 

Equity method investment

 

 

1,273

 

 

 

240

 

Other assets

 

 

2,507

 

 

 

2,785

 

Total assets

 

$

91,693

 

 

$

123,070

 

LIABILITIES AND STOCKHOLDERS' EQUITY

 

 

 

 

 

 

Current liabilities

 

 

 

 

 

 

Accounts payable

 

$

18,742

 

 

$

7,979

 

Accrued expenses

 

 

23,965

 

 

 

34,848

 

Income taxes payable

 

 

333

 

 

 

88

 

Deferred revenue

 

 

4,444

 

 

 

3,612

 

Other current liabilities

 

 

9,862

 

 

 

8,138

 

Total current liabilities

 

 

57,346

 

 

 

54,665

 

Operating lease liability, net of current portion

 

 

883

 

 

 

1,124

 

Other non-current liabilities

 

 

3,056

 

 

 

4,810

 

Total liabilities

 

 

61,285

 

 

 

60,599

 

Commitments and contingencies (Note 14)

 

 

 

 

 

 

Stockholders’ equity

 

 

 

 

 

 

Preferred stock par value of $0.0001 per share, 10,000,000 shares authorized; none issued as of September 30, 2024 and December 31, 2023

 

 

 

 

 

 

Common stock par value of $0.0001 per share, 850,000,000 shares authorized; 127,723,582 and 125,445,325 shares issued and outstanding as of September 30, 2024 and December 31, 2023

 

 

13

 

 

 

13

 

Treasury stock, at cost; 10,762,566 shares as of September 30, 2024 and December 31, 2023

 

 

 

 

 

 

Additional paid-in capital

 

 

366,132

 

 

 

361,886

 

Accumulated other comprehensive loss

 

 

(231

)

 

 

(293

)

Accumulated deficit

 

 

(335,506

)

 

 

(299,135

)

Total stockholders’ equity

 

 

30,408

 

 

 

62,471

 

Total liabilities and stockholders’ equity

 

$

91,693

 

 

$

123,070

 

 

The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.

 

2


 

FTC Solar, Inc.

Condensed Consolidated Statements of Comprehensive Loss

(unaudited)

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands, except shares and per share data)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

$

7,411

 

 

$

27,274

 

 

$

27,092

 

 

$

80,927

 

Service

 

 

2,725

 

 

 

3,274

 

 

 

7,061

 

 

 

22,874

 

Total revenue

 

 

10,136

 

 

 

30,548

 

 

 

34,153

 

 

 

103,801

 

Cost of revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

 

11,798

 

 

 

22,775

 

 

 

34,632

 

 

 

73,694

 

Service

 

 

2,644

 

 

 

4,394

 

 

 

8,278

 

 

 

22,492

 

Total cost of revenue

 

 

14,442

 

 

 

27,169

 

 

 

42,910

 

 

 

96,186

 

Gross profit (loss)

 

 

(4,306

)

 

 

3,379

 

 

 

(8,757

)

 

 

7,615

 

Operating expenses

 

 

 

 

 

 

 

 

 

 

 

 

Research and development

 

 

1,467

 

 

 

1,921

 

 

 

4,441

 

 

 

5,716

 

Selling and marketing

 

 

2,406

 

 

 

6,324

 

 

 

6,830

 

 

 

9,887

 

General and administrative

 

 

6,797

 

 

 

11,411

 

 

 

19,374

 

 

 

31,053

 

Total operating expenses

 

 

10,670

 

 

 

19,656

 

 

 

30,645

 

 

 

46,656

 

Loss from operations

 

 

(14,976

)

 

 

(16,277

)

 

 

(39,402

)

 

 

(39,041

)

Interest income (expense), net

 

 

24

 

 

 

(108

)

 

 

(111

)

 

 

(194

)

Gain from disposal of investment in unconsolidated subsidiary

 

 

 

 

 

 

 

 

4,085

 

 

 

898

 

Other income (expense), net

 

 

93

 

 

 

(50

)

 

 

122

 

 

 

(265

)

Loss from unconsolidated subsidiary

 

 

(256

)

 

 

(336

)

 

 

(767

)

 

 

(336

)

Loss before income taxes

 

 

(15,115

)

 

 

(16,771

)

 

 

(36,073

)

 

 

(38,938

)

Provision for income taxes

 

 

(244

)

 

 

(166

)

 

 

(298

)

 

 

(175

)

Net loss

 

 

(15,359

)

 

 

(16,937

)

 

 

(36,371

)

 

 

(39,113

)

Other comprehensive income (loss):

 

 

 

 

 

 

 

 

 

 

 

 

Foreign currency translation adjustments

 

 

207

 

 

 

(38

)

 

 

62

 

 

 

(451

)

Comprehensive loss

 

$

(15,152

)

 

$

(16,975

)

 

$

(36,309

)

 

$

(39,564

)

Net loss per share:

 

 

 

 

 

 

 

 

 

 

 

 

Basic and diluted

 

$

(0.12

)

 

$

(0.14

)

 

$

(0.29

)

 

$

(0.35

)

Weighted-average common shares outstanding:

 

 

 

 

 

 

 

 

 

 

 

 

Basic and diluted

 

 

127,380,292

 

 

 

119,793,821

 

 

 

126,234,997

 

 

 

112,794,562

 

 

The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.

 

3


 

FTC Solar, Inc.

Condensed Consolidated Statements of Changes in Stockholders’ Equity

(unaudited)

 

 

For the three and nine months ended September 30, 2024:

 

 

 

Preferred stock

 

 

Common stock

 

 

Treasury stock

 

 

 

 

 

 

 

 

 

 

 

 

 

(in thousands, except shares)

 

Shares

 

 

Amount

 

 

Shares

 

 

Amount

 

 

Shares

 

 

Amount

 

 

Additional
paid-In
capital

 

 

Accumulated other comprehensive loss

 

 

Accumulated deficit

 

 

Total
stockholders'
equity

 

Balance as of December 31, 2023

 

 

 

 

$

 

 

 

125,445,325

 

 

$

13

 

 

 

10,762,566

 

 

$

 

 

$

361,886

 

 

$

(293

)

 

$

(299,135

)

 

$

62,471

 

Shares issued during the period for vested restricted stock awards

 

 

 

 

 

 

 

 

506,928

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,639

 

 

 

 

 

 

 

 

 

1,639

 

Net loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(8,771

)

 

 

(8,771

)

Other comprehensive loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(181

)

 

 

 

 

 

(181

)

Balance as of March 31, 2024

 

 

 

 

 

 

 

 

125,952,253

 

 

 

13

 

 

 

10,762,566

 

 

 

 

 

 

363,525

 

 

 

(474

)

 

 

(307,906

)

 

 

55,158

 

Shares issued during the period for vested restricted stock awards

 

 

 

 

 

 

 

 

1,009,094

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock upon exercise of stock options

 

 

 

 

 

 

 

 

41,233

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

3

 

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,285

 

 

 

 

 

 

 

 

 

1,285

 

Net loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(12,241

)

 

 

(12,241

)

Other comprehensive gain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

36

 

 

 

 

 

 

36

 

Balance as of June 30, 2024

 

 

 

 

 

 

 

 

127,002,580

 

 

 

13

 

 

 

10,762,566

 

 

 

 

 

 

364,813

 

 

 

(438

)

 

 

(320,147

)

 

 

44,241

 

Shares issued during the period for vested restricted stock awards

 

 

 

 

 

 

 

 

718,424

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock upon exercise of stock options

 

 

 

 

 

 

 

 

2,578

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,319

 

 

 

 

 

 

 

 

 

1,319

 

Net loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(15,359

)

 

 

(15,359

)

Other comprehensive gain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

207

 

 

 

 

 

 

207

 

Balance as of September 30, 2024

 

 

 

 

$

 

 

 

127,723,582

 

 

$

13

 

 

 

10,762,566

 

 

$

 

 

$

366,132

 

 

$

(231

)

 

$

(335,506

)

 

$

30,408

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.

 

4


 

FTC Solar, Inc.

Condensed Consolidated Statements of Changes in Stockholders’ Equity (Continued)

(unaudited)

 

 

For the three and nine months ended September 30, 2023:

 

 

 

Preferred stock

 

 

Common stock

 

 

Treasury stock

 

 

 

 

 

 

 

 

 

 

 

 

 

(in thousands, except shares)

 

Shares

 

 

Amount

 

 

Shares

 

 

Amount

 

 

Shares

 

 

Amount

 

 

Additional
paid-In
capital

 

 

Accumulated
other
comprehensive
loss

 

 

Accumulated
deficit

 

 

Total
stockholders'
equity

 

Balance as of December 31, 2022

 

 

 

 

$

 

 

 

105,032,588

 

 

$

11

 

 

 

10,762,566

 

 

$

 

 

$

315,345

 

 

$

(61

)

 

$

(248,845

)

 

$

66,450

 

Shares issued during the period for vested restricted stock awards

 

 

 

 

 

 

 

 

1,498,987

 

 

 

 

 

 

 

 

 

 

 

 

2,775

 

 

 

 

 

 

 

 

 

2,775

 

Issuance of common stock upon exercise of stock options

 

 

 

 

 

 

 

 

265,125

 

 

 

 

 

 

 

 

 

 

 

 

51

 

 

 

 

 

 

 

 

 

51

 

Shares issued for legal settlement

 

 

 

 

 

 

 

 

797,396

 

 

 

 

 

 

 

 

 

 

 

 

2,000

 

 

 

 

 

 

 

 

 

2,000

 

Sale of shares

 

 

 

 

 

 

 

 

2,683,000

 

 

 

 

 

 

 

 

 

 

 

 

6,292

 

 

 

 

 

 

 

 

 

6,292

 

Stock offering costs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(32

)

 

 

 

 

 

 

 

 

(32

)

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,472

 

 

 

 

 

 

 

 

 

2,472

 

Net loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(11,762

)

 

 

(11,762

)

Other comprehensive loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(5

)

 

 

 

 

 

(5

)

Balance as of March 31, 2023

 

 

 

 

 

 

 

 

110,277,096

 

 

 

11

 

 

 

10,762,566

 

 

 

 

 

 

328,903

 

 

 

(66

)

 

 

(260,607

)

 

 

68,241

 

Shares issued during the period for vested restricted stock awards

 

 

 

 

 

 

 

 

1,213,037

 

 

 

 

 

 

 

 

 

 

 

 

2,085

 

 

 

 

 

 

 

 

 

2,085

 

Issuance of common stock upon exercise of stock options

 

 

 

 

 

 

 

 

39,087

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Sale of shares

 

 

 

 

 

 

 

 

6,589,000

 

 

 

1

 

 

 

 

 

 

 

 

 

17,347

 

 

 

 

 

 

 

 

 

17,348

 

Stock offering costs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(127

)

 

 

 

 

 

 

 

 

(127

)

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,669

 

 

 

 

 

 

 

 

 

2,669

 

Net loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(10,414

)

 

 

(10,414

)

Other comprehensive loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(408

)

 

 

 

 

 

(408

)

Balance as of June 30, 2023

 

 

 

 

 

 

 

 

118,118,220

 

 

 

12

 

 

 

10,762,566

 

 

 

 

 

 

350,877

 

 

 

(474

)

 

 

(271,021

)

 

 

79,394

 

Shares issued during the period for vested restricted stock awards

 

 

 

 

 

 

 

 

595,097

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Issuance of common stock upon exercise of stock options

 

 

 

 

 

 

 

 

403,749

 

 

 

 

 

 

 

 

 

 

 

 

170

 

 

 

 

 

 

 

 

 

170

 

Sale of shares

 

 

 

 

 

 

 

 

6,149,885

 

 

 

 

 

 

 

 

 

 

 

 

10,367

 

 

 

 

 

 

 

 

 

10,367

 

Stock offering costs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(74

)

 

 

 

 

 

 

 

 

(74

)

Share repurchase and retirement

 

 

 

 

 

 

 

 

(312,500

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,192

 

 

 

 

 

 

 

 

 

1,192

 

Net loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(16,937

)

 

 

(16,937

)

Other comprehensive loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(38

)

 

 

 

 

 

(38

)

Balance as of September 30, 2023

 

 

 

 

$

 

 

 

124,954,451

 

 

$

12

 

 

 

10,762,566

 

 

$

 

 

$

362,532

 

 

$

(512

)

 

$

(287,958

)

 

$

74,074

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.

 

5


 

FTC Solar, Inc.

Condensed Consolidated Statements of Cash Flows

(unaudited)

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

Cash flows from operating activities

 

 

 

 

 

 

Net loss

 

$

(36,371

)

 

$

(39,113

)

Adjustments to reconcile net loss to cash used in operating activities:

 

 

 

 

 

 

Stock-based compensation

 

 

4,243

 

 

 

9,044

 

Depreciation and amortization

 

 

1,229

 

 

 

1,004

 

Gain from sale of property and equipment

 

 

 

 

 

(2

)

Amortization of debt issue costs

 

 

236

 

 

 

532

 

Provision for obsolete and slow-moving inventory

 

 

177

 

 

 

1,261

 

Loss from unconsolidated subsidiary

 

 

767

 

 

 

336

 

Gain from disposal of investment in unconsolidated subsidiary

 

 

(4,085

)

 

 

(898

)

Warranty and remediation provisions

 

 

4,735

 

 

 

3,938

 

Warranty recoverable from manufacturer

 

 

388

 

 

 

45

 

Credit loss provisions

 

 

1,330

 

 

 

4,302

 

Deferred income taxes

 

 

220

 

 

 

221

 

Lease expense and other

 

 

861

 

 

 

748

 

Impact on cash from changes in operating assets and liabilities:

 

 

 

 

 

 

Accounts receivable

 

 

26,604

 

 

 

(26,625

)

Inventories

 

 

(11,396

)

 

 

9,033

 

Prepaid and other current assets

 

 

(1,403

)

 

 

(3,122

)

Other assets

 

 

(514

)

 

 

67

 

Accounts payable

 

 

10,622

 

 

 

(6,160

)

Accruals and other current liabilities

 

 

(13,502

)

 

 

5,491

 

Deferred revenue

 

 

832

 

 

 

(138

)

Other non-current liabilities

 

 

(2,013

)

 

 

(5,740

)

Lease payments and other, net

 

 

(968

)

 

 

(607

)

Net cash used in operations

 

 

(18,008

)

 

 

(46,383

)

Cash flows from investing activities:

 

 

 

 

 

 

Purchases of property and equipment

 

 

(1,355

)

 

 

(460

)

Equity method investment in Alpha Steel

 

 

(1,800

)

 

 

(900

)

Proceeds from disposal of investment in unconsolidated subsidiary

 

 

4,085

 

 

 

898

 

Net cash provided by (used in) investing activities

 

 

930

 

 

 

(462

)

Cash flows from financing activities:

 

 

 

 

 

 

Sale of common stock

 

 

 

 

 

34,007

 

Stock offering costs paid

 

 

 

 

 

(95

)

Proceeds from stock option exercises

 

 

3

 

 

 

221

 

Net cash provided by financing activities

 

 

3

 

 

 

34,133

 

Effect of exchange rate changes on cash and cash equivalents

 

 

95

 

 

 

(153

)

Decrease in cash and cash equivalents

 

 

(16,980

)

 

 

(12,865

)

Cash and cash equivalents at beginning of period

 

 

25,235

 

 

 

44,385

 

Cash and cash equivalents at end of period

 

$

8,255

 

 

$

31,520

 

 

 

 

 

 

 

Supplemental disclosures of cash flow information:

 

 

 

 

 

 

Purchases of property and equipment included in ending accounts payable and accruals

 

$

225

 

 

$

146

 

Stock issued for accrued legal settlement

 

$

 

 

$

2,000

 

Right-of-use asset and lease liability recognition for new leases

 

$

500

 

 

$

1,417

 

Cash paid during the period for interest

 

$

211

 

 

$

436

 

Cash paid during the period for taxes, net of refunds

 

$

113

 

 

$

331

 

 

The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.

 

6


 

FTC Solar, Inc.

Notes to Condensed Consolidated Financial Statements

(unaudited)

1. Description of business

FTC Solar, Inc. (the “Company”, “we”, “our”, or “us”) was founded in 2017 and is incorporated in the state of Delaware. In April 2021, we completed an initial public offering ("IPO"), and our common stock currently trades on the Nasdaq Capital Market under the symbol “FTCI”.

We are a global provider of solar tracker systems, supported by proprietary software and value-added engineering services. Solar tracker systems move solar panels throughout the day to maintain an optimal orientation relative to the sun, thereby increasing the amount of solar energy produced at a solar installation. Our original two-panel in-portrait solar tracker system is currently marketed under the Voyager brand name (“Voyager”) and our one module-in-portrait ("1P") solar tracker system, which became certified in 2023, is marketed under the Pioneer brand name ("Pioneer"). We also have a mounting solution to support the installation and use of U.S.-manufactured thin-film modules by project owners. Our primary software offerings include SUNPATH which is intended to help customers optimize solar tracking for increased energy production, our SUNOPS real-time operations management platform and our web-based ATLAS portfolio management software. In addition, we have a team of renewable energy professionals available to assist our U.S. and worldwide clients in site layout, structural design, pile testing and other needs across the solar project development and construction cycle. The Company is headquartered in Austin, Texas, and has international subsidiaries in Australia, China, India, South Africa and Spain.

We are an emerging growth company, as defined in the Jumpstart Our Business Startups (JOBS) Act. Under the JOBS Act, we elected to use the allowed extended transition period to delay adopting new or revised accounting standards until such time as those standards apply to private companies.

 

2. Summary of significant accounting policies

Basis of presentation and principles of consolidation

The accompanying unaudited condensed consolidated financial statements include the results of the Company and its wholly owned subsidiaries and have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial statements and pursuant to Form 10-Q and Article 10 of Regulation S-X. In the opinion of management, all adjustments of a normal recurring nature have been made that are considered necessary for a fair statement of our financial position as of September 30, 2024, and December 31, 2023, our results of operations for the three and nine months ended September 30, 2024 and 2023, and our cash flows for the nine months ended September 30, 2024 and 2023. The condensed consolidated balance sheet as of December 31, 2023 has been derived from the Company’s audited consolidated financial statements but does not include all disclosures required by accounting principles generally accepted in the United States of America. Operating results for the three and nine months ended September 30, 2024 are not necessarily indicative of the results that may be expected for the year ending December 31, 2024. Intercompany balances and transactions have been eliminated in consolidation.

Certain information and disclosures normally included in the notes to annual financial statements prepared in accordance with U.S. GAAP have been omitted from these interim financial statements pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Therefore, these unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 (our "2023 Annual Report").

We currently operate in one business segment, the manufacturing and servicing of solar tracker systems.

Liquidity

We have incurred cumulative losses since inception and have a history of cash outflows from operations. As of September 30, 2024, we had $8.3 million of cash on hand, $18.9 million of working capital and approximately $64.9 million of remaining capacity available for future sales of our common stock under our ATM program as defined and described further in Note 4, "ATM program" below. There can be no assurance that we will be able to sell any additional shares of our common stock under the ATM program and no assurance regarding

 

7


 

the price at which we will be able to sell such shares, and any sales of our common stock under the ATM program may be at prices that result in additional dilution to our existing stockholders.

On December 22, 2023, we received notification from The Nasdaq Stock Market LLC (“Nasdaq”) that we were not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5450(a)(1), because the closing bid price of the Company’s common stock was below $1.00 per share for 30 consecutive business days. In accordance with Nasdaq Listing Rule 5810(c)(3)(A), we were initially given a period of 180 calendar days from the date of notification, or until June 19, 2024, to regain compliance with the minimum bid price requirement, which was not achieved. Effective May 31, 2024, trading in our common stock transferred from the Nasdaq Global Market to the Nasdaq Capital Market. On June 21, 2024, we received notification from Nasdaq that we were approved for an additional 180-day period, or until December 17, 2024, to cure the bid price deficiency in accordance with Nasdaq Listing Rule 5810(c)(3)(A). In order to achieve compliance with the Nasdaq requirements for continued listing, on November 8, 2024, our stockholders approved an amendment to our Amended and Restated Certificate of Incorporation to effect a reverse stock split at a ratio ranging from 1-for-5 to 1-for 25, with the exact ratio to be determined by our Board of Directors. At this time, our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days, Nasdaq will provide written notification that we have achieved compliance with this minimum bid price requirement. If we fail to regain compliance with the minimum bid price requirement during this second 180-day period, then Nasdaq will notify us that our common stock is subject to delisting.

Effective April 30, 2024, our Senior Secured Revolving Credit Facility ("Credit Facility) expired unused and has not been replaced as of September 30, 2024. As described further in Note 18, "Subsequent events" below, we signed a binding term sheet on November 8, 2024, with an institutional investor, for the issuance of $15 million in long-term senior secured promissory notes, along with warrants to purchase 17.5 million shares of our common stock at an exercise price of $0.01 per share. Closing on the transaction is expected on or before November 30, 2024.

At September 30, 2024, we had a contractual obligation that could require us to make additional capital contributions of up to $0.8 million to Alpha Steel, as well as make a minimum level of purchases from Alpha Steel, as described further in Note 3, "Equity method investment" below. In the event we were to fail to meet our minimum required purchase commitments during a specified period, including the current period from January 1, 2024 to June 30, 2025, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $4.0 million in the aggregate.

In addition, we have made efforts during 2024 to enhance and strengthen our management leadership team. In August 2024, we hired Yann Brandt as our new Chief Executive Officer and, prior to that, we named Tamara Mullings, a former member of our Board of Directors, as our Senior Vice President, North America Sales and Alberto Echeverria, a former Chief Executive Officer and Executive Member of the Board of STI Norland, as our Senior Vice President, International Sales.

In accordance with Accounting Standards Codification ("ASC") 205-40, Going Concern, we have evaluated whether there are conditions and events, considered in the aggregate, which raise substantial doubt about our ability to continue as a going concern within one year after the date our condensed consolidated financial statements are issued.

Management plans to address the liquidity needs of the Company by (i) executing the aforementioned $15 million issuance of long-term senior secured notes, (ii) utilizing receipt of additional contingent earnout payments from our investment in Dimension Energy LLC that we sold in 2021, (iii) implementing additional cost savings steps, which could impact the level of services currently provided by third parties and our existing headcount, and (iv) utilizing capacity available for future sales of our common stock under the ATM program. We believe execution of these plans will allow us to fund our operations for at least one year from the date of issuance of our condensed consolidated financial statements.

The successful execution of these plans is subject to various risks and uncertainties. These include, but are not limited to, market conditions, the Company's ability to achieve projected cost savings and revenue targets and access to financing on favorable terms. There can be no assurance that these plans will be realized as anticipated and actual results may differ materially from those projected.

Use of estimates

Preparation of condensed consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements, and the reported revenue and expenses during the period. Estimates are used for calculating the measure of progress

 

8


 

of our solar tracker projects and deriving the standalone selling prices of the individual performance obligations when determining amounts to recognize for revenue, estimating allowances for credit losses and slow-moving and obsolete inventory, determining useful lives of long-lived assets and the estimated fair value of those assets for impairment assessments, and estimating the fair value of investments, stock compensation awards, warranty liabilities and federal and state taxes, including tax valuation allowances, as well as other contingencies. We base our estimates on historical experience and anticipated results, trends, and various other assumptions that we believe are reasonable under the circumstances, including assumptions as to future events. Actual results could differ from those estimates due to risks and uncertainties.

Concentration of credit risk

Financial instruments that potentially subject the Company to concentrations of credit risk are primarily cash and accounts receivable.

We regularly maintain cash balances with various financial institutions that exceed federally insured amounts, but we have experienced no losses associated with these amounts to date. We also took action in early 2023 to reallocate cash balances between different financial institutions based on our assessment as to the financial health of certain institutions.

We extend credit to customers in the normal course of business, often without requiring collateral. We also perform credit analyses and monitor the financial health of our customers to reduce credit risk.

The Company’s accounts receivables are derived from revenue earned from customers primarily located in the United States and Australia. For the periods included in this Quarterly Report, no company locations other than those in the United States accounted for more than 10% of our consolidated revenue. Most of our customers are project developers, solar asset owners and engineering, procurement and construction (“EPC”) contractors that design and build solar energy projects. We typically rely on a small number of customers that account for a large portion of our revenue each period and our outstanding receivables at each period end.

Cash and cash equivalents

We consider all highly liquid investments purchased with an original maturity of three months or less to be cash equivalents. Certain of our cash equivalents include deposits in money market funds that invest primarily in short-term securities issued or guaranteed by the U.S. government or its agencies or instrumentalities and contain no restrictions on immediate redemption. These deposits totaled $1.8 million at September 30, 2024 and $13.9 million at December 31, 2023. Interest earned on cash equivalents is included in interest income, which is reported net of interest expense in our condensed consolidated statements of comprehensive loss.

Accounts receivable, net

Trade receivables are recorded at invoiced amounts, net of allowances for credit losses, and do not bear interest. We generally do not require collateral from our customers; however, in certain circumstances, we may require letters of credit, other collateral, additional guarantees or advance payments.

The allowance for credit losses is based on the lifetime expected credit loss of our customer accounts. To assess the lifetime expected credit loss, we utilize a loss rate method that takes into consideration historical experience and certain other factors, as appropriate, such as credit quality and current economic or other conditions that may affect a customer's ability to pay. Provisions for credit losses are included as a component of our selling and marketing expenses.

Receivables arising from revenue recognized in excess of billings represents our unconditional right to consideration before customers are invoiced due to the level of progress obtained as of period end on our contracts to procure and deliver tracker systems and related equipment. Further information may be found below in our revenue recognition policy.

Inventories

Inventories are stated at the lower of cost or net realizable value, with costs computed on a first-in, first-out basis. The Company periodically reviews its inventories for excess and obsolete items and adjusts carrying costs to estimated net realizable values when they are determined to be less than cost.

 

9


 

Impairment

We review our long-lived assets that are held for use for impairment whenever events or changes in circumstances indicate that the carrying amount of the asset may not be recoverable or that its useful life may be shorter than previously expected. If such impairment indicators are present or other factors exist that indicate the carrying amount of the asset may not be recoverable, we determine whether an impairment has occurred through the use of an undiscounted cash flow analysis of the asset at the lowest level for which identifiable cash flows exist. If an impairment has occurred, we recognize a loss for the difference between the carrying amount and the fair value of the asset, which in most cases is estimated based upon Level 3 unobservable inputs. If the asset is determined to have a remaining useful life shorter than previously expected, an adjustment for the shorter remaining life will be made for purposes of recognizing future depreciation expense. Assets are classified as held for sale when we have a plan, approved by the appropriate levels of management, for disposal of such assets, as well as other considerations, and those assets are stated at the lower of carrying value or estimated fair value less estimated costs to sell.

Intangible assets, net

Intangible assets are recorded at fair value when acquired in connection with a business combination and consist of developed technology in the form of software tools, licenses, and intellectual property, which are amortized over the period of their estimated useful lives, generally 2.5 - 3.0 years, using the straight-line method. Costs incurred to renew or extend the term of a recognized intangible asset, if any, are expensed as incurred. We evaluate intangible assets for impairment using the method described above under "Impairment".

Goodwill

We recognize goodwill as the excess of the purchase price over the estimated fair value of the identified assets and liabilities acquired in a business combination accounted for using the acquisition method. Goodwill is not amortized but is subject to a periodic assessment for impairment at least annually, or whenever events and circumstances indicate an impairment may exist. Our assessments may include qualitative factors such as current or expected industry and market conditions, our overall financial performance, share price trends, market capitalization and other company-specific events.

We operate in one segment, being the consolidated entity, which we have also determined is the reporting unit for goodwill impairment.

No impairment of goodwill was recognized as of September 30, 2024 or 2023.

Equity method investment

We use the equity method of accounting for investments in which we have the ability to exercise significant influence, but not control, over operating and financial policies of the investee. Our proportionate share of the net income or loss of these investees is included in our condensed consolidated statements of comprehensive loss. Judgment regarding the level of influence over each equity method investment includes considering key factors such as our ownership interest, legal form of the investee, representation on the board of directors or managers, participation in policy-making decisions and material intra-entity transactions.

We account for distributions received from equity method investees under the “nature of the distribution” approach based on the nature of the activity or activities of the investee that generated the distribution as either a return on investment (classified as cash inflows from operating activities) or a return of investment (classified as cash inflows from investing activities).

We evaluate equity method investments for impairment whenever events or changes in circumstances indicate that the carrying amount of the investment might not be recoverable. Factors considered by the Company when reviewing an equity method investment for impairment include the length of time and the extent to which the fair value of the equity method investment has been less than its cost, the investee’s financial condition and near-term prospects and the intent and ability to hold the investment for a period of time sufficient to allow for anticipated recovery. An impairment that is other-than temporary is recognized in the period identified.

We made an accounting policy election that, upon the sale of our equity method investments, we will recognize contractual contingent gains arising from earnout provisions and project escrow releases when such amounts are realizable in periods subsequent to the disposal date.

 

10


 

Warranty

Typically, the sale of solar tracker projects includes parts warranties to customers as part of the overall price of the product. We provide standard assurance type warranties for our products for periods generally ranging from five to ten years. We also accrue for costs relating to remediation efforts involving product issues we believe require correction. We record a provision for estimated warranty and remediation expenses in cost of sales, net of amounts recoverable from manufacturers under their warranty obligations to us. When historical claims information relating to our equipment is not sufficient, we will base our estimates on industry studies involving the nature and frequency of product failure rates for similar parts used by our competitors, as well as other related businesses. We do not maintain general or unspecified reserves; all warranty reserves are related to specific projects. All actual or estimated material costs incurred for warranty or remediation services in subsequent periods are charged to those established reserves.

While we periodically monitor our warranty activities and claims, if actual costs incurred were to be different from our estimates, we would recognize adjustments to our warranty reserves in the period in which those differences arise or are identified.

Stock-based compensation

We recognize compensation expense for all share-based payment awards made, including stock options and restricted stock units ("RSUs"), based on the estimated fair value of the award on the grant date. We calculate the fair value of stock options using the Black-Scholes option pricing model for awards with service-based vesting or through use of a lattice model or a Monte Carlo simulation for stock option and RSU awards with market conditions. The fair value of RSUs with service or performance-based vesting is based on the estimated fair value of the Company's common stock on the date of grant. We consider the closing price of our stock, as reported on the Nasdaq Capital Market, to be the fair value of our stock on the grant date.

Forfeitures are accounted for as they occur. For service-based awards, stock-based compensation is recognized using the straight-line attribution approach over the requisite service period. For performance-based awards, stock-based compensation is recognized based on graded vesting over the requisite service period when the performance condition is probable of being achieved. Stock compensation expense for market-based awards is recognized over the derived service period determined in the valuation model, inclusive of any vesting conditions.

Revenue recognition

Product revenue is derived from the sale of solar tracker systems and customized components for those systems, individual part sales for certain specific transactions and the sale of term-based software licenses. Term-based licensed software is deployed on the customers’ own servers and has significant standalone functionality.

Service revenue includes revenue from shipping and handling services, engineering consulting and pile testing services, our subscription-based enterprise licensing model and maintenance and support services in connection with the term-based software licenses. Our subscription-based enterprise licensing model typically has contract terms ranging from one to two years and consists of subscription fees from the licensing of subscription services. Our hosted on-demand service arrangements do not provide customers with the right to take possession of the software supporting the hosted services. Support services include ongoing security updates, upgrades, bug fixes, and maintenance.

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

Identify the contract with a customer: A contract with a customer exists when (i) the Company enters into an enforceable contract with a customer that defines each party’s rights regarding the products and services to be transferred and identifies the payment terms related to these products and services, (ii) the contract has commercial substance, and (iii) the Company determines that collection of substantially all consideration for products and services that are transferred is probable based on the customer’s intent and ability to pay the promised consideration. In assessing the recognition of revenue, we also evaluate whether two or more contracts should be combined and accounted for as one contract and if the combined or single contract should be accounted for as multiple performance obligations which could change the amount of revenue and profit (loss) recorded in a period. Change orders may include changes in specifications or design, manner of

 

11


 

performance, equipment, materials, scope of work, and/or the period of completion of the project. We analyze change orders to determine if they should be accounted for as a modification to an existing contract or a new stand-alone contract.

Contracts we enter into with our customers for sale of solar tracker systems are generally under two different types of arrangements: (1) purchase agreements and equipment supply contracts (“Purchase Agreements”), and (2) sale of individual parts for those systems.

Change orders from our customers are generally modifications to existing contracts and are included in the total estimated contract revenue when it is probable that the change order will result in additional value that can be reliably estimated and realized.

Identify the performance obligations in the contract: We enter into contracts that can include various combinations of products and services, which are either capable of being distinct and accounted for as separate performance obligations or as one performance obligation since the majority of tasks and services are part of a single project or capability. However, determining whether products or services are considered distinct performance obligations that should be accounted for separately versus together may sometimes require significant judgment.

Our Purchase Agreements typically include two performance obligations: 1) our solar tracker systems or customized components of those systems, and 2) shipping and handling services. The deliverables included as part of our solar tracker systems are predominantly accounted for as one performance obligation, as these deliverables are part of a combined promise to deliver a project.

The revenue for shipping and handling services will be recognized over time based on progress in meeting shipping terms of the arrangements, as this faithfully depicts the Company’s performance in transferring control. Revenue for stand-alone engineering consulting and pile testing services is recognized at a point in time upon completion of the services performed.

Sales of individual parts of our solar tracker systems for certain specific transactions include multiple performance obligations consisting of individual parts of those systems. Revenue is recognized for parts sales at a point in time when the obligations under the terms of the contract with our customer are satisfied. Generally, this occurs with the transfer of control of the asset, which is in line with shipping terms.

Determine the transaction price: The transaction price is determined based on the consideration to which we will be entitled in exchange for transferring services to the customer. Such amounts are typically stated in the customer contract, and to the extent that we identify variable consideration, we will estimate the variable consideration at the onset of the arrangement as long as it is probable that a significant reversal in the amount of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is subsequently resolved. The majority of our contracts do not contain variable consideration provisions as a continuation of the original contract. None of our contracts contain a significant financing component. Taxes collected from customers and remitted to governmental authorities are not included in revenue.

Allocate the transaction price to performance obligations in the contract: Once we have determined the transaction price, we allocate the total transaction price to each performance obligation in a manner depicting the amount of consideration to which we expect to be entitled in exchange for transferring the good(s) or service(s) to the customer. We allocate the transaction price to each performance obligation identified in the contract on a relative standalone selling price basis.

We use the expected cost-plus margin approach based on hardware, labor, and related overhead cost to estimate the standalone selling price of our solar tracker systems, customized components of those systems, and individual parts for certain specific transactions. We also use the expected cost-plus margin approach based on expected third-party shipping and transportation costs to estimate the standalone selling price of our shipping, handling and logistics performance obligations. We use the adjusted market assessment approach for all other performance obligations.

Recognize revenue when or as the Company satisfies a performance obligation: For each performance obligation identified, we determine at contract inception whether we satisfy the performance obligation over time or at a point in time. The performance obligations in the contracts for our solar tracker systems and customized components of those systems are satisfied over time as work progresses, utilizing an input measure of progress determined by cost-to-cost measures on these projects as this faithfully depicts our performance in transferring control. Additionally, our performance does not create an asset with an alternative use, due to the highly customized nature of the product, and we have an enforceable right to payment for performance completed to date. Our performance obligations for individual part sales for certain specific transactions are recognized at a point in time as and when control transfers based on the terms for the contract. Our performance obligations for engineering consulting and pile testing services are recognized at a point in time upon completion of the

 

12


 

services. Our performance obligations for term-based software licenses are recognized at a point in time as and when control transfers, either upon delivery to the customer or the software license start date, whichever is later. Our performance obligations for shipping and handling services are satisfied over time as the services are delivered over the term of the contract. We recognize revenue for subscription and other services on a straight-line basis over the contract period. With regard to support revenue, a time-elapsed method is used to measure progress because we transfer control evenly over the contractual period. Accordingly, the fixed consideration related to support revenue is generally recognized on a straight-line basis over the contract term.

Contract assets and liabilities: The timing of revenue recognition, billing, and cash collection results in the recognition of accounts receivable, unbilled receivables for revenue recognized in excess of billings, and deferred revenue in the condensed consolidated balance sheets. We have elected to use the practical expedient of expensing incremental costs of obtaining a contract for our contracts of less than one year in duration. We may receive advances or deposits from our customers before revenue is recognized, resulting in contract liabilities, which are reflected as “deferred revenue” in our condensed consolidated balance sheets. Customer deposits are short term as the related performance obligations are typically fulfilled within 12 months. Changes in deferred revenue relate to fluctuations in the timing of customer deposits and completion of performance obligations. Revenue recognized during the three and nine months ended September 30, 2024, from amounts included in deferred revenue at December 31, 2023, totaled $1.1 million and $3.6 million, respectively. Revenue recognized during the three and nine months ended September 30, 2023, from amounts included in deferred revenue at December 31, 2022, totaled $1.6 million and $10.9 million, respectively.

Cost of revenue consists primarily of costs related to raw materials, equipment manufacturing activities, freight and delivery, product warranty, remediation and personnel costs (salaries, bonuses, benefits, and stock-based compensation). Personnel costs in cost of revenue include both direct labor costs, as well as costs attributable to any individuals whose activities relate to the procurement, installment and delivery of the finished product and services. Cost of revenue owed but not yet paid is recorded as accrued cost of revenue in the accompanying condensed consolidated balance sheets. Deferred cost of revenue, a component of our prepaid and other current assets, results from the timing differences between the costs incurred in advance of the satisfaction of all revenue recognition criteria consistent with our revenue recognition policy.

Recent accounting and regulatory pronouncements not yet adopted

In November 2023, the Financial Accounting Standards Board ("FASB") issued ASU No. 2023-07 - Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures ("ASU 2023-07"), which will become effective for us for our year end 2024 financial reporting and our interim reporting beginning January 1, 2025. ASU 2023-07 requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis and will require interim disclosures about a reportable segment's profit or loss and assets that are currently required annually. As noted above, we operate in one segment. We are currently evaluating the impact of ASU 2023-07 on our existing disclosures. ASU 2023-07 will be applied retrospectively to all periods when presented in our consolidated financial statements for the year ending December 31, 2024.

In December 2023, the FASB issued ASU No. 2023-09 - Income Taxes (Topic 740): Improvements to Income Tax Disclosures ("ASU 2023-09"). ASU 2023-09 requires companies to disclose (i) additional categories of information about federal, state and foreign income taxes above a quantitative threshold in their rate reconciliation table and (ii) income taxes paid, net of refunds, disaggregated by federal, state and foreign taxes for annual periods, as well as other disclosure changes. As an emerging growth company, we are not required to adopt ASU 2023-09 prior to 2026, although earlier adoption is permitted. We are currently evaluating the impact of ASU 2023-09 on our existing income tax disclosures.

In March 2024, the U.S. Securities and Exchange Commission ("SEC") adopted the final rule under SEC Release No. 33-11275, The Enhancement and Standardization of Climate-Related Disclosures for Investors. This rule would require registrants to disclose certain climate-related information in registration statements and annual reports. In April 2024, the SEC issued a stay of the final rules pending a judicial review of the validity of the rules by the Eighth Circuit Court of Appeals. We are currently evaluating the final rule to determine its impact on our disclosures.

Other standards or regulatory requirements that have been issued but not yet adopted as of September 30, 2024, are either not applicable to us or are not expected to have any material impact upon adoption.

 

13


 

Reclassifications

Certain prior year amounts have been reclassified to conform to the current year presentation. There was no impact on our financial condition or results of operations as a result of the reclassification.

 

3. Equity method investment

On February 9, 2023, we entered into a limited liability company agreement (the "LLC Agreement") with Taihua New Energy (Thailand) Co., LTD ("Taihua"), a steel fabricator and an existing vendor, and DAYV LLC, for the creation of Alpha Steel LLC ("Alpha Steel"), a Delaware limited liability company dedicated to producing steel components, including torque tubes, for utility-scale solar projects. The Alpha Steel facility, which is located outside of Houston in Sealy, Texas, began commercial production late in the fourth quarter of 2023.

We entered into amendment no. 1 to the Alpha Steel LLC Agreement with Taihua and DAYV LLC on July 28, 2023, to allow for members at their option, and with the approval of the Board of Managers, to make payments in respect of Alpha Steel’s contractual obligations in the event that Alpha Steel does not or is not able to make such payments from its own resources (“Credit Support Payments”). Any such Credit Support Payments will be treated as capital contributions by the members to Alpha Steel, with any member funding more than its ratable share of Credit Support Payments being deemed to have loaned such excess to each underfunding member at the U.S. prime rate plus 2%.

Alpha Steel is intended to enhance our domestic supply chain, our ability to support our customers and the growth of the U.S. solar market, with domestic manufacturing utilizing U.S. steel. We have a 45% interest in Alpha Steel, which is accounted for under the equity method of accounting. Taihua has a 51% interest in Alpha Steel and DAYV LLC, an entity owned by members of the Board of Managers of Alpha Steel and a related party with the parent company of Taihua, has a 4% interest in Alpha Steel. The Chief Executive Officer of Taihua is the General Manager of Alpha Steel. We have equal voting representation with Taihua and DAYV LLC, combined, on Alpha Steel's Board of Managers which is responsible, through majority vote, for making certain "major decisions" involving Alpha Steel, as specified in the LLC Agreement, including, among other things, approval of an annual business plan.

During 2023, we made a required initial capital contribution of $0.9 million to Alpha Steel. For the nine months ended September 30, 2024, we also made required additional capital contributions totaling $1.8 million. Pursuant to the LLC Agreement, we could be required to make up to $0.8 million in future additional capital contributions as Alpha Steel continues to expand production. For the three and nine months ended September 30, 2024, we recognized losses of $0.3 million and $0.8 million, respectively, which represent our share of the net operating losses incurred by Alpha Steel during each period. Our share of Alpha Steel losses recognized during the three and nine months ended September 30, 2023 totaled 0.3 million in each period.

In connection with the creation of Alpha Steel, we also entered into a three-year equipment supply agreement (the "Supply Agreement") with Alpha Steel, the terms of which will apply to our equipment purchase orders. Pursuant to the Supply Agreement, we have committed to placing a minimum level of purchase orders for torque tubes with Alpha Steel during the period from January 1, 2024 to June 30, 2025, with such volume commitments increasing in each of the next two annual periods. In the event we fail to meet our minimum required purchase commitments in any period, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $4.0 million in the aggregate. As of September 30, 2024, we had met approximately 11% of our required purchase commitments for the period ending June 30, 2025. The Supply Agreement may be terminated early in accordance with its provisions or may be extended beyond the initial term if mutually agreed to by the parties.

At September 30, 2024, in addition to our requirement to meet the remaining minimum purchase obligations for the remainder of the year, as described above, we were contingently liable for unpaid vendor obligations, including issued but unsatisfied purchase orders, of Alpha Steel totaling approximately $1.0 million. We expect Alpha Steel will be able to satisfy these obligations with financial resources available to them in the normal course of operations.

 

 

14


 

4. ATM program

On September 14, 2022, we filed a prospectus supplement and entered into an equity distribution agreement (as amended, the "EDA") under which we may from time to time, in one or more transactions, offer and sell newly issued shares of our common stock having an aggregate offering price of up to $100 million in "at the money" offerings (the "ATM program"). We have and may continue to use the net proceeds from this offering for general corporate purposes, including working capital and operating expenses. We may also use a portion of such proceeds to acquire or invest in businesses, products, services or technologies.

Barclays Capital Inc. ("Barclays") is our sales agent under the EDA. The offering of our common stock under the EDA will terminate upon the earlier of (1) the sale of all common stock subject to the EDA or (2) the termination of the EDA by us or by Barclays as permitted therein. The EDA contains customary representations, covenants and indemnification provisions.

We sold no shares of newly issued common stock under the ATM program during the three and nine months ended September 30, 2024, however, during the three and nine months ended September 30, 2023, we sold 6,149,885 and 15,421,885 shares of newly issued common stock valued at $10.7 million and $35.1 million, respectively, for proceeds, net of commissions and fees, of approximately $10.4 million and $34.0 million, respectively. As of September 30, 2024, approximately $64.9 million of capacity remained for future sales of our common stock under the ATM program.

 

5. Accounts receivable, net

Accounts receivable consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Trade receivables

 

$

20,482

 

 

$

46,152

 

Related party receivables

 

 

3,075

 

 

 

868

 

Revenue recognized in excess of billings

 

 

14,757

 

 

 

26,813

 

Other receivables

 

 

6

 

 

 

3

 

Total

 

 

38,320

 

 

 

73,836

 

Allowance for credit losses

 

 

(975

)

 

 

(8,557

)

Accounts receivable, net

 

$

37,345

 

 

$

65,279

 

On April 3, 2024, we entered into a First Amendment ("the Amendment") to Master Project Supply Agreements dated October 11, 2021 with a customer and major solar project developer that owed us approximately $30.8 million for project equipment we had previously completed and made available to the customer pursuant to the Master Project Supply Agreements. The Amendment was executed in consideration of and concurrent with the sale of the uncompleted projects by our customer, including the amended Master Project Supply Agreements, to a new third-party developer (the "Purchaser") who assumed certain obligations to us under the amended Master Project Supply Agreements.

Pursuant to the Amendment, we received a cash payment of $9.0 million from the Purchaser to acquire completed foundation piles, which are being stored at the request of the Purchaser for final delivery to the project sites, currently expected during the fourth quarter of 2024. The remaining completed project equipment, with an estimated fair value of approximately $13.2 million, was retained by us and returned to our inventory in exchange for forgiveness of the associated outstanding receivable balance owed by our customer. The fully reserved remaining unpaid receivable balance totaling approximately $8.9 million was written off against our allowance for credit losses.

Information about our related party receivables at September 30, 2024, may be found below in Note 16, "Related party transactions".

We had no receivables for amounts billed under retainage provisions at September 30, 2024 ($0.9 million at December 31, 2023).

Activity in the allowance for credit losses during the three and nine months ended September 30, 2024 and 2023 was as follows:

 

15


 

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Balance at beginning of period

 

$

232

 

 

$

1,387

 

 

$

8,557

 

 

$

1,184

 

Impact of adoption of ASU 2016-13, effective January 1, 2023

 

N/A

 

 

N/A

 

 

N/A

 

 

 

 

Amounts charged (credited) to earnings during the period

 

 

743

 

 

 

4,099

 

 

 

1,330

 

 

 

4,302

 

Write-offs of accounts

 

 

 

 

 

 

 

 

(8,912

)

 

 

 

Balance at end of period

 

$

975

 

 

$

5,486

 

 

$

975

 

 

$

5,486

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6. Inventories

Inventories consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Finished goods

 

$

15,639

 

 

$

4,246

 

Allowance for slow-moving and obsolete inventory

 

 

(515

)

 

 

(341

)

Total

 

$

15,124

 

 

$

3,905

 

The increase in our finished goods inventory is primarily related to completed project equipment retained by us pursuant to the agreement reached with a major customer described further in Note 5, "Accounts receivable, net" above.

7. Prepaid and other current assets

Prepaid and other current assets consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Vendor deposits

 

$

6,462

 

 

$

5,667

 

Vendor deposits with related party

 

 

1,528

 

 

 

520

 

Prepaid expenses

 

 

862

 

 

 

1,251

 

Prepaid taxes

 

 

555

 

 

 

447

 

Deferred cost of revenue

 

 

1,934

 

 

 

666

 

Surety collateral

 

 

33

 

 

 

 

Other current assets

 

 

4,128

 

 

 

5,538

 

Total

 

$

15,502

 

 

$

14,089

 

At September 30, 2024, other current assets included $2.0 million for a non-interest-bearing customer advance related to pre-project construction financing activities. This advance is secured by certain customer assets.

8. Leases

We lease office and warehouse space in various locations, including our corporate headquarters in Austin, Texas. Additionally, we lease space for an applications laboratory in Austin, Texas and a research and development facility in Seguin, Texas. All of our manufacturing is outsourced to contract manufacturing partners, and we currently do not own or lease any manufacturing facilities.

 

16


 

Our expense for our operating leases consisted of the following:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Operating lease cost

 

$

252

 

 

$

251

 

 

$

861

 

 

$

748

 

Short-term lease cost

 

 

100

 

 

 

132

 

 

 

304

 

 

 

334

 

Total lease cost

 

$

352

 

 

$

383

 

 

$

1,165

 

 

$

1,082

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Reported in:

 

 

 

 

 

 

 

 

 

 

 

 

Cost of revenue

 

$

186

 

 

$

245

 

 

$

681

 

 

$

710

 

Research and development

 

 

43

 

 

 

14

 

 

 

71

 

 

 

40

 

Selling and marketing

 

 

14

 

 

 

24

 

 

 

101

 

 

 

62

 

General and administrative

 

 

109

 

 

 

100

 

 

 

312

 

 

 

270

 

Total lease cost

 

$

352

 

 

$

383

 

 

$

1,165

 

 

$

1,082

 

Future remaining operating lease payment obligations were as follows:

(in thousands)

 

September 30,
2024

 

Remainder of 2024

 

$

233

 

2025

 

 

884

 

2026

 

 

313

 

2027

 

 

291

 

2028

 

 

124

 

2029

 

 

33

 

Total lease payments

 

 

1,878

 

Less: imputed interest

 

 

(123

)

Present value of operating lease liabilities

 

$

1,755

 

 

 

 

 

Current portion of operating lease liability

 

$

872

 

Operating lease liability, net of current portion

 

 

883

 

Present value of operating lease liabilities

 

$

1,755

 

 

9. Property and equipment, net

Property and equipment consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Leasehold improvements

 

$

338

 

 

$

157

 

Field equipment

 

 

1,108

 

 

 

1,062

 

Information technology equipment

 

 

609

 

 

 

466

 

Tooling

 

 

1,824

 

 

 

1,014

 

Capitalized software

 

 

968

 

 

 

734

 

Total

 

 

4,847

 

 

 

3,433

 

Accumulated depreciation

 

 

(2,438

)

 

 

(1,610

)

Property and equipment, net

 

$

2,409

 

 

$

1,823

 

Depreciation expense for the three months ended September 30, 2024 and 2023, totaled $0.3 million and $0.2 million, respectively, and for the nine months ended September 30, 2024 and 2023, totaled $0.8 million and $0.6 million, respectively.

 

 

17


 

10. Intangible assets, net and goodwill

Intangible assets consisted of the following:

(in thousands)

 

Estimated Useful Lives (Years)

 

September 30, 2024

 

 

December 31, 2023

 

Developed technology

 

2.5 3.0

 

$

2,568

 

 

$

2,555

 

Total

 

 

 

 

2,568

 

 

 

2,555

 

Accumulated amortization

 

 

 

 

(2,431

)

 

 

(2,013

)

Intangible assets, net

 

 

 

$

137

 

 

$

542

 

Amortization expense for the three months ended September 30, 2024 and 2023, totaled $0.1 million and $0.1 million, respectively, and for the nine months ended September 30, 2024 and 2023, totaled $0.4 million and $0.4 million, respectively.

During the nine months ended September 30, 2024 and 2023, activity in our goodwill balance was as follows:

 

 

 

 

Nine months ended September 30,

 

(in thousands)

 

 

 

2024

 

 

2023

 

Balance at beginning of period

 

 

 

$

7,353

 

 

$

7,538

 

Translation

 

 

 

 

68

 

 

 

(395

)

Balance at end of period

 

 

 

$

7,421

 

 

$

7,143

 

 

11. Debt

Our Credit Facility, entered into in 2021 with various lenders, including Barclays Bank PLC, as issuing lender, the swingline lender and as administrative agent, expired unused on April 30, 2024. The Credit Facility has not currently been replaced.

Interest expense for the three months ended September 30, 2024 was not significant and for the three months ended September 30, 2023 was $0.4 million. For the nine months ended September 30, 2024 and 2023, interest expense totaled $0.4 million and $1.0 million, respectively. Our interest expense primarily consisted of commitment and letter of credit fees, as well as amortization of costs relating to the initial establishment of the Credit Facility.

 

12. Accrued expenses and other current liabilities

Accrued expenses and other current liabilities consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Accrued cost of revenue

 

$

15,523

 

 

$

26,773

 

Related party accrued cost of revenue

 

 

1,215

 

 

 

1,451

 

Accrued compensation

 

 

3,695

 

 

 

3,858

 

Other accrued expenses

 

 

3,532

 

 

 

2,766

 

Total accrued expenses

 

$

23,965

 

 

$

34,848

 

 

 

 

 

 

 

 

Warranty reserves

 

$

8,949

 

 

$

7,279

 

Current portion of operating lease liability

 

 

872

 

 

 

740

 

Non-federal tax obligations

 

 

41

 

 

 

119

 

Total other current liabilities

 

$

9,862

 

 

$

8,138

 

Information relating to our related party accrued cost of revenue at September 30, 2024 and December 31, 2023 may be found below in Note 16, "Related party transactions".

Other accrued expenses primarily include amounts due for (i) legal costs associated with outstanding corporate or legal matters and (ii) other professional services.

 

18


 

Activity by period in the Company's warranty accruals was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Balance at beginning of period

 

$

10,415

 

 

$

12,081

 

 

$

11,002

 

 

$

12,426

 

Warranties issued and remediation added during the period

 

 

3,096

 

 

 

1,086

 

 

 

4,735

 

 

 

3,938

 

Settlements made during the period

 

 

(839

)

 

 

(847

)

 

 

(2,131

)

 

 

(3,184

)

Changes in liability for pre-existing warranties

 

 

(934

)

 

 

(363

)

 

 

(1,868

)

 

 

(1,223

)

Balance at end of period

 

$

11,738

 

 

$

11,957

 

 

$

11,738

 

 

$

11,957

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Warranty accruals are reported in:

 

 

 

 

 

 

 

 

 

 

 

 

Other current liabilities

 

$

8,949

 

 

$

7,738

 

 

$

8,949

 

 

$

7,738

 

Other non-current liabilities

 

 

2,789

 

 

 

4,219

 

 

 

2,789

 

 

 

4,219

 

Balance at end of period

 

$

11,738

 

 

$

11,957

 

 

$

11,738

 

 

$

11,957

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13. Income taxes

For the three months ended September 30, 2024 and 2023, we recorded income tax expense of $0.24 million and $0.17 million respectively, and for the nine months ended September 30, 2024 and 2023, we recorded income tax expense of $0.30 million and $0.18 million, respectively. These amounts for each period were lower than the statutory rate of 21%, primarily due to a valuation allowance established against the U.S. deferred tax assets.

We have had no material change in our unrecognized tax benefits since December 31, 2023. We recognize accrued interest and penalties related to unrecognized tax benefits as a component of income tax expense. As of September 30, 2024 and December 31, 2023, we had no accrued interest or penalties related to unrecognized tax benefits.

 

14. Commitments and contingencies

We may become involved in various claims, lawsuits, investigations, and other proceedings, arising in the normal course of business. We accrue a liability when information available prior to the issuance of our financial statements indicates it is probable a loss has been incurred as of the date of the financial statements and the amount of loss can be reasonably estimated. If the reasonable estimate of the probable loss is a range, we record an accrual for the most likely estimate of the loss, or the low end of the range if there is no one best estimate. We adjust our accruals to reflect the impact of negotiation, settlements, rulings, advice of legal counsel and other information and events pertaining to a particular case. Legal costs are expensed as incurred.

In March of 2023, CBP issued notices of tariff assessment that indicated an action taken at the Import Specialist (i.e., the port) level with respect to merchandise imported from Thailand under entry number 004-1058562-5 (the “625 Assessment”) and entry number 004-1063793-9 (the “Original 939 Assessment”, and collectively with the 625 Assessment, the “Original CBP Assessments”). The Original CBP Assessments related to certain torque beams that are used in our Voyager+ product that were imported in 2022. In the Original CBP Assessments, CBP asserted that Section 301 China tariffs, Section 232 steel and aluminum tariffs, and antidumping and countervailing duties applied to the merchandise. Based on correspondence received to date from CBP and our calculations based on applicable duty and tariff rates, the 625 Assessment is currently for approximately $2.84 million. In September of 2023, CBP informed us (the "Revised 939 Assessment", and together with the 625 Assessment, the "Revised CBP Assessments") that the amount owed under the Original 939 Assessment was being revised downward to approximately $2.01 million. In particular, CBP accepted our position that the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, previously assessed under the Original 939 Assessment are not applicable as they are only applicable to articles that originate in China and that, in this case, the finished goods are products of Thailand.

Upon review of the facts involved, and in consultation with outside legal counsel, we believe that the remaining amounts claimed in the Revised CBP Assessments are incorrect. In particular, the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, are not applicable under the 625 Assessment for the same reason stated above with respect to the Revised 939 Assessment, which has been accepted by CBP. Moreover, with respect to both Revised

 

19


 

CBP Assessments, we believe that the goods in question were properly classified as parts of structures at the time of importation and that when properly classified, the beams and other materials are not subject to Section 232 duties applicable to more basic steel products.

CBP has legally finalized both Revised CBP Assessments. We filed a formal protest for the 625 Assessment in September of 2023 and for the Revised 939 Assessment in March of 2024. Based on the above, and under the relevant accounting guidance related to loss contingencies, we have made no accrual for the amounts claimed by CBP as of September 30, 2024, as we do not consider these amounts to be a probable obligation, as such term is defined and interpreted under the relevant accounting guidance, for us at this time. However, because matters of this nature are subject to inherent uncertainties, and unfavorable rulings or developments, including future assessments of additional duties or tariffs owed in respect of other shipments or other materials beyond what is presently included in the Revised CBP Assessments, could occur despite our belief that the tariffs and duties asserted are incorrect, there can be no certainty that the Company may not ultimately incur charges that are not currently recorded as liabilities. Since the outcome of these matters cannot be predicted with certainty, the costs associated with them could have a material adverse effect on our consolidated results of operations, financial position, or liquidity.

 

15. Stock-based compensation

Stock-based compensation expense for each period was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Cost of revenue

 

$

243

 

 

$

181

 

 

$

699

 

 

$

1,313

 

Research and development

 

 

93

 

 

 

85

 

 

 

267

 

 

 

449

 

Selling and marketing

 

 

108

 

 

 

166

 

 

 

266

 

 

 

821

 

General and administrative

 

 

875

 

 

 

760

 

 

 

3,011

 

 

 

6,461

 

Total stock compensation expense

 

$

1,319

 

 

$

1,192

 

 

$

4,243

 

 

$

9,044

 

 

16. Related party transactions

Transaction with Ayna.AI LLC

In February 2022, we engaged Ayna.AI LLC (as successor in interest to Fernweh Engaged Operator Company LLC) (“Ayna”) to support us with improvements to our processes and performance in various areas including design, sourcing, logistics, pricing, software and standard configuration. The foregoing engagement constituted a related party transaction as South Lake One LLC, an entity affiliated with Isidoro Quiroga Cortés, a member of our board of directors at the time of the engagement, and a holder at that time of more than 5% of our outstanding capital stock, was an investor in Ayna. In addition, Discrimen LLC was an investor in Ayna, and Isidoro Quiroga Cortés was affiliated with that entity. Isidoro Quiroga Cortés was also on the board of directors of Ayna at the time of the engagement. On September 13, 2023, we executed a termination of the master services agreement and statement of work (collectively, the "Service Agreement") with Ayna and Fernweh Group LLC, the parent company of Fernweh Engaged Operator Company LLC, which resulted in the forfeiture of 2,000,000 unvested stock options and a corresponding reversal of approximately $1.1 million of stock-based compensation expense previously recognized at the date of termination. We also had an unamortized prepaid balance associated with this engagement, totaling $3.2 million, that was fully amortized as a charge to general and administrative expense during the three months ended September 30, 2023.

For the three and nine months ended September 30, 2023, we incurred $2.1 million and $3.5 million, respectively, of general and administrative expense, including expense, net of forfeitures, relating to stock-based compensation awards, and made cash payments of $0.8 million and $2.5 million, respectively, associated with our engagement of Ayna.

Related party receivables and payables

We have related party receivables at September 30, 2024 and December 31, 2023, totaling $3.1 million and $0.9 million, respectively, for future material cost discounts contractually owed to us by Alpha Steel in connection with the expected receipt of manufacturing incentives available to Alpha Steel under the Inflation Reduction Act, as costs are incurred by Alpha Steel to purchase raw materials and manufacture torque tubes and other products that will be used to fulfill purchase orders we issue to Alpha Steel.

 

20


 

We also have related party liabilities to Alpha Steel at September 30, 2024 and December 31, 2023, totaling $1.2 million and $1.5 million, respectively, for the accrued cost of revenue recognized on certain of our customer projects associated with the cost of products that are being manufactured for us by Alpha Steel.

During the three and nine months ended September 30, 2024, we made vendor deposits of $0.1 million and $2.8 million, respectively, to Alpha Steel and received invoices from Alpha Steel for purchases totaling $0.7 million and $6.2 million, respectively. Our balances of remaining vendor deposits with Alpha Steel as of September 30, 2024 and December 31, 2023 are shown in Note 7, "Prepaids and other current assets" above as "Vendor deposits with related party". After payments and application of vendor deposits to invoices received, we owe $1.0 million to Alpha Steel, which is included in our accounts payable balance at September 30, 2024 (none at December 31, 2023) in our condensed consolidated balance sheets.

 

17. Net loss per share

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net loss (in thousands)

 

$

(15,359

)

 

$

(16,937

)

 

$

(36,371

)

 

$

(39,113

)

Weighted average shares outstanding for calculating basic and diluted loss per share

 

 

127,380,292

 

 

 

119,793,821

 

 

 

126,234,997

 

 

 

112,794,562

 

Basic and diluted loss per share

 

$

(0.12

)

 

$

(0.14

)

 

$

(0.29

)

 

$

(0.35

)

 

 

 

 

 

 

 

 

 

 

 

 

 

For purposes of computing diluted loss per share, weighted average common shares outstanding do not include potentially dilutive securities that are anti-dilutive, as shown below.

 

 

For the three and nine months ended September 30,

 

 

 

2024

 

 

2023

 

Anti-dilutive securities excluded from calculating dilutive loss per share:

 

 

 

 

 

 

Shares of common stock issuable under stock option plans outstanding

 

 

2,278,938

 

 

 

3,048,139

 

Shares of common stock issuable upon vesting of RSUs

 

 

16,888,874

 

 

 

7,982,821

 

Potential common shares excluded from diluted net loss per share calculation

 

 

19,167,812

 

 

 

11,030,960

 

 

18. Subsequent events

On November 8, 2024, we entered into a binding term sheet with an institutional investor (the “Investor”) to issue to the Investor, in a private placement, senior secured promissory notes (the “Notes”) in an aggregate principal amount of $15 million and common stock purchase warrants (the “Warrants”) to purchase 17,500,000 shares of our common stock.

The Notes will bear interest at a rate of 11% per annum if payable in cash or, at our options, 13% per annum if paid-in-kind and will mature five (5) years from the date of issuance. The Notes will be secured by a first priority lien on substantially all of our assets and will be guaranteed by all of our direct and indirect subsidiaries. The Notes will contain customary covenants for a transaction of this nature, including financial covenants and restrictive covenants. If we prepay the Notes in full within a specified period of time after issuance, we will be required to pay a make-whole payment to the Investor representing a portion of the undiscounted interest payments that otherwise would have been payable to the Investor, the calculation for which will be specified in the definitive documents.

The Warrants are immediately exercisable at an exercise price of $0.01 per share, subject to certain customary adjustments to be set forth in the definitive documentation, and will expire ten (10) years from the date of issuance. At the option of the Investor, the Warrants will also be exercisable on a cashless basis using a customary cashless exercise formula.

We have also agreed that the Investor shall be entitled to nominate one (1) person for election to our board of directors at our annual stockholder meeting. We have also agreed to reimburse the Investor for expenses incurred in connection with the transaction in an amount equal to three percent (3%) of the principal amount of the Notes.

 

21


 

The issuance of the Notes and Warrants will be subject to customary closing conditions and the preparation and negotiation of definitive documents. We currently expect that the issuance of the Notes and Warrants will occur on or prior to November 30, 2024.

 

22


 

ITEM 2. MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

The following discussion and analysis of our financial condition and results of operations should be read in conjunction with our condensed consolidated financial statements and related notes included in Item 1 of this Form 10-Q and along with information included in our 2023 Annual Report. In addition to historical financial information, the following discussion contains forward-looking statements that involve risks and uncertainties. Our actual results could differ materially from such forward-looking statements. Factors that could cause or contribute to those differences include, but are not limited to, those identified below and those discussed in Part I, Item 1A. "Risk Factors" included in our 2023 Annual Report. Additionally, our historical results are not necessarily indicative of the results that may be expected in any future period.

This discussion and analysis of our financial condition and results of operations contain the presentation of Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS, which are not presented in accordance with U.S. GAAP. Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS are being presented because they provide the Company and readers of this Form 10-Q with additional insight into our operational performance relative to earlier periods and relative to our competitors. We do not intend Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS to be substitutes for any U.S. GAAP financial information. Readers of this Form 10-Q should use Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS only in conjunction with Net Loss and Net Loss per Share, the most comparable U.S. GAAP financial measures. Reconciliations of Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS to Net Loss and Net Loss per Share, the most comparable U.S. GAAP measures, are provided in "Non-GAAP Financial Measures" below.

Overview

FTC Solar, Inc. (the “Company”, “we”, “our”, or “us”) was founded in 2017 and is incorporated in the state of Delaware. In April 2021, we completed an initial public offering ("IPO"), and our common stock currently trades on the Nasdaq Capital Market under the symbol “FTCI”.

We are a global provider of solar tracker systems, supported by proprietary software and value-added engineering services. Solar tracker systems move solar panels throughout the day to maintain an optimal orientation relative to the sun, thereby increasing the amount of solar energy produced at a solar installation. Our original two-panel in-portrait solar tracker system is currently marketed under the Voyager brand name (“Voyager”) and our one module-in-portrait ("1P") solar tracker system, which became certified in 2023, is marketed under the Pioneer brand name ("Pioneer"). We also have a mounting solution to support the installation and use of U.S.-manufactured thin-film modules by project owners. Our primary software offerings include SUNPATH which is intended to help customers optimize solar tracking for increased energy production, our SUNOPS real-time operations management platform and our web-based ATLAS portfolio management software. In addition, we have a team of renewable energy professionals available to assist our U.S. and worldwide clients in site layout, structural design, pile testing and other needs across the solar project development and construction cycle. The Company is headquartered in Austin, Texas, and has international subsidiaries in Australia, China, India, South Africa and Spain.

We are an emerging growth company, as defined in the Jumpstart Our Business Startups (JOBS) Act. Under the JOBS Act, we elected to use the allowed extended transition period to delay adopting new or revised accounting standards until such time as those standards apply to private companies.


Key Factors Affecting Our Performance

Project Timing. Our level of manufacturing and logistics activity, and thus our revenue, can be significantly impacted by delays or changes in the expected timing of customer project development activity. In recent periods our customers have encountered delays in beginning or continuing project development caused by interconnection issues, including permit delays, equipment shortages, obtaining project financing at acceptable levels and addressing uncertainty in changes in government regulations, as described further below. Due to our limited number of large customers, such delays in project development activity can have a material impact on our quarterly and annual consolidated financial results.

Government Regulations. Changes in the U.S. trade environment, including the imposition of import tariffs, increases in existing tariffs, AD/CVD investigations and the UFLPA, which became effective in June 2022, can have an impact on the timing of developer projects. The UFLPA resulted in new rules for module importers and reviews by CBP. There is currently uncertainty in the market around achieving full compliance with UFLPA, whether related to sufficient traceability of materials or other factors. Escalating trade tensions,

 

23


 

particularly between the United States and China, have led to increased tariffs and trade restrictions, including tariffs applicable to certain raw materials and components for our products. We have taken measures with the intention of mitigating the effect of tariffs and the impact of AD/CVD and UFLPA on our business by reducing our reliance on China and enhancing our U.S.-based supply chain, including through our investment in Alpha Steel, as described further in Note 3, "Equity method investment" in Part I, Item 1 of this Form 10-Q. As an example, we have reduced our reliance on suppliers in China in terms of meeting our supply chain requirements from 90% in 2019 to less than 20% as of the date of this Quarterly Report. As of September 30, 2024, we have qualified suppliers outside of China for certain of our commodities and we continue to work to have second-source capability for all Chinese-manufactured components to help reduce the extent to which our supply chain for U.S.-based projects is subject to existing tariffs and to be able to quickly address potential future regulatory and governmental policy changes. We have entered into partnerships with manufacturers based in the United States, India, South Africa, Spain, Turkey, Thailand and Vietnam to diversify our supply chain and optimize costs. On June 6, 2022, President Biden issued an Executive Order allowing U.S. solar deployers to import solar modules and cells from Cambodia, Malaysia, Thailand and Vietnam free from certain duties for 24 months, along with other incentives designed to accelerate U.S. domestic production of clean energy technologies. However, on December 29, 2023, Auxin Solar, Inc. and Concept Clean Energy, Inc. filed suit in the U.S. Court of International Trade challenging the legal basis for the moratorium and implementing regulations. If the suit proves successful, solar module importers could owe retroactive duties on goods that have already cleared customs.

The most notable incentive program impacting our U.S. business has historically been the ITC for solar energy projects, which allows taxpayers to offset their U.S. federal income tax liability by a certain percentage of their cost basis in solar energy systems placed in service for commercial use. The Inflation Reduction Act of 2022, passed by the U.S. Congress and signed into law by President Biden on August 16, 2022, expanded and extended the tax credits and other tax benefits available to solar energy projects and the solar energy supply chain. ITCs have been extended for such projects through at least 2032 and, depending on the location of a particular project and its ability to satisfy certain labor and domestic content requirements, the ITC percentage can range between 30% and 50%. U.S. manufacturers of specific solar components are now eligible to claim production tax credits as an alternative to the ITC. Implementing regulations for this law are, in certain cases, still being finalized and the impact of these regulations continue to be evaluated by developers of new solar projects and manufacturers of solar components. We believe our investment in and commitments made to Alpha Steel will allow us to obtain certain benefits as a result of the production tax credit program, subject to our level of purchases from Alpha Steel. We believe this law will bolster and extend future demand for our products in the United States, however as the implementing regulations for this law are not completely finalized, this creates uncertainty about the extent of its impact on our Company and the solar energy industry.

Disruptions in Transportation and Supply Chain. Our costs are affected by the costs of certain components and materials, such as steel, motors and micro-chips, as well as transportation costs. Current market conditions and international conflicts that constrain the supply of materials and disrupt the flow of materials from international vendors can impact the cost of our products and services, along with overall rates of inflation in the global economy, which have been higher than pre-COVID 19 pandemic historical rates. While certain costs have moderated compared to pre-pandemic rates, domestic fuel prices continue to be elevated. Although we don't believe inflation has had a material impact on our results as presented in this report, such cost increases and decreases could impact our future operating margins, if material.

We have taken steps to expand and diversify our manufacturing partnerships and have adjusted our modes of transportation to mitigate the impact of headwinds that might arise in the global supply chain and logistics markets. As an example, we modified our ocean freight from previously using charter shipments to now using containerized shipments as costs in the container market began to decrease starting in 2022, but more recently have begun to increase. However, we have been able to mitigate some of this increase as a result of increasing our domestic production capabilities. We continue to monitor the logistics markets and will continue to evaluate our use of various modes of transportation when warranted to optimize our transportation costs. Additionally, from February 2022 to September 2023, we utilized a related-party consulting firm to support us in making improvements to our processes and performance in various areas, including design, sourcing, logistics, pricing, software and our distributed generation business. For further information regarding this consulting firm, see Note 16, "Related party transactions" included in our condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report. We also intend to maintain a sharp focus on our design-to-value initiative to continue to improve margins by reducing manufacturing and material costs of our products.

Megawatts ("MW") Produced and MW Shipped and Average Selling Price ("ASP"). The primary operating metrics we use to evaluate our sales performance and to track market acceptance of our products are the change in quantity of MW produced and MW shipped from period to period. MW are measured for each individual project and are calculated based on the expected output of that project once installed and fully operational. We also utilize metrics related to price and cost of goods sold per watt, including the change in ASP from period to period and cost per watt. ASP is calculated by dividing product and service revenue by total watts produced or shipped and product and service cost per watt is calculated by dividing product or service costs of goods sold by total watts produced or shipped. These metrics enable us to evaluate trends in pricing, manufacturing and logistics costs and profitability. Events such as the COVID-19 pandemic, global

 

24


 

inflation rates, high interest rates and international conflicts have in the past impacted and may continue to impact the U.S. economy, global supply chains, and our business. These impacts can cause significant project development and shipping delays and cost increases, as well as offsetting ASP increases, and also raise the price of inputs like steel and logistics, affecting our cost per watt.

Investment in Technology and Personnel. We invest in both the people and technology behind our products. We intend to continue making significant investments in the technology for our products and expansion of our patent portfolio to attract and retain customers, expand the capabilities and scope of our products, and enhance user experience. As an example, in August 2023, we introduced SUNOPS, a cloud-based, tracker-agnostic solar asset monitoring solution allowing asset owners and managers to evaluate the operation and performance of their solar deployments. Additionally, in May 2024, we announced the launch of our Automated Hail Stow Solution, aimed at minimizing solar panel damage caused by hail storms. This solution integrates advanced technology with meteorological data to automatically adjust the positioning of solar panels, reducing the risk of hail-related damage.

We also intend over time to make significant investments to attract and retain employees in key positions, including sales leads, engineers, software developers, quality assurance personnel, supply chain personnel, product management, and operations personnel, to help us drive additional efficiencies across our marketplace and, in the case of sales leads, to continue to enhance and diversify our sales capabilities, including international expansion. For example, in May 2024, we announced the appointment of Tamara Mullings, a former member of our Board of Directors, to be our Senior Vice President, North American Sales and Alberto Echeverria, a tracker industry veteran and the former Chief Executive Officer and Executive Member of the Board of STI Norland, to be our Senior Vice President, International Sales. Additionally, effective August 19, 2024, we hired Yann Brandt as our new President and Chief Executive Officer and as a new member of our Board of Directors.

Impact of Climate Change. Climate change has primarily impacted our business operations by increasing demand for solar power generation and, as a result, for use of our products. According to the August 2024 Short-Term Energy Outlook published by the U.S. Energy Information Administration, solar power is the fastest-growing source of electricity in the United States.

While climate change has not resulted in any material negative impact to our operations to date, we recognize the risk of disruptions to our supply chain due to extreme weather events. This, among other things, has led us to expand the diversity of our supplier base and to partner with more local suppliers to reduce shipping and transportation needs. We are also increasingly partnering with larger scale steel producers rather than smaller suppliers to facilitate scaling of our operations while remaining conscious of the environmental impacts of steel manufacturing as the regulatory landscape around these high-emitting industries evolves. An example of this strategy is our investment in Alpha Steel, a U.S.-based manufacturing partnership with Taihua, a leading steel fabricator.

We also attempt to mitigate the climate-related risks from the use of our products by designing our equipment and systems to have a high-slope tolerance and wind mitigation capabilities, while at the same time reducing the required foundation/pile count needed. This allows our trackers to be installed in increasingly hostile environments with minimal disturbance to the surrounding land.

Liquidity. See "Liquidity and Capital Resources" below for a discussion of the impact of the items above on our liquidity position.

Key Components of Our Results of Operations

The following discussion describes certain line items in our condensed consolidated statements of comprehensive loss.

Revenue

Revenue from the sale of our solar tracker systems and customized components of those systems is recognized over time, as work progresses, utilizing an input measure of progress determined by cost incurred to date relative to total expected cost on these projects to correlate with our performance in transferring control over the tracker systems and their components. Revenue from the sale of individual parts is recognized at a point in time as and when control transfers based on the terms of the contract. Revenue from sale of term-based software licenses is recognized upon transfer of control to the customer. Revenue for shipping and handling services is recognized over time based on progress in meeting shipping terms of the arrangements. Revenue for stand-alone engineering consulting and pile testing services is recognized at a point in time upon completion of the services performed. Subscription revenue, which is derived from our subscription-based enterprise licensing model, and support revenue, which is derived from ongoing security updates and maintenance, are generally recognized on a straight-line basis over the term of the contract.

 

25


 

Our customers include project developers, solar asset owners and EPC contractors that design and build solar energy projects. For each individual solar project, we enter into a contract with our customers covering the price, specifications, delivery dates and warranty for the products being purchased, among other things. Our contractual delivery period for our solar tracker systems and related parts can vary depending on size of the project and availability of vessels and other means of delivery. Contracts can range in value from tens of thousands to tens of millions of dollars.

Our revenue is affected by changes in the volume and ASP of our solar tracking systems purchased by our customers and volume of sales of software products and engineering services, among other things. The ASP of our solar tracker systems and quarterly volume of sales is driven by the supply of, and demand for, our products, changes in product mix, geographic mix of our customers, strength of competitors’ product offerings, tariff and import restrictions, supply chain issues and availability of government incentives to the end-users of our products. Additionally, our revenue may be impacted by seasonality due to cold weather, which can cause variability in site construction activity.

For the periods included in this Quarterly Report, no company locations other than those in the United States accounted for more than 10% of our consolidated revenue. Our revenue growth is dependent on continued growth in the number of solar tracker projects and engineering services we win in competitive bidding processes and growth in our software sales each year, as well as our ability to increase our market share in each of the geographies in which we currently compete, expand our global footprint to new emerging markets, grow our sources of production to meet demand and continue to develop and introduce new and innovative products that address the changing technology and performance requirements of our customers, among other things.

Cost of revenue and gross profit (loss)

We subcontract with third-party companies to manufacture and deliver our products directly to our customers. Our product costs are affected by the underlying cost of raw materials procured by these contract manufacturers, including steel and aluminum; component costs, including electric motors and gearboxes; technological innovation in manufacturing processes; and our ability to achieve economies of scale resulting in lower component costs. We do not currently hedge against changes in the price of raw materials, but we continue to explore opportunities to mitigate the risks of foreign currency and commodity fluctuations through the use of hedges and foreign exchange lines of credit. Some of these costs, primarily personnel, are not directly affected by sales volume.

We have made changes to our headcount in recent years as we initially scaled up our business following our IPO and, more recently, reduced our headcount on certain occasions in response to declines in project activity levels. Our gross profit may vary period-to-period due to changes in our headcount, ASP, product costs, product mix, customer mix, geographical mix, shipping methods, warranty costs and seasonality.

Operating expenses

Operating expenses consist of research and development expenses, selling and marketing expenses and general and administrative expenses. Personnel-related costs are the most significant component of our operating expenses and include salaries, benefits, bonuses, commissions and stock-based compensation expenses.

We implemented reductions in our global workforce at the end of 2022 and in August 2023, in response to regulatory and other issues that were negatively impacting our solar project activity levels. We also had certain executive departures near the end of 2023, as well as additions of certain new executives during 2024, including a new Chief Executive Officer. In addition, our operating costs have been impacted by (i) our level of research activities to originate, develop and enhance our products, (ii) our sales and marketing efforts as we expand our development activities in other parts of the world, and (iii) variations in legal and professional fees, compliance costs, insurance, facility costs and other costs associated with strategic changes in response to changing market conditions and other matters.

 

26


 

Results of Operations - Three Months Ended September 30, 2024 Compared to Three Months Ended September 30, 2023

 

 

Three months ended September 30,

 

 

 

2024

 

 

2023

 

(in thousands, except percentages)

 

Amounts

 

 

Percentage of revenue

 

 

Amounts

 

 

Percentage of revenue

 

Revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

$

7,411

 

 

 

73.1

%

 

$

27,274

 

 

 

89.3

%

Service

 

 

2,725

 

 

 

26.9

%

 

 

3,274

 

 

 

10.7

%

Total revenue

 

 

10,136

 

 

 

100.0

%

 

 

30,548

 

 

 

100.0

%

Cost of revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

 

11,798

 

 

 

116.4

%

 

 

22,775

 

 

 

74.6

%

Service

 

 

2,644

 

 

 

26.1

%

 

 

4,394

 

 

 

14.4

%

Total cost of revenue

 

 

14,442

 

 

 

142.5

%

 

 

27,169

 

 

 

88.9

%

Gross profit (loss)

 

 

(4,306

)

 

 

(42.5

%)

 

 

3,379

 

 

 

11.1

%

Operating expenses

 

 

 

 

 

 

 

 

 

 

 

 

Research and development

 

 

1,467

 

 

 

14.5

%

 

 

1,921

 

 

 

6.3

%

Selling and marketing

 

 

2,406

 

 

 

23.7

%

 

 

6,324

 

 

 

20.7

%

General and administrative

 

 

6,797

 

 

 

67.1

%

 

 

11,411

 

 

 

37.4

%

Total operating expenses

 

 

10,670

 

 

 

105.3

%

 

 

19,656

 

 

 

64.3

%

Loss from operations

 

 

(14,976

)

 

 

(147.8

%)

 

 

(16,277

)

 

 

(53.3

%)

Interest income (expense), net

 

 

24

 

 

 

0.2

%

 

 

(108

)

 

 

(0.4

%)

Other income (expense), net

 

 

93

 

 

 

0.9

%

 

 

(50

)

 

 

(0.2

%)

Loss from unconsolidated subsidiary

 

 

(256

)

 

 

(2.5

%)

 

 

(336

)

 

 

(1.1

%)

Loss before income taxes

 

 

(15,115

)

 

 

(149.1

%)

 

 

(16,771

)

 

 

(54.9

%)

Provision for income taxes

 

 

(244

)

 

 

(2.4

%)

 

 

(166

)

 

 

(0.5

%)

Net loss

 

$

(15,359

)

 

 

(151.5

%)

 

$

(16,937

)

 

 

(55.4

%)

Revenue

We generate our revenue in two streams – Product revenue and Service revenue. Product revenue is derived from the sale of solar tracker systems and customized components for those systems, individual part sales for certain specific transactions and the sale of term-based software licenses. Service revenue includes revenue from shipping and handling services, engineering consulting and pile testing services, our subscription-based enterprise licensing model and maintenance and support services in connection with the term-based software licenses.

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Product

 

$

7,411

 

 

$

27,274

 

 

$

(19,863

)

 

 

(72.8

)%

Service

 

 

2,725

 

 

 

3,274

 

 

 

(549

)

 

 

(16.8

)%

Total revenue

 

$

10,136

 

 

$

30,548

 

 

$

(20,412

)

 

 

(66.8

)%

Product revenue

The decrease in product revenue for the three months ended September 30, 2024, as compared to the three months ended September 30, 2023, was primarily due to a decrease of 82% in the amount of MW produced as activity has been adversely impacted by customer project delays. This was partially offset by an increase in ASP for the three months ended September 30, 2024, as a result of better pricing and project mix changes as compared to the three months ended September 30, 2023.

Service revenue

The decrease in service revenue for the three months ended September 30, 2024, as compared to the three months ended September 30, 2023, primarily resulted from (i) a decrease of 29% in ASP as compared to the three months ended September 30, 2023 and (ii) lower engineering consulting revenues. This was partially offset by an increase of 18% in the amount of MW delivered as a result of timing of project deliveries.

 

27


 

Cost of revenue and gross profit (loss)

Cost of revenue consists primarily of costs related to raw materials, equipment manufacturing activities, freight and delivery, product warranty, remediation and personnel costs (salaries, bonuses, benefits, and stock-based compensation). Personnel costs in cost of revenue include both direct labor costs, as well as costs attributable to any individuals whose activities relate to the procurement, installment and delivery of the finished product and services.

Gross profit may vary from period-to-period and is primarily affected by our ASP, product costs, timing of tracker production and delivery, customer mix, geographical mix, shipping method, logistics costs, warranty costs, indirect cost control efforts and seasonality.

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Product

 

$

11,798

 

 

$

22,775

 

 

$

(10,977

)

 

 

(48.2

)%

Service

 

 

2,644

 

 

 

4,394

 

 

 

(1,750

)

 

 

(39.8

)%

Total cost of revenue

 

$

14,442

 

 

$

27,169

 

 

$

(12,727

)

 

 

(46.8

)%

Gross profit (loss)

 

$

(4,306

)

 

$

3,379

 

 

$

(7,685

)

 

 

(227.4

)%

Gross profit (loss) percentage of revenue

 

 

(42.5

%)

 

 

11.1

%

 

 

 

 

 

 

The decrease in cost of revenue for the three months ended September 30, 2024, as compared to the three months ended September 30, 2023, was primarily driven by (i) a decrease of 82% in MW produced. This was partially offset by higher remediation costs.

Our gross margin percentage of revenue for the three months ended September 30, 2024 was a negative 42.5%, as compared to a positive 11.1% for the three months ended September 30, 2023.

We had negative gross margin for the three months ended September 30, 2024 primarily due to the impact of lower revenue levels on our ability to cover certain relatively fixed overhead costs.

We had positive gross margin for the three months ended September 30, 2023 largely due to (i) higher production activity allowing us to cover certain relatively fixed overhead costs, (ii) a mix of higher margin product revenue as compared to service revenue, and (iii) improvements in our direct cost structure due to our design-to-value efforts, lower levels of remediation and warranty costs, as well as reduced overhead spending resulting from our other cost control efforts.

Research and development

Research and development expenses consist primarily of salaries, employee benefits, stock-based compensation expense and travel expense related to our engineers performing research and development activities to originate, develop and enhance our products. Additional expenses include consulting charges, component purchases and other costs for performing research and development on our software products.

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Research and development

 

$

1,467

 

 

$

1,921

 

 

$

(454

)

 

 

(23.6

%)

The decrease in research and development expenses for the three months ended September 30, 2024, as compared to the three months ended September 30, 2023, was primarily attributable to (i) lower spending on lab and other research activities of $0.2 million, (ii) lower payroll costs of $0.2 million due to severance costs recognized during the three months ended September 30, 2023, and (iii) lower professional service costs of $0.1 million resulting from cost reduction initiatives. Research and development expenses as a percentage of revenue were 14.5% for the three months ended September 30, 2024, as compared to 6.3% for the three months ended September 30, 2023. The increase in the percentage research and development costs to revenue for the three months ended September 30, 2024, is largely a function of the lower level of revenue.

 

28


 

Selling and marketing

Selling and marketing expenses consist primarily of salaries, employee benefits, stock-based compensation expense and travel expense related to our sales and marketing and business development personnel. Additionally, selling and marketing expenses include costs associated with professional fees and support charges for software subscriptions and licenses, trade shows and conventions.

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Selling and marketing

 

$

2,406

 

 

$

6,324

 

 

$

(3,918

)

 

 

(62.0

%)

The decrease in selling and marketing expenses for the three months ended September 30, 2024, as compared to the three months ended September 30, 2023, was primarily attributable to (i) lower provisions for credit losses of $3.4 million, mainly related to charges associated with specific individual customer accounts during each period, (ii) lower marketing costs of $0.2 million associated with reduced trade show attendance and advertising, and (iii) lower payroll costs of $0.1 million due to severance costs recognized during the three months ended September 30, 2023. Lower travel and stock-based compensation expense accounted for the remaining decrease. Selling and marketing costs as a percentage of revenue were 23.7% for the three months ended September 30, 2024, compared to 20.7% for the three months ended September 30, 2023.

General and administrative

General and administrative expenses consist primarily of salaries, employee benefits, stock-based compensation expense and travel expense related to our executives, finance team, and administrative employees. It also consists of legal, consulting, and professional fees, rent and lease expense pertaining to our headquarters and international offices, business insurance costs and certain other costs.

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

General and administrative

 

$

6,797

 

 

$

11,411

 

 

$

(4,614

)

 

 

(40.4

%)

The decrease in general and administrative expenses for the three months ended September 30, 2024, as compared to the three months ended September 30, 2023, was primarily attributable to (i) a nonrecurring charge of $3.2 million in September 2023 as we fully amortized the remaining prepaid balance upon termination of the Service Agreement with a related party consultant, and (ii) lower payroll costs of $1.5 million largely as a result of severance costs recognized during the three months ended September 30, 2023. General and administrative expenses as a percentage of revenue were 67.1% for the three months ended September 30, 2024, compared to 37.4% for the three months ended September 30, 2023, largely due to the lower level of revenue.

Interest income (expense), net

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Interest income (expense), net

 

$

24

 

 

$

(108

)

 

$

132

 

 

 

122.2

%

Interest income earned on our cash equivalents and interest expense incurred during the three months ended September 30, 2024 were not significant. Interest income and interest expense for the three months ended September 30, 2023 was approximately $0.2 million and nearly $0.4 million, respectively. Interest expense during the three months ended September 30, 2023, primarily consisted of letter of credit and commitment fees on our Credit Facility, along with associated debt issue cost amortization.

Loss from unconsolidated subsidiary

 

 

Three months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Loss from unconsolidated subsidiary

 

$

256

 

 

$

336

 

 

$

(80

)

 

 

(23.8

%)

The losses from unconsolidated subsidiary for the three months ended September 30, 2024 and 2023, represent our share of the net operating losses incurred by Alpha Steel during each period.

 

29


 

Results of Operations - Nine Months Ended September 30, 2024 Compared to Nine Months Ended September 30, 2023

 

 

Nine months ended September 30,

 

 

 

2024

 

 

2023

 

(in thousands, except percentages)

 

Amounts

 

 

Percentage of revenue

 

 

Amounts

 

 

Percentage of revenue

 

Revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

$

27,092

 

 

 

79.3

%

 

$

80,927

 

 

 

78.0

%

Service

 

 

7,061

 

 

 

20.7

%

 

 

22,874

 

 

 

22.0

%

Total revenue

 

 

34,153

 

 

 

100.0

%

 

 

103,801

 

 

 

100.0

%

Cost of revenue:

 

 

 

 

 

 

 

 

 

 

 

 

Product

 

 

34,632

 

 

 

101.4

%

 

 

73,694

 

 

 

71.0

%

Service

 

 

8,278

 

 

 

24.2

%

 

 

22,492

 

 

 

21.7

%

Total cost of revenue

 

 

42,910

 

 

 

125.6

%

 

 

96,186

 

 

 

92.7

%

Gross profit (loss)

 

 

(8,757

)

 

 

(25.6

%)

 

 

7,615

 

 

 

7.3

%

Operating expenses

 

 

 

 

 

 

 

 

 

 

 

 

Research and development

 

 

4,441

 

 

 

13.0

%

 

 

5,716

 

 

 

5.5

%

Selling and marketing

 

 

6,830

 

 

 

20.0

%

 

 

9,887

 

 

 

9.5

%

General and administrative

 

 

19,374

 

 

 

56.7

%

 

 

31,053

 

 

 

29.9

%

Total operating expenses

 

 

30,645

 

 

 

89.7

%

 

 

46,656

 

 

 

44.9

%

Loss from operations

 

 

(39,402

)

 

 

(115.4

%)

 

 

(39,041

)

 

 

(37.6

%)

Interest expense, net

 

 

(111

)

 

 

(0.3

%)

 

 

(194

)

 

 

(0.2

%)

Gain from disposal of investment in unconsolidated subsidiary

 

 

4,085

 

 

 

12.0

%

 

 

898

 

 

 

0.9

%

Other income (expense), net

 

 

122

 

 

 

0.4

%

 

 

(265

)

 

 

(0.3

%)

Loss from unconsolidated subsidiary

 

 

(767

)

 

 

(2.2

%)

 

 

(336

)

 

 

(0.3

%)

Loss before income taxes

 

 

(36,073

)

 

 

(105.6

%)

 

 

(38,938

)

 

 

(37.5

%)

Provision for income taxes

 

 

(298

)

 

 

(0.9

%)

 

 

(175

)

 

 

(0.2

%)

Net loss

 

$

(36,371

)

 

 

(106.5

%)

 

$

(39,113

)

 

 

(37.7

%)

Revenue

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Product

 

$

27,092

 

 

$

80,927

 

 

$

(53,835

)

 

 

(66.5

)%

Service

 

 

7,061

 

 

 

22,874

 

 

 

(15,813

)

 

 

(69.1

)%

Total revenue

 

$

34,153

 

 

$

103,801

 

 

$

(69,648

)

 

 

(67.1

)%

Product revenue

The decrease in product revenue for the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023, was primarily due to a decrease of 73% in the amount of MW produced as activity has been adversely impacted by customer project delays. This was partially offset by an increase in ASP for the nine months ended September 30, 2024, as a result of better pricing and project mix changes as compared to the nine months ended September 30, 2023.

Service revenue

The decrease in service revenue for the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023, primarily resulted from (i) a decrease of 63% in the amount of MW delivered as a result of timing and lower volume of projects available for delivery, and (ii) a decrease of 16% in ASP as compared to the nine months ended September 30, 2023, and (iii) lower engineering consulting and software revenues.

 

30


 

Cost of revenue and gross profit (loss)

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Product

 

$

34,632

 

 

$

73,694

 

 

$

(39,062

)

 

 

(53.0

)%

Service

 

 

8,278

 

 

 

22,492

 

 

 

(14,214

)

 

 

(63.2

)%

Total cost of revenue

 

$

42,910

 

 

$

96,186

 

 

$

(53,276

)

 

 

(55.4

)%

Gross profit (loss)

 

$

(8,757

)

 

$

7,615

 

 

$

(16,372

)

 

 

(215.0

)%

Gross profit (loss) percentage of revenue

 

 

(25.6

%)

 

 

7.3

%

 

 

 

 

 

 

The decrease in cost of revenue for the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023, was primarily driven by (i) a decrease of 73% in MW produced, (ii) a decrease of 63% in shipping and logistics activity, and (iii) by lower obsolete and slow-moving inventory provisions. Partially offsetting the decrease were higher warranty and remediation costs.

Our gross margin percentage of revenue for the nine months ended September 30, 2024 was a negative 25.6%, as compared to a positive 7.3% for the nine months ended September 30, 2023.

We had negative gross margin for the nine months ended September 30, 2024 as (i) production volumes were not sufficient to cover certain relatively fixed overhead costs, and (ii) our service revenue was not sufficient to fully cover our warehousing and certain other costs.

We had positive gross margin for the nine months ended September 30, 2023 largely due to (i) sufficiently high production activity levels allowing us to cover certain relatively fixed overhead costs, (ii) a mix of higher margin product revenue as compared to service revenue, (iii) good product ASP, as well as (iv) improvements in our direct costs due to our design-to-value efforts, low levels of remediation and warranty costs, and reduced overhead spending compared to prior periods resulting from our other cost control efforts, including headcount reductions.

Research and development

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Research and development

 

$

4,441

 

 

$

5,716

 

 

$

(1,275

)

 

 

(22.3

%)

The decrease in research and development expenses for the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023, was primarily attributable to (i) lower spending on lab and other research activities of $0.4 million, (ii) lower payroll costs of $0.4 million, due mainly to severance costs recognized during the nine months ended September 30, 2023, (iii) lower stock-based compensation costs of $0.2 million, and (iv) lower software licensing and subscription costs of approximately $0.2 million. Research and development expenses as a percentage of revenue were 13.0% for the nine months ended September 30, 2024, as compared to 5.5% for the nine months ended September 30, 2023. The increase in the percentage research and development costs to revenue for the nine months ended September 30, 2024, is largely a function of the lower level of revenue.

Selling and marketing

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Selling and marketing

 

$

6,830

 

 

$

9,887

 

 

$

(3,057

)

 

 

(30.9

%)

The decrease in selling and marketing expenses for the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023, was primarily attributable to lower provisions for credit losses of $3.0 million related mainly to charges associated with specific individual customer accounts during each period. We also had lower stock-based compensation costs of $0.6 million, which were mostly offset by higher payroll expense of $0.6 million due to higher average headcount. Selling and marketing costs as a percentage of revenue were 20.0% for the nine months ended September 30, 2024, compared to 9.5% for the nine months ended September 30, 2023.

 

31


 

General and administrative

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

General and administrative

 

$

19,374

 

 

$

31,053

 

 

$

(11,679

)

 

 

(37.6

%)

The decrease in general and administrative expenses for the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023, was primarily attributable to $3.5 million of lower stock-based compensation expense related primarily to (i) forfeiture of awards in connection with the September 2023 termination of the Service Agreement with a related party as described further in Note 16, "Related party transactions" in Part I, Item 1 above, (ii) forfeiture of awards in connection with our reduction in force in August 2023 and executive terminations during the fourth quarter of 2023, and (iii) the absence of stock-based incentive compensation awards during the nine months ended September 30, 2024, as compared to the nine months ended September 30, 2023. In connection with the termination of the Service Agreement with a related party consultant, we recognized a nonrecurring charge of $3.2 million during the nine months ended September 30, 2023. In addition, the employee and executive terminations described above contributed to lower payroll expense of $2.8 million during the nine months ended September 30, 2024 and we were able to lower our insurance costs by $1.4 million, our legal costs by $0.4 million and our accounting and audit fees by $0.5 million as compared to the nine months ended September 30, 2023, through our cost control initiatives. General and administrative expenses as a percentage of revenue were 56.7% for the nine months ended September 30, 2024, compared to 29.9% for the nine months ended September 30, 2023, largely due to the lower level of revenue.

Interest expense, net

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Interest expense, net

 

$

111

 

 

$

194

 

 

$

(83

)

 

 

(42.8

)%

Interest expense totaled approximately $0.4 million and $1.0 million during the nine months ended September 30, 2024 and 2023, respectively, and primarily consisted of letter of credit and commitment fees on the Credit Facility, along with associated debt issue cost amortization. Our Credit Facility expired unused on April 30, 2024. Interest income earned on our cash equivalents was approximately $0.3 million and $0.8 million during the nine months ended September 30, 2024 and 2023, respectively.

Gain from disposal of investment in unconsolidated subsidiary

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Gain from disposal of investment in unconsolidated subsidiary

 

$

4,085

 

 

$

898

 

 

$

3,187

 

 

 

354.9

%

We sold our interest in our unconsolidated subsidiary, Dimension Energy LLC ("Dimension"), on June 24, 2021. Dimension is a community solar developer based in Atlanta, Georgia that provides renewable energy solutions for local communities in the United States. The sales agreement with Dimension included an earnout provision which provides the potential to receive additional contingent consideration of up to approximately $14.0 million through December 2024, based on Dimension achieving certain performance milestones. The sales agreement also includes a projects escrow release which is an additional contingent consideration to receive $7 million based on Dimension’s completion of certain construction projects in progress at the time of the sale. We made an accounting policy election to account for the contingent gains arising from earnout payments and project escrow releases only when those amounts become realizable in the periods subsequent to the disposal date. During the nine months ended September 30, 2024 and 2023, we received earnout and escrow release payments of $4.1 million and $0.9 million, respectively, that were recognized in accordance with our policy election. Since the sale of our interest in Dimension, we have received a total of $7.4 million in contingent earnout and escrow release payments through September 30, 2024.

Loss from unconsolidated subsidiary

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

$ Change

 

 

% Change

 

Loss from unconsolidated subsidiary

 

$

767

 

 

$

336

 

 

$

431

 

 

 

128.3

%

 

 

32


 

The losses from unconsolidated subsidiary for the nine months ended September 30, 2024 and 2023, represent our share of the net operating losses incurred by Alpha Steel during each period.

Liquidity and Capital Resources

Liquidity

Since our inception, we have financed our operations primarily through sales of shares of common stock, including our IPO in April 2021, issuance of debt and payments from our customers. Our ability to generate positive cash flow from operations is dependent on our level of production, contract payment terms, timely collections from our customers and the strength of our gross margins.

We have incurred cumulative losses since inception and have a history of cash outflows from operations. As of September 30, 2024, we had $8.3 million of cash on hand, $18.9 million of working capital and approximately $64.9 million of remaining capacity available for future sales of our common stock under our ATM program as defined and described further in Note 4, "ATM program" in the notes to condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report. There can be no assurance that we will be able to sell any additional shares of our common stock under the ATM program and no assurance regarding the price at which we will be able to sell such shares, and any sales of our common stock under the ATM program may be at prices that result in additional dilution to our existing stockholders.

On December 22, 2023, we received notification from The Nasdaq Stock Market LLC (“Nasdaq”) that we were not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5450(a)(1), because the closing bid price of the Company’s common stock was below $1.00 per share for 30 consecutive business days. In accordance with Nasdaq Listing Rule 5810(c)(3)(A), we were initially given a period of 180 calendar days from the date of notification, or until June 19, 2024, to regain compliance with the minimum bid price requirement, which was not achieved. Effective May 31, 2024, trading in our common stock transferred from the Nasdaq Global Market to the Nasdaq Capital Market. On June 21, 2024, we received notification from Nasdaq that we were approved for an additional 180-day period, or until December 17, 2024, to cure the bid price deficiency in accordance with Nasdaq Listing Rule 5810(c)(3)(A). In order to achieve compliance with the Nasdaq requirements for continued listing, on November 8, 2024, our stockholders approved an amendment to our Amended and Restated Certificate of Incorporation to effect a reverse stock split at a ratio ranging from 1-for-5 to 1-for 25, with the exact ratio to be determined by our Board of Directors. At this time, our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days, Nasdaq will provide written notification that we have achieved compliance with this minimum bid price requirement. If we fail to regain compliance with the minimum bid price requirement during this second 180-day period, then Nasdaq will notify us that our common stock is subject to delisting.

Effective April 30, 2024, our Senior Secured Revolving Credit Facility ("Credit Facility) expired unused and has not been replaced as of September 30, 2024. As described further in Note 18, "Subsequent events" in the notes to consolidated condensed financial statements in Part I, Item 1 of this Quarterly Report, we signed a binding term sheet on November 8, 2024, with an institutional investor, for the issuance of $15 million in long-term senior secured promissory notes, along with warrants to purchase 17.5 million shares of our common stock at an exercise price of $0.01 per share. Closing on the transaction is expected on or before November 30, 2024.

At September 30, 2024, we had a contractual obligation that could require us to make additional capital contributions of up to $0.8 million to Alpha Steel, as well as make a minimum level of purchases from Alpha Steel, as described further in Note 3, "Equity method investment" in the notes to condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report. In the event we were to fail to meet our minimum required purchase commitments during a specified period, including the current period from January 1, 2024 to June 30, 2025, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $4.0 million in the aggregate.

In addition, we have made efforts during 2024 to enhance and strengthen our management leadership team. In August 2024, we hired Yann Brandt as our new Chief Executive Officer and, prior to that, we named Tamara Mullings, a former member of our Board of Directors, as our Senior Vice President, North America Sales and Alberto Echeverria, a former Chief Executive Officer and Executive Member of the Board of STI Norland, as our Senior Vice President, International Sales.

In accordance with Accounting Standards Codification ("ASC") 205-40, Going Concern, we have evaluated whether there are conditions and events, considered in the aggregate, which raise substantial doubt about our ability to continue as a going concern within one year after the date our condensed consolidated financial statements are issued.

 

33


 

Management plans to address the liquidity needs of the Company by (i) executing the aforementioned $15 million issuance of long-term senior secured notes, (ii) utilizing receipt of additional contingent earnout payments from our investment in Dimension that we sold in 2021, (iii) implementing additional cost savings steps, which could impact the level of services currently provided by third parties and our existing headcount, and (iv) utilizing capacity available for future sales of our common stock under the ATM program. We believe execution of these plans will allow us to fund our operations for at least one year from the date of issuance of our condensed consolidated financial statements.

The successful execution of these plans is subject to various risks and uncertainties. These include, but are not limited to, market conditions, the Company's ability to achieve projected cost savings and revenue targets and access to financing on favorable terms. There can be no assurance that these plans will be realized as anticipated and actual results may differ materially from those projected.

Statements of cash flows

The following table shows our cash flows from operating activities, investing activities and financing activities for the stated periods:

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

Net cash used in operations

 

$

(18,008

)

 

$

(46,383

)

Net cash provided by (used in) investing activities

 

 

930

 

 

 

(462

)

Net cash provided by financing activities

 

 

3

 

 

 

34,133

 

Effect of exchange rate changes on cash and cash equivalents

 

 

95

 

 

 

(153

)

Decrease in cash and cash equivalents

 

$

(16,980

)

 

$

(12,865

)

Operating activities

During the nine months ended September 30, 2024, we used approximately $26.3 million of cash to fund a portion of our current period expenditures for personnel and facilities, legal and professional fees, insurance, research and development and various other operating activities. This compares to approximately $18.6 million of cash used during the nine months ended September 30, 2023, also to fund a portion of our prior period expenditures for various operating activities as described above.

Approximately $8.3 million of cash was generated from working capital and other decreases during the nine months ended September 30, 2024, primarily as a result of production activity levels and the timing of customer receipts, including the settlement reached with a major customer as described further in Note 5, "Accounts receivable, net" in the notes to condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report, and payments to our vendors. During the nine months ended September 30, 2023, we used approximately $27.8 million of cash for working capital and other increases as a result of production activity and the timing of customer receipts and vendor payments, net of inventory utilization.

Our working capital decreased by approximately $35.0 million from $53.8 million at December 31, 2023 to $18.9 million at September 30, 2024. The decrease was largely attributable to (i) the use of cash to fund current period expenditures as described above and (ii) the impact of lower activity levels on the amount of billed and unbilled accounts receivables during the nine months ended September 30, 2024.

Investing activities

During the nine months ended September 30, 2024, we made additional equity investments of $1.8 million in Alpha Steel, a manufacturing partnership with Taihua, in which we hold a 45% interest. Pursuant to our agreement with Alpha Steel, we could be required to make up to $0.8 million in future additional capital contributions as Alpha Steel continues to expand production. We also spent nearly $1.4 million, mainly for tooling and new computer and IT equipment, as well as leasehold improvements, during the nine months ended September 30, 2024. In addition, we received $4.1 million of contingent earnout payments in connection with the June 2021 sale of our equity interest in Dimension.

During the nine months ended September 30, 2023, we made (i) an initial equity investment of $0.9 million in Alpha Steel, (ii) received $0.9 million in contingent payments from escrow in connection with the sale of our equity interest in Dimension as described above, and (iii) spent nearly $0.5 million for leasehold improvements, tooling, software, and new computer and IT equipment.

 

34


 

Financing activities

During the nine months ended September 30, 2023, we sold newly issued shares of our common stock in various daily transactions under our ATM program, receiving cash proceeds of $34.0 million. We also received $0.2 million of proceeds from employee exercises of stock options.

Revolving line of credit

Our Credit Facility, entered into in 2021 with various lenders, including Barclays Bank PLC, as issuing lender, the swingline lender and as administrative agent, expired unused on April 30, 2024. The Credit Facility has not currently been replaced.

Critical Accounting Policies and Significant Management Estimates

Preparation of condensed consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements, and the reported revenue and expenses during the period. Estimates are used for calculating the measure of progress of our solar tracker projects and deriving the standalone selling prices of the individual performance obligations when determining amounts to recognize for revenue, estimating allowances for credit losses and slow-moving and obsolete inventory, determining useful lives of long-lived assets and the estimated fair value of those assets for impairment assessments, and estimating the fair value of investments, stock compensation awards, warranty liabilities and federal and state taxes, including tax valuation allowances, as well as other contingencies. We base our estimates on historical experience and anticipated results, trends, and various other assumptions that we believe are reasonable under the circumstances, including assumptions as to future events. Actual results could differ from those estimates due to risks and uncertainties.

To the extent that there are differences between our estimates and actual results, our future financial statement presentation, financial condition, results of operations and cash flows will be affected. We believe that the accounting policies discussed below are critical to understanding our historical and future performance, as these policies relate to the more significant areas involving management’s judgments and estimates. Critical accounting policies and estimates are those that we consider the most important to the portrayal of our financial condition and results of operations because they require our most difficult, subjective or complex judgments, often as a result of the need to make estimates about the effects of matters that are inherently uncertain.

We believe that the accounting policies described below involve a significant degree of judgment and complexity. Accordingly, we believe these are the most critical to aid in fully understanding and evaluating our condensed consolidated financial condition and results of operations.

Revenue recognition

Our accounting policy on revenue recognition may be found in Note 2, "Summary of significant accounting policies" in our condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report.

Judgments and assumptions

The timing and amounts of revenue and cost of revenue recognition, as well as recording of related receivables and deferred revenue, is highly dependent on our identification of performance obligations in each contract and our estimates by contract of total project cost and our progress toward project completion as of each period end. Certain estimates are subject to factors outside of our control that may impact our suppliers and the global supply chain. As an example, we began to experience increases in steel prices and shipping and logistics costs, as well as delays in delivery of our products to customers during 2021, which negatively impacted our results of operations as we were not able to recover all of the additional costs under certain of our fixed fee contracts. In addition, regulatory, tariff and import concerns such as those caused by the UFLPA and the Solar Circumvention Investigation have in the past, and may continue to, affect our ability to obtain project materials and may delay the timing of customer project activity which has had in the past, and may continue to have, an adverse impact on our results of operations, including the expected timing of the recognition of revenue needed to cover our relatively fixed overhead costs. We base our estimates on the best information available at each period end, but future events and their effects cannot be determined with certainty, and actual results could differ materially from our assumptions and estimates.

 

35


 

Accounts receivable, net

Our accounting policy relating to our accounts receivable and allowance for credit losses may be found in Note 2, "Summary of significant accounting policies" in our condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report.

Judgments and assumptions

The allowance for credit losses is based on the lifetime expected credit loss of our customer accounts. To assess the lifetime expected credit loss, we utilize a loss rate method that takes into consideration historical experience and certain other factors, as appropriate, such as credit quality and current economic or other conditions that may affect a customer's ability to pay. This method accelerates the recognition of expected credit losses as compared to the incurred loss model used prior to 2023 and may result in material differences between our estimates and actual collection results. We may also have greater fluctuations in our credit loss expense over time based on changes in our historical experience or changes in estimates of future economic conditions which may not adequately reflect future actual customer payment activity.

Adjustments to the allowance are largely dependent on historical experience involving amounts previously collected from our customers in recent years or based on specific changes in a customer's ability to pay. As an example, during the nine months ended September 30, 2024 and 2023, we recognized credit loss provisions of $1.3 million and $4.3 million, respectively, in our selling and marketing expenses, primarily related to a specific customer's inability to fully pay amounts owed. Historical experience, when used in making such adjustments, may not reflect current actual experience.

Warranty

Our accounting policy relating to our warranty obligations may be found in Note 2, "Summary of significant accounting policies" in our condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report.

Judgments and assumptions

We base our estimated warranty obligations on available industry data relating to the nature and frequency of product failure rates and, where possible, on our historical experience, to make estimates of costs to address future claims. These estimates are inherently uncertain given our relatively short history of sales, and changes to our historical or projected warranty experience or fluctuations in available industry data may result in material changes to our warranty reserves in the future. Additionally, we make estimates of what costs we believe will be recoverable from the manufacturers of our products that we use to offset our obligations to our customers.

While we periodically monitor our warranty activities and claims, if actual costs incurred were to be different from our estimates, we would recognize adjustments to our warranty reserves in the period in which those differences arise or are identified. Such adjustments could be material to cost of revenue in our results of operations in the period the adjustments are made.

Stock-based compensation

Our accounting policy relating to our stock-based compensation may be found in Note 2, "Summary of significant accounting policies" in our condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report.

Judgments and assumptions

The Black-Scholes model and Monte Carlo simulations rely on various assumptions, in addition to the exercise price of an option award and the value of our common stock on the date of grant. These assumptions include:

Expected Term: The expected term represents the period that the Company’s stock-based awards are expected to be outstanding and is calculated for option grants as the average of the option vesting and contractual terms, based on the simplified method, as we do not have sufficient historical exercise data to provide a reasonable basis upon which to estimate the expected term for options granted. The simplified method deems the term to be the average of the time-to-vesting and the contractual life of the options. The contractual life of an option may be up to 10 years. Monte Carlo simulations, as described below, estimate the derived service period of awards with market conditions.

 

36


 

Expected Volatility: Since the Company did not have a trading history of its common stock prior to our IPO and since such trading history subsequent to our IPO is limited and may be less than the expected term of an award, the expected volatility is derived from a weighted average of (i) our historical volatility over our entire trading history, with respect to certain more recent awards, and (ii) the average historical stock volatilities of several public companies within the Company’s industry that it considers to be comparable to its business over a period equivalent to the expected term of the stock option grants, or awards granted with market conditions.

Risk-Free-Interest-Rate: The Company bases the risk-free interest rate on the implied yield available on U.S. Treasury zero-coupon issues with a remaining term equivalent to the expected term or derived service or performance period.

Expected Dividend: The Company has not issued any dividends in its history and does not expect to issue dividends over the life of option grants or awards with market conditions and, therefore, has estimated the dividend yield to be zero.

We used Monte Carlo simulations for certain awards granted with market conditions which provided an estimated average present value for each award based on a simulation assuming Geometric Brownian Motion in a risk-neutral framework using up to 250,000 simulation paths to determine the derived service and vesting periods.

Our use of the simplified method for estimating the expected outstanding term of our options may differ significantly from future actual exercise patterns of our option holders. Estimates of the outstanding term of our options that are less than the actual exercise patterns of our option holders, may result in lower recognized expense. Alternatively, our recognized expense may be higher if our option holders exercise their options sooner than our estimates project.

Similarly, our use of a volatility estimate based on historical stock volatilities of a peer group of other public companies may differ significantly from the actual future volatility of our stock over the term options or awards with market conditions are held. Higher estimated volatility compared to future actual results may result in higher recognized expense and alternatively, lower expected volatility compared to future actual results may result in lower recognized expense.

Changes to any of our assumptions, but particularly our estimates of expected term or derived service period and volatility, could change the fair value of our options or awards with market conditions and impact the amount of stock-based compensation expense we report each period.

Impairment

Our accounting policies relating to impairment of our long-lived assets held for use, including intangible assets, and of goodwill may be found in Note 2, "Summary of significant accounting policies" in our condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report.

Judgments and assumptions

Key judgments and assumptions involving our assessment of impairment of our long-lived and intangible assets, as well as goodwill, may include:

Determination of whether events or changes in circumstances indicate that the carrying value of our long-lived assets or goodwill might be impaired. Such factors to consider may include an evaluation of changes in the business or regulatory climate, market conditions or other events impacting our operations;
Estimating future cash flows of our long-lived assets or asset groups and intangible assets, which may involve assumptions as to the lowest level of our assets at which cash flows are generated, including future growth and risk-adjusted discount rates, as well as a terminal growth rate or value and future market conditions;
Estimates of assumptions a market participant would use in determining the fair value of the affected long-lived assets or asset groups; and
Estimating the fair value of the consolidated company.

 

37


 

In estimating the fair value of the consolidated company, we used our market capitalization based on our closing stock price on the Nasdaq Capital Market at September 30, 2024. Our daily closing stock price is affected by numerous factors, some of which may not directly involve the operations of the company and, historically, has demonstrated high volatility.

We did not identify any impairments of our long-lived assets, intangible assets or goodwill during the nine months ended September 30, 2024 and 2023.

JOBS Act accounting election

We are an emerging growth company, as defined in the JOBS Act. Under the JOBS Act, emerging growth companies can delay adopting new or revised accounting standards until such time as those standards apply to private companies. We elected to use the allowed extended transition period for adopting new or revised accounting standards.

 

Non-GAAP Financial Measures

Adjusted EBITDA, adjusted net loss and adjusted earnings per share ("EPS")

We utilize Adjusted EBITDA, Adjusted Net Loss, and Adjusted EPS as supplemental measures of our performance. We define Adjusted EBITDA as net loss plus (i) provision for (benefit from) income taxes, (ii) interest expense, net, (iii) depreciation expense, (iv) amortization of intangibles, (v) stock-based compensation, and (vi) Chief Executive Officer ("CEO") transition costs, non-routine legal fees, severance and certain other costs (credits). We also deduct the contingent gains arising from earnout payments and project escrow releases relating to the disposal of our investment in an unconsolidated subsidiary from net loss in arriving at Adjusted EBITDA. We define Adjusted Net Loss as net loss plus (i) amortization of debt issue costs and intangibles, (ii) stock-based compensation, (iii) CEO transition costs, non-routine legal fees, severance and certain other costs (credits), and (iv) the income tax expense (benefit) of those adjustments, if any. We also deduct the contingent gains arising from earnout payments and project escrow releases relating to the disposal of our investment in an unconsolidated subsidiary in arriving at Adjusted Net Loss. Adjusted EPS is defined as Adjusted Net Loss on a per share basis using our weighted average diluted shares outstanding.

Adjusted EBITDA, Adjusted Net Loss, and Adjusted EPS are intended as supplemental measures of performance that are neither required by, nor presented in accordance with, U.S. GAAP. We present Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS, because we believe they assist investors and analysts in comparing our performance across reporting periods on an ongoing basis by excluding items that we do not believe are indicative of our core operating performance. In addition, we use Adjusted EBITDA, Adjusted Net Loss and Adjusted EPS to evaluate the effectiveness of our business strategies.

Among other limitations, Adjusted EBITDA, Adjusted Net Loss, and Adjusted EPS do not reflect (i) our cash expenditures, or future requirements, for capital expenditures or contractual commitments, and (ii) the impact of certain cash charges resulting from matters we consider not to be indicative of our ongoing operations. Further, the adjustments noted in Adjusted EBITDA do not reflect the impact of any income tax expense or benefit. Additionally, other companies in our industry may calculate Adjusted EBITDA, Adjusted Net Loss, and Adjusted EPS differently than we do, which limits its usefulness as a comparative measure.

Because of these limitations, Adjusted EBITDA, Adjusted Net Loss, and Adjusted EPS should not be considered in isolation or as substitutes for performance measures calculated in accordance with U.S. GAAP, and you should not rely on any single financial measure to evaluate our business. These non-GAAP financial measures, when presented, are reconciled to the most closely applicable U.S. GAAP measure as disclosed below:

 

38


 

 

 

Three months ended September 30,

 

 

 

2024

 

 

2023

 

(in thousands, except shares and per share data)

 

Adjusted EBITDA

 

 

Adjusted Net Loss

 

 

Adjusted EBITDA

 

 

Adjusted Net Loss

 

Net loss per U.S. GAAP

 

$

(15,359

)

 

$

(15,359

)

 

$

(16,937

)

 

$

(16,937

)

Reconciling items -

 

 

 

 

 

 

 

 

 

 

 

 

Provision for (benefit from) income taxes

 

 

244

 

 

 

 

 

 

166

 

 

 

 

Interest (income) expense, net

 

 

(24

)

 

 

 

 

 

108

 

 

 

 

Amortization of debt issue costs in interest expense

 

 

 

 

 

 

 

 

 

 

 

177

 

Depreciation expense

 

 

284

 

 

 

 

 

 

205

 

 

 

 

Amortization of intangibles

 

 

133

 

 

 

133

 

 

 

133

 

 

 

133

 

Stock-based compensation

 

 

1,319

 

 

 

1,319

 

 

 

1,192

 

 

 

1,192

 

CEO transition(a)

 

 

1,229

 

 

 

1,229

 

 

 

 

 

 

 

Non-routine legal fees(b)

 

 

 

 

 

 

 

 

98

 

 

 

98

 

Severance costs(c)

 

 

 

 

 

 

 

 

2,088

 

 

 

2,088

 

Other costs(d)

 

 

 

 

 

 

 

 

3,241

 

 

 

3,241

 

Adjusted Non-GAAP amounts

 

$

(12,174

)

 

$

(12,678

)

 

$

(9,706

)

 

$

(10,008

)

 

 

 

 

 

 

 

 

 

 

 

 

 

U.S. GAAP net loss per share:

 

 

 

 

 

 

 

 

 

 

 

 

Diluted

 

N/A

 

 

$

(0.12

)

 

N/A

 

 

$

(0.14

)

 

 

 

 

 

 

 

 

 

 

 

 

 

Adjusted Non-GAAP net loss per share (Adjusted EPS):

 

 

 

 

 

 

 

 

 

 

 

 

Diluted

 

N/A

 

 

$

(0.10

)

 

N/A

 

 

$

(0.08

)

 

 

 

 

 

 

 

 

 

 

 

 

 

Weighted-average common shares outstanding:

 

 

 

 

 

 

 

 

 

 

 

 

Diluted

 

N/A

 

 

 

127,380,292

 

 

N/A

 

 

 

119,793,821

 

 

(a)

We incurred one-time incremental recruitment fees in connection with hiring a new CEO in August 2024. In addition, we agreed to upfront and incremental sign-on bonuses (collectively, the "sign-on bonuses"), a portion of which will be paid to our CEO in 2024, with clawback provisions over the next two years, and a portion of which will be paid annually over the next two years, all contingent upon continued employment. These sign-on bonuses will be expensed over the next two years, ending on October 1, 2026, to reflect the required service periods. We do not view these sign-on bonuses as being part of the normal on-going compensation arrangements for our CEO.

(b)

Non-routine legal fees represent legal fees and other costs incurred for specific matters that were not ordinary or routine to the operations of the business.

(c)

Severance costs in 2023 were due to restructuring changes.

(d)

Other costs in 2023 included the write-off of remaining prepaid costs resulting from termination of our consulting agreement with a related party.

 

 

39


 

 

 

Nine months ended September 30,

 

 

 

2024

 

 

2023

 

(in thousands, except shares and per share data)

 

Adjusted EBITDA

 

 

Adjusted Net Loss

 

 

Adjusted EBITDA

 

 

Adjusted Net Loss

 

Net loss per U.S. GAAP

 

$

(36,371

)

 

$

(36,371

)

 

$

(39,113

)

 

$

(39,113

)

Reconciling items -

 

 

 

 

 

 

 

 

 

 

 

 

Provision for (benefit from) income taxes

 

 

298

 

 

 

 

 

 

175

 

 

 

 

Interest expense, net

 

 

111

 

 

 

 

 

 

194

 

 

 

 

Amortization of debt issue costs in interest expense

 

 

 

 

 

236

 

 

 

 

 

 

532

 

Depreciation expense

 

 

828

 

 

 

 

 

 

595

 

 

 

 

Amortization of intangibles

 

 

401

 

 

 

401

 

 

 

409

 

 

 

409

 

Stock-based compensation

 

 

4,243

 

 

 

4,243

 

 

 

9,044

 

 

 

9,044

 

Gain from disposal of investment in unconsolidated subsidiary(a)

 

 

(4,085

)

 

 

(4,085

)

 

 

(898

)

 

 

(898

)

CEO transition(b)

 

 

1,229

 

 

 

1,229

 

 

 

 

 

 

 

Non-routine legal fees(c)

 

 

66

 

 

 

66

 

 

 

181

 

 

 

181

 

Severance costs(d)

 

 

 

 

 

 

 

 

2,075

 

 

 

2,075

 

Other costs(e)

 

 

 

 

 

 

 

 

3,241

 

 

 

3,241

 

Adjusted Non-GAAP amounts

 

$

(33,280

)

 

$

(34,281

)

 

$

(24,097

)

 

$

(24,529

)

 

 

 

 

 

 

 

 

 

 

 

 

 

U.S. GAAP net loss per share:

 

 

 

 

 

 

 

 

 

 

 

 

Diluted

 

N/A

 

 

$

(0.29

)

 

N/A

 

 

$

(0.35

)

 

 

 

 

 

 

 

 

 

 

 

 

Adjusted Non-GAAP net loss per share (Adjusted EPS):

 

 

 

 

 

 

 

 

 

 

 

 

Diluted

 

N/A

 

 

$

(0.27

)

 

N/A

 

 

$

(0.22

)

 

 

 

 

 

 

 

 

 

 

 

 

 

Weighted-average common shares outstanding:

 

 

 

 

 

 

 

 

 

 

 

 

Diluted

 

N/A

 

 

 

126,234,997

 

 

N/A

 

 

 

112,794,562

 

 

(a)

We exclude the gain from collections of contingent contractual amounts arising from the sale in 2021 of our investment in an unconsolidated subsidiary as these amounts are not considered part of our normal ongoing operations.

(b)

We incurred one-time incremental recruitment fees in connection with hiring a new CEO in August 2024. In addition, we agreed to upfront and incremental sign-on bonuses (collectively, the "sign-on bonuses"), a portion of which will be paid to our CEO in 2024, with clawback provisions over the next two years, and a portion of which will be paid annually over the next two years, all contingent upon continued employment. These sign-on bonuses will be expensed over the next two years, ending on October 1, 2026, to reflect the required service periods. We do not view these sign-on bonuses as being part of the normal on-going compensation arrangements for our CEO.

(c)

Non-routine legal fees represent legal fees and other costs incurred for specific matters that were not ordinary or routine to the operations of the business.

(d)

Severance costs in 2023 were due to restructuring changes.

(e)

Other costs in 2023 included the write-off of remaining prepaid costs resulting from termination of our consulting agreement with a related party.

 

ITEM 3. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

We are exposed to market risk in the ordinary course of our business. Market risk represents the risk of loss that may impact our financial position due to adverse changes in financial market prices and rates. Our market risk exposure is primarily a result of customer concentrations and fluctuations in steel, aluminum and logistics/transportation prices. We do not hold or issue financial instruments for trading purposes.

Fair value of financial instruments

Our financial instruments consist of cash, cash equivalents, accounts receivable, short-term loans and accounts payable. Cash, cash equivalents, accounts receivable, short-term loans and accounts payable are stated at their carrying value, which approximates fair value due to the short time to the expected receipt or payment date.

 

40


 

We had $8.3 million of cash and cash equivalents on hand, the vast majority of which was located in the United States, and no debt outstanding as of September 30, 2024. We regularly maintain cash balances with various financial institutions that exceed federally insured amounts, but we have experienced no losses associated with these amounts to date. We also took action in early 2023 to reallocate cash balances between different financial institutions based on our assessment as to the financial health of certain institutions.

Certain of our cash equivalents include deposits in money market funds that invest primarily in short-term securities issued or guaranteed by the U.S. government or its agencies or instrumentalities and contain no restrictions on immediate redemption. The carrying value for these money market fund deposits approximates fair value based on quoted prices in active markets for units held (Level 1 classification) and totaled $1.8 million at September 30, 2024 and $13.9 million at December 31, 2023.

We have no other financial instruments as of September 30, 2024 or December 31, 2023, other than cash equivalents, short-term loans and certain non-functional currency intercompany and third-party receivables and payables, which are subject to foreign exchange, interest rate or market risks.

Concentrations of major customers

Our customers include project developers, solar asset owners and EPC contractors that design and build solar energy projects. We extend credit to customers in the normal course of business, often without requiring collateral. We also perform credit analyses and monitor the financial health of our customers to reduce credit risk.

We typically rely on a small number of customers that account for a large portion of our revenue each period and our outstanding receivables at each period end.

Further, our accounts receivables are from companies within or serving the solar industry and, as such, we are exposed to normal industry credit risks. We continually evaluate our reserves for potential credit losses and establish initial reserves based on our expectation of lifetime expected credit losses.

Commodity Price Risk

We subcontract to various contract manufacturers, who manufacture and deliver products directly to our customers. We, therefore, do not procure raw materials and commodities directly, except for items added to our inventory. We are subject to indirect risk from fluctuating market prices of certain commodity raw materials, including steel and aluminum, which are used in our products, through our contract manufacturers, as increases in these commodity prices would increase our cost of procuring subcontracting services. Prices of these raw materials may be affected by supply restrictions or other market factors from time to time. Significant price increases for these raw materials could reduce our operating margins if we are unable to recover such increases in costs from our customers, and could harm our business, financial condition and results of operations.

 

ITEM 4. CONTROLS AND PROCEDURES

Evaluation of Disclosure Controls and Procedures

Our management, with the participation of our Chief Executive Officer and our Chief Financial Officer, evaluated the effectiveness of our disclosure controls and procedures (as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934 (the "Exchange Act") as of the end of the period covered by this Quarterly Report. Based on that evaluation, our Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were effective as of September 30, 2024 in providing reasonable assurance that information required to be disclosed by us in reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the Securities and Exchange Commission's rules and forms, and that such information is accumulated and communicated to our management, including our Chief Executive Officer and Chief Financial Officer, as appropriate, to allow timely decisions regarding required disclosures.

Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.

 

41


 

Changes in Internal Control Over Financial Reporting

There were no changes in our internal control over financial reporting that occurred during the three months ended September 30, 2024, that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

We hired a new President and Chief Executive Officer effective August 19, 2024, who assumed the duties of evaluating the effectiveness of our disclosure controls and procedures previously performed by our Chairman of the Board of Directors.

 

 

42


 

PART II - OTHER INFORMATION

From time to time, we may become involved in various claims, lawsuits, investigations, and other proceedings, arising in the normal course of business.

In March of 2023, CBP issued notices of tariff assessment that indicated an action taken at the Import Specialist (i.e., the port) level with respect to merchandise imported from Thailand under entry number 004-1058562-5 (the “625 Assessment”) and entry number 004-1063793-9 (the “Original 939 Assessment”, and collectively with the 625 Assessment, the “Original CBP Assessments”). The Original CBP Assessments related to certain torque beams that are used in our Voyager+ product that were imported in 2022. In the Original CBP Assessments, CBP asserted that Section 301 China tariffs, Section 232 steel and aluminum tariffs, and antidumping and countervailing duties applied to the merchandise. Based on correspondence received to date from CBP and our calculations based on applicable duty and tariff rates, the 625 Assessment is currently for approximately $2.84 million. In September of 2023, CBP informed us (the "Revised 939 Assessment", and together with the 625 Assessment, the "Revised CBP Assessments") that the amount owed under the Original 939 Assessment was being revised downward to approximately $2.01 million. In particular, CBP accepted our position that the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, previously assessed under the Original 939 Assessment are not applicable as they are only applicable to articles that originate in China and that, in this case, the finished goods are products of Thailand.

Upon review of the facts involved, and in consultation with outside legal counsel, we believe that the remaining amounts claimed in the Revised CBP Assessments are incorrect. In particular, the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, are not applicable under the 625 Assessment for the same reason stated above with respect to the Revised 939 Assessment, which has been accepted by CBP. Moreover, with respect to both Revised CBP Assessments, we believe that the goods in question were properly classified as parts of structures at the time of importation and that when properly classified, the beams and other materials are not subject to Section 232 duties applicable to more basic steel products.

CBP has legally finalized both Revised CBP Assessments. We filed a formal protest for the 625 Assessment in September of 2023 and for the Revised 939 Assessment in March of 2024. Based on the above, and under the relevant accounting guidance related to loss contingencies, we have made no accrual for the amounts claimed by CBP as of September 30, 2024, as we do not consider these amounts to be a probable obligation, as such term is defined and interpreted under the relevant accounting guidance, for us at this time. However, because matters of this nature are subject to inherent uncertainties, and unfavorable rulings or developments, including future assessments of additional duties or tariffs owed in respect of other shipments or other materials beyond what is presently included in the Revised CBP Assessments, could occur despite our belief that the tariffs and duties asserted are incorrect, there can be no certainty that the Company may not ultimately incur charges that are not currently recorded as liabilities. Since the outcome of these matters cannot be predicted with certainty, the costs associated with them could have a material adverse effect on our consolidated results of operations, financial position, or liquidity.

 

ITEM 1A. RISK FACTORS

We are subject to a number of risks that if realized could adversely affect our business, strategies, prospects, financial condition, results of operations and cash flows. Some of the more significant risks and uncertainties we face include those summarized below. The summary below is not exhaustive and is qualified by reference to the full set of risk factors set forth in Item 1A. "Risk Factors" in our 2023 Annual Report. Please carefully consider all of the information in this Quarterly Report and our 2023 Annual Report, including the full set of risks set forth in Item 1A. "Risk Factors" of our 2023 Annual Report, and in our other filings with the SEC before making an investment decision regarding us.

Risks related to our business and our industry – We are a relatively new public company with a history of losses that provides products and services to the solar industry, which is rapidly changing and dependent on being competitive with the price of electricity generated from other sources. We face competition from other companies that may be larger than us and have more financial resources than we have which could impact our ability to compete for new business. We also currently rely on a limited number of customers which may have material adverse effects on our revenue, operating results and cash flows.
Risks related to government regulations and legal compliance – We face risks to the demand for our products from our customers due to changes in, or expiration of, governmental incentives and existing tax credits and other benefits. Additionally,

 

43


 

changes in the trade environment and tax treaties between the United States and other countries, such as China, as well as import tariffs and other laws and regulations that impact the ability to import our products or other products necessary for the construction of solar energy projects, have adversely and could continue to adversely affect our business.
Risks related to manufacturing and supply chain – We face risks in meeting the needs of our customers due to our reliance on a limited number of contract manufacturers, including on their ability to obtain raw materials in a cost effective and timely manner and to provide timely deliveries of finished products to us and our customers.
Risks related to intellectual property – We face the risk of not being able to adequately protect or defend our intellectual property and property rights in the various countries in which we do business.
Risks related to information technology and data privacy – We face reputational and monetary risks from cybersecurity incidents and the unauthorized disclosure of personal or sensitive data relating to our employees, customers, vendors and others.
Risks related to ownership of our common stock – The holders of our common stock face a risk of loss in their investment in us due to fluctuations in our stock price as a result of changing market conditions, any future issuances of stock, our future financial performance, our corporate legal structure, the substantial ownership in our stock by our directors, executive officers and principal stockholders and the potential for our common stock to not be able to trade in active, liquid markets.
Risks related to health epidemics – We face risks of our business being adversely impacted by the effects of future widespread outbreaks of contagious disease. For example, the COVID-19 pandemic caused significant supply chain disruptions beginning in 2020 that, for a period of time, resulted in delays in product delivery and completion and caused increased transportation costs, as well as labor shortages.

As described further in Note 2 in Part I, Item 1 under the section "Liquidity" and in Part I, Item 2 of this Quarterly Report under the section "Liquidity and Capital Resources", we have a history of cash outflows to fund operations.

In addition, on October 11, 2024, we filed a definitive proxy for a special meeting of stockholders scheduled for November 8, 2024, to seek approval of an amendment to our Amended and Restated Certificate of Incorporation to effect a reverse stock split. We may not receive approval from our stockholders for the amendment to our Amended and Restated Certificate of Incorporation, or if approval is given, our Board of Directors may choose not to proceed with the reverse stock split in time to regain compliance with Nasdaq's minimum bid price requirement. Also, if a reverse stock split is effected, there can be no assurance that the market price per share of our common stock will increase in proportion to the reduction in the number of shares of common stock outstanding before the reverse stock split. If we fail to regain compliance with the minimum bid price requirement before December 17, 2024, then Nasdaq will notify us that our common stock is subject to delisting.

 

ITEM 2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS

Unregistered Sales of Equity Securities

None.

Use of Proceeds

None.

Issuer Purchases of Equity Securities

None.

 

44


 

 

ITEM 3. DEFAULTS UPON SENIOR SECURITIES

Not applicable.

 

ITEM 4. MINE SAFETY DISCLOSURES

Not applicable.

 

ITEM 5. OTHER INFORMATION

(a)
Information required to be disclosed in a report on Form 8-K during the period covered by this Form 10-Q, but not reported.

On November 8, 2024, we entered into a binding term sheet with an institutional investor (the “Investor”) to issue to the Investor, in a private placement, senior secured promissory notes (the “Notes”) in an aggregate principal amount of $15 million and common stock purchase warrants (the “Warrants”) to purchase 17,500,000 shares of our common stock.

The Notes will bear interest at a rate of 11% per annum if payable in cash or, at our options, 13% per annum if paid-in-kind and will mature five (5) years from the date of issuance. The Notes will be secured by a first priority lien on substantially all of our assets and will be guaranteed by all of our direct and indirect subsidiaries. The Notes will contain customary covenants for a transaction of this nature, including financial covenants and restrictive covenants. If we prepay the Notes in full within a specified period of time after issuance, we will be required to pay a make-whole payment to the Investor representing a portion of the undiscounted interest payments that otherwise would have been payable to the Investor, the calculation for which will be specified in the definitive documents.

The Warrants are immediately exercisable at an exercise price of $0.01 per share, subject to certain customary adjustments to be set forth in the definitive documentation, and will expire ten (10) years from the date of issuance. At the option of the Investor, the Warrants will also be exercisable on a cashless basis using a customary cashless exercise formula.

We have also agreed that the Investor shall be entitled to nominate one (1) person for election to our board of directors at our annual stockholder meeting. We have also agreed to reimburse the Investor for expenses incurred in connection with the transaction in an amount equal to three percent (3%) of the principal amount of the Notes.

The issuance of the Notes and Warrants will be subject to customary closing conditions and the preparation and negotiation of definitive documents. We currently expect that the issuance of the Notes and Warrants will occur on or prior to November 30, 2024.

(b)
Furnish the information required by Item 407(c)(3) of Regulation S-K (§229.407 of this chapter)

None

(c)
Furnish the information required by Item 408(a) of Regulation S-K (17 CFR 229.408(a)).

None of our directors or officers adopted, amended or terminated a "Rule 10b5-1 trading arrangement" or a "non-Rule 10b5-1 trading arrangement," as each term is defined in Item 408 of Regulation S-K during the three months ended September 30, 2024.

 

45


 

ITEM 6. EXHIBITS

The following exhibits are filed as part of this report:

 

 

Exhibit

Number

 

Description

3.1

**

Amended and Restated Certificate of Incorporation of FTC Solar, Inc.(filed as Exhibit 3.1 to the Registrant's Current Report on Form 8-K filed with the Securities and Exchange Commission on May 3, 2021 and incorporated herein by reference).

3.2

**

Amended and Restated Bylaws of FTC Solar, Inc.(filed as Exhibit 3.2 to the Registrant's Current Report on Form 8-K filed with the Securities and Exchange Commission on May 3, 2021 and incorporated herein by reference).

3.3

**

Certificate of Correction of Amended and Restated Certificate of Incorporation (Filed as Exhibit 3.3 to the Registrant's Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on June 8, 2021 and incorporated herein by reference)

4.1

**

Specimen Common Stock Certificate (filed as Exhibit 4.1 to the Registrant's Registration Statement on Form S-1 filed with the Securities and Exchange Commission on April 29, 2021 and incorporated herein by reference)

10.1

**

Employment Agreement, dated July 17, 2024, between FTC Solar, Inc. and Yann Brandt (filed as Exhibit 10.1 to the Registrant's Current Report on Form 8-K filed with the Securities and Exchange Commission on July 23, 2024 and incorporated herein by reference)

10.2

**

Director Letter, dated August 16, 2024, between FTC Solar, Inc. and Pablo Barahona (filed as Exhibit 10.1 to the Registrant's Current Report on Form 8-K filed with the Securities and Exchange Commission on August 16, 2024 and incorporated herein by reference)

31.1

*

Certification of Principal Executive Officer Pursuant to SEC Rule 13a−14(a)/15d−14(a), as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

31.2

*

Certification of Principal Financial Officer Pursuant to SEC Rule 13a−14(a)/15d−14(a), as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

32.1

*

Certification of Principal Executive Officer Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.

32.2

*

Certification of Principal Financial Officer Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.

101.INS

*

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

101.SCH

*

Inline XBRL Taxonomy Extension Schema With Embedded Linkbase Documents

104

*

Cover Page Interactive Data File (embedded within the Inline XBRL document)

 

*

Filed herewith

**

Incorporated herein by reference

 

46


 

SIGNATURE

 

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.

 

 

 

 

FTC SOLAR, INC.

 

 

 

 

Date: November 12, 2024

/s/ Cathy Behnen

 

Cathy Behnen, Chief Financial Officer

 

 

 

 

47


EX-31.1 2 ftci-ex31_1.htm EX-31.1 EX-31.1

Exhibit 31.1

CERTIFICATION PURSUANT TO

RULES 13a-14(a) AND 15d-14(a) UNDER THE SECURITIES EXCHANGE ACT OF 1934,

AS ADOPTED PURSUANT TO SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

I, Yann Brandt, certify that:

1.
I have reviewed this quarterly report on Form 10-Q of FTC Solar 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(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f) for the registrant and have:
(a)
Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b)
Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c)
Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d)
Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and
5.
The registrant's other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):
(a)
All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and
(b)
Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.

 

Date: November 12, 2024

By:

/s/ Yann Brandt

Yann Brandt

President and Chief Executive Officer

 

 


EX-31.2 3 ftci-ex31_2.htm EX-31.2 EX-31.2

Exhibit 31.2

CERTIFICATION PURSUANT TO

RULES 13a-14(a) AND 15d-14(a) UNDER THE SECURITIES EXCHANGE ACT OF 1934,

AS ADOPTED PURSUANT TO SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

I, Cathy Behnen, certify that:

1.
I have reviewed this quarterly report on Form 10-Q of FTC Solar 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(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f) for the registrant and have:
(a)
Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b)
Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c)
Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d)
Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and
5.
The registrant's other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):
(a)
All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and
(b)
Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.

 

Date: November 12, 2024

By:

/s/ Cathy Behnen

Cathy Behnen

Chief Financial Officer

 

 


EX-32.1 4 ftci-ex32_1.htm EX-32.1 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 FTC Solar, Inc. (the "Company") on Form 10-Q for the quarterly period ended September 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the "Report"), I 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 results of operations of the Company.

 

Date: November 12, 2024

By:

/s/ Yann Brandt

Yann Brandt

President and Chief Executive Officer

 

 


EX-32.2 5 ftci-ex32_2.htm EX-32.2 EX-32.2

Exhibit 32.2

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350, AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of FTC Solar, Inc. (the "Company") on Form 10-Q for the quarterly period ended September 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the "Report"), I 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 results of operations of the Company.

 

Date: November 12, 2024

By:

/s/ Cathy Behnen

Cathy Behnen

Chief Financial Officer

 

 


GRAPHIC 6 img146223903_0.jpg GRAPHIC begin 644 img146223903_0.jpg M_]C_X 02D9)1@ ! 0$ P # #_VP!# ," @," @,# P,$ P,$!0@%!00$ M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_ MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04 M%!04%!04%!04%!04%!04%!04%!04%!3_P 1" "I A,# 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#]4Z*** "B MBB@ HJ&ZNX;&!YIY%BB499F. *\9\??'(J\ECX?P2IVM=L,C\!_6O.QF/H8& M'/5?R._"8&OC9\E&/SZ'JNO>*M+\-6[2ZA=I ,[F6# M2,/NS2'Y3^%>,:AJ-UJMP9[RXDN)2?O2-G'TJ;2M!U'7)"EA9376#@F-20/K M7P>(XAQ6)ER86-E^)]UA^'L+AH\^+E=_(M M4U,@W=]+.1R"QKT#0?@#JU^N_4;N.Q4C($?SG\:ZW3OV>](MU/VRZFNR>A'R MUSK+F.U?1 M"? ;PLJ_-#.Q]?.(J.7X!^&FSY:SIZ?O"<4_]6\9'5-7#_67"2T<78\2LO'G MB#3_ /4:K/&O=0>#77:)\>M;L&1+V&*\@'5APY_&NAOOV=8F,CVFJO'_ '8V M0'\,UP^M_"#Q+HRL_P!E%Y'V^SG&5Q@ MBO_E.=5\556'K0U[_P"9X.;9+0PM M+ZQ1GIV_R/8Z***^W/C HHHH **** "BBB@ HHHH **** "BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M **** "BBB@ HHHH **** "BBB@ HHHH **** "L?Q-XJT_PGILEY?3*BK]V M//S.>P H\5>)K/PGH\U_>2;54?*O=F[ 5\L^*O%%YXMU62]O'8@G]W%GA%]* M^!_ >H>-M06*!6AM%YEN6'R@>@]37TMX7\)Z?X3T M]+6QA5 !\SD?,Q]2:^/P668G.*GM\2[1_K8^OQF98;)X?5\-&\OR]3S;P9\! M;>W6.YUY_M$F,_9D^X/K[UZQIVE6FDPK%:6\<$:C&$4"K=%?H>%P&'P<>6E' MY]3\^Q6-KXR7-6E?\@HHHKT#A"BBB@ HHHH P?$'@?1?$T>R_L8Y3V8#!_,5 MI:3I-MHFGPV=I&(X(EVJHJY16,:-.,N>,4F:NK4E%06&=.7Q_B M?3$,R7$:R1L&1AD$5)7BW@+Q_+HLT5A>,9+1VPLA/W/_ *U>S1R+-&KH=RL, M@U^P<-<287B/"*M1=I+XEV9\WCL%4P-3DGMT8^BBBOL#S@HHHH **** "BBB M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "HYYDMH7ED8) M&@RS'L*DKR;X[^,&TS3(M(M92L]US(5/1.X/UKAQN*C@Z$JTNAV83#2Q=:-& M'4\U^*/CA_&.O.L3'^S[<[85S]X_WJH>!?!=UXVUI+:)2MK&09YL<*OI]:Y^ MWMY+J:."%2TDC!54>IKZI^'/A&/P?X;@M=O^DL-\S=]Q[5^;9;A9YSBW6K?" MM_\ (_1LRQ,,FPD:%#XGM_F;6B:+:>'].BL[.(10QC' Z^YJ_117ZI&,8148 MJR1^7RDY-RD[MA1115DA39)%AC:1V"HH+,QZ #J:=7SK^W-\=!\%/@GJ#60S#YF(]-N:N$'4DHKJ9U*BI0!_B=X5^)5O=3^%].J8J MHX\MDCZ U?6++0=-N-0U&ZCL[*W0R2SS-M5%'4DUYJO[57PC9@:7 M T^H:C<+;PQ*>6)//Z9JL/@E5I^TF[$XK,71J^RIJY^^G@SQ]X>^(FEOJ7AO M5K?6+%9#$;BV)*[AU&<4OC+QWX?^'FC_ -J^)-6MM&T[>L7VBZ?:NX]!]:PO M@A\+['X._"_0/"M@ORV-LJRR$?-)(>69O4Y/Z5^C[22U/T#;]JKX1JI)\?Z-@ M+S;6\A^[(IZ'Z&OQ=_9O^#]S\T\/Z3::;80+;65K$L,,,8PJ*!@ 5Y M^>9/A,90>$Q"YE)=>A>68^O-^V2Y;'S?GG6"_O+\&?3M%9'A?7(_$&C07:')888> MC=ZUZ_KW"XFGC*$,12=XR5T?F\X2IR<);H****ZB HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH BN;A+6WDFD.$C4LQ]A7R3X MRUZ7Q)XFOKZ1MRLY2/TV#I7T9\5=:;0_!-_,G^L=?+ ^O!KY853\JCJ3C\Z_ M/.*,0Y2AAH^I]_PQATE/$R]#U'X$^$UU;6I=5N$W06G$>>GF?_JKZ%KE_AOX M;3PSX4L[;"^!?"M]JMY)%9:;IML9&9CM1%4<#V["OF[_ ()Y_ I?A3\&X=;O MH%77O$6+J9\$$0XS$I!Z$ G->>_\%/OCJ?#GA&P^'6EW)2]UD>=?[""/LX.- MC>A)P:QKR>+Q"@MCHPT5@<*ZDMV?G]\;OBE??&7XHZ]XLO6<"\N&^SPNV[R8 M@<*@]N,_C7UE_P $PO@5_P )%XLU#XCZI;;K+2_]'T\2IP\QY,BG_9Y'XU\3 M^&?#=[XN\0:9H>FH7OM0N$MH0 3AF. 3CL*_=?X'?"VQ^#?POT+PK8Q+$MG MOG%>C3$9D;\6S7=CJBHTE2CU/-RZB\16=:?0R_VDOB_:?!'X0Z]XEN'_ -(B M@:.UC!PSRL-JX]<$Y_"OPTUC6+O7M6OM5U"4W%_>S-<3RGJSL_ M9>J6ZG+GZ]*>"IJA1=674G,*KQ-=48;+0_0C_@F=\"_^$'^&UQXYU*WV:MXA M'[@MPT=J#PI'^\,U]IU2T;2;?0=)L].M(UBMK6)88U4 *H '\JNUX%6HZLW M-GU-"DJ%-4UT(KFW6Z@>)QE6&"#7SMXHT=M!URYM-I$88M'GNOK7T=7F/QET MD&WM+Z./YD;;(_MV_6OQGQ+R6.892\7%>_2U]5V/JLCQ3H8E4WM(S/A#KC6N MI2Z;(W[J4;UR>A'85[#7S5HNH'2]8L[KM'("<=Z^D+:036\;CHR@UQ^%N;2Q MF62P=1WE2?X/8US_ ZI8A5(K21+1117[8?+A17E/B3]J;X5^$=:N=(U?QGI M]GJ-LVR:!V8LA]#@5SLW[='P-MY&C?X@Z<'7J-LG_P 36JI5'M%F#KTEO)?> M>\45X)_PW;\"O^BA:=_WS)_\34]G^V_\$+YF$/Q TUBHR>''\UH]E4_E8?6* M7\R^\]THKS/6?VD_AKX?\/Z1K>H>++*UTK5T,EC*PO^&R_@S_T M/FF_^/\ ^%)4YO:+&ZU-;R1[317BW_#9?P9_Z'S3?_'_ /"C_ALOX,_]#YIO M_C_^%/V53^5B]O2_F7WGM-%>+']LSX,@$GQ[IN/^!_X5ZEX4\6:3XXT"TUO0 M[V/4=+NUWP7,6=KKZC-3*$H_$K%QJ0F[1=S7HI"P4$DX ZFO,?'7[3/PQ^&M MR;?Q#XQTVPG'6/S/,(]OE!I1C*6D5<%?$-EK%NS%1Y,F&R/\ 9.#^E7*E M..LD1&M3F[1DF=E11161L%%%5WU"UC8J]S"K#J&< T 6**IIK%A(Q"WMN2/2 M5?\ &K2.LBAE8,IZ%3D4 .HHHH **BGNH+7!FFCBSTWL!_.J,?B32I9WA74+ M01L5>>-&'4,X!H FHIDF5.13Z "BBB@ HHJ*2ZAA;;)-&C>C, : ):*CCN(IL^7*DF/[K U)0 M 445%-=0V^/-FCCS_?8"@"6BJW]IV?\ S]P?]_%_QH_M.S_Y^X/^_B_XT 6: M*;'(DJ[D977U4Y%.H **** /'OVB;QH]+TRW#$"25MR^V*\B\'V*ZIXJTJU= M=TL3X*6J77CR$.N[RXF<>Q'>ORS'_P"T MYPH=FC].P'^RY,ZG=-GTO%&(8U1?NJ !3Z**_4DK*R/S$****8!39'6-&=F" MJHR6/ ]:=7C_P"U7XH\4^&_@WK2^#-%NM;\17T1M;>&U3<5###,?3"D_C51 MCS22(G+DBY=C\R?V\/CDWQE^-UY;6_$&MZ;X%\*WNJ7A6UTO3+9II-HX2-%S@#Z"OPL^.'Q1O/C+ M\4]?\67C[A>3D0!?NK"O"8';Y<5^FO\ P4.NO'^M_#JR\'>!?#>HZQ_:TFZ^ MNK ?ZF-.0A]FK\Y;']E'XNWUY;6O_"O]8A2:18S(8@ BD@%NO8<_A7/E\84T MZDWJ=.:2J5)*E!:(^DO^"8/P+_X23Q??_$?4K?=8:5NM=/+?=>8\.2/]D8Q7 MWC^T;\7K7X(_"/7/$\[H+F&(QV<3_P#+6=A\J_S_ "J_\"_A99?!KX7Z%X5L MU7-G HGE50#+*1\SGW)_E7Q;_P %&-*^*'Q8\8Z;X5\,^#M6U'PUI:">6XMX M\Q7,S<@CGJO2N1R^M8B\GH=\8/!X2T5[WZGYZ:QK%SKNJ7VJZA,\UW=RM/+) M(2X#W=Y>1@1K&IRRD^XR*_9C0]&M/#NCV6 MEV$0@LK.%8(8QT5%& /RKLQ^(CR*E \_+,-+G=:HMB]1117@GTX5SWCK2?[7 M\-WD6<%4W_ES70U5U*,2Z?9F=".)P5:E-73B_R-J,G"I&2Z,^9 MMWRYZ$V_"N1I/"L )R%.!]* M_FCPNJ2P^;U\+W3_ /NN((\^&A4['8TC?=-+2-]TU_51^?,_!W]HI0?C[\0 M>Y_M>;J?I7+^'? ?B/QC',^@>'=1UQ(3ME:PMFE$9/8XZ5U/[17_ "7SX@?] MAB;^E?;W_!))C_PC?C\<[?ML)]L[*^NJ570H_P#A7[Z45Y?]J3_E1[/]CT_Y MV?DC\?/AQXMNOV9_@=80^%]6EOK.QD6YM4M6,D)WGAQV-?.7_"H_'7_0E:[_ M . 3U^_3*&Z@'ZBF^4G]Q?RK.GF$J<;RV>H6DU MC>1'$EO<*4=/J#TJYH/A+6_%+3+HFC7VL-" 95LH6E,8/0MCI7KO[;P"_M4> M.\# \^/_ -!KZ+_X))J#XF^) (!_T>U_FU>S4K^SH*K8\"EAO:8CV%SXKE^$ M7CHQM_Q16N]#_P N3U^Q'['D,OA/]EOP<-:ADTE[.P+W"7B^6T0!))8'IQ7N M7E)_<7\J^,?^"FGQGNO GPOL/">DS>3=^()&CN6C;:\<"C/'L3Q7C3Q$L:XT MK6/H:>%AE\95N:^A\Y_M;?MZ>)/'GBF]T#P#J\VC>%[5C";RU;;+=D<,=W]T MU\?1PW>L:@(XTGU"]G8D(N9'=CUX]:GT#0KOQ)K6GZ-I<#7%_>S+;V\"=68G MH*_9/]F3]CWPA\!_#5M*]C%JWB6XB5[O4+R)696P"50'[N#QQZ5Z52=+ P2B MM3QZ5.MF-1RD]#\DK[X'_$#3]-&H7'@G6H[,KO\ --FV OJ?2N?\,^*=9\%Z MS'J>@ZI=Z-J=NV%GM9"C(1VQ7]!LD$M1H1%<+TVL?[X[^M?7S,%4D\ 'O#6G1:?IUJ@0+&HW.1_$Q[D^IK9UZ.6;1;U($?$KXQ:AJ6I2V6B7#V5E Q7SXCAY2.OX5P%GI>L>*+ MIGMX;J_E8X:5>*K>QMK^5K*,$S1S? M,BKZ>Q]*^C&5)HR&"NC=CR#56ST6QT^XEGM;6*WEE #M&@7./I2N!=KR[XD_ M&2'PU)-IFEJ)]44[9&8?)%_B:[/QQX@'ACPO?ZAP9(XSY:DXRQX%?),DD^H7 M;.Q::XG?//+,Q- %W6/$.J>([D27]Y-=2$_(I8X'L!35\.ZLT8E&FWIC/\81 ML?G7T+\-?A78>&]/AO+R!;G4I4!8R+D1YYP!ZUZ$(T5-@10G3;CB@#X^T;Q/ MJ_ANX5K"]FMBC9:/<=K8[,*^@OAG\5K?QHIL[I5M=4C7)7/RRCU7_"J'Q4^% M5GK.GW&IZ; MOJ42[V6,8$B@13W ^T* M^6OBY<3+\0]5"RR*,KPK$#I7TIX=U==>T.RU!!M%Q$'V^F>U?-'Q>_Y*)JOU M7^5) >L_L]R/)X+G+LSG[6_+'/I7I]>7?L\_\B3/_P!?6++L:WES&/]G.5_2OI MGX:>)U\5>$[2Y+;KB,>5-_O#_(I,#JJ^??VB99/^$HTZ,.PC^RD[02!G=7T% M7SU^T3_R-FF_]>A_]"H0'F5K8W=^Y2UAN+EQU6+U>U7=-IU]$OJZ, M*]'_ &>?^1COO^N5>_R1),NV1%=?1AD4P/D?0_'6O>'I(_L>HS+'&<^0[90_ M45]!_#+XD0^.;%HY@L.IPC][$.A'J/:N*^/7@NRL[&WUFRMTMY _ES>6 H8' MIQ7!?"?4I=-\?:4(GV+<2>3)[J>U 'U51114@?.W[0#%O&=LA/RBU! _&H?@ M+$6\<-(.BV[#%7OVA+5D\26=SCAH=F?QS67\#;H6_CI03A9(&7'O7Y;/W<\; ME_,?ID?>R*T?Y3Z5HHHK]2/S,**** "DKPS]L+]H)/V??A)>ZK:3(OB&\(MM M,C90^)3T=E[J,+;_X2Z#?>-[N.\\0WD(N9FCC\L*K@,J;?4 UX!^WY M^UIK/P)M]#T#P;=PP>)KTFXF::(2*EN./SS6$*4JD_9QW.BI6C2I^UEL?8E% M?CYH?[?7Q^\2:UI^D:=K-A/J%].EO!']B'S.QP!7ZS>!;;5[3PCI,>OW0O=9 M^SHUW,J; 9" 6 'L>/PK2OAY8>W,S'#8J&*OR+8WJ2OSU_;6_;K\4_#WXG#P MC\/+VUM_[,7&HW$L0DS,?^6>.V.*\Y^ O[8'Q_\ C-\6-!\+66M61CN9PUU* MNGJPAA'WG(]*UC@ZCI^T>B,I8^DJOLEJS]4*6F0JZQ()&WR!0&8#&3W.*?7 M>F%%%% !4')03D"4@5X]>2_:+NYE_OR,WYFO;/A9;^3X6@; 'F?-Q7\L M>'B]MQ/5K0^&TOQ/T#.O?P<\$^*-*\0:7IFI1ZE MILZW-N\E^S*''0D8YKRI8G#.+2@>U#!XR,DW4T/I8=!2T45XI]$?B7^V\?\ MC*CQW_UWC_\ 0:^B_P#@DC_R,_Q(_P"O>U_F:^=/VWO^3J/'?_7>/_T&OIS_ M ()+1J+CQZ^T;RL +=R,FOI<1_N:^1\AA?\ ?WZL_1BORR_X*J37C?&3P[$Z MM]@&EAD;MYF\Y_2OU-KX4_X*G_"^ZUSP#H?C*QBWIH\Y2^;N(F&%('^\:\C! M24:\6SW,[G&<*/>OV^K^?;P1XM MO/ /C+1?$NG@&]TJZ2ZA#="5/^%?N!\!?CIX>^/'@/3]>T:\B:Y>)?M=EN'F MV\G0JR]N:[=D]6/*Z;W/2J**\S^*G[1G@'X-7%E;>)]=AM+R[D6 M..UC(>09.-S+GA?>O&C%R=DCZ&4HP5Y.QZ92$!@0>0:KZ;J5KK%A!>V-Q'=6 MDZ"2*:)MRNIZ$&K-25Z'@WQ$^"=\FI3:AH2+<6\S%FMFZMU&%AG.5KUKP/\2$*L@.8W M8]AZ5!\2_A#HTNE76J6)73+B%3(W.(V'ICM7@,4SP2QRQ'$B,&4CU!I@?0W[ M0BLW@VW*M@"Z4GWB/@N.&3Q9I(G8+']H0Y/KGBOHGQGHLOBCX:M%Y>^\^ MRI*@_P!L*#_C7S!;7$EES T(#[5HKF/ 'C2V\::%!]=/4@-D4,C!AE2,'-?&6KA%U6_"?<\^3'_ 'T:^EOBIX\@\)Z# M/%%(K:E.NR.('YE!_B_"OF.*&6^NDB4%YIWV\#J2>M4@/ISX,-,? =EYR[?F M8)[KVKP_XN_\E$U7ZK_*OI/PII)T+P[I]@V-\,*JQ'+KJ97+6MMF&$'L!U_6O7O@- MX=.E^%6OI8BEQ>.3N/=!]T_SKYS))Y;+,>I]36G;^*M:M84A@U6^AA086.-R M%4>@%4!ZI^T)X7,OVB? M^1LTW_KT/_H5>V^$=?B\3>'[/4(V#^:@WX[./O#\Z\2_:)_Y&S3?^O0_^A4@ M,SX-^*M,\*ZW(O#>FR7UW;1FWCY&RA@P1:2N8)5$AE/+2$CJ: .@HHHJ0/&/VBK/\ T72K ME5_Y:,K-[8KS#P#??V;XRTF5FV)YP5V/0 U[[\9M+;4_ MYYL#7O">G7@ZO$ 1Z8X_I6_7Z91J*K3C4757/S:I!TYN#W04C,%4DG '))I:^ M=?VYOCM_PI/X*WS64ZQZ]K(:RL4[G(P[ ]BJG-=%.#J245U.>I45*#G+9'Y[ M_M[?'(_&/XV75G93^9H/A_=96V#PTG_+4GU^8<5@_L7?!T_&7X\:+9W$3R:1 MICB_O'0? M);^W5-:\1G[1O9<.EOGY$/XY-?2XB2PN'Y([GQ^%C+&8KGEMN?4GB+7K#P?X M=O\ 5]0E6TT[3X&FED/"HBC-?A7\=OBG>?&;XK:_XKNV^2ZG9;>,,2L<2G"[ M<] 0 :_0/_@IS\=V\*>";+X?Z5Z?UK[_ /VD_C':? WX1ZYXEF:,WD<)CLH) M#CSIFX51[]3^%3_L[?".U^"/PET/PM!&J3P1"2[9.CW# %V_.OSQ_P""EWQS M;QQ\3+;P+I\Y.DZ ]RJME);AN0P_P!T<5QZXS$^1Z&F7X3S?YGQ]K>M7GB+ M6+[5]1G:XO[V5IYYG/+,3GFOTQ_X)A_ H>&O!=[\1-3MPNI:P?)LMX(>*W'W MO^^C@U^?WP+^%=Y\:/BIH'A.SC+K=S!KGG&V!>9#GL<5^ZWAKP_9^%/#^G:/ M81^796,"6\2_[*@ 9]^*[,PK?E5!U)NM+H:=%%%?/'U84444 %8OC# M4(]/\.WTDAP#&5'U(Q6U7G'QDU0PZ;;62$'SG^<>PY%?+<3Y@LLRBOB7TBU] M^AW8&B\1B(4UW/(U'R =SQ7T+X(T]]-\,V,$GWUC&?YUX1HEC_:6L6=K@D2R M!3CM7TC;QB*"-!T50*_$_"7 N4\1C9+31+]3ZKB2JO^/I&7$!AL#4HXCVLMM3TFBBBO'/?"BBB@#\2OVWR/ M^&J/'?/_ "WC_P#0:^GO^"2Q_>>/._RP?S-?1OQ&_8/^&'Q2\;:GXIUNWU%M M4U!@\[0W6U20,<#'%=C\#?V9?!G[/;:F?"<5W&=1VB?[3-YF=O3''%>Q6Q=. MIAU26YX-# U:>*=9[:GK-8OC/PEI_COPMJ>@:I$LUC?P-!(K '&1C(SW'4?2 MMJBO(3L[H]UI-69^)'[2W[*?B?\ 9S\53PRVT^I^&)6+6.K0QEE*_P!U\=&' M?M7EO@[Q[K_@'4AJ/AK6;G2KH'.^VD(4GW&<'\:_?O6M#T_Q%IL^GZG9PW]E M.A26"= R.IZ@@U\T>-?^"<'P>\8:A->)87VBO(=PBTVX\N)?HN.E>Y2S"+CR MUD?-ULKFI.KIH",'9$J,1[DJ7_B+4C/?W M-SJNH2GAIF:61L]E!R?P%?I[I_\ P2I^'D=U<->ZWJT]NQ_ MIY=_P3?\#_$WPG\/[JX\77,D7AB] ETG3+O)GBSU?GHI&,"OKG7);N'1[Q[" M+S[Q8SY4><;F["KRJ%4 # ' I:\&I/VDG*Q]+1IJC!03O8^/+[^VO#^L327 M/VFQO?,+NV2/FSW/0UTFG_&SQ19JRR7J7>>AD4VD-RGI M(H-<]=?"GPO=8_XE<46/^>8Q47-CYXU_XD:_XDM7M;[4-]JYR85 K0^&?@& MZ\7:Y \D+QZ;"V^65A@-CHH^M>]6?PN\,6:@#28)2/XI!N-=-:VL-E"D,$2P MQ*,*B# %%P'1Q+#$L:C"*H4#V%>&_%SX3W"WTNLZ+;^;%)EY[>,[ 5[K1 M2 ^,M/U2^T&Z\ZUGELI_Q7\Q70-\6O%;P^6=98KT^Z,_G7TGJ'@W0]6E,EWI M=M/(>K,@S65-\)_"\TJO_9<:;?X4X!IW ^79)KO6+HR.TU[.QY;ES7MGP?\ MA3/IERNM:S JS;/X5ZAI?A72-#8M8:=;VK$8+1H :U:+@%?*WQ> M/_%Q-5^J_P J^J:R+WPGHVHW3W%UIMO/._WI'0$F@#Y5T3QCK/AN%XM-OWM8 MV.YE49&?6M9?BYXN1<#6&Q[QJ:^CO^$%\/\ _0(M/^_8H_X07P__ - BT_[] MB@#Y[TOXL^+;C5+*%]79DDG1&'EKR"P!%:'QT\4#6O%0L(I ]K8C'R_WS]X5 M[K'X)T&.1732;574[@PC&01WITW@O0KB9Y9=*M9))#N9FC!)/K0!Y-\ _!J7 M1NM;O(5DC_U4"2+D'U8?RKVC^R+'_GRM_P#OTO\ A4EC8V^FVJ6]K"D$"<+' M&, 5/0!4_LBQ_P"?*W_[]+_A7SK\;/"/_".^)C>P1[;*^^88&%5^ZBOI6J6I MZ-8ZS&D=]:Q72(_\ 7*O?[BWCNH9(94#QR*596&00:HZ;X=TS1Y&DL;&&U=A@ MM&N":TJ /EKXH^ 9/!>M$Q(3IEP2T+XX7_9-=M\"_B#M;_A'K^7CK:R,?_'* M]DU'2K/5X1#>VT=S%G.V1VB M7UI-;R#,O!PFM8]=MH_ MWL7R3[1U7L3]*^3XBP3Q.']K!:Q/J>'\:L+B?9RVEI\RC\ O%HAFGT.YDP'_ M 'D!8]3W45[E7QGI6I2Z1J-M>V[E987#@KUQW%?6/A#Q1:^+M%AOK9@=PPZ= MU;N#6'#F8*M1^KS?O1_(WXBP#H5OK$%[LOS-IF"J23@#DFOQP_;\^,K?%;X\ M:A8VLS-HWAXFQA3=E&E'WI%^O3\*_2C]KSXP)\%O@;K^LQS)%JD\1M;!7_CE M;C'Y9K\1)KAYY))I':661B[$G+,Q.?QZU^G9;1NW5?0_+,VKV2HQZGK'[+7P M9F^.GQHT3P^8V;3(I%N]1=>J0*>3^>*_;+4K_3O OA2XNYMMMIFEVK2,%PH5 M$7.!^ KYE_X)Z_LZO\(?AC_PD.L6X3Q%X@"W#!N6AAQ\B@^A&"17'?\ !3KX M[+X5\#6GP]TRY5=4UO\ >W@4D/';@\$'W88K+$2>+Q"A'9&V%@L#A75EN_Z1 M^?OQZ^*UY\:OBOKWBNZD9XKF8QV@88VVZG$:X]<5]*?\$S?@7_PFWQ$N_'NI M6^_2]!_=VA89#W)X((/4!3FOC?1](N_$&KV.DZ=";F^O9E@@A3J[,<8%?N;^ MSE\(K/X)_"/0/#-LBFXA@5[J;&&EE;EBWN,X_"N_&U%1I*E'J>;E]%XBNZL] MD6?C_P#%6U^"_P )]>\4W$BQR6L!6V#=&G8$1K^)K\*M.1PM-(D48W22-M4>I-?S1XG9^\35ADN%=]?>MW['W&08-1B\74^7^9W MWPAT?[5JD]^XRD(V $=SWKV*L#P7H"^']#@M\?O<;G/N:WZ_8.#LG_L7**5" M2M)ZOU9\WF6)^M8F51;;(****^W/+"BBB@ HHHH **** "BBB@ HHHH **** M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "BBB@ HHHH **** "BBB@ JO?V,.I6JYZ5:^&OCJ7P7K2ER6L)R%F3/3_:%?0?C MCP9:>--'>UG7;,HS#*!RC5\LZUH]SH6I3V%VFV:)BO3AAZCVK\LS+!U;K'4OW++CQ'XGL+Z M_P!4F 4O]K8*JC^%1C@5[C17K1E*#O%V/,E"-16DKH\#\"_L._"7X=^*K#Q% MH^AS)J=BXEMY)K@NJ,.C8(ZU[Y111*W6IZA,T\\GVQ@-Q]!C@>U=%\'_P!E'X=? W7[G6O">ES6NH7$/V=Y M9IS)\FE>P457M9M&^)/$UWXFO#-<-B-2?+B'117Y;QE MQEA\AP\J%"7-7DM%V\V>]EF63QDU*2M!%35=4GUF^EO+I]TCG..P'I7;_"_P M?)>W2:K=)B!/]4K#[Q]:PO!/@V?Q1?*[*4L8VR[G^+V%>[V=I'8V\<,2A(T& M !7YCP'PK7S7%?VUF:;5[J_5]_0]W.,PA0I_5,/\_(EZ4M%%?U ?"!1110 4 M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !7(>/OAU8^-K%@RK!?*/W=PHY'L?:NOHK"M0IXB#IU%=,VHUJE":J4W9H^5 ME^%^N+XEAT>>U=/,?!N%&4V^N:^F/#^B6_AW2;>PMEVQ0KCW)]:T-HSG'-1W M,PMK>25ONHI8UY.!RVAE:G4B_P#@(]/'9G6S%0C4Z?BR&ZU:SL9DBN+F.&1_ MNJ[ 9JRDBR#*G(KYW\6:_+XBUN:Y?*(AVQ*>P'>I-'\::OH;#R+II(^Z2?-7 MY*_%/"TD_9IV4EN_D>G_J_5G1C.$M7T/H:BO+M+^,L8XO[1D]XOFKH MK+XH:'> EI_L_P#UU&*_0L'QED>-2Y,3%-]'N>-5RW%T?BILZ^BL)?&NC,H( MOX2#T^:H6^(&A+G_ (F,/YU[4LZRZ*NZ\?O.3ZO6>T']QT=%<1?_ !:T:S8H MADN#V:-19?%MUU-KI'5GH4;>).8YLWA,HI./-I?=_\ /IL M/D5'#KVF*E>WW#-0U"YU2X:>\F::0_Q,>E=#X0\"WGB2XCDD1H;#.3(>"P]! M77>%OA*EO(EQJK"9QR(5^Z#7I$-O';QK'&BHBC 51@"N[AKP[Q.,K+,,\;[\ MKW?J8X[.H4X^QP:^?^1#INFP:39QVUM&L<:# "U:HHK^DJ5*%&"ITU:*V1\1 M*3D[L****U$%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !2,H8$$9%+10!S6O> =*U[UE<+.@^[&P^;\Z]CHKX;-N#,GSAN=:DE)]5HSU,-F>*PND):=CY MSO\ PKJVE\7%C(O^[\W\JS)+>1/OP.O^\I%?2-]7F7C#_72_[U?SKQ-PA@\D M;>'G)^I]?@=Z#\'X8]LNISF9P?]7'PN/0UW^FZ M/::3 L5K D2+T"BKM%?T;E/#F69+'EPE))]^K/C\1C*^*=ZLKA1117TQQ!11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 +%%%% !1110!__]D! end EX-101.SCH 7 ftci-20240930.xsd XBRL TAXONOMY EXTENSION SCHEMA WITH EMBEDDED LINKBASES DOCUMENT 100000 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 100010 - Statement - Condensed Consolidated Balance Sheets (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100020 - Disclosure - Leases - Summary of Future Remaining Lease Payments Obligations (Details) 2 link:presentationLink link:calculationLink link:definitionLink 100030 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100040 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100050 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Deficit) (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100060 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) link:presentationLink link:calculationLink link:definitionLink 995420 - Disclosure - Description of business link:presentationLink link:calculationLink link:definitionLink 995430 - Disclosure - Summary of significant accounting policies link:presentationLink link:calculationLink link:definitionLink 995440 - Disclosure - Equity method investment link:presentationLink link:calculationLink link:definitionLink 995450 - Disclosure - ATM Program link:presentationLink link:calculationLink link:definitionLink 995460 - Disclosure - Accounts receivable, net link:presentationLink link:calculationLink link:definitionLink 995470 - Disclosure - Inventories, net link:presentationLink link:calculationLink link:definitionLink 995480 - Disclosure - Revenue link:presentationLink link:calculationLink link:definitionLink 995490 - Disclosure - Prepaid and other current assets link:presentationLink link:calculationLink link:definitionLink 995500 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 995510 - Disclosure - Property and equipment, net link:presentationLink link:calculationLink link:definitionLink 995520 - Disclosure - Intangible assets, net and goodwill link:presentationLink link:calculationLink link:definitionLink 995530 - Disclosure - Debt link:presentationLink link:calculationLink link:definitionLink 995540 - Disclosure - Accrued Expenses and Other Current Liabilities link:presentationLink link:calculationLink link:definitionLink 995550 - Disclosure - Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 995560 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 995570 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 995580 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 995590 - Disclosure - Related Party Transactions link:presentationLink link:calculationLink link:definitionLink 995600 - Disclosure - Net Loss Per Share link:presentationLink link:calculationLink link:definitionLink 995610 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 995620 - Disclosure - Summary of significant accounting policies (Policies) link:presentationLink link:calculationLink link:definitionLink 995630 - Disclosure - Summary of significant accounting policies (Tables) link:presentationLink link:calculationLink link:definitionLink 995640 - Disclosure - Reduction in force (Tables) link:presentationLink link:calculationLink link:definitionLink 995650 - Disclosure - Acquisition (Tables) link:presentationLink link:calculationLink link:definitionLink 995660 - Disclosure - Accounts receivable, net (Tables) link:presentationLink link:calculationLink link:definitionLink 995670 - Disclosure - Inventories, net (Tables) link:presentationLink link:calculationLink link:definitionLink 995680 - Disclosure - Prepaid and other current assets (Tables) link:presentationLink link:calculationLink link:definitionLink 995690 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 995700 - Disclosure - Property and equipment, net (Tables) link:presentationLink link:calculationLink link:definitionLink 995710 - Disclosure - Intangible assets, net and goodwill (Tables) link:presentationLink link:calculationLink link:definitionLink 995720 - Disclosure - Accrued Expenses and Other Current Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 995730 - Disclosure - Sales of Equity Method Investments (Tables) link:presentationLink link:calculationLink link:definitionLink 995740 - Disclosure - Stock-based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 995750 - Disclosure - Net Loss Per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 995760 - Disclosure - Description of Business - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995770 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995780 - Disclosure - Equity method investment - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995790 - Disclosure - ATM Program - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995800 - Disclosure - Accounts receivable, net - Schedule of Accounts Receivable, Net (Details) link:presentationLink link:calculationLink link:definitionLink 995810 - Disclosure - Accounts receivable, net - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995820 - Disclosure - Accounts receivable, net - Summary of Activity in the allowance for credit losses (Details) link:presentationLink link:calculationLink link:definitionLink 995830 - Disclosure - Accounts receivable, net - Schedule of Accounts Receivable Allowance for Credit Loss (Details) link:presentationLink link:calculationLink link:definitionLink 995840 - Disclosure - Inventories, net - Schedule of inventories (Details) link:presentationLink link:calculationLink link:definitionLink 995850 - Disclosure - Prepaid and other current assets - Schedule of Prepaid and other current assets (Details) link:presentationLink link:calculationLink link:definitionLink 995860 - Disclosure - Prepaid and other current assets (Additional Information) (Details) link:presentationLink link:calculationLink link:definitionLink 995870 - Disclosure - Leases - Summary of Lease Expense (Details) link:presentationLink link:calculationLink link:definitionLink 995880 - Disclosure - Leases - Summary of Future Remaining Lease Payments Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 995890 - Disclosure - Property and equipment, net - Schedule of property and equipment (Details) link:presentationLink link:calculationLink link:definitionLink 995900 - Disclosure - Property and equipment, net - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995910 - Disclosure - Intangible assets, net and goodwill - Summary of intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 995920 - Disclosure - Intangible assets, net and goodwill - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995930 - Disclosure - Intangible assets, net and goodwill - Summary of goodwill activity (Details) link:presentationLink link:calculationLink link:definitionLink 995940 - Disclosure - Debt - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995950 - Disclosure - Accrued expenses and other current liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 995960 - Disclosure - Accrued expenses and other current liabilities (Additional Information) (Details) link:presentationLink link:calculationLink link:definitionLink 995970 - Disclosure - Accrued expenses and other current liabilities - Schedule of warranty accruals (Details) link:presentationLink link:calculationLink link:definitionLink 995980 - Disclosure - Income Taxes - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 995990 - Disclosure - Commitments and Contingencies - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 996000 - Disclosure - Commitments and Contingencies - Summary of Changes in Product Warranty Reserves (Details) link:presentationLink link:calculationLink link:definitionLink 996010 - Disclosure - Stock-Based Compensation - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 996020 - Disclosure - Stock-Based Compensation - Stock compensation expense (Details) link:presentationLink link:calculationLink link:definitionLink 996030 - Disclosure - Related party transactions - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 996040 - Disclosure - Net Loss Per Share (Additional Information) (Details) link:presentationLink link:calculationLink link:definitionLink 996050 - Disclosure - Net Loss Per Share - Schedule of Computation of Basic and Diluted Loss Per Share (Details) link:presentationLink link:calculationLink link:definitionLink 996060 - Disclosure - Net Loss Per Share - Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share (Details) link:presentationLink link:calculationLink link:definitionLink 996070 - Disclosure - Subsequent Events (Additional Information) (Details) link:presentationLink link:calculationLink link:definitionLink Statement [Line Items] Statement [Line Items] Accounts receivable Increase (Decrease) in Accounts Receivable Purchases of property and equipment included in ending accounts payable and accruals Purchase Of Property And Equipment Included In Account Payable Purchase of property and equipment included in account payable. Lease payments and other, net Increase (Decrease) in Other Operating Assets and Liabilities, Net, Total Increase (Decrease) in Other Operating Assets and Liabilities, Net Entity Address, Postal Zip Code Entity Address, Postal Zip Code Secured notes matured in years Secured Notes Matured In Years From Issuance Secured Notes Matured in Years from Issuance Net Profit Attributable Net profit attributable Net profit attributable Credit loss provision Credit loss provisions Off-Balance-Sheet, Credit Loss, Liability, Credit Loss Expense (Reversal) Unaudited Interim Financial Information Unaudited Interim Financial Information Policy [Text Block] Unaudited interim financial information. Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Shares issued for legal settlement, shares Shares issued for legal settlement Shares issued for legal settlement Revenue: Revenues [Abstract] Subsidiary or Equity Method Investee, Sale of Stock by Subsidiary or Equity Investee [Table] Damages sought value Loss Contingency, Damages Sought, Value Senior Notes Senior Notes [Member] Impact of adoption. Impact Of Adoption Impact of adoption of ASU 2016-13, effective January 1, 2023 Description Of Business [Table] Description Of Business [Table] Description of business. Reverse stock split Stockholders' Equity, Reverse Stock Split Shares issued during the period for vested restricted stock awards Stock Issued During Period, Value, Restricted Stock Award, Gross Beginning balance (in shares) Ending balance (in shares) Shares, Outstanding Lease expense and other Other Noncash Income (Expense), Total Other Noncash Income (Expense) Reclassifications Reclassifications [Text Block] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Long-Term Debt, Type [Domain] Vendor deposits Vendor Deposits Vendor deposits Leases Lessee, Operating Leases [Text Block] Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Schedule of Restructuring and Related Costs [Table] Stock issued for accrued legal settlement Stock issued for accrued legal settlement Product and Service Product and Service [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Investment, Name Investment, Name [Domain] Collaborative Arrangement and Arrangement Other than Collaborative Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Repurchase of treasury stock Repurchase of treasury stock Stock Repurchased During Period, Shares Related Party Transaction [Line Items] South Lake One LLC [Member] South Lake One LLC [Member] South Lake One LLC [Member] Prepaid taxes Prepaid Taxes Warranty and remediation provisions Product Warranty Expense Common Stock Equity [Text Block] Retire aggregate shares of common stock Retire Aggregate Shares of Common Stock Retire Aggregate Shares of Common Stock. Title of Individual [Axis] Tooling [Member] Tools, Dies and Molds [Member] Additions charged to earnings during the period Accounts Receivable, Allowance for Credit Loss, Recovery Revenue Revenue from Contract with Customer [Text Block] Sale of Stock Sale of Stock [Domain] Taihua New Energy [Member] Taihua New Energy [Member] Intangible assets, estimated useful life Finite-Lived Intangible Asset, Useful Life Inventories Inventory, Policy [Policy Text Block] Entity Central Index Key Entity Central Index Key Long-Term Debt, Interest Rate Long-Term Debt, Percentage Bearing Fixed Interest, Percentage Rate Impact on cash from changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Accrued Bonuses Common stock issued for notes purchased Common Stock, Shares, Issued, Total Common stock, shares issued Common Stock, Shares, Issued Retainage provisions included in receivables Retainage Provisions Included in Receivables Retainage provisions included in receivables. Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table] Prepaid and other current assets Increase (Decrease) in Prepaid Expense and Other Assets, Total Increase (Decrease) in Prepaid Expense and Other Assets Description of business Business Description and Basis of Presentation [Text Block] Preferred Stock Preferred Stock [Member] Aggregate principal amount Senior Notes Senior Notes, Total Major Customers [Member] Major Customers [Member] Statement of operations Income Statement [Abstract] Entity Address, State or Province Entity Address, State or Province Additional Interest Rate Above Prime Additional Interest Rate Above Prime Additional Interest Rate Above Prime Loss before income taxes Loss before income taxes Pre-tax income (loss) from company's operations Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Revision of Prior Period [Axis] Workforce Activity [Abstract] Workforce Activity [Abstract] Common stock, reserved for future issuance, value Common Stock, Capital Shares Reserved for Future Issuance Value Common Stock, Capital Shares Reserved for Future Issuance Value Customer [Axis] HX Tracker Member HX Tracker HX Tracker [Member] Available For Customer Pursuant Available For Customer Pursuant Available for customer pursuant Equity method investment Equity Method Investments and Joint Ventures Disclosure [Text Block] Proceeds from disposal of investment in unconsolidated subsidiary Proceeds from Sale of Equity Method Investments Amortization of debt issue costs Amortization of debt issue cost Amortization of Debt Issuance Costs Treasury Stock, Shares Treasury Stock, Common, Shares Cover [Abstract] Basic loss per share Earnings Per Share, Basic, Total Basic Earnings Per Share, Basic Income Tax Contingency [Line Items] Income Tax Contingency [Table] Settlements made during the period Settlements made during the period Standard Product Warranty Accrual, Decrease for Payments Operating expenses Operating Expenses [Abstract] Shares issued for HX Tracker acquisition, Shares Stock Issued During Period, Shares, Acquisitions Warranty recoverable from manufacturer Warranty recoverable from manufacturer Warrants Recoverable From Manufacturer Warrants recoverable from manufacturer. Accounts Receivable, Allowance for Credit Loss, Writeoff Write-offs of accounts Write-offs of accounts Deferred revenue Contract with Customer, Liability, Current Selling and marketing [Member] Selling and Marketing Expense [Member] Total stock compensation expense Stock based compensation expense Share-Based Payment Arrangement, Expense Short term non-Interest-Bearing customer advance. Short Term Non-Interest-Bearing Customer Advance Short term non-interest-bearing customer advance Total Receivables, Net, Current Surety collateral Surety Collateral Surety collateral. Retained Earnings (Accumulated Deficit), Total Accumulated deficit Retained Earnings (Accumulated Deficit), Beginning Balance Retained Earnings (Accumulated Deficit), Ending Balance Retained Earnings (Accumulated Deficit) Warranty Standard Product Warranty, Policy [Policy Text Block] Current assets Assets, Current [Abstract] Impairment Inventory Impairment, Policy [Policy Text Block] Malpractice Loss Contingency, Letters of Credit and Surety Bonds Outstanding surety and performance bonds Schedule of prepaid and other current assets Deferred Costs, Capitalized, Prepaid, and Other Assets Disclosure [Table Text Block] Net cash used in operations Net cash used in operating activities Net cash used in operating activities Net Cash Provided by (Used in) Operating Activities Product and Service Product and Service [Domain] Accumulated Other Comprehensive Income (Loss), Net of Tax, Total Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Debt Instrument [Line Items] Debt Instrument [Line Items] Property and equipment, net Property and equipment, net Property, Plant and Equipment, Net, Beginning Balance Property, Plant and Equipment, Net, Ending Balance Property, Plant and Equipment, Net 2027 Lessee, Operating Lease, Liability, to be Paid, Year Four Cash flows from operating activities Net Cash Provided by (Used in) Operating Activities [Abstract] Common stock, par value Common Stock, Par or Stated Value Per Share Stock Options [Member] Short-term Interest Bearing Loan & Customer dvance Short-term Interest Bearing Loan & Customer dvance Taxes Payable, Current, Total Income taxes payable Taxes Payable, Current Accounts receivable, net Accounts Receivable [Policy Text Block] Statement of Cash Flows [Abstract] Counterparty Name Counterparty Name [Axis] Related party accrued cost of revenue Related party accruals Related party accruals Antidilutive Securities, Name [Domain] Equity method investment Equity Method Investments Vendor deposits with related party Vendor Deposits With Related Party Vendor Deposits With Related Party Purchase warrants Class of Warrant or Right, Number of Securities Called by Warrants or Rights Other non-current liabilities Increase (Decrease) in Other Noncurrent Liabilities Translation and other Translation and other Translation and other Restricted Stock Awards [Member] RSUs Restricted Stock [Member] Equity Components Equity Components [Axis] Entity Address, Address Line One Entity Address, Address Line One Schedule of Computation of Basic and Diluted Income (Loss) Per Share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Settlement Member Settlement [Member] Settlement [Member] Property, Plant and Equipment [Line Items] Subsequent Event Type [Axis] Product Warranties Disclosures [Abstract] Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block] Assessment Type [Axis] Assessment Type [Axis] Balance at end of period Balance at end of period Balance at beginning of period Balance at end 's period Standard Product Warranty Accrual ATM Program [Member] ATM Program [Member] Amendment Flag Amendment Flag Operating lease liability, net of current portion Operating Lease, Liability, Noncurrent Accrued Expenses and Other Current Liabilities [Member] Other Current Liabilities [Member] SunEdison Utility Holdings, Inc. [Member] Sun Edison Utility Holdings Inc [Member] SunEdison Utility Holdings Inc. member. CBP Assessments [Member] CBP Assessments [Member] CBP Assessments [Member] Operating Lease, Liability, Current, Statement of Financial Position [Extensible List] Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Net loss Net loss Ayna [Member] Ayna [Member] Ayna Issuance of common stock upon exercise of stock options, shares Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Shares of Common stock purchased Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period Variable Rate [Domain] Research and development [Member] Research and Development Expense [Member] Customer [Domain] Asset Purchase Agreement [Member] Asset Purchase Agreement [Member] Asset purchase agreement. Equity Component Equity Component [Domain] Statistical Measurement Statistical Measurement [Domain] Provision for obsolete and slow-moving inventory Provision For Inventory Obsolescence Expense charge to establish an inventory obsolesce reserve. Barclays Bank PLC [Member] PLC Barclays Bank [Member] PLC Barclays Bank [Member] General and administrative expense General and Administrative Expense, Total General and administrative General and Administrative Expense Capital Contribution Capital contributions Capital contributions Other income (expense), net Other Nonoperating Income (Expense), Total Other income (expense), net Other Nonoperating Income (Expense) Liability For Unpaid Claims And Claims Adjustment Expense Liability for Unpaid Claims and Claims Adjustment Expense, Net, Beginning Balance Liability for Unpaid Claims and Claims Adjustment Expense, Net, Ending Balance Liability for Unpaid Claims and Claims Adjustment Expense, Net Description of tariffs classification Description of Tariffs Classification Description of Tariffs classification Accruals and other current liabilities Increase (Decrease) in Other Accounts Payable and Accrued Liabilities Potential Future Capital Contributions Potential Future Capital Contributions Potential Future Capital Contributions Changes in liability for pre-existing warranties Standard Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties Preferred Stock, Shares Issued, Total Preferred stock, shares issued Preferred Stock, Shares Issued Proceeds from stock option exercises Proceeds from stock option exercises Proceeds from Stock Options Exercised Assessment Type [Domain] Assessment Type [Domain] Warranty accruals are reported in: Payables and Accruals [Abstract] Restricted cash Restricted Cash, Current Prepaid Expenses and Other Current Assets Total Prepaid and other current assets Prepaid Expense and Other Assets, Current Product warranty life Product Warranty Life Product warranty life. Collaborative Arrangement and Arrangement Other than Collaborative Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Accrued cost of revenue Accrued cost of revenues Accrued cost of revenues Other Comprehensive Income (Loss), Net of Tax, Total Other comprehensive gain (loss) Other Comprehensive Income (Loss), Net of Tax Summary of intangible assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Other Accrued Compensation Other Accrued Compensation Accrued compensation Comprehensive loss Comprehensive loss Comprehensive Income (Loss), Net of Tax, Attributable to Parent Common stock, shares outstanding Common Stock, Shares, Outstanding, Beginning Balance Common Stock, Shares, Outstanding, Ending Balance Common Stock, Shares, Outstanding Finite-Lived Intangible Assets, Major Class Name [Domain] Fair Value of Financial Instruments Fair Value Measurement, Policy [Policy Text Block] Interest expense Interest Income (Expense), Net, Total Interest Income (Expense), Net Interest income (expense), net Preferred stock, par value Preferred Stock, Par or Stated Value Per Share Cash payment Cash payments Cash Payments Cash Payments Antidilutive Securities [Axis] Accounts Payable, Total Total received Invoices from Alpha Steel Accounts Payable Proceeds from Issuance or Sale of Equity, Total Sale of common stock Proceeds from Issuance or Sale of Equity Covid-19 Pandemic Covid-19 Pandemic Policy [Text Block] Covid-19 Pandemic Policy [Text Block] Cash Cash, Beginning Balance Cash, Ending Balance Cash Finite-Lived Intangible Assets [Line Items] Entity Interactive Data Current Entity Interactive Data Current Equity method investments Equity Method Investments [Policy Text Block] Amortized period Finite-Lived Intangible Assets, Remaining Amortization Period Product Product [Member] Revisions of previously issued financial statements Revisions Of Previously Issued Financial Statements [Policy Text Block] Revisions Of Previously Issued Financial Statements. Tamara Mullings [Member] Tamara Mullings [Member] Tamara Mullings [Member] Cost of revenue [Member] Cost of Sales [Member] Document Quarterly Report Document Quarterly Report Related Party Transaction [Domain] Total cash and restricted cash Total cash and restricted cash Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Related party transactions Related Party Transactions Disclosure [Text Block] Balance Sheet Location Balance Sheet Location [Axis] Statistical Measurement Statistical Measurement [Axis] Loss from unconsolidated subsidiary Income (Loss) from Equity Method Investments, Net of Dividends or Distributions, Total Loss from unconsolidated subsidiary Income (Loss) from Equity Method Investments, Net of Dividends or Distributions Cost of Revenue Cost of Goods and Services Sold, Total Total cost of revenue Cost of Goods and Services Sold Operating lease cost Operating lease cost Operating Lease, Cost Related Party Related Party, Type [Domain] Closing bid price Closing bid price Closing bid price Total lease cost Total lease cost Total lease cost Lease, Cost Selling and Marketing Expense, Total Selling and marketing Selling and Marketing Expense Summary of Future Remaining Lease Payments Obligations Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Additional capital contributions Additional Capital Contributions Additional capital contributions Board of Directors Director [Member] Finite-Lived Intangible Assets, Gross, Total Intangible assets, gross Finite-Lived Intangible Assets, Gross Outstanding capital stock held Outstanding capital stock held Outstanding capital stock held Liquidity Liquidity Policy [Text Block] Liquidity Policy [Text Block] Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations Effect of exchange rate changes on cash and cash equivalents Fair value of retained equipment Fair Value Of Retained Equipment Fair Value Of Retained Equipment Income Statement Location [Axis] Indefinite-Lived Intangible Assets [Line Items] Purchase Obligation Percentage Purchase Obligation Percentage Purchase Obligation Percentage Total assets Assets Debt Instrument [Table] Schedule of Long-Term Debt Instruments [Table] New Accounting Pronouncements, Policy [Policy Text Block] Recent accounting and regulatory pronouncements not yet adopted Entity Address, City or Town Entity Address, City or Town Adjustments Revision of Prior Period, Adjustment [Member] Accumulated Other Comprehensive Loss AOCI Attributable to Parent [Member] Equity [Abstract] Stock offering costs paid Stock issuance costs Payments of Stock Issuance Costs Additional capital contributions Additional capital contribution Additional capital contribution Depreciation, Total Depreciation expense Depreciation Trade Accounts Receivable Balance From Major Customer Trade Accounts Receivable Balance From Major Customer Trade Accounts Receivable Balance From Major Customer Trade receivables Trade Accounts Receivable Trade Accounts Receivable Revision of Prior Period [Domain] Private Placement Private Placement [Member] Stock-Based Compensation Share-Based Payment Arrangement [Text Block] Prepaid Expense and Other Assets, Current [Abstract] Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued, Total Income tax interest and penalties accrued Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued Issuance of common stock, value Sale of shares Stock Issued During Period, Value, New Issues Vendor Deposits Vendor Deposits 1 Vendor Deposits 1 Issuance of common stock upon exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Lessee, Lease, Description [Line Items] Current liabilities Liabilities, Current [Abstract] Intangible assets, net Intangible Assets, Finite-Lived, Policy [Policy Text Block] Working capital Working Capital Working Capital Right-of-use asset and lease liability recognition for new leases Right-Of-Use Asset And Lease Liability Recognition For New Leases Right-Of-Use Asset And Lease Liability Recognition For New Leases Document Type Document Type Provision For Credit Losses Provision for Other Credit Losses Repurchase and retirement of common stock (shares) Share repurchased and retired (Shares) Share repurchase and retirement (shares) Stock Repurchased and Retired During Period, Shares Schedule of warranty accruals Summary of Changes in Product Warranty Reserves Schedule of Product Warranty Liability [Table Text Block] Title of 12(b) Security Title of 12(b) Security Fcx Solar Llc [Member] Fcx Solar Llc [Member] Fcx Solar Llc [Member] Cash and Cash Equivalents, at Carrying Value, Total Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value, Beginning Balance Cash and Cash Equivalents, at Carrying Value, Ending Balance Cash and Cash Equivalents, at Carrying Value Balance Sheet Location Balance Sheet Location [Domain] Other Noncurrent Liabilities [Member] Other Noncurrent Liabilities [Member] Cash Receved for Acquire Foundation Cash Receved for Acquire Foundation Cash receved for acquire foundation Goodwill Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block] 2028 Lessee, Operating Lease, Liability, to be Paid, Year Five Summary of Lease Expense Lease, Cost [Table Text Block] Condensed Consolidated Statement of Stockholders' Equity Statement of Stockholders' Equity [Abstract] Allowance for slow-moving and obsolete inventory Allowance for slow-moving and obsolete inventory Inventory Valuation Reserves, Beginning Balance Inventory Valuation Reserves, Ending Balance Inventory Valuation Reserves Document Fiscal Period Focus Document Fiscal Period Focus Research and Development Expense, Total Research and development Research and Development Expense Schedule of goodwill activity Schedule of Goodwill [Table Text Block] Schedule of Accounts Receivable Allowance for Credit Loss Accounts Receivable, Allowance for Credit Loss [Table Text Block] Property, Plant and Equipment, Gross, Total Property and equipment, gross Property, Plant and Equipment, Gross, Beginning Balance Property, Plant and Equipment, Gross, Ending Balance Property, Plant and Equipment, Gross Subsequent Event Type [Domain] Exercise Price of Warrants or Rights Class of Warrant or Right, Exercise Price of Warrants or Rights Sale of Stock Sale of Stock [Axis] Cash flows from investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Schedule Of severance and termination-related costs Schedule of Severance and Termination Related Costs [Table Text Block] Schedule of Severance and Termination Related Costs [Table Text Block] Carrying value of money market fund Money Market Funds, at Carrying Value Revenues Revenue from Contract with Customer, Excluding Assessed Tax, Total Total revenue Revenue from Contract with Customer, Excluding Assessed Tax Income Taxes Income Tax Disclosure [Text Block] Description of revised tariffs classification Description of Revised Tariffs Classification Description of Revised Tariffs classification Selling, General and Administrative Expense, Total General and administrative expense Selling, General and Administrative Expense Business Combination and Asset Acquisition [Abstract] Short-Term Debt, Type [Axis] Cost of assessment Cost of Assessment Cost of Assessment Credit Facility Credit Facility [Domain] Revision of previously issued financial statements Condensed Financial Statements [Table Text Block] Revenue recognized included in deferred revenue Deferred Revenue, Revenue Recognized Intangible assets, net Intangible assets, net Finite-Lived Intangible Assets, Net, Beginning Balance Finite-Lived Intangible Assets, Net, Ending Balance Finite-Lived Intangible Assets, Net Depreciation, Depletion and Amortization, Nonproduction, Total Depreciation and amortization Depreciation, Depletion and Amortization, Nonproduction Short-Term Debt, Type [Domain] Other accrued expenses Other Accrued Liabilities, Current Summary of Equity Method Investments Financial Information Equity Method Investments Financial Information [Table Text Block] Equity method investments financial information. Increase (Decrease) in Accounts Payable, Total Accounts payable Increase (Decrease) in Accounts Payable Entity Address, Address Line Two Entity Address, Address Line Two LIABILITIES AND STOCKHOLDERS' EQUITY Liabilities and Equity [Abstract] Repurchase and retirement of common stock Share repurchase and retirement Stock Repurchased and Retired During Period, Value Document Period End Date Document Period End Date Net cash provided by financing activities Net Cash Provided by (Used in) Financing Activities Non-federal tax obligations Deferred Credits and Other Liabilities, Current Stock-based Compensation Expense Reversed Stock-based Compensation Expense Reversed Stock-based Compensation Expense Reversd Stockholders' Equity Note [Abstract] Shares of common stock issuable upon vesting of restricted stock awards Shares issued during the period for vested restricted stock awards, shares Stock Issued During Period, Shares, Restricted Stock Award, Gross Potential common shares excluded from diluted net loss per share Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount APIC, Share-based Payment Arrangement, Increase for Cost Recognition, Total Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Ownership percentage Equity Method Investment, Ownership Percentage Purchase cost of shares Sale of Stock, Consideration Received on Transaction Placing Purchase Orders Placing purchase orders Placing purchase orders Total accrued expenses Accrued expenses Accrued Liabilities, Current 2029 Lessee, Operating Lease, Liability, to be Paid, after Year Five Provision for income taxes Income tax expense Income tax expense (benefit) Income Tax Expense (Benefit), Total (Benefit from) income taxes Income Tax Expense (Benefit) Gain from sale of property and equipment Gain (Loss) on Disposition of Property Plant Equipment Gain (Loss) on Disposition of Property Plant Equipment, Total Available borrowing capacity under the Revolving Credit Facility Revolving Credit Facility, Available Remaining Borrowing Capacity Revolving Credit Facility, Available Remaining Borrowing Capacity Trading Symbol Trading Symbol Other non-current liabilities Warranty reserves Product Warranty Accrual, Noncurrent Accrued Expenses and Other Current Liabilities Table Text Block Schedule of Accrued Expenses and Other Current Liabilities Accrued Expenses and Other Current Liabilities [Table Text Block] Variable Rate [Axis] Total stockholders' equity Stockholders equity Beginning balance Ending balance Equity, Attributable to Parent Long-Lived Tangible Asset [Axis] Fernweh Engaged Operator Company LLC [Member] Fernweh Engaged Operator Company LLC [Member] Fernweh Engaged Operator Company LLC [Member] Other Liabilities, Noncurrent, Total Other non-current liabilities Other Liabilities, Noncurrent Stock-based compensation Share-Based Payment Arrangement [Policy Text Block] DAYV LLC [Member] DAYV LLC [Member] DAYV LLC Common stock, value authorized Common Stock Value Authorized Common stock value authorized. Prepaid and other current assets Prepaid Expenses and Other Current Assets [Text Block] Prepaid Expenses and Other Current Assets. Restricted Stock Units (RSU) Restricted Stock Units (RSUs) [Member] Related Party Transactions [Abstract] Deferred revenue Increase (Decrease) in Deferred Revenue Property, Plant and Equipment [Table] Goodwill, Total Goodwill Balance at beginning of period Balance at end of period Goodwill Schedule of Stock compensation expense Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Schedule of accounts receivable, net Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Deferred Income Tax Expense (Benefit), Total Deferred income taxes Deferred Income Tax Expense (Benefit) Leases [Abstract] Field Equipment [Member] Equipment [Member] Use of estimates Use of Estimates, Policy [Policy Text Block] Cash and cash equivalents Cash and Cash Equivalents, Policy [Policy Text Block] Related Party [Member] Security Exchange Name Security Exchange Name Accounts Receivable, after Allowance for Credit Loss [Abstract] Counterparty Name Counterparty Name [Domain] Total operating expenses Total operating expenses Operating Expenses Alpha Steel [Member] Alpha Steel Alpha Steel [Member] Alpha Steel Long-Lived Tangible Asset [Domain] Consecutive business days Consecutive business days Consecutive business days Accumulated depreciation Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Total Accumulated depreciation Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Beginning Balance Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Ending Balance Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Secured Notes [Member] Secured Debt [Member] 2026 Lessee, Operating Lease, Liability, to be Paid, Year Three Property Plant and Equipment Estimated Fair Value Property Plant and Equipment Estimated Fair Value Equipment estimated fair value Subsequent Event Subsequent Event [Member] Maximum [Member] Maximum [Member] Maximum [Member] Total liabilities and stockholders' equity Liabilities and Equity Operating lease right-of-use assets Operating Lease, Right-of-Use Asset Prepaid Expense, Current, Total Prepaid expense Prepaid Expense, Current Supplemental disclosures of cash flow information: Supplemental Cash Flow Information [Abstract] Prime Rate [Member] Warranty description Standard Product Warranty Description Diluted loss per share Earnings Per Share, Diluted, Total Diluted Earnings Per Share, Diluted Leasehold Improvements [Member] Entity Ex Transition Period Entity Ex Transition Period Total liabilities Liabilities Total current assets Current assets Assets, Current Net cash provided by (used in) investing activities Net Cash Provided by (Used in) Investing Activities Warrant expiration years Warrant Expiration Years Warrant Expiration Years Unamortized Prepaid Balance Unamortized Prepaid Balance Unamortized Prepaid Balance Issuance of common stock (in shares) Sale of shares, shares Stock Issued During Period, Shares, New Issues Entity Filer Category Entity Filer Category Intangible assets, net and goodwill Goodwill and Intangible Assets Disclosure [Text Block] Property, Plant and Equipment [Abstract] Accrued Expenses and Other Current Liabilities Disclosure Text Block Accrued Expenses and Other Current Liabilities Accrued Expenses and Other Current Liabilities Disclosure [Text Block] Impact of Stock Split Impact of stock split. Product Warranty Liability [Line Items] Product Warranty Liability [Line Items] Concentrations of credit risk, percentage Percantage of Concentrations of credit risk Percantage of Concentrations of credit risk Current Fiscal Year End Date Current Fiscal Year End Date Less imputed interest Less imputed interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Gain from disposal of investment in unconsolidated subsidiary Equity Method Investment, Realized Gain (Loss) on Disposal, Total Gain from disposal of investment in unconsolidated subsidiary Equity Method Investment, Realized Gain (Loss) on Disposal Stock-based compensation expense Share-based Payment Arrangement, Noncash Expense, Total Stock-based compensation Share-Based Payment Arrangement, Noncash Expense Related Party Transaction [Axis] Related Party Related Party, Type [Axis] Translation Goodwill, Foreign Currency Translation Gain (Loss) Information Technology Equipment [Member] Technology Equipment [Member] Other current liabilities Warranty reserves Product Warranty Accrual, Current Entity Registrant Name Entity Registrant Name Gross profit (loss) Gross loss Gross Profit Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Net Loss Per Share Earnings Per Share [Text Block] Entity Emerging Growth Company Entity Emerging Growth Company Equity Method Investments and Joint Ventures [Abstract] Total other current liabilities Other current liabilities Other Liabilities, Current Basic weighted-average number of common shares outstanding Weighted Average Number of Shares Outstanding, Basic, Total Basic Weighted Average Number of Shares Outstanding, Basic Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract] Schedule Of Equity Method Investments [Line Items] Schedule of Equity Method Investments [Line Items] Common stock, shares authorized Common Stock, Shares Authorized Proceeds from common stock Sale of common stock Proceeds from Issuance of Common Stock Debt Disclosure [Abstract] Amortization expense Amortization of Intangible Assets Schedule of Deferred Compensation Arrangement with Individual, Excluding Share-Based Payments and Postretirement Benefits, by Title of Individual and by Type of Deferred Compensation [Table] Unrecognized Tax Benefits, Period Increase (Decrease), Total Unrecognized Tax Benefits, Period Increase (Decrease) Material change in unrecognized tax benefits Accounts receivable, net Accounts and Nontrade Receivable [Text Block] General and administrative [Member] General and Administrative Expense [Member] Revenue recognition Revenue [Policy Text Block] Share-Based Payment Arrangement [Abstract] Impairment Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block] Collaborative Arrangement and Arrangement Other than Collaborative [Table] Accrued Expenses and Other Current Liabilities [Abstract] Accrued Expenses and Other Current Liabilities Abstract. Program Rights Obligations [Abstract] Deferred offering costs Proceeds From Deferred Offering Costs Proceeds from deferred offering costs. Impairment of goodwill Goodwill, Impairment Loss Shares issued for HX Tracker acquisition, Amount Stock Issued During Period, Value, Acquisitions Schedule of Supplemental Balance Sheet Information of Leases Schedule Of Operating Lease Assets And Liabilities Table [Text Block] Schedule of operating lease assets and liabilities. Accounting Policies [Abstract] Schedule of Operating Leased Assets [Table] Income Tax Disclosure [Abstract] Stockholders' equity Equity, Attributable to Parent [Abstract] Deferred cost of revenue Deferred Cost of Revenue Deferred cost of revenue ATM Program ATM Program Restricted Cash Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block] Statement [Table] Statement [Table] Schedule of property and equipment Property, Plant and Equipment [Table Text Block] Description of closing bid pric of our common stock Description of closing bid pric of our common stock Description of closing bid pric of our common stock Description Of Business [Line Items] Description Of Business [Line Items] Description of business. Preferred stock, shares authorized Preferred Stock, Shares Authorized Credit Facility amount Line of Credit Facility, Fair Value of Amount Outstanding Entity File Number Securities Act File Number Cash paid during the period for interest Cash paid during the period for third party interest Cash paid during the period for third party interest Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Decrease in cash and cash equivalents Revenue from Contract with Customer [Abstract] Tariffs on merchandise, percent Tariffs on Merchandise, Percent Tariffs on Merchandise, Percent Note 11. Net loss per share Net loss per share: Earnings Per Share [Abstract] Inventory Disclosure [Abstract] Balance sheet Statement of Financial Position [Abstract] Summary of Equity Method Investments Equity Method Investments [Table Text Block] IPO [Member] Loss from operations Loss from operations Operating Income (Loss) Non-federal tax obligations Accrued Income Taxes, Current Letter of Credit Letter of Credit [Member] Entity Shell Company Entity Shell Company Entity Tax Identification Number Entity Tax Identification Number ASSETS Assets [Abstract] Entity Current Reporting Status Entity Current Reporting Status Forward stock split Forward stock split Forward stock split Capitalized Software [Member] Software Development [Member] Property and equipment, net Property, Plant and Equipment Disclosure [Text Block] Long-Term Debt, Type [Axis] Subsequent Events [Abstract] Inventory Disclosure [Text Block] Inventories Document Fiscal Year Focus Document Fiscal Year Focus Preferred stock par value of $0.0001 per share, 10,000,000 shares authorized; none issued as of September 30, 2024 and December 31, 2023 Preferred Stock, Value, Issued, Total Preferred Stock, Value, Issued, Beginning Balance Preferred Stock, Value, Issued, Ending Balance Preferred Stock, Value, Issued Accumulated amortization Accumulated amortization Finite-Lived Intangible Assets, Accumulated Amortization Interest expense Financing Interest Expense Proceeds of IPO Proceeds from IPO Proceeds from Issuance Initial Public Offering City Area Code City Area Code Total current liabilities Current liabilities Liabilities, Current Accounts Receivable, Allowance for Credit Loss Expense (Reversal) Accounts Receivable, Allowance for Credit Loss Expense (Reversal) Amounts charged (credited) to earnings during the period Cost of revenue: Cost of Revenue [Abstract] Total Inventories Inventory, Net Product Warranty Liability [Table] Product Warranty Liability [Table] Inventory, Finished Goods, Gross, Total Finished goods Inventory, Finished Goods, Gross Statutory rate Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent Related party receivables Recievables from Related Parties Recievables from Related Parties Organization, Consolidation and Presentation of Financial Statements [Abstract] Local Phone Number Local Phone Number Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Additional Paid in Capital, Total Additional paid-in capital Additional Paid in Capital, Beginning Balance Additional Paid in Capital, Ending Balance Additional Paid in Capital Subsidiary, Sale of Stock [Line Items] Commitments and Contingencies Disclosure [Abstract] Treasury stock, at cost; 10,762,566 shares as of September 30, 2024 and December 31, 2023 Treasury stock, value Treasury Stock, Value, Total Treasury Stock, Value, Beginning Balance Treasury Stock, Value, Ending Balance Treasury Stock, Value Schedule of allocation of the purchase price Asset Acquisition [Table Text Block] Current portion of operating lease liability Operating lease liabilities, current portion (included in Accrued expenses and other current liabilities) Operating Lease, Liability, Current Developed Technology [Member] Developed Technology Rights [Member] Liquidity ratio amount, minimum limit Liquidity Ratio Amount, Minimum Limit Liquidity Ratio Amount, Minimum Limit Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Total Foreign currency translation adjustments Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Master Project Supply Agreements [Member] Master Project Supply Agreements [Member] Master project supply agreements [Member] Reimbursement percentage Reimbursement Percentage Reimbursement Percentage Accumulated Deficit Retained Earnings [Member] Purchases of property and equipment Payments to Acquire Property, Plant, and Equipment, Total Payments to Acquire Property, Plant, and Equipment Board of Directors and Chairman Board of Directors Chairman [Member] Document Transition Report Document Transition Report Other assets Increase (Decrease) in Other Operating Assets, Total Increase (Decrease) in Other Operating Assets 2025 Lessee, Operating Lease, Liability, to be Paid, Year Two Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Concentration of credit risk Concentration Risk, Credit Risk, Policy [Policy Text Block] Minimum [Member] Minimum [Member] Common Stock Common Stock [Member] Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] JOBS Act Accounting Election Jobs Act Accounting Election Policy [Text Block] Jobs act accounting election policy text block. Standard and Extended Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties, Total Changes in liability for pre-existing warranties Standard and Extended Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties Investment, Name Investment, Name [Axis] Additional Paid-in Capital Additional Paid-in Capital [Member] Adjustments to reconcile net loss to cash used in operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Other Comprehensive Income (Loss), Net of Tax [Abstract] Other comprehensive income (loss): Warranties issued during the period Warranties issued and remediation added during the period Standard Product Warranty Accrual, Increase for Warranties Issued Income Statement Location [Domain] Remainder of 2024 Lessee, Operating Lease, Liability, to be Paid, Year One Other Assets, Noncurrent, Total Other assets Other Assets, Noncurrent Settlements made during the period Standard and Extended Product Warranty Accrual, Decrease for Payments, Total Standard and Extended Product Warranty Accrual, Decrease for Payments Standard and Extended Product Warranty Accrual, Total Balance at beginning of period Balance at end of period Standard and Extended Product Warranty Accrual 939 Assessment [Member] 939 Assessment [Member] 939 Assessment [Member] Schedule of Inventories Schedule of Inventory, Current [Table Text Block] Liquidity Ability to continue as a going concern Ability to continue as a going concern Other current assets Other Assets, Current Goodwill and Intangible Assets Disclosure [Abstract] Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Aggregate commitments Revolving Credit Facility, Gross Maximum Borrowing Capacity Revolving Credit Facility, Gross Maximum Borrowing Capacity Basis of presentation and principles of consolidation Basis of Accounting, Policy [Policy Text Block] Title of Individual [Domain] Stock offering costs Stock issuance costs Adjustments to Additional Paid in Capital, Stock Issued, Issuance Costs Common stock par value of $0.0001 per share, 850,000,000 shares authorized; 127,723,582 and 125,445,325 shares issued and outstanding as of September 30, 2024 and December 31, 2023 Common stock, value, issued Common Stock, Value, Issued, Total Common Stock, Value, Issued, Beginning Balance Common Stock, Value, Issued, Ending Balance Common Stock, Value, Issued Collaborative Arrangement and Arrangement Other than Collaborative [Line Items] Summary of Supplemental Information, Operating Lease Lessee, Operating Lease, Disclosure [Table Text Block] Allowance for credit losses Allowance for credit losses Balance at beginning of period Balance at end of period Accounts and Financing Receivable, Allowance for Credit Loss Increased stock-based compensation expenses Share-Based Payment Arrangement, Accelerated Cost Present value of operating lease liabilities Present value of operating lease liabilities Total lease liability Operating Lease, Liability Commitments and contingencies (Note 14) Commitments and Contingencies Cash paid during the period for taxes, net of refunds Income Taxes Paid Deferred income taxes Deferred Income Taxes Diluted weighted-average number of common shares outstanding Potential common shares excluded from diluted net loss per share Diluted Weighted Average Number of Shares Outstanding, Diluted Revenue recognized in excess of billings Revenue recognized in excess of billings Revenue recognized in excess of billings Equity method investment in Alpha Steel Investment in Alpha Steel Payments to Acquire Other Investments Summary of significant accounting policies Significant Accounting Policies [Text Block] Accounts receivable, net Accounts receivable, net Accounts Receivable, after Allowance for Credit Loss, Current Total lease payments Lessee, Operating Lease, Liability, to be Paid Inventories Increase (Decrease) in Inventories, Total Increase (Decrease) in Inventories Impaired Financing Receivable, Unpaid Principal Balance Unpaid receivable balance totaling Weighted-average common shares outstanding: Weighted Average Number of Shares Outstanding, Diluted [Abstract] Aggregate principal amount Long term senior secured notes Senior Notes, Noncurrent Entity Small Business Entity Small Business Schedule of Indefinite-Lived Intangible Assets [Table] Debt Disclosure [Text Block] Debt Credit Facility Credit Facility [Axis] Credit Facility Agreement [Member] Revolving Credit Facility [Member] Receivables Collected Other receivables Accounts and Other Receivables, Net, Current Service Service [Member] Subscription revenue contract terms Subscription Revenue Contract Terms Subscription revenue contract terms. Investment tax credit, percentage Effective Income Tax Rate Reconciliation, Tax Credit, Investment, Percent Cash flows from financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Treasury Stock Treasury Stock -1 [Member] Treasury Stock -1 [Member] Intangible Assets, Net (Excluding Goodwill), Total Intangible assets, net Intangible Assets, Net (Excluding Goodwill) Shares issued for legal settlement Shares issued for legal settlement amt Shares issued for legal settlement amt Commitment fees rate Line of Credit Facility, Commitment Fee Percentage Forward Stock Split Corporate Conversion And Stock Split Policy [Text Block] Forward stock split. Subsequent events Subsequent Events [Text Block] Accounts Payable, Current, Total Accounts payable Accounts Payable, Current Special Assessment Bond, Total Special Assessment Bond Outstanding surety and performance bonds Short-term lease cost Short-Term Lease, Cost Accounts Receivable, Allowance for Credit Loss, Beginning Balance Accounts Receivable, Allowance for Credit Loss, Ending Balance Accounts Receivable, Allowance for Credit Loss XML 9 R1.htm IDEA: XBRL DOCUMENT v3.24.3
Document and Entity Information - shares
9 Months Ended
Sep. 30, 2024
Oct. 31, 2024
Cover [Abstract]    
Entity Registrant Name FTC SOLAR, INC.  
Entity Central Index Key 0001828161  
Current Fiscal Year End Date --12-31  
Entity Filer Category Accelerated Filer  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Small Business false  
Entity Emerging Growth Company true  
Entity Ex Transition Period false  
Entity Shell Company false  
Document Type 10-Q  
Document Period End Date Sep. 30, 2024  
Document Fiscal Year Focus 2024  
Document Fiscal Period Focus Q3  
Trading Symbol FTCI  
Amendment Flag false  
Title of 12(b) Security Common Stock, $0.0001 par value  
Security Exchange Name NASDAQ  
Entity File Number 001-40350  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 81-4816270  
Entity Address, Address Line One 9020 N Capital of Texas Hwy  
Entity Address, Address Line Two Suite I-260  
Entity Address, City or Town Austin  
Entity Address, State or Province TX  
Entity Address, Postal Zip Code 78759  
City Area Code 737  
Local Phone Number 787-7906  
Entity Common Stock, Shares Outstanding   127,767,183
Document Quarterly Report true  
Document Transition Report false  
XML 10 R2.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Balance Sheets (Unaudited) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Current assets    
Cash and cash equivalents $ 8,255 $ 25,235
Accounts receivable, net 37,345 65,279
Inventories 15,124 3,905
Prepaid and other current assets 15,502 14,089
Total current assets 76,226 108,508
Operating lease right-of-use assets 1,720 1,819
Property and equipment, net 2,409 1,823
Intangible assets, net 137 542
Goodwill 7,421 7,353
Equity method investment 1,273 240
Other assets 2,507 2,785
Total assets 91,693 123,070
Current liabilities    
Accounts payable 18,742 7,979
Accrued expenses 23,965 34,848
Income taxes payable 333 88
Deferred revenue 4,444 3,612
Other current liabilities 9,862 8,138
Total current liabilities 57,346 54,665
Operating lease liability, net of current portion 883 1,124
Other non-current liabilities 3,056 4,810
Total liabilities 61,285 60,599
Commitments and contingencies (Note 14)
Stockholders' equity    
Preferred stock par value of $0.0001 per share, 10,000,000 shares authorized; none issued as of September 30, 2024 and December 31, 2023 0 0
Common stock par value of $0.0001 per share, 850,000,000 shares authorized; 127,723,582 and 125,445,325 shares issued and outstanding as of September 30, 2024 and December 31, 2023 13 13
Treasury stock, at cost; 10,762,566 shares as of September 30, 2024 and December 31, 2023 0 0
Additional paid-in capital 366,132 361,886
Accumulated other comprehensive loss (231) (293)
Accumulated deficit (335,506) (299,135)
Total stockholders' equity 30,408 62,471
Total liabilities and stockholders' equity $ 91,693 $ 123,070
XML 11 R3.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Balance Sheets (Parenthetical) (Unaudited) - $ / shares
Sep. 30, 2024
Dec. 31, 2023
Statement of Financial Position [Abstract]    
Preferred stock, par value $ 0.0001 $ 0.0001
Preferred stock, shares authorized 10,000,000 10,000,000
Preferred stock, shares issued 0 0
Common stock, par value $ 0.0001 $ 0.0001
Common stock, shares authorized 850,000,000 850,000,000
Common stock, shares issued 127,723,582 125,445,325
Common stock, shares outstanding 127,723,582 125,445,325
Treasury Stock, Shares 10,762,566 10,762,566
XML 12 R4.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Comprehensive Loss (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Revenue:        
Total revenue $ 10,136 $ 30,548 $ 34,153 $ 103,801
Cost of revenue:        
Total cost of revenue 14,442 27,169 42,910 96,186
Gross profit (loss) (4,306) 3,379 (8,757) 7,615
Operating expenses        
Research and development 1,467 1,921 4,441 5,716
Selling and marketing 2,406 6,324 6,830 9,887
General and administrative 6,797 11,411 19,374 31,053
Total operating expenses 10,670 19,656 30,645 46,656
Loss from operations (14,976) (16,277) (39,402) (39,041)
Interest income (expense), net 24 (108) (111) (194)
Gain from disposal of investment in unconsolidated subsidiary 0 0 4,085 898
Other income (expense), net 93 (50) 122 (265)
Loss from unconsolidated subsidiary (256) (336) (767) (336)
Loss before income taxes (15,115) (16,771) (36,073) (38,938)
Provision for income taxes (244) (166) (298) (175)
Net loss (15,359) (16,937) (36,371) (39,113)
Other comprehensive income (loss):        
Foreign currency translation adjustments 207 (38) 62 (451)
Comprehensive loss $ (15,152) $ (16,975) $ (36,309) $ (39,564)
Net loss per share:        
Basic $ (0.12) $ (0.14) $ (0.29) $ (0.35)
Diluted $ (0.12) $ (0.14) $ (0.29) $ (0.35)
Weighted-average common shares outstanding:        
Basic 127,380,292 119,793,821 126,234,997 112,794,562
Diluted 127,380,292 119,793,821 126,234,997 112,794,562
Product        
Revenue:        
Total revenue $ 7,411 $ 27,274 $ 27,092 $ 80,927
Cost of revenue:        
Total cost of revenue 11,798 22,775 34,632 73,694
Service        
Revenue:        
Total revenue 2,725 3,274 7,061 22,874
Cost of revenue:        
Total cost of revenue $ 2,644 $ 4,394 $ 8,278 $ 22,492
XML 13 R5.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Stockholders' Equity (Deficit) (Unaudited) - USD ($)
$ in Thousands
Total
Preferred Stock
Common Stock
Treasury Stock
Additional Paid-in Capital
Accumulated Other Comprehensive Loss
Accumulated Deficit
Beginning balance at Dec. 31, 2022 $ 66,450 $ 0 $ 11 $ 0 $ 315,345 $ (61) $ (248,845)
Beginning balance (in shares) at Dec. 31, 2022   0 105,032,588 10,762,566      
Shares issued during the period for vested restricted stock awards 2,775       2,775    
Shares issued during the period for vested restricted stock awards, shares     1,498,987        
Issuance of common stock upon exercise of stock options 51       51    
Issuance of common stock upon exercise of stock options, shares     265,125        
Shares issued for legal settlement 2,000       2,000    
Shares issued for legal settlement, shares     797,396        
Sale of shares 6,292       6,292    
Sale of shares, shares     2,683,000        
Stock offering costs (32)       (32)    
Stock-based compensation 2,472       2,472    
Net loss (11,762)           (11,762)
Other comprehensive gain (loss) (5)         (5)  
Ending balance at Mar. 31, 2023 68,241 $ 0 $ 11 $ 0 328,903 (66) (260,607)
Ending balance (in shares) at Mar. 31, 2023   0 110,277,096 10,762,566      
Beginning balance at Dec. 31, 2022 66,450 $ 0 $ 11 $ 0 315,345 (61) (248,845)
Beginning balance (in shares) at Dec. 31, 2022   0 105,032,588 10,762,566      
Net loss (39,113)            
Ending balance at Sep. 30, 2023 74,074 $ 0 $ 12 $ 0 362,532 (512) (287,958)
Ending balance (in shares) at Sep. 30, 2023   0 124,954,451 10,762,566      
Beginning balance at Mar. 31, 2023 68,241 $ 0 $ 11 $ 0 328,903 (66) (260,607)
Beginning balance (in shares) at Mar. 31, 2023   0 110,277,096 10,762,566      
Shares issued during the period for vested restricted stock awards 2,085       2,085    
Shares issued during the period for vested restricted stock awards, shares     1,213,037        
Issuance of common stock upon exercise of stock options, shares     39,087        
Sale of shares 17,348   $ 1   17,347    
Sale of shares, shares     6,589,000        
Stock offering costs (127)       (127)    
Stock-based compensation 2,669       2,669    
Net loss (10,414)           (10,414)
Other comprehensive gain (loss) (408)         (408)  
Ending balance at Jun. 30, 2023 79,394 $ 0 $ 12 $ 0 350,877 (474) (271,021)
Ending balance (in shares) at Jun. 30, 2023   0 118,118,220 10,762,566      
Shares issued during the period for vested restricted stock awards, shares     595,097        
Issuance of common stock upon exercise of stock options 170       170    
Issuance of common stock upon exercise of stock options, shares     403,749        
Sale of shares 10,367       10,367    
Sale of shares, shares     6,149,885        
Stock offering costs (74)       (74)    
Share repurchase and retirement (shares)     (312,500)        
Stock-based compensation 1,192       1,192    
Net loss (16,937)           (16,937)
Other comprehensive gain (loss) (38)         (38)  
Ending balance at Sep. 30, 2023 74,074 $ 0 $ 12 $ 0 362,532 (512) (287,958)
Ending balance (in shares) at Sep. 30, 2023   0 124,954,451 10,762,566      
Beginning balance at Dec. 31, 2023 62,471 $ 0 $ 13 $ 0 361,886 (293) (299,135)
Beginning balance (in shares) at Dec. 31, 2023   0 125,445,325 10,762,566      
Shares issued during the period for vested restricted stock awards, shares     506,928        
Stock-based compensation 1,639       1,639    
Net loss (8,771)           (8,771)
Other comprehensive gain (loss) (181)         (181)  
Ending balance at Mar. 31, 2024 55,158 $ 0 $ 13 $ 0 363,525 (474) (307,906)
Ending balance (in shares) at Mar. 31, 2024   0 125,952,253 10,762,566      
Beginning balance at Dec. 31, 2023 62,471 $ 0 $ 13 $ 0 361,886 (293) (299,135)
Beginning balance (in shares) at Dec. 31, 2023   0 125,445,325 10,762,566      
Net loss (36,371)            
Ending balance at Sep. 30, 2024 30,408 $ 0 $ 13 $ 0 366,132 (231) (335,506)
Ending balance (in shares) at Sep. 30, 2024   0 127,723,582 10,762,566      
Beginning balance at Mar. 31, 2024 55,158 $ 0 $ 13 $ 0 363,525 (474) (307,906)
Beginning balance (in shares) at Mar. 31, 2024   0 125,952,253 10,762,566      
Shares issued during the period for vested restricted stock awards, shares     1,009,094        
Issuance of common stock upon exercise of stock options 3       3    
Issuance of common stock upon exercise of stock options, shares     41,233        
Stock-based compensation 1,285       1,285    
Net loss (12,241)           (12,241)
Other comprehensive gain (loss) 36         36  
Ending balance at Jun. 30, 2024 44,241 $ 0 $ 13 $ 0 364,813 (438) (320,147)
Ending balance (in shares) at Jun. 30, 2024   0 127,002,580 10,762,566      
Shares issued during the period for vested restricted stock awards, shares     718,424        
Issuance of common stock upon exercise of stock options, shares     2,578        
Stock-based compensation 1,319       1,319    
Net loss (15,359)           (15,359)
Other comprehensive gain (loss) 207         207  
Ending balance at Sep. 30, 2024 $ 30,408 $ 0 $ 13 $ 0 $ 366,132 $ (231) $ (335,506)
Ending balance (in shares) at Sep. 30, 2024   0 127,723,582 10,762,566      
XML 14 R6.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Cash flows from operating activities    
Net loss $ (36,371) $ (39,113)
Adjustments to reconcile net loss to cash used in operating activities:    
Stock-based compensation 4,243 9,044
Depreciation and amortization 1,229 1,004
Gain from sale of property and equipment 0 (2)
Amortization of debt issue cost 236 532
Provision for obsolete and slow-moving inventory 177 1,261
Loss from unconsolidated subsidiary 767 336
Gain from disposal of investment in unconsolidated subsidiary (4,085) (898)
Warranty and remediation provisions 4,735 3,938
Warranty recoverable from manufacturer 388 45
Credit loss provisions 1,330 4,302
Deferred income taxes 220 221
Lease expense and other 861 748
Impact on cash from changes in operating assets and liabilities:    
Accounts receivable 26,604 (26,625)
Inventories (11,396) 9,033
Prepaid and other current assets (1,403) (3,122)
Other assets (514) 67
Accounts payable 10,622 (6,160)
Accruals and other current liabilities (13,502) 5,491
Deferred revenue 832 (138)
Other non-current liabilities (2,013) (5,740)
Lease payments and other, net (968) (607)
Net cash used in operations (18,008) (46,383)
Cash flows from investing activities:    
Purchases of property and equipment (1,355) (460)
Equity method investment in Alpha Steel (1,800) (900)
Proceeds from disposal of investment in unconsolidated subsidiary 4,085 898
Net cash provided by (used in) investing activities 930 (462)
Cash flows from financing activities:    
Sale of common stock 0 34,007
Stock offering costs paid 0 (95)
Proceeds from stock option exercises 3 221
Net cash provided by financing activities 3 34,133
Effect of exchange rate changes on cash and cash equivalents 95 (153)
Decrease in cash and cash equivalents (16,980) (12,865)
Cash and cash equivalents at beginning of period 25,235 44,385
Cash and cash equivalents at end of period 8,255 31,520
Supplemental disclosures of cash flow information:    
Purchases of property and equipment included in ending accounts payable and accruals 225 146
Stock issued for accrued legal settlement 0 2,000
Right-of-use asset and lease liability recognition for new leases 500 1,417
Cash paid during the period for interest 211 436
Cash paid during the period for taxes, net of refunds $ 113 $ 331
XML 15 R7.htm IDEA: XBRL DOCUMENT v3.24.3
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2024
Sep. 30, 2023
Pay vs Performance Disclosure                
Net Income (Loss) $ (15,359) $ (12,241) $ (8,771) $ (16,937) $ (10,414) $ (11,762) $ (36,371) $ (39,113)
XML 16 R8.htm IDEA: XBRL DOCUMENT v3.24.3
Description of business
9 Months Ended
Sep. 30, 2024
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Description of business

1. Description of business

FTC Solar, Inc. (the “Company”, “we”, “our”, or “us”) was founded in 2017 and is incorporated in the state of Delaware. In April 2021, we completed an initial public offering ("IPO"), and our common stock currently trades on the Nasdaq Capital Market under the symbol “FTCI”.

We are a global provider of solar tracker systems, supported by proprietary software and value-added engineering services. Solar tracker systems move solar panels throughout the day to maintain an optimal orientation relative to the sun, thereby increasing the amount of solar energy produced at a solar installation. Our original two-panel in-portrait solar tracker system is currently marketed under the Voyager brand name (“Voyager”) and our one module-in-portrait ("1P") solar tracker system, which became certified in 2023, is marketed under the Pioneer brand name ("Pioneer"). We also have a mounting solution to support the installation and use of U.S.-manufactured thin-film modules by project owners. Our primary software offerings include SUNPATH which is intended to help customers optimize solar tracking for increased energy production, our SUNOPS real-time operations management platform and our web-based ATLAS portfolio management software. In addition, we have a team of renewable energy professionals available to assist our U.S. and worldwide clients in site layout, structural design, pile testing and other needs across the solar project development and construction cycle. The Company is headquartered in Austin, Texas, and has international subsidiaries in Australia, China, India, South Africa and Spain.

We are an emerging growth company, as defined in the Jumpstart Our Business Startups (JOBS) Act. Under the JOBS Act, we elected to use the allowed extended transition period to delay adopting new or revised accounting standards until such time as those standards apply to private companies.

XML 17 R9.htm IDEA: XBRL DOCUMENT v3.24.3
Summary of significant accounting policies
9 Months Ended
Sep. 30, 2024
Accounting Policies [Abstract]  
Summary of significant accounting policies

2. Summary of significant accounting policies

Basis of presentation and principles of consolidation

The accompanying unaudited condensed consolidated financial statements include the results of the Company and its wholly owned subsidiaries and have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial statements and pursuant to Form 10-Q and Article 10 of Regulation S-X. In the opinion of management, all adjustments of a normal recurring nature have been made that are considered necessary for a fair statement of our financial position as of September 30, 2024, and December 31, 2023, our results of operations for the three and nine months ended September 30, 2024 and 2023, and our cash flows for the nine months ended September 30, 2024 and 2023. The condensed consolidated balance sheet as of December 31, 2023 has been derived from the Company’s audited consolidated financial statements but does not include all disclosures required by accounting principles generally accepted in the United States of America. Operating results for the three and nine months ended September 30, 2024 are not necessarily indicative of the results that may be expected for the year ending December 31, 2024. Intercompany balances and transactions have been eliminated in consolidation.

Certain information and disclosures normally included in the notes to annual financial statements prepared in accordance with U.S. GAAP have been omitted from these interim financial statements pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Therefore, these unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 (our "2023 Annual Report").

We currently operate in one business segment, the manufacturing and servicing of solar tracker systems.

Liquidity

We have incurred cumulative losses since inception and have a history of cash outflows from operations. As of September 30, 2024, we had $8.3 million of cash on hand, $18.9 million of working capital and approximately $64.9 million of remaining capacity available for future sales of our common stock under our ATM program as defined and described further in Note 4, "ATM program" below. There can be no assurance that we will be able to sell any additional shares of our common stock under the ATM program and no assurance regarding

the price at which we will be able to sell such shares, and any sales of our common stock under the ATM program may be at prices that result in additional dilution to our existing stockholders.

On December 22, 2023, we received notification from The Nasdaq Stock Market LLC (“Nasdaq”) that we were not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5450(a)(1), because the closing bid price of the Company’s common stock was below $1.00 per share for 30 consecutive business days. In accordance with Nasdaq Listing Rule 5810(c)(3)(A), we were initially given a period of 180 calendar days from the date of notification, or until June 19, 2024, to regain compliance with the minimum bid price requirement, which was not achieved. Effective May 31, 2024, trading in our common stock transferred from the Nasdaq Global Market to the Nasdaq Capital Market. On June 21, 2024, we received notification from Nasdaq that we were approved for an additional 180-day period, or until December 17, 2024, to cure the bid price deficiency in accordance with Nasdaq Listing Rule 5810(c)(3)(A). In order to achieve compliance with the Nasdaq requirements for continued listing, on November 8, 2024, our stockholders approved an amendment to our Amended and Restated Certificate of Incorporation to effect a reverse stock split at a ratio ranging from 1-for-5 to 1-for 25, with the exact ratio to be determined by our Board of Directors. At this time, our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days, Nasdaq will provide written notification that we have achieved compliance with this minimum bid price requirement. If we fail to regain compliance with the minimum bid price requirement during this second 180-day period, then Nasdaq will notify us that our common stock is subject to delisting.

Effective April 30, 2024, our Senior Secured Revolving Credit Facility ("Credit Facility) expired unused and has not been replaced as of September 30, 2024. As described further in Note 18, "Subsequent events" below, we signed a binding term sheet on November 8, 2024, with an institutional investor, for the issuance of $15 million in long-term senior secured promissory notes, along with warrants to purchase 17.5 million shares of our common stock at an exercise price of $0.01 per share. Closing on the transaction is expected on or before November 30, 2024.

At September 30, 2024, we had a contractual obligation that could require us to make additional capital contributions of up to $0.8 million to Alpha Steel, as well as make a minimum level of purchases from Alpha Steel, as described further in Note 3, "Equity method investment" below. In the event we were to fail to meet our minimum required purchase commitments during a specified period, including the current period from January 1, 2024 to June 30, 2025, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $4.0 million in the aggregate.

In addition, we have made efforts during 2024 to enhance and strengthen our management leadership team. In August 2024, we hired Yann Brandt as our new Chief Executive Officer and, prior to that, we named Tamara Mullings, a former member of our Board of Directors, as our Senior Vice President, North America Sales and Alberto Echeverria, a former Chief Executive Officer and Executive Member of the Board of STI Norland, as our Senior Vice President, International Sales.

In accordance with Accounting Standards Codification ("ASC") 205-40, Going Concern, we have evaluated whether there are conditions and events, considered in the aggregate, which raise substantial doubt about our ability to continue as a going concern within one year after the date our condensed consolidated financial statements are issued.

Management plans to address the liquidity needs of the Company by (i) executing the aforementioned $15 million issuance of long-term senior secured notes, (ii) utilizing receipt of additional contingent earnout payments from our investment in Dimension Energy LLC that we sold in 2021, (iii) implementing additional cost savings steps, which could impact the level of services currently provided by third parties and our existing headcount, and (iv) utilizing capacity available for future sales of our common stock under the ATM program. We believe execution of these plans will allow us to fund our operations for at least one year from the date of issuance of our condensed consolidated financial statements.

The successful execution of these plans is subject to various risks and uncertainties. These include, but are not limited to, market conditions, the Company's ability to achieve projected cost savings and revenue targets and access to financing on favorable terms. There can be no assurance that these plans will be realized as anticipated and actual results may differ materially from those projected.

Use of estimates

Preparation of condensed consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements, and the reported revenue and expenses during the period. Estimates are used for calculating the measure of progress

of our solar tracker projects and deriving the standalone selling prices of the individual performance obligations when determining amounts to recognize for revenue, estimating allowances for credit losses and slow-moving and obsolete inventory, determining useful lives of long-lived assets and the estimated fair value of those assets for impairment assessments, and estimating the fair value of investments, stock compensation awards, warranty liabilities and federal and state taxes, including tax valuation allowances, as well as other contingencies. We base our estimates on historical experience and anticipated results, trends, and various other assumptions that we believe are reasonable under the circumstances, including assumptions as to future events. Actual results could differ from those estimates due to risks and uncertainties.

Concentration of credit risk

Financial instruments that potentially subject the Company to concentrations of credit risk are primarily cash and accounts receivable.

We regularly maintain cash balances with various financial institutions that exceed federally insured amounts, but we have experienced no losses associated with these amounts to date. We also took action in early 2023 to reallocate cash balances between different financial institutions based on our assessment as to the financial health of certain institutions.

We extend credit to customers in the normal course of business, often without requiring collateral. We also perform credit analyses and monitor the financial health of our customers to reduce credit risk.

The Company’s accounts receivables are derived from revenue earned from customers primarily located in the United States and Australia. For the periods included in this Quarterly Report, no company locations other than those in the United States accounted for more than 10% of our consolidated revenue. Most of our customers are project developers, solar asset owners and engineering, procurement and construction (“EPC”) contractors that design and build solar energy projects. We typically rely on a small number of customers that account for a large portion of our revenue each period and our outstanding receivables at each period end.

Cash and cash equivalents

We consider all highly liquid investments purchased with an original maturity of three months or less to be cash equivalents. Certain of our cash equivalents include deposits in money market funds that invest primarily in short-term securities issued or guaranteed by the U.S. government or its agencies or instrumentalities and contain no restrictions on immediate redemption. These deposits totaled $1.8 million at September 30, 2024 and $13.9 million at December 31, 2023. Interest earned on cash equivalents is included in interest income, which is reported net of interest expense in our condensed consolidated statements of comprehensive loss.

Accounts receivable, net

Trade receivables are recorded at invoiced amounts, net of allowances for credit losses, and do not bear interest. We generally do not require collateral from our customers; however, in certain circumstances, we may require letters of credit, other collateral, additional guarantees or advance payments.

The allowance for credit losses is based on the lifetime expected credit loss of our customer accounts. To assess the lifetime expected credit loss, we utilize a loss rate method that takes into consideration historical experience and certain other factors, as appropriate, such as credit quality and current economic or other conditions that may affect a customer's ability to pay. Provisions for credit losses are included as a component of our selling and marketing expenses.

Receivables arising from revenue recognized in excess of billings represents our unconditional right to consideration before customers are invoiced due to the level of progress obtained as of period end on our contracts to procure and deliver tracker systems and related equipment. Further information may be found below in our revenue recognition policy.

Inventories

Inventories are stated at the lower of cost or net realizable value, with costs computed on a first-in, first-out basis. The Company periodically reviews its inventories for excess and obsolete items and adjusts carrying costs to estimated net realizable values when they are determined to be less than cost.

Impairment

We review our long-lived assets that are held for use for impairment whenever events or changes in circumstances indicate that the carrying amount of the asset may not be recoverable or that its useful life may be shorter than previously expected. If such impairment indicators are present or other factors exist that indicate the carrying amount of the asset may not be recoverable, we determine whether an impairment has occurred through the use of an undiscounted cash flow analysis of the asset at the lowest level for which identifiable cash flows exist. If an impairment has occurred, we recognize a loss for the difference between the carrying amount and the fair value of the asset, which in most cases is estimated based upon Level 3 unobservable inputs. If the asset is determined to have a remaining useful life shorter than previously expected, an adjustment for the shorter remaining life will be made for purposes of recognizing future depreciation expense. Assets are classified as held for sale when we have a plan, approved by the appropriate levels of management, for disposal of such assets, as well as other considerations, and those assets are stated at the lower of carrying value or estimated fair value less estimated costs to sell.

Intangible assets, net

Intangible assets are recorded at fair value when acquired in connection with a business combination and consist of developed technology in the form of software tools, licenses, and intellectual property, which are amortized over the period of their estimated useful lives, generally 2.5 - 3.0 years, using the straight-line method. Costs incurred to renew or extend the term of a recognized intangible asset, if any, are expensed as incurred. We evaluate intangible assets for impairment using the method described above under "Impairment".

Goodwill

We recognize goodwill as the excess of the purchase price over the estimated fair value of the identified assets and liabilities acquired in a business combination accounted for using the acquisition method. Goodwill is not amortized but is subject to a periodic assessment for impairment at least annually, or whenever events and circumstances indicate an impairment may exist. Our assessments may include qualitative factors such as current or expected industry and market conditions, our overall financial performance, share price trends, market capitalization and other company-specific events.

We operate in one segment, being the consolidated entity, which we have also determined is the reporting unit for goodwill impairment.

No impairment of goodwill was recognized as of September 30, 2024 or 2023.

Equity method investment

We use the equity method of accounting for investments in which we have the ability to exercise significant influence, but not control, over operating and financial policies of the investee. Our proportionate share of the net income or loss of these investees is included in our condensed consolidated statements of comprehensive loss. Judgment regarding the level of influence over each equity method investment includes considering key factors such as our ownership interest, legal form of the investee, representation on the board of directors or managers, participation in policy-making decisions and material intra-entity transactions.

We account for distributions received from equity method investees under the “nature of the distribution” approach based on the nature of the activity or activities of the investee that generated the distribution as either a return on investment (classified as cash inflows from operating activities) or a return of investment (classified as cash inflows from investing activities).

We evaluate equity method investments for impairment whenever events or changes in circumstances indicate that the carrying amount of the investment might not be recoverable. Factors considered by the Company when reviewing an equity method investment for impairment include the length of time and the extent to which the fair value of the equity method investment has been less than its cost, the investee’s financial condition and near-term prospects and the intent and ability to hold the investment for a period of time sufficient to allow for anticipated recovery. An impairment that is other-than temporary is recognized in the period identified.

We made an accounting policy election that, upon the sale of our equity method investments, we will recognize contractual contingent gains arising from earnout provisions and project escrow releases when such amounts are realizable in periods subsequent to the disposal date.

Warranty

Typically, the sale of solar tracker projects includes parts warranties to customers as part of the overall price of the product. We provide standard assurance type warranties for our products for periods generally ranging from five to ten years. We also accrue for costs relating to remediation efforts involving product issues we believe require correction. We record a provision for estimated warranty and remediation expenses in cost of sales, net of amounts recoverable from manufacturers under their warranty obligations to us. When historical claims information relating to our equipment is not sufficient, we will base our estimates on industry studies involving the nature and frequency of product failure rates for similar parts used by our competitors, as well as other related businesses. We do not maintain general or unspecified reserves; all warranty reserves are related to specific projects. All actual or estimated material costs incurred for warranty or remediation services in subsequent periods are charged to those established reserves.

While we periodically monitor our warranty activities and claims, if actual costs incurred were to be different from our estimates, we would recognize adjustments to our warranty reserves in the period in which those differences arise or are identified.

Stock-based compensation

We recognize compensation expense for all share-based payment awards made, including stock options and restricted stock units ("RSUs"), based on the estimated fair value of the award on the grant date. We calculate the fair value of stock options using the Black-Scholes option pricing model for awards with service-based vesting or through use of a lattice model or a Monte Carlo simulation for stock option and RSU awards with market conditions. The fair value of RSUs with service or performance-based vesting is based on the estimated fair value of the Company's common stock on the date of grant. We consider the closing price of our stock, as reported on the Nasdaq Capital Market, to be the fair value of our stock on the grant date.

Forfeitures are accounted for as they occur. For service-based awards, stock-based compensation is recognized using the straight-line attribution approach over the requisite service period. For performance-based awards, stock-based compensation is recognized based on graded vesting over the requisite service period when the performance condition is probable of being achieved. Stock compensation expense for market-based awards is recognized over the derived service period determined in the valuation model, inclusive of any vesting conditions.

Revenue recognition

Product revenue is derived from the sale of solar tracker systems and customized components for those systems, individual part sales for certain specific transactions and the sale of term-based software licenses. Term-based licensed software is deployed on the customers’ own servers and has significant standalone functionality.

Service revenue includes revenue from shipping and handling services, engineering consulting and pile testing services, our subscription-based enterprise licensing model and maintenance and support services in connection with the term-based software licenses. Our subscription-based enterprise licensing model typically has contract terms ranging from one to two years and consists of subscription fees from the licensing of subscription services. Our hosted on-demand service arrangements do not provide customers with the right to take possession of the software supporting the hosted services. Support services include ongoing security updates, upgrades, bug fixes, and maintenance.

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

Identify the contract with a customer: A contract with a customer exists when (i) the Company enters into an enforceable contract with a customer that defines each party’s rights regarding the products and services to be transferred and identifies the payment terms related to these products and services, (ii) the contract has commercial substance, and (iii) the Company determines that collection of substantially all consideration for products and services that are transferred is probable based on the customer’s intent and ability to pay the promised consideration. In assessing the recognition of revenue, we also evaluate whether two or more contracts should be combined and accounted for as one contract and if the combined or single contract should be accounted for as multiple performance obligations which could change the amount of revenue and profit (loss) recorded in a period. Change orders may include changes in specifications or design, manner of

performance, equipment, materials, scope of work, and/or the period of completion of the project. We analyze change orders to determine if they should be accounted for as a modification to an existing contract or a new stand-alone contract.

Contracts we enter into with our customers for sale of solar tracker systems are generally under two different types of arrangements: (1) purchase agreements and equipment supply contracts (“Purchase Agreements”), and (2) sale of individual parts for those systems.

Change orders from our customers are generally modifications to existing contracts and are included in the total estimated contract revenue when it is probable that the change order will result in additional value that can be reliably estimated and realized.

Identify the performance obligations in the contract: We enter into contracts that can include various combinations of products and services, which are either capable of being distinct and accounted for as separate performance obligations or as one performance obligation since the majority of tasks and services are part of a single project or capability. However, determining whether products or services are considered distinct performance obligations that should be accounted for separately versus together may sometimes require significant judgment.

Our Purchase Agreements typically include two performance obligations: 1) our solar tracker systems or customized components of those systems, and 2) shipping and handling services. The deliverables included as part of our solar tracker systems are predominantly accounted for as one performance obligation, as these deliverables are part of a combined promise to deliver a project.

The revenue for shipping and handling services will be recognized over time based on progress in meeting shipping terms of the arrangements, as this faithfully depicts the Company’s performance in transferring control. Revenue for stand-alone engineering consulting and pile testing services is recognized at a point in time upon completion of the services performed.

Sales of individual parts of our solar tracker systems for certain specific transactions include multiple performance obligations consisting of individual parts of those systems. Revenue is recognized for parts sales at a point in time when the obligations under the terms of the contract with our customer are satisfied. Generally, this occurs with the transfer of control of the asset, which is in line with shipping terms.

Determine the transaction price: The transaction price is determined based on the consideration to which we will be entitled in exchange for transferring services to the customer. Such amounts are typically stated in the customer contract, and to the extent that we identify variable consideration, we will estimate the variable consideration at the onset of the arrangement as long as it is probable that a significant reversal in the amount of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is subsequently resolved. The majority of our contracts do not contain variable consideration provisions as a continuation of the original contract. None of our contracts contain a significant financing component. Taxes collected from customers and remitted to governmental authorities are not included in revenue.

Allocate the transaction price to performance obligations in the contract: Once we have determined the transaction price, we allocate the total transaction price to each performance obligation in a manner depicting the amount of consideration to which we expect to be entitled in exchange for transferring the good(s) or service(s) to the customer. We allocate the transaction price to each performance obligation identified in the contract on a relative standalone selling price basis.

We use the expected cost-plus margin approach based on hardware, labor, and related overhead cost to estimate the standalone selling price of our solar tracker systems, customized components of those systems, and individual parts for certain specific transactions. We also use the expected cost-plus margin approach based on expected third-party shipping and transportation costs to estimate the standalone selling price of our shipping, handling and logistics performance obligations. We use the adjusted market assessment approach for all other performance obligations.

Recognize revenue when or as the Company satisfies a performance obligation: For each performance obligation identified, we determine at contract inception whether we satisfy the performance obligation over time or at a point in time. The performance obligations in the contracts for our solar tracker systems and customized components of those systems are satisfied over time as work progresses, utilizing an input measure of progress determined by cost-to-cost measures on these projects as this faithfully depicts our performance in transferring control. Additionally, our performance does not create an asset with an alternative use, due to the highly customized nature of the product, and we have an enforceable right to payment for performance completed to date. Our performance obligations for individual part sales for certain specific transactions are recognized at a point in time as and when control transfers based on the terms for the contract. Our performance obligations for engineering consulting and pile testing services are recognized at a point in time upon completion of the

services. Our performance obligations for term-based software licenses are recognized at a point in time as and when control transfers, either upon delivery to the customer or the software license start date, whichever is later. Our performance obligations for shipping and handling services are satisfied over time as the services are delivered over the term of the contract. We recognize revenue for subscription and other services on a straight-line basis over the contract period. With regard to support revenue, a time-elapsed method is used to measure progress because we transfer control evenly over the contractual period. Accordingly, the fixed consideration related to support revenue is generally recognized on a straight-line basis over the contract term.

Contract assets and liabilities: The timing of revenue recognition, billing, and cash collection results in the recognition of accounts receivable, unbilled receivables for revenue recognized in excess of billings, and deferred revenue in the condensed consolidated balance sheets. We have elected to use the practical expedient of expensing incremental costs of obtaining a contract for our contracts of less than one year in duration. We may receive advances or deposits from our customers before revenue is recognized, resulting in contract liabilities, which are reflected as “deferred revenue” in our condensed consolidated balance sheets. Customer deposits are short term as the related performance obligations are typically fulfilled within 12 months. Changes in deferred revenue relate to fluctuations in the timing of customer deposits and completion of performance obligations. Revenue recognized during the three and nine months ended September 30, 2024, from amounts included in deferred revenue at December 31, 2023, totaled $1.1 million and $3.6 million, respectively. Revenue recognized during the three and nine months ended September 30, 2023, from amounts included in deferred revenue at December 31, 2022, totaled $1.6 million and $10.9 million, respectively.

Cost of revenue consists primarily of costs related to raw materials, equipment manufacturing activities, freight and delivery, product warranty, remediation and personnel costs (salaries, bonuses, benefits, and stock-based compensation). Personnel costs in cost of revenue include both direct labor costs, as well as costs attributable to any individuals whose activities relate to the procurement, installment and delivery of the finished product and services. Cost of revenue owed but not yet paid is recorded as accrued cost of revenue in the accompanying condensed consolidated balance sheets. Deferred cost of revenue, a component of our prepaid and other current assets, results from the timing differences between the costs incurred in advance of the satisfaction of all revenue recognition criteria consistent with our revenue recognition policy.

Recent accounting and regulatory pronouncements not yet adopted

In November 2023, the Financial Accounting Standards Board ("FASB") issued ASU No. 2023-07 - Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures ("ASU 2023-07"), which will become effective for us for our year end 2024 financial reporting and our interim reporting beginning January 1, 2025. ASU 2023-07 requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis and will require interim disclosures about a reportable segment's profit or loss and assets that are currently required annually. As noted above, we operate in one segment. We are currently evaluating the impact of ASU 2023-07 on our existing disclosures. ASU 2023-07 will be applied retrospectively to all periods when presented in our consolidated financial statements for the year ending December 31, 2024.

In December 2023, the FASB issued ASU No. 2023-09 - Income Taxes (Topic 740): Improvements to Income Tax Disclosures ("ASU 2023-09"). ASU 2023-09 requires companies to disclose (i) additional categories of information about federal, state and foreign income taxes above a quantitative threshold in their rate reconciliation table and (ii) income taxes paid, net of refunds, disaggregated by federal, state and foreign taxes for annual periods, as well as other disclosure changes. As an emerging growth company, we are not required to adopt ASU 2023-09 prior to 2026, although earlier adoption is permitted. We are currently evaluating the impact of ASU 2023-09 on our existing income tax disclosures.

In March 2024, the U.S. Securities and Exchange Commission ("SEC") adopted the final rule under SEC Release No. 33-11275, The Enhancement and Standardization of Climate-Related Disclosures for Investors. This rule would require registrants to disclose certain climate-related information in registration statements and annual reports. In April 2024, the SEC issued a stay of the final rules pending a judicial review of the validity of the rules by the Eighth Circuit Court of Appeals. We are currently evaluating the final rule to determine its impact on our disclosures.

Other standards or regulatory requirements that have been issued but not yet adopted as of September 30, 2024, are either not applicable to us or are not expected to have any material impact upon adoption.

Reclassifications

Certain prior year amounts have been reclassified to conform to the current year presentation. There was no impact on our financial condition or results of operations as a result of the reclassification.

XML 18 R10.htm IDEA: XBRL DOCUMENT v3.24.3
Equity method investment
9 Months Ended
Sep. 30, 2024
Equity Method Investments and Joint Ventures [Abstract]  
Equity method investment

3. Equity method investment

On February 9, 2023, we entered into a limited liability company agreement (the "LLC Agreement") with Taihua New Energy (Thailand) Co., LTD ("Taihua"), a steel fabricator and an existing vendor, and DAYV LLC, for the creation of Alpha Steel LLC ("Alpha Steel"), a Delaware limited liability company dedicated to producing steel components, including torque tubes, for utility-scale solar projects. The Alpha Steel facility, which is located outside of Houston in Sealy, Texas, began commercial production late in the fourth quarter of 2023.

We entered into amendment no. 1 to the Alpha Steel LLC Agreement with Taihua and DAYV LLC on July 28, 2023, to allow for members at their option, and with the approval of the Board of Managers, to make payments in respect of Alpha Steel’s contractual obligations in the event that Alpha Steel does not or is not able to make such payments from its own resources (“Credit Support Payments”). Any such Credit Support Payments will be treated as capital contributions by the members to Alpha Steel, with any member funding more than its ratable share of Credit Support Payments being deemed to have loaned such excess to each underfunding member at the U.S. prime rate plus 2%.

Alpha Steel is intended to enhance our domestic supply chain, our ability to support our customers and the growth of the U.S. solar market, with domestic manufacturing utilizing U.S. steel. We have a 45% interest in Alpha Steel, which is accounted for under the equity method of accounting. Taihua has a 51% interest in Alpha Steel and DAYV LLC, an entity owned by members of the Board of Managers of Alpha Steel and a related party with the parent company of Taihua, has a 4% interest in Alpha Steel. The Chief Executive Officer of Taihua is the General Manager of Alpha Steel. We have equal voting representation with Taihua and DAYV LLC, combined, on Alpha Steel's Board of Managers which is responsible, through majority vote, for making certain "major decisions" involving Alpha Steel, as specified in the LLC Agreement, including, among other things, approval of an annual business plan.

During 2023, we made a required initial capital contribution of $0.9 million to Alpha Steel. For the nine months ended September 30, 2024, we also made required additional capital contributions totaling $1.8 million. Pursuant to the LLC Agreement, we could be required to make up to $0.8 million in future additional capital contributions as Alpha Steel continues to expand production. For the three and nine months ended September 30, 2024, we recognized losses of $0.3 million and $0.8 million, respectively, which represent our share of the net operating losses incurred by Alpha Steel during each period. Our share of Alpha Steel losses recognized during the three and nine months ended September 30, 2023 totaled 0.3 million in each period.

In connection with the creation of Alpha Steel, we also entered into a three-year equipment supply agreement (the "Supply Agreement") with Alpha Steel, the terms of which will apply to our equipment purchase orders. Pursuant to the Supply Agreement, we have committed to placing a minimum level of purchase orders for torque tubes with Alpha Steel during the period from January 1, 2024 to June 30, 2025, with such volume commitments increasing in each of the next two annual periods. In the event we fail to meet our minimum required purchase commitments in any period, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $4.0 million in the aggregate. As of September 30, 2024, we had met approximately 11% of our required purchase commitments for the period ending June 30, 2025. The Supply Agreement may be terminated early in accordance with its provisions or may be extended beyond the initial term if mutually agreed to by the parties.

At September 30, 2024, in addition to our requirement to meet the remaining minimum purchase obligations for the remainder of the year, as described above, we were contingently liable for unpaid vendor obligations, including issued but unsatisfied purchase orders, of Alpha Steel totaling approximately $1.0 million. We expect Alpha Steel will be able to satisfy these obligations with financial resources available to them in the normal course of operations.

XML 19 R11.htm IDEA: XBRL DOCUMENT v3.24.3
Insider Trading Arrangements
3 Months Ended
Sep. 30, 2024
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
XML 20 R12.htm IDEA: XBRL DOCUMENT v3.24.3
ATM Program
9 Months Ended
Sep. 30, 2024
Program Rights Obligations [Abstract]  
ATM Program

4. ATM program

On September 14, 2022, we filed a prospectus supplement and entered into an equity distribution agreement (as amended, the "EDA") under which we may from time to time, in one or more transactions, offer and sell newly issued shares of our common stock having an aggregate offering price of up to $100 million in "at the money" offerings (the "ATM program"). We have and may continue to use the net proceeds from this offering for general corporate purposes, including working capital and operating expenses. We may also use a portion of such proceeds to acquire or invest in businesses, products, services or technologies.

Barclays Capital Inc. ("Barclays") is our sales agent under the EDA. The offering of our common stock under the EDA will terminate upon the earlier of (1) the sale of all common stock subject to the EDA or (2) the termination of the EDA by us or by Barclays as permitted therein. The EDA contains customary representations, covenants and indemnification provisions.

We sold no shares of newly issued common stock under the ATM program during the three and nine months ended September 30, 2024, however, during the three and nine months ended September 30, 2023, we sold 6,149,885 and 15,421,885 shares of newly issued common stock valued at $10.7 million and $35.1 million, respectively, for proceeds, net of commissions and fees, of approximately $10.4 million and $34.0 million, respectively. As of September 30, 2024, approximately $64.9 million of capacity remained for future sales of our common stock under the ATM program.

XML 21 R13.htm IDEA: XBRL DOCUMENT v3.24.3
Accounts receivable, net
9 Months Ended
Sep. 30, 2024
Accounts Receivable, after Allowance for Credit Loss [Abstract]  
Accounts receivable, net

5. Accounts receivable, net

Accounts receivable consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Trade receivables

 

$

20,482

 

 

$

46,152

 

Related party receivables

 

 

3,075

 

 

 

868

 

Revenue recognized in excess of billings

 

 

14,757

 

 

 

26,813

 

Other receivables

 

 

6

 

 

 

3

 

Total

 

 

38,320

 

 

 

73,836

 

Allowance for credit losses

 

 

(975

)

 

 

(8,557

)

Accounts receivable, net

 

$

37,345

 

 

$

65,279

 

On April 3, 2024, we entered into a First Amendment ("the Amendment") to Master Project Supply Agreements dated October 11, 2021 with a customer and major solar project developer that owed us approximately $30.8 million for project equipment we had previously completed and made available to the customer pursuant to the Master Project Supply Agreements. The Amendment was executed in consideration of and concurrent with the sale of the uncompleted projects by our customer, including the amended Master Project Supply Agreements, to a new third-party developer (the "Purchaser") who assumed certain obligations to us under the amended Master Project Supply Agreements.

Pursuant to the Amendment, we received a cash payment of $9.0 million from the Purchaser to acquire completed foundation piles, which are being stored at the request of the Purchaser for final delivery to the project sites, currently expected during the fourth quarter of 2024. The remaining completed project equipment, with an estimated fair value of approximately $13.2 million, was retained by us and returned to our inventory in exchange for forgiveness of the associated outstanding receivable balance owed by our customer. The fully reserved remaining unpaid receivable balance totaling approximately $8.9 million was written off against our allowance for credit losses.

Information about our related party receivables at September 30, 2024, may be found below in Note 16, "Related party transactions".

We had no receivables for amounts billed under retainage provisions at September 30, 2024 ($0.9 million at December 31, 2023).

Activity in the allowance for credit losses during the three and nine months ended September 30, 2024 and 2023 was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Balance at beginning of period

 

$

232

 

 

$

1,387

 

 

$

8,557

 

 

$

1,184

 

Impact of adoption of ASU 2016-13, effective January 1, 2023

 

N/A

 

 

N/A

 

 

N/A

 

 

 

 

Amounts charged (credited) to earnings during the period

 

 

743

 

 

 

4,099

 

 

 

1,330

 

 

 

4,302

 

Write-offs of accounts

 

 

 

 

 

 

 

 

(8,912

)

 

 

 

Balance at end of period

 

$

975

 

 

$

5,486

 

 

$

975

 

 

$

5,486

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XML 22 R14.htm IDEA: XBRL DOCUMENT v3.24.3
Inventories, net
9 Months Ended
Sep. 30, 2024
Inventory Disclosure [Abstract]  
Inventories

6. Inventories

Inventories consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Finished goods

 

$

15,639

 

 

$

4,246

 

Allowance for slow-moving and obsolete inventory

 

 

(515

)

 

 

(341

)

Total

 

$

15,124

 

 

$

3,905

 

The increase in our finished goods inventory is primarily related to completed project equipment retained by us pursuant to the agreement reached with a major customer described further in Note 5, "Accounts receivable, net" above.

XML 23 R15.htm IDEA: XBRL DOCUMENT v3.24.3
Prepaid and other current assets
9 Months Ended
Sep. 30, 2024
Prepaid Expense and Other Assets, Current [Abstract]  
Prepaid and other current assets

7. Prepaid and other current assets

Prepaid and other current assets consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Vendor deposits

 

$

6,462

 

 

$

5,667

 

Vendor deposits with related party

 

 

1,528

 

 

 

520

 

Prepaid expenses

 

 

862

 

 

 

1,251

 

Prepaid taxes

 

 

555

 

 

 

447

 

Deferred cost of revenue

 

 

1,934

 

 

 

666

 

Surety collateral

 

 

33

 

 

 

 

Other current assets

 

 

4,128

 

 

 

5,538

 

Total

 

$

15,502

 

 

$

14,089

 

At September 30, 2024, other current assets included $2.0 million for a non-interest-bearing customer advance related to pre-project construction financing activities. This advance is secured by certain customer assets.

XML 24 R16.htm IDEA: XBRL DOCUMENT v3.24.3
Leases
9 Months Ended
Sep. 30, 2024
Leases [Abstract]  
Leases

8. Leases

We lease office and warehouse space in various locations, including our corporate headquarters in Austin, Texas. Additionally, we lease space for an applications laboratory in Austin, Texas and a research and development facility in Seguin, Texas. All of our manufacturing is outsourced to contract manufacturing partners, and we currently do not own or lease any manufacturing facilities.

Our expense for our operating leases consisted of the following:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Operating lease cost

 

$

252

 

 

$

251

 

 

$

861

 

 

$

748

 

Short-term lease cost

 

 

100

 

 

 

132

 

 

 

304

 

 

 

334

 

Total lease cost

 

$

352

 

 

$

383

 

 

$

1,165

 

 

$

1,082

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Reported in:

 

 

 

 

 

 

 

 

 

 

 

 

Cost of revenue

 

$

186

 

 

$

245

 

 

$

681

 

 

$

710

 

Research and development

 

 

43

 

 

 

14

 

 

 

71

 

 

 

40

 

Selling and marketing

 

 

14

 

 

 

24

 

 

 

101

 

 

 

62

 

General and administrative

 

 

109

 

 

 

100

 

 

 

312

 

 

 

270

 

Total lease cost

 

$

352

 

 

$

383

 

 

$

1,165

 

 

$

1,082

 

Future remaining operating lease payment obligations were as follows:

(in thousands)

 

September 30,
2024

 

Remainder of 2024

 

$

233

 

2025

 

 

884

 

2026

 

 

313

 

2027

 

 

291

 

2028

 

 

124

 

2029

 

 

33

 

Total lease payments

 

 

1,878

 

Less: imputed interest

 

 

(123

)

Present value of operating lease liabilities

 

$

1,755

 

 

 

 

 

Current portion of operating lease liability

 

$

872

 

Operating lease liability, net of current portion

 

 

883

 

Present value of operating lease liabilities

 

$

1,755

 

XML 25 R17.htm IDEA: XBRL DOCUMENT v3.24.3
Property and equipment, net
9 Months Ended
Sep. 30, 2024
Property, Plant and Equipment [Abstract]  
Property and equipment, net

9. Property and equipment, net

Property and equipment consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Leasehold improvements

 

$

338

 

 

$

157

 

Field equipment

 

 

1,108

 

 

 

1,062

 

Information technology equipment

 

 

609

 

 

 

466

 

Tooling

 

 

1,824

 

 

 

1,014

 

Capitalized software

 

 

968

 

 

 

734

 

Total

 

 

4,847

 

 

 

3,433

 

Accumulated depreciation

 

 

(2,438

)

 

 

(1,610

)

Property and equipment, net

 

$

2,409

 

 

$

1,823

 

Depreciation expense for the three months ended September 30, 2024 and 2023, totaled $0.3 million and $0.2 million, respectively, and for the nine months ended September 30, 2024 and 2023, totaled $0.8 million and $0.6 million, respectively.

XML 26 R18.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible assets, net and goodwill
9 Months Ended
Sep. 30, 2024
Goodwill and Intangible Assets Disclosure [Abstract]  
Intangible assets, net and goodwill

10. Intangible assets, net and goodwill

Intangible assets consisted of the following:

(in thousands)

 

Estimated Useful Lives (Years)

 

September 30, 2024

 

 

December 31, 2023

 

Developed technology

 

2.5 3.0

 

$

2,568

 

 

$

2,555

 

Total

 

 

 

 

2,568

 

 

 

2,555

 

Accumulated amortization

 

 

 

 

(2,431

)

 

 

(2,013

)

Intangible assets, net

 

 

 

$

137

 

 

$

542

 

Amortization expense for the three months ended September 30, 2024 and 2023, totaled $0.1 million and $0.1 million, respectively, and for the nine months ended September 30, 2024 and 2023, totaled $0.4 million and $0.4 million, respectively.

During the nine months ended September 30, 2024 and 2023, activity in our goodwill balance was as follows:

 

 

 

 

Nine months ended September 30,

 

(in thousands)

 

 

 

2024

 

 

2023

 

Balance at beginning of period

 

 

 

$

7,353

 

 

$

7,538

 

Translation

 

 

 

 

68

 

 

 

(395

)

Balance at end of period

 

 

 

$

7,421

 

 

$

7,143

 

XML 27 R19.htm IDEA: XBRL DOCUMENT v3.24.3
Debt
9 Months Ended
Sep. 30, 2024
Debt Disclosure [Abstract]  
Debt

11. Debt

Our Credit Facility, entered into in 2021 with various lenders, including Barclays Bank PLC, as issuing lender, the swingline lender and as administrative agent, expired unused on April 30, 2024. The Credit Facility has not currently been replaced.

Interest expense for the three months ended September 30, 2024 was not significant and for the three months ended September 30, 2023 was $0.4 million. For the nine months ended September 30, 2024 and 2023, interest expense totaled $0.4 million and $1.0 million, respectively. Our interest expense primarily consisted of commitment and letter of credit fees, as well as amortization of costs relating to the initial establishment of the Credit Facility.

XML 28 R20.htm IDEA: XBRL DOCUMENT v3.24.3
Accrued Expenses and Other Current Liabilities
9 Months Ended
Sep. 30, 2024
Accrued Expenses and Other Current Liabilities [Abstract]  
Accrued Expenses and Other Current Liabilities

12. Accrued expenses and other current liabilities

Accrued expenses and other current liabilities consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Accrued cost of revenue

 

$

15,523

 

 

$

26,773

 

Related party accrued cost of revenue

 

 

1,215

 

 

 

1,451

 

Accrued compensation

 

 

3,695

 

 

 

3,858

 

Other accrued expenses

 

 

3,532

 

 

 

2,766

 

Total accrued expenses

 

$

23,965

 

 

$

34,848

 

 

 

 

 

 

 

 

Warranty reserves

 

$

8,949

 

 

$

7,279

 

Current portion of operating lease liability

 

 

872

 

 

 

740

 

Non-federal tax obligations

 

 

41

 

 

 

119

 

Total other current liabilities

 

$

9,862

 

 

$

8,138

 

Information relating to our related party accrued cost of revenue at September 30, 2024 and December 31, 2023 may be found below in Note 16, "Related party transactions".

Other accrued expenses primarily include amounts due for (i) legal costs associated with outstanding corporate or legal matters and (ii) other professional services.

Activity by period in the Company's warranty accruals was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Balance at beginning of period

 

$

10,415

 

 

$

12,081

 

 

$

11,002

 

 

$

12,426

 

Warranties issued and remediation added during the period

 

 

3,096

 

 

 

1,086

 

 

 

4,735

 

 

 

3,938

 

Settlements made during the period

 

 

(839

)

 

 

(847

)

 

 

(2,131

)

 

 

(3,184

)

Changes in liability for pre-existing warranties

 

 

(934

)

 

 

(363

)

 

 

(1,868

)

 

 

(1,223

)

Balance at end of period

 

$

11,738

 

 

$

11,957

 

 

$

11,738

 

 

$

11,957

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Warranty accruals are reported in:

 

 

 

 

 

 

 

 

 

 

 

 

Other current liabilities

 

$

8,949

 

 

$

7,738

 

 

$

8,949

 

 

$

7,738

 

Other non-current liabilities

 

 

2,789

 

 

 

4,219

 

 

 

2,789

 

 

 

4,219

 

Balance at end of period

 

$

11,738

 

 

$

11,957

 

 

$

11,738

 

 

$

11,957

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XML 29 R21.htm IDEA: XBRL DOCUMENT v3.24.3
Income Taxes
9 Months Ended
Sep. 30, 2024
Income Tax Disclosure [Abstract]  
Income Taxes

13. Income taxes

For the three months ended September 30, 2024 and 2023, we recorded income tax expense of $0.24 million and $0.17 million respectively, and for the nine months ended September 30, 2024 and 2023, we recorded income tax expense of $0.30 million and $0.18 million, respectively. These amounts for each period were lower than the statutory rate of 21%, primarily due to a valuation allowance established against the U.S. deferred tax assets.

We have had no material change in our unrecognized tax benefits since December 31, 2023. We recognize accrued interest and penalties related to unrecognized tax benefits as a component of income tax expense. As of September 30, 2024 and December 31, 2023, we had no accrued interest or penalties related to unrecognized tax benefits.

XML 30 R22.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingencies
9 Months Ended
Sep. 30, 2024
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies

14. Commitments and contingencies

We may become involved in various claims, lawsuits, investigations, and other proceedings, arising in the normal course of business. We accrue a liability when information available prior to the issuance of our financial statements indicates it is probable a loss has been incurred as of the date of the financial statements and the amount of loss can be reasonably estimated. If the reasonable estimate of the probable loss is a range, we record an accrual for the most likely estimate of the loss, or the low end of the range if there is no one best estimate. We adjust our accruals to reflect the impact of negotiation, settlements, rulings, advice of legal counsel and other information and events pertaining to a particular case. Legal costs are expensed as incurred.

In March of 2023, CBP issued notices of tariff assessment that indicated an action taken at the Import Specialist (i.e., the port) level with respect to merchandise imported from Thailand under entry number 004-1058562-5 (the “625 Assessment”) and entry number 004-1063793-9 (the “Original 939 Assessment”, and collectively with the 625 Assessment, the “Original CBP Assessments”). The Original CBP Assessments related to certain torque beams that are used in our Voyager+ product that were imported in 2022. In the Original CBP Assessments, CBP asserted that Section 301 China tariffs, Section 232 steel and aluminum tariffs, and antidumping and countervailing duties applied to the merchandise. Based on correspondence received to date from CBP and our calculations based on applicable duty and tariff rates, the 625 Assessment is currently for approximately $2.84 million. In September of 2023, CBP informed us (the "Revised 939 Assessment", and together with the 625 Assessment, the "Revised CBP Assessments") that the amount owed under the Original 939 Assessment was being revised downward to approximately $2.01 million. In particular, CBP accepted our position that the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, previously assessed under the Original 939 Assessment are not applicable as they are only applicable to articles that originate in China and that, in this case, the finished goods are products of Thailand.

Upon review of the facts involved, and in consultation with outside legal counsel, we believe that the remaining amounts claimed in the Revised CBP Assessments are incorrect. In particular, the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, are not applicable under the 625 Assessment for the same reason stated above with respect to the Revised 939 Assessment, which has been accepted by CBP. Moreover, with respect to both Revised

CBP Assessments, we believe that the goods in question were properly classified as parts of structures at the time of importation and that when properly classified, the beams and other materials are not subject to Section 232 duties applicable to more basic steel products.

CBP has legally finalized both Revised CBP Assessments. We filed a formal protest for the 625 Assessment in September of 2023 and for the Revised 939 Assessment in March of 2024. Based on the above, and under the relevant accounting guidance related to loss contingencies, we have made no accrual for the amounts claimed by CBP as of September 30, 2024, as we do not consider these amounts to be a probable obligation, as such term is defined and interpreted under the relevant accounting guidance, for us at this time. However, because matters of this nature are subject to inherent uncertainties, and unfavorable rulings or developments, including future assessments of additional duties or tariffs owed in respect of other shipments or other materials beyond what is presently included in the Revised CBP Assessments, could occur despite our belief that the tariffs and duties asserted are incorrect, there can be no certainty that the Company may not ultimately incur charges that are not currently recorded as liabilities. Since the outcome of these matters cannot be predicted with certainty, the costs associated with them could have a material adverse effect on our consolidated results of operations, financial position, or liquidity.

XML 31 R23.htm IDEA: XBRL DOCUMENT v3.24.3
Stock-Based Compensation
9 Months Ended
Sep. 30, 2024
Share-Based Payment Arrangement [Abstract]  
Stock-Based Compensation

15. Stock-based compensation

Stock-based compensation expense for each period was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Cost of revenue

 

$

243

 

 

$

181

 

 

$

699

 

 

$

1,313

 

Research and development

 

 

93

 

 

 

85

 

 

 

267

 

 

 

449

 

Selling and marketing

 

 

108

 

 

 

166

 

 

 

266

 

 

 

821

 

General and administrative

 

 

875

 

 

 

760

 

 

 

3,011

 

 

 

6,461

 

Total stock compensation expense

 

$

1,319

 

 

$

1,192

 

 

$

4,243

 

 

$

9,044

 

XML 32 R24.htm IDEA: XBRL DOCUMENT v3.24.3
Related Party Transactions
9 Months Ended
Sep. 30, 2024
Related Party Transactions [Abstract]  
Related party transactions

16. Related party transactions

Transaction with Ayna.AI LLC

In February 2022, we engaged Ayna.AI LLC (as successor in interest to Fernweh Engaged Operator Company LLC) (“Ayna”) to support us with improvements to our processes and performance in various areas including design, sourcing, logistics, pricing, software and standard configuration. The foregoing engagement constituted a related party transaction as South Lake One LLC, an entity affiliated with Isidoro Quiroga Cortés, a member of our board of directors at the time of the engagement, and a holder at that time of more than 5% of our outstanding capital stock, was an investor in Ayna. In addition, Discrimen LLC was an investor in Ayna, and Isidoro Quiroga Cortés was affiliated with that entity. Isidoro Quiroga Cortés was also on the board of directors of Ayna at the time of the engagement. On September 13, 2023, we executed a termination of the master services agreement and statement of work (collectively, the "Service Agreement") with Ayna and Fernweh Group LLC, the parent company of Fernweh Engaged Operator Company LLC, which resulted in the forfeiture of 2,000,000 unvested stock options and a corresponding reversal of approximately $1.1 million of stock-based compensation expense previously recognized at the date of termination. We also had an unamortized prepaid balance associated with this engagement, totaling $3.2 million, that was fully amortized as a charge to general and administrative expense during the three months ended September 30, 2023.

For the three and nine months ended September 30, 2023, we incurred $2.1 million and $3.5 million, respectively, of general and administrative expense, including expense, net of forfeitures, relating to stock-based compensation awards, and made cash payments of $0.8 million and $2.5 million, respectively, associated with our engagement of Ayna.

Related party receivables and payables

We have related party receivables at September 30, 2024 and December 31, 2023, totaling $3.1 million and $0.9 million, respectively, for future material cost discounts contractually owed to us by Alpha Steel in connection with the expected receipt of manufacturing incentives available to Alpha Steel under the Inflation Reduction Act, as costs are incurred by Alpha Steel to purchase raw materials and manufacture torque tubes and other products that will be used to fulfill purchase orders we issue to Alpha Steel.

We also have related party liabilities to Alpha Steel at September 30, 2024 and December 31, 2023, totaling $1.2 million and $1.5 million, respectively, for the accrued cost of revenue recognized on certain of our customer projects associated with the cost of products that are being manufactured for us by Alpha Steel.

During the three and nine months ended September 30, 2024, we made vendor deposits of $0.1 million and $2.8 million, respectively, to Alpha Steel and received invoices from Alpha Steel for purchases totaling $0.7 million and $6.2 million, respectively. Our balances of remaining vendor deposits with Alpha Steel as of September 30, 2024 and December 31, 2023 are shown in Note 7, "Prepaids and other current assets" above as "Vendor deposits with related party". After payments and application of vendor deposits to invoices received, we owe $1.0 million to Alpha Steel, which is included in our accounts payable balance at September 30, 2024 (none at December 31, 2023) in our condensed consolidated balance sheets.

XML 33 R25.htm IDEA: XBRL DOCUMENT v3.24.3
Net Loss Per Share
9 Months Ended
Sep. 30, 2024
Earnings Per Share [Abstract]  
Net Loss Per Share

17. Net loss per share

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net loss (in thousands)

 

$

(15,359

)

 

$

(16,937

)

 

$

(36,371

)

 

$

(39,113

)

Weighted average shares outstanding for calculating basic and diluted loss per share

 

 

127,380,292

 

 

 

119,793,821

 

 

 

126,234,997

 

 

 

112,794,562

 

Basic and diluted loss per share

 

$

(0.12

)

 

$

(0.14

)

 

$

(0.29

)

 

$

(0.35

)

 

 

 

 

 

 

 

 

 

 

 

 

 

For purposes of computing diluted loss per share, weighted average common shares outstanding do not include potentially dilutive securities that are anti-dilutive, as shown below.

 

 

For the three and nine months ended September 30,

 

 

 

2024

 

 

2023

 

Anti-dilutive securities excluded from calculating dilutive loss per share:

 

 

 

 

 

 

Shares of common stock issuable under stock option plans outstanding

 

 

2,278,938

 

 

 

3,048,139

 

Shares of common stock issuable upon vesting of RSUs

 

 

16,888,874

 

 

 

7,982,821

 

Potential common shares excluded from diluted net loss per share calculation

 

 

19,167,812

 

 

 

11,030,960

 

XML 34 R26.htm IDEA: XBRL DOCUMENT v3.24.3
Subsequent Events
9 Months Ended
Sep. 30, 2024
Subsequent Events [Abstract]  
Subsequent events

18. Subsequent events

On November 8, 2024, we entered into a binding term sheet with an institutional investor (the “Investor”) to issue to the Investor, in a private placement, senior secured promissory notes (the “Notes”) in an aggregate principal amount of $15 million and common stock purchase warrants (the “Warrants”) to purchase 17,500,000 shares of our common stock.

The Notes will bear interest at a rate of 11% per annum if payable in cash or, at our options, 13% per annum if paid-in-kind and will mature five (5) years from the date of issuance. The Notes will be secured by a first priority lien on substantially all of our assets and will be guaranteed by all of our direct and indirect subsidiaries. The Notes will contain customary covenants for a transaction of this nature, including financial covenants and restrictive covenants. If we prepay the Notes in full within a specified period of time after issuance, we will be required to pay a make-whole payment to the Investor representing a portion of the undiscounted interest payments that otherwise would have been payable to the Investor, the calculation for which will be specified in the definitive documents.

The Warrants are immediately exercisable at an exercise price of $0.01 per share, subject to certain customary adjustments to be set forth in the definitive documentation, and will expire ten (10) years from the date of issuance. At the option of the Investor, the Warrants will also be exercisable on a cashless basis using a customary cashless exercise formula.

We have also agreed that the Investor shall be entitled to nominate one (1) person for election to our board of directors at our annual stockholder meeting. We have also agreed to reimburse the Investor for expenses incurred in connection with the transaction in an amount equal to three percent (3%) of the principal amount of the Notes.

The issuance of the Notes and Warrants will be subject to customary closing conditions and the preparation and negotiation of definitive documents. We currently expect that the issuance of the Notes and Warrants will occur on or prior to November 30, 2024.

XML 35 R27.htm IDEA: XBRL DOCUMENT v3.24.3
Summary of significant accounting policies (Policies)
9 Months Ended
Sep. 30, 2024
Accounting Policies [Abstract]  
Basis of presentation and principles of consolidation

Basis of presentation and principles of consolidation

The accompanying unaudited condensed consolidated financial statements include the results of the Company and its wholly owned subsidiaries and have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial statements and pursuant to Form 10-Q and Article 10 of Regulation S-X. In the opinion of management, all adjustments of a normal recurring nature have been made that are considered necessary for a fair statement of our financial position as of September 30, 2024, and December 31, 2023, our results of operations for the three and nine months ended September 30, 2024 and 2023, and our cash flows for the nine months ended September 30, 2024 and 2023. The condensed consolidated balance sheet as of December 31, 2023 has been derived from the Company’s audited consolidated financial statements but does not include all disclosures required by accounting principles generally accepted in the United States of America. Operating results for the three and nine months ended September 30, 2024 are not necessarily indicative of the results that may be expected for the year ending December 31, 2024. Intercompany balances and transactions have been eliminated in consolidation.

Certain information and disclosures normally included in the notes to annual financial statements prepared in accordance with U.S. GAAP have been omitted from these interim financial statements pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Therefore, these unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 (our "2023 Annual Report").

We currently operate in one business segment, the manufacturing and servicing of solar tracker systems.

Liquidity

Liquidity

We have incurred cumulative losses since inception and have a history of cash outflows from operations. As of September 30, 2024, we had $8.3 million of cash on hand, $18.9 million of working capital and approximately $64.9 million of remaining capacity available for future sales of our common stock under our ATM program as defined and described further in Note 4, "ATM program" below. There can be no assurance that we will be able to sell any additional shares of our common stock under the ATM program and no assurance regarding

the price at which we will be able to sell such shares, and any sales of our common stock under the ATM program may be at prices that result in additional dilution to our existing stockholders.

On December 22, 2023, we received notification from The Nasdaq Stock Market LLC (“Nasdaq”) that we were not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5450(a)(1), because the closing bid price of the Company’s common stock was below $1.00 per share for 30 consecutive business days. In accordance with Nasdaq Listing Rule 5810(c)(3)(A), we were initially given a period of 180 calendar days from the date of notification, or until June 19, 2024, to regain compliance with the minimum bid price requirement, which was not achieved. Effective May 31, 2024, trading in our common stock transferred from the Nasdaq Global Market to the Nasdaq Capital Market. On June 21, 2024, we received notification from Nasdaq that we were approved for an additional 180-day period, or until December 17, 2024, to cure the bid price deficiency in accordance with Nasdaq Listing Rule 5810(c)(3)(A). In order to achieve compliance with the Nasdaq requirements for continued listing, on November 8, 2024, our stockholders approved an amendment to our Amended and Restated Certificate of Incorporation to effect a reverse stock split at a ratio ranging from 1-for-5 to 1-for 25, with the exact ratio to be determined by our Board of Directors. At this time, our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days, Nasdaq will provide written notification that we have achieved compliance with this minimum bid price requirement. If we fail to regain compliance with the minimum bid price requirement during this second 180-day period, then Nasdaq will notify us that our common stock is subject to delisting.

Effective April 30, 2024, our Senior Secured Revolving Credit Facility ("Credit Facility) expired unused and has not been replaced as of September 30, 2024. As described further in Note 18, "Subsequent events" below, we signed a binding term sheet on November 8, 2024, with an institutional investor, for the issuance of $15 million in long-term senior secured promissory notes, along with warrants to purchase 17.5 million shares of our common stock at an exercise price of $0.01 per share. Closing on the transaction is expected on or before November 30, 2024.

At September 30, 2024, we had a contractual obligation that could require us to make additional capital contributions of up to $0.8 million to Alpha Steel, as well as make a minimum level of purchases from Alpha Steel, as described further in Note 3, "Equity method investment" below. In the event we were to fail to meet our minimum required purchase commitments during a specified period, including the current period from January 1, 2024 to June 30, 2025, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $4.0 million in the aggregate.

In addition, we have made efforts during 2024 to enhance and strengthen our management leadership team. In August 2024, we hired Yann Brandt as our new Chief Executive Officer and, prior to that, we named Tamara Mullings, a former member of our Board of Directors, as our Senior Vice President, North America Sales and Alberto Echeverria, a former Chief Executive Officer and Executive Member of the Board of STI Norland, as our Senior Vice President, International Sales.

In accordance with Accounting Standards Codification ("ASC") 205-40, Going Concern, we have evaluated whether there are conditions and events, considered in the aggregate, which raise substantial doubt about our ability to continue as a going concern within one year after the date our condensed consolidated financial statements are issued.

Management plans to address the liquidity needs of the Company by (i) executing the aforementioned $15 million issuance of long-term senior secured notes, (ii) utilizing receipt of additional contingent earnout payments from our investment in Dimension Energy LLC that we sold in 2021, (iii) implementing additional cost savings steps, which could impact the level of services currently provided by third parties and our existing headcount, and (iv) utilizing capacity available for future sales of our common stock under the ATM program. We believe execution of these plans will allow us to fund our operations for at least one year from the date of issuance of our condensed consolidated financial statements.

The successful execution of these plans is subject to various risks and uncertainties. These include, but are not limited to, market conditions, the Company's ability to achieve projected cost savings and revenue targets and access to financing on favorable terms. There can be no assurance that these plans will be realized as anticipated and actual results may differ materially from those projected.

Use of estimates

Use of estimates

Preparation of condensed consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements, and the reported revenue and expenses during the period. Estimates are used for calculating the measure of progress

of our solar tracker projects and deriving the standalone selling prices of the individual performance obligations when determining amounts to recognize for revenue, estimating allowances for credit losses and slow-moving and obsolete inventory, determining useful lives of long-lived assets and the estimated fair value of those assets for impairment assessments, and estimating the fair value of investments, stock compensation awards, warranty liabilities and federal and state taxes, including tax valuation allowances, as well as other contingencies. We base our estimates on historical experience and anticipated results, trends, and various other assumptions that we believe are reasonable under the circumstances, including assumptions as to future events. Actual results could differ from those estimates due to risks and uncertainties.

Concentration of credit risk

Concentration of credit risk

Financial instruments that potentially subject the Company to concentrations of credit risk are primarily cash and accounts receivable.

We regularly maintain cash balances with various financial institutions that exceed federally insured amounts, but we have experienced no losses associated with these amounts to date. We also took action in early 2023 to reallocate cash balances between different financial institutions based on our assessment as to the financial health of certain institutions.

We extend credit to customers in the normal course of business, often without requiring collateral. We also perform credit analyses and monitor the financial health of our customers to reduce credit risk.

The Company’s accounts receivables are derived from revenue earned from customers primarily located in the United States and Australia. For the periods included in this Quarterly Report, no company locations other than those in the United States accounted for more than 10% of our consolidated revenue. Most of our customers are project developers, solar asset owners and engineering, procurement and construction (“EPC”) contractors that design and build solar energy projects. We typically rely on a small number of customers that account for a large portion of our revenue each period and our outstanding receivables at each period end.

Cash and cash equivalents

Cash and cash equivalents

We consider all highly liquid investments purchased with an original maturity of three months or less to be cash equivalents. Certain of our cash equivalents include deposits in money market funds that invest primarily in short-term securities issued or guaranteed by the U.S. government or its agencies or instrumentalities and contain no restrictions on immediate redemption. These deposits totaled $1.8 million at September 30, 2024 and $13.9 million at December 31, 2023. Interest earned on cash equivalents is included in interest income, which is reported net of interest expense in our condensed consolidated statements of comprehensive loss.

Accounts receivable, net

Accounts receivable, net

Trade receivables are recorded at invoiced amounts, net of allowances for credit losses, and do not bear interest. We generally do not require collateral from our customers; however, in certain circumstances, we may require letters of credit, other collateral, additional guarantees or advance payments.

The allowance for credit losses is based on the lifetime expected credit loss of our customer accounts. To assess the lifetime expected credit loss, we utilize a loss rate method that takes into consideration historical experience and certain other factors, as appropriate, such as credit quality and current economic or other conditions that may affect a customer's ability to pay. Provisions for credit losses are included as a component of our selling and marketing expenses.

Receivables arising from revenue recognized in excess of billings represents our unconditional right to consideration before customers are invoiced due to the level of progress obtained as of period end on our contracts to procure and deliver tracker systems and related equipment. Further information may be found below in our revenue recognition policy.

Inventories

Inventories

Inventories are stated at the lower of cost or net realizable value, with costs computed on a first-in, first-out basis. The Company periodically reviews its inventories for excess and obsolete items and adjusts carrying costs to estimated net realizable values when they are determined to be less than cost.

Impairment

Impairment

We review our long-lived assets that are held for use for impairment whenever events or changes in circumstances indicate that the carrying amount of the asset may not be recoverable or that its useful life may be shorter than previously expected. If such impairment indicators are present or other factors exist that indicate the carrying amount of the asset may not be recoverable, we determine whether an impairment has occurred through the use of an undiscounted cash flow analysis of the asset at the lowest level for which identifiable cash flows exist. If an impairment has occurred, we recognize a loss for the difference between the carrying amount and the fair value of the asset, which in most cases is estimated based upon Level 3 unobservable inputs. If the asset is determined to have a remaining useful life shorter than previously expected, an adjustment for the shorter remaining life will be made for purposes of recognizing future depreciation expense. Assets are classified as held for sale when we have a plan, approved by the appropriate levels of management, for disposal of such assets, as well as other considerations, and those assets are stated at the lower of carrying value or estimated fair value less estimated costs to sell.

Intangible assets, net

Intangible assets, net

Intangible assets are recorded at fair value when acquired in connection with a business combination and consist of developed technology in the form of software tools, licenses, and intellectual property, which are amortized over the period of their estimated useful lives, generally 2.5 - 3.0 years, using the straight-line method. Costs incurred to renew or extend the term of a recognized intangible asset, if any, are expensed as incurred. We evaluate intangible assets for impairment using the method described above under "Impairment".

Goodwill

Goodwill

We recognize goodwill as the excess of the purchase price over the estimated fair value of the identified assets and liabilities acquired in a business combination accounted for using the acquisition method. Goodwill is not amortized but is subject to a periodic assessment for impairment at least annually, or whenever events and circumstances indicate an impairment may exist. Our assessments may include qualitative factors such as current or expected industry and market conditions, our overall financial performance, share price trends, market capitalization and other company-specific events.

We operate in one segment, being the consolidated entity, which we have also determined is the reporting unit for goodwill impairment.

No impairment of goodwill was recognized as of September 30, 2024 or 2023.

Equity method investments

Equity method investment

We use the equity method of accounting for investments in which we have the ability to exercise significant influence, but not control, over operating and financial policies of the investee. Our proportionate share of the net income or loss of these investees is included in our condensed consolidated statements of comprehensive loss. Judgment regarding the level of influence over each equity method investment includes considering key factors such as our ownership interest, legal form of the investee, representation on the board of directors or managers, participation in policy-making decisions and material intra-entity transactions.

We account for distributions received from equity method investees under the “nature of the distribution” approach based on the nature of the activity or activities of the investee that generated the distribution as either a return on investment (classified as cash inflows from operating activities) or a return of investment (classified as cash inflows from investing activities).

We evaluate equity method investments for impairment whenever events or changes in circumstances indicate that the carrying amount of the investment might not be recoverable. Factors considered by the Company when reviewing an equity method investment for impairment include the length of time and the extent to which the fair value of the equity method investment has been less than its cost, the investee’s financial condition and near-term prospects and the intent and ability to hold the investment for a period of time sufficient to allow for anticipated recovery. An impairment that is other-than temporary is recognized in the period identified.

We made an accounting policy election that, upon the sale of our equity method investments, we will recognize contractual contingent gains arising from earnout provisions and project escrow releases when such amounts are realizable in periods subsequent to the disposal date.

Warranty

Warranty

Typically, the sale of solar tracker projects includes parts warranties to customers as part of the overall price of the product. We provide standard assurance type warranties for our products for periods generally ranging from five to ten years. We also accrue for costs relating to remediation efforts involving product issues we believe require correction. We record a provision for estimated warranty and remediation expenses in cost of sales, net of amounts recoverable from manufacturers under their warranty obligations to us. When historical claims information relating to our equipment is not sufficient, we will base our estimates on industry studies involving the nature and frequency of product failure rates for similar parts used by our competitors, as well as other related businesses. We do not maintain general or unspecified reserves; all warranty reserves are related to specific projects. All actual or estimated material costs incurred for warranty or remediation services in subsequent periods are charged to those established reserves.

While we periodically monitor our warranty activities and claims, if actual costs incurred were to be different from our estimates, we would recognize adjustments to our warranty reserves in the period in which those differences arise or are identified.

Stock-based compensation

Stock-based compensation

We recognize compensation expense for all share-based payment awards made, including stock options and restricted stock units ("RSUs"), based on the estimated fair value of the award on the grant date. We calculate the fair value of stock options using the Black-Scholes option pricing model for awards with service-based vesting or through use of a lattice model or a Monte Carlo simulation for stock option and RSU awards with market conditions. The fair value of RSUs with service or performance-based vesting is based on the estimated fair value of the Company's common stock on the date of grant. We consider the closing price of our stock, as reported on the Nasdaq Capital Market, to be the fair value of our stock on the grant date.

Forfeitures are accounted for as they occur. For service-based awards, stock-based compensation is recognized using the straight-line attribution approach over the requisite service period. For performance-based awards, stock-based compensation is recognized based on graded vesting over the requisite service period when the performance condition is probable of being achieved. Stock compensation expense for market-based awards is recognized over the derived service period determined in the valuation model, inclusive of any vesting conditions.

Revenue recognition

Revenue recognition

Product revenue is derived from the sale of solar tracker systems and customized components for those systems, individual part sales for certain specific transactions and the sale of term-based software licenses. Term-based licensed software is deployed on the customers’ own servers and has significant standalone functionality.

Service revenue includes revenue from shipping and handling services, engineering consulting and pile testing services, our subscription-based enterprise licensing model and maintenance and support services in connection with the term-based software licenses. Our subscription-based enterprise licensing model typically has contract terms ranging from one to two years and consists of subscription fees from the licensing of subscription services. Our hosted on-demand service arrangements do not provide customers with the right to take possession of the software supporting the hosted services. Support services include ongoing security updates, upgrades, bug fixes, and maintenance.

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

Identify the contract with a customer: A contract with a customer exists when (i) the Company enters into an enforceable contract with a customer that defines each party’s rights regarding the products and services to be transferred and identifies the payment terms related to these products and services, (ii) the contract has commercial substance, and (iii) the Company determines that collection of substantially all consideration for products and services that are transferred is probable based on the customer’s intent and ability to pay the promised consideration. In assessing the recognition of revenue, we also evaluate whether two or more contracts should be combined and accounted for as one contract and if the combined or single contract should be accounted for as multiple performance obligations which could change the amount of revenue and profit (loss) recorded in a period. Change orders may include changes in specifications or design, manner of

performance, equipment, materials, scope of work, and/or the period of completion of the project. We analyze change orders to determine if they should be accounted for as a modification to an existing contract or a new stand-alone contract.

Contracts we enter into with our customers for sale of solar tracker systems are generally under two different types of arrangements: (1) purchase agreements and equipment supply contracts (“Purchase Agreements”), and (2) sale of individual parts for those systems.

Change orders from our customers are generally modifications to existing contracts and are included in the total estimated contract revenue when it is probable that the change order will result in additional value that can be reliably estimated and realized.

Identify the performance obligations in the contract: We enter into contracts that can include various combinations of products and services, which are either capable of being distinct and accounted for as separate performance obligations or as one performance obligation since the majority of tasks and services are part of a single project or capability. However, determining whether products or services are considered distinct performance obligations that should be accounted for separately versus together may sometimes require significant judgment.

Our Purchase Agreements typically include two performance obligations: 1) our solar tracker systems or customized components of those systems, and 2) shipping and handling services. The deliverables included as part of our solar tracker systems are predominantly accounted for as one performance obligation, as these deliverables are part of a combined promise to deliver a project.

The revenue for shipping and handling services will be recognized over time based on progress in meeting shipping terms of the arrangements, as this faithfully depicts the Company’s performance in transferring control. Revenue for stand-alone engineering consulting and pile testing services is recognized at a point in time upon completion of the services performed.

Sales of individual parts of our solar tracker systems for certain specific transactions include multiple performance obligations consisting of individual parts of those systems. Revenue is recognized for parts sales at a point in time when the obligations under the terms of the contract with our customer are satisfied. Generally, this occurs with the transfer of control of the asset, which is in line with shipping terms.

Determine the transaction price: The transaction price is determined based on the consideration to which we will be entitled in exchange for transferring services to the customer. Such amounts are typically stated in the customer contract, and to the extent that we identify variable consideration, we will estimate the variable consideration at the onset of the arrangement as long as it is probable that a significant reversal in the amount of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is subsequently resolved. The majority of our contracts do not contain variable consideration provisions as a continuation of the original contract. None of our contracts contain a significant financing component. Taxes collected from customers and remitted to governmental authorities are not included in revenue.

Allocate the transaction price to performance obligations in the contract: Once we have determined the transaction price, we allocate the total transaction price to each performance obligation in a manner depicting the amount of consideration to which we expect to be entitled in exchange for transferring the good(s) or service(s) to the customer. We allocate the transaction price to each performance obligation identified in the contract on a relative standalone selling price basis.

We use the expected cost-plus margin approach based on hardware, labor, and related overhead cost to estimate the standalone selling price of our solar tracker systems, customized components of those systems, and individual parts for certain specific transactions. We also use the expected cost-plus margin approach based on expected third-party shipping and transportation costs to estimate the standalone selling price of our shipping, handling and logistics performance obligations. We use the adjusted market assessment approach for all other performance obligations.

Recognize revenue when or as the Company satisfies a performance obligation: For each performance obligation identified, we determine at contract inception whether we satisfy the performance obligation over time or at a point in time. The performance obligations in the contracts for our solar tracker systems and customized components of those systems are satisfied over time as work progresses, utilizing an input measure of progress determined by cost-to-cost measures on these projects as this faithfully depicts our performance in transferring control. Additionally, our performance does not create an asset with an alternative use, due to the highly customized nature of the product, and we have an enforceable right to payment for performance completed to date. Our performance obligations for individual part sales for certain specific transactions are recognized at a point in time as and when control transfers based on the terms for the contract. Our performance obligations for engineering consulting and pile testing services are recognized at a point in time upon completion of the

services. Our performance obligations for term-based software licenses are recognized at a point in time as and when control transfers, either upon delivery to the customer or the software license start date, whichever is later. Our performance obligations for shipping and handling services are satisfied over time as the services are delivered over the term of the contract. We recognize revenue for subscription and other services on a straight-line basis over the contract period. With regard to support revenue, a time-elapsed method is used to measure progress because we transfer control evenly over the contractual period. Accordingly, the fixed consideration related to support revenue is generally recognized on a straight-line basis over the contract term.

Contract assets and liabilities: The timing of revenue recognition, billing, and cash collection results in the recognition of accounts receivable, unbilled receivables for revenue recognized in excess of billings, and deferred revenue in the condensed consolidated balance sheets. We have elected to use the practical expedient of expensing incremental costs of obtaining a contract for our contracts of less than one year in duration. We may receive advances or deposits from our customers before revenue is recognized, resulting in contract liabilities, which are reflected as “deferred revenue” in our condensed consolidated balance sheets. Customer deposits are short term as the related performance obligations are typically fulfilled within 12 months. Changes in deferred revenue relate to fluctuations in the timing of customer deposits and completion of performance obligations. Revenue recognized during the three and nine months ended September 30, 2024, from amounts included in deferred revenue at December 31, 2023, totaled $1.1 million and $3.6 million, respectively. Revenue recognized during the three and nine months ended September 30, 2023, from amounts included in deferred revenue at December 31, 2022, totaled $1.6 million and $10.9 million, respectively.

Cost of revenue consists primarily of costs related to raw materials, equipment manufacturing activities, freight and delivery, product warranty, remediation and personnel costs (salaries, bonuses, benefits, and stock-based compensation). Personnel costs in cost of revenue include both direct labor costs, as well as costs attributable to any individuals whose activities relate to the procurement, installment and delivery of the finished product and services. Cost of revenue owed but not yet paid is recorded as accrued cost of revenue in the accompanying condensed consolidated balance sheets. Deferred cost of revenue, a component of our prepaid and other current assets, results from the timing differences between the costs incurred in advance of the satisfaction of all revenue recognition criteria consistent with our revenue recognition policy.

Recent accounting and regulatory pronouncements not yet adopted

Recent accounting and regulatory pronouncements not yet adopted

In November 2023, the Financial Accounting Standards Board ("FASB") issued ASU No. 2023-07 - Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures ("ASU 2023-07"), which will become effective for us for our year end 2024 financial reporting and our interim reporting beginning January 1, 2025. ASU 2023-07 requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis and will require interim disclosures about a reportable segment's profit or loss and assets that are currently required annually. As noted above, we operate in one segment. We are currently evaluating the impact of ASU 2023-07 on our existing disclosures. ASU 2023-07 will be applied retrospectively to all periods when presented in our consolidated financial statements for the year ending December 31, 2024.

In December 2023, the FASB issued ASU No. 2023-09 - Income Taxes (Topic 740): Improvements to Income Tax Disclosures ("ASU 2023-09"). ASU 2023-09 requires companies to disclose (i) additional categories of information about federal, state and foreign income taxes above a quantitative threshold in their rate reconciliation table and (ii) income taxes paid, net of refunds, disaggregated by federal, state and foreign taxes for annual periods, as well as other disclosure changes. As an emerging growth company, we are not required to adopt ASU 2023-09 prior to 2026, although earlier adoption is permitted. We are currently evaluating the impact of ASU 2023-09 on our existing income tax disclosures.

In March 2024, the U.S. Securities and Exchange Commission ("SEC") adopted the final rule under SEC Release No. 33-11275, The Enhancement and Standardization of Climate-Related Disclosures for Investors. This rule would require registrants to disclose certain climate-related information in registration statements and annual reports. In April 2024, the SEC issued a stay of the final rules pending a judicial review of the validity of the rules by the Eighth Circuit Court of Appeals. We are currently evaluating the final rule to determine its impact on our disclosures.

Other standards or regulatory requirements that have been issued but not yet adopted as of September 30, 2024, are either not applicable to us or are not expected to have any material impact upon adoption.

Reclassifications

Reclassifications

Certain prior year amounts have been reclassified to conform to the current year presentation. There was no impact on our financial condition or results of operations as a result of the reclassification.

XML 36 R28.htm IDEA: XBRL DOCUMENT v3.24.3
Accounts receivable, net (Tables)
9 Months Ended
Sep. 30, 2024
Accounts Receivable, after Allowance for Credit Loss [Abstract]  
Schedule of accounts receivable, net

Accounts receivable consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Trade receivables

 

$

20,482

 

 

$

46,152

 

Related party receivables

 

 

3,075

 

 

 

868

 

Revenue recognized in excess of billings

 

 

14,757

 

 

 

26,813

 

Other receivables

 

 

6

 

 

 

3

 

Total

 

 

38,320

 

 

 

73,836

 

Allowance for credit losses

 

 

(975

)

 

 

(8,557

)

Accounts receivable, net

 

$

37,345

 

 

$

65,279

 

Schedule of Accounts Receivable Allowance for Credit Loss

Activity in the allowance for credit losses during the three and nine months ended September 30, 2024 and 2023 was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Balance at beginning of period

 

$

232

 

 

$

1,387

 

 

$

8,557

 

 

$

1,184

 

Impact of adoption of ASU 2016-13, effective January 1, 2023

 

N/A

 

 

N/A

 

 

N/A

 

 

 

 

Amounts charged (credited) to earnings during the period

 

 

743

 

 

 

4,099

 

 

 

1,330

 

 

 

4,302

 

Write-offs of accounts

 

 

 

 

 

 

 

 

(8,912

)

 

 

 

Balance at end of period

 

$

975

 

 

$

5,486

 

 

$

975

 

 

$

5,486

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XML 37 R29.htm IDEA: XBRL DOCUMENT v3.24.3
Inventories, net (Tables)
9 Months Ended
Sep. 30, 2024
Inventory Disclosure [Abstract]  
Schedule of Inventories

Inventories consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Finished goods

 

$

15,639

 

 

$

4,246

 

Allowance for slow-moving and obsolete inventory

 

 

(515

)

 

 

(341

)

Total

 

$

15,124

 

 

$

3,905

 

XML 38 R30.htm IDEA: XBRL DOCUMENT v3.24.3
Prepaid and other current assets (Tables)
9 Months Ended
Sep. 30, 2024
Prepaid Expense and Other Assets, Current [Abstract]  
Schedule of prepaid and other current assets

Prepaid and other current assets consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Vendor deposits

 

$

6,462

 

 

$

5,667

 

Vendor deposits with related party

 

 

1,528

 

 

 

520

 

Prepaid expenses

 

 

862

 

 

 

1,251

 

Prepaid taxes

 

 

555

 

 

 

447

 

Deferred cost of revenue

 

 

1,934

 

 

 

666

 

Surety collateral

 

 

33

 

 

 

 

Other current assets

 

 

4,128

 

 

 

5,538

 

Total

 

$

15,502

 

 

$

14,089

 

XML 39 R31.htm IDEA: XBRL DOCUMENT v3.24.3
Leases (Tables)
9 Months Ended
Sep. 30, 2024
Leases [Abstract]  
Summary of Lease Expense

Our expense for our operating leases consisted of the following:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Operating lease cost

 

$

252

 

 

$

251

 

 

$

861

 

 

$

748

 

Short-term lease cost

 

 

100

 

 

 

132

 

 

 

304

 

 

 

334

 

Total lease cost

 

$

352

 

 

$

383

 

 

$

1,165

 

 

$

1,082

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Reported in:

 

 

 

 

 

 

 

 

 

 

 

 

Cost of revenue

 

$

186

 

 

$

245

 

 

$

681

 

 

$

710

 

Research and development

 

 

43

 

 

 

14

 

 

 

71

 

 

 

40

 

Selling and marketing

 

 

14

 

 

 

24

 

 

 

101

 

 

 

62

 

General and administrative

 

 

109

 

 

 

100

 

 

 

312

 

 

 

270

 

Total lease cost

 

$

352

 

 

$

383

 

 

$

1,165

 

 

$

1,082

 

Summary of Future Remaining Lease Payments Obligations

Future remaining operating lease payment obligations were as follows:

(in thousands)

 

September 30,
2024

 

Remainder of 2024

 

$

233

 

2025

 

 

884

 

2026

 

 

313

 

2027

 

 

291

 

2028

 

 

124

 

2029

 

 

33

 

Total lease payments

 

 

1,878

 

Less: imputed interest

 

 

(123

)

Present value of operating lease liabilities

 

$

1,755

 

 

 

 

 

Current portion of operating lease liability

 

$

872

 

Operating lease liability, net of current portion

 

 

883

 

Present value of operating lease liabilities

 

$

1,755

 

XML 40 R32.htm IDEA: XBRL DOCUMENT v3.24.3
Property and equipment, net (Tables)
9 Months Ended
Sep. 30, 2024
Property, Plant and Equipment [Abstract]  
Schedule of property and equipment

Property and equipment consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Leasehold improvements

 

$

338

 

 

$

157

 

Field equipment

 

 

1,108

 

 

 

1,062

 

Information technology equipment

 

 

609

 

 

 

466

 

Tooling

 

 

1,824

 

 

 

1,014

 

Capitalized software

 

 

968

 

 

 

734

 

Total

 

 

4,847

 

 

 

3,433

 

Accumulated depreciation

 

 

(2,438

)

 

 

(1,610

)

Property and equipment, net

 

$

2,409

 

 

$

1,823

 

XML 41 R33.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible assets, net and goodwill (Tables)
9 Months Ended
Sep. 30, 2024
Goodwill and Intangible Assets Disclosure [Abstract]  
Summary of intangible assets

Intangible assets consisted of the following:

(in thousands)

 

Estimated Useful Lives (Years)

 

September 30, 2024

 

 

December 31, 2023

 

Developed technology

 

2.5 3.0

 

$

2,568

 

 

$

2,555

 

Total

 

 

 

 

2,568

 

 

 

2,555

 

Accumulated amortization

 

 

 

 

(2,431

)

 

 

(2,013

)

Intangible assets, net

 

 

 

$

137

 

 

$

542

 

Schedule of goodwill activity

During the nine months ended September 30, 2024 and 2023, activity in our goodwill balance was as follows:

 

 

 

 

Nine months ended September 30,

 

(in thousands)

 

 

 

2024

 

 

2023

 

Balance at beginning of period

 

 

 

$

7,353

 

 

$

7,538

 

Translation

 

 

 

 

68

 

 

 

(395

)

Balance at end of period

 

 

 

$

7,421

 

 

$

7,143

 

XML 42 R34.htm IDEA: XBRL DOCUMENT v3.24.3
Accrued Expenses and Other Current Liabilities (Tables)
9 Months Ended
Sep. 30, 2024
Accrued Expenses and Other Current Liabilities [Abstract]  
Schedule of Accrued Expenses and Other Current Liabilities

Accrued expenses and other current liabilities consisted of the following:

(in thousands)

 

September 30, 2024

 

 

December 31, 2023

 

Accrued cost of revenue

 

$

15,523

 

 

$

26,773

 

Related party accrued cost of revenue

 

 

1,215

 

 

 

1,451

 

Accrued compensation

 

 

3,695

 

 

 

3,858

 

Other accrued expenses

 

 

3,532

 

 

 

2,766

 

Total accrued expenses

 

$

23,965

 

 

$

34,848

 

 

 

 

 

 

 

 

Warranty reserves

 

$

8,949

 

 

$

7,279

 

Current portion of operating lease liability

 

 

872

 

 

 

740

 

Non-federal tax obligations

 

 

41

 

 

 

119

 

Total other current liabilities

 

$

9,862

 

 

$

8,138

 

Schedule of warranty accruals

Activity by period in the Company's warranty accruals was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Balance at beginning of period

 

$

10,415

 

 

$

12,081

 

 

$

11,002

 

 

$

12,426

 

Warranties issued and remediation added during the period

 

 

3,096

 

 

 

1,086

 

 

 

4,735

 

 

 

3,938

 

Settlements made during the period

 

 

(839

)

 

 

(847

)

 

 

(2,131

)

 

 

(3,184

)

Changes in liability for pre-existing warranties

 

 

(934

)

 

 

(363

)

 

 

(1,868

)

 

 

(1,223

)

Balance at end of period

 

$

11,738

 

 

$

11,957

 

 

$

11,738

 

 

$

11,957

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Warranty accruals are reported in:

 

 

 

 

 

 

 

 

 

 

 

 

Other current liabilities

 

$

8,949

 

 

$

7,738

 

 

$

8,949

 

 

$

7,738

 

Other non-current liabilities

 

 

2,789

 

 

 

4,219

 

 

 

2,789

 

 

 

4,219

 

Balance at end of period

 

$

11,738

 

 

$

11,957

 

 

$

11,738

 

 

$

11,957

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XML 43 R35.htm IDEA: XBRL DOCUMENT v3.24.3
Stock-based Compensation (Tables)
9 Months Ended
Sep. 30, 2024
Share-Based Payment Arrangement [Abstract]  
Schedule of Stock compensation expense

Stock-based compensation expense for each period was as follows:

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Cost of revenue

 

$

243

 

 

$

181

 

 

$

699

 

 

$

1,313

 

Research and development

 

 

93

 

 

 

85

 

 

 

267

 

 

 

449

 

Selling and marketing

 

 

108

 

 

 

166

 

 

 

266

 

 

 

821

 

General and administrative

 

 

875

 

 

 

760

 

 

 

3,011

 

 

 

6,461

 

Total stock compensation expense

 

$

1,319

 

 

$

1,192

 

 

$

4,243

 

 

$

9,044

 

XML 44 R36.htm IDEA: XBRL DOCUMENT v3.24.3
Net Loss Per Share (Tables)
9 Months Ended
Sep. 30, 2024
Earnings Per Share [Abstract]  
Schedule of Computation of Basic and Diluted Income (Loss) Per Share

 

 

Three months ended September 30,

 

 

Nine months ended September 30,

 

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net loss (in thousands)

 

$

(15,359

)

 

$

(16,937

)

 

$

(36,371

)

 

$

(39,113

)

Weighted average shares outstanding for calculating basic and diluted loss per share

 

 

127,380,292

 

 

 

119,793,821

 

 

 

126,234,997

 

 

 

112,794,562

 

Basic and diluted loss per share

 

$

(0.12

)

 

$

(0.14

)

 

$

(0.29

)

 

$

(0.35

)

 

 

 

 

 

 

 

 

 

 

 

 

 

Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share

For purposes of computing diluted loss per share, weighted average common shares outstanding do not include potentially dilutive securities that are anti-dilutive, as shown below.

 

 

For the three and nine months ended September 30,

 

 

 

2024

 

 

2023

 

Anti-dilutive securities excluded from calculating dilutive loss per share:

 

 

 

 

 

 

Shares of common stock issuable under stock option plans outstanding

 

 

2,278,938

 

 

 

3,048,139

 

Shares of common stock issuable upon vesting of RSUs

 

 

16,888,874

 

 

 

7,982,821

 

Potential common shares excluded from diluted net loss per share calculation

 

 

19,167,812

 

 

 

11,030,960

 

XML 45 R37.htm IDEA: XBRL DOCUMENT v3.24.3
Summary of Significant Accounting Policies - Additional Information (Details)
$ / shares in Units, $ in Thousands, shares in Millions
3 Months Ended 9 Months Ended
Nov. 08, 2024
USD ($)
$ / shares
Dec. 22, 2023
Days
$ / shares
Sep. 30, 2024
USD ($)
Sep. 30, 2023
USD ($)
Sep. 30, 2024
USD ($)
Sep. 30, 2023
USD ($)
Nov. 18, 2024
$ / shares
shares
Dec. 31, 2023
USD ($)
Cash     $ 8,300   $ 8,300      
Net profit attributable         4,000      
Working capital     18,900   18,900      
Common stock, reserved for future issuance, value     $ 64,900   $ 64,900      
Consecutive business days | Days   30            
Description of closing bid pric of our common stock         our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days      
Concentrations of credit risk, percentage     10.00%   10.00%      
Warranty description         We provide standard assurance type warranties for our products for periods generally ranging from five to ten years.      
Impairment of goodwill         $ 0 $ 0    
Revenue recognized included in deferred revenue     $ 1,100 $ 1,600 3,600 $ 10,900    
Carrying value of money market fund     1,800   1,800     $ 13,900
ATM Program [Member]                
Common stock, reserved for future issuance, value     $ 64,900   $ 64,900      
Minimum [Member]                
Closing bid price | $ / shares   $ 1            
Intangible assets, estimated useful life     2 years 6 months   2 years 6 months      
Product warranty life         5 years      
Subscription revenue contract terms         1 year      
Maximum [Member]                
Net profit attributable         $ 4,000      
Intangible assets, estimated useful life     3 years   3 years      
Product warranty life         10 years      
Subscription revenue contract terms         2 years      
Maximum [Member] | Alpha Steel [Member]                
Additional capital contribution         $ 800      
Subsequent Event [Member]                
Reverse stock split reverse stock split at a ratio ranging from 1-for-5 to 1-for 25,              
Exercise Price of Warrants or Rights | $ / shares $ 0.01              
Senior Notes | Subsequent Event [Member]                
Long term senior secured notes $ 15,000              
Purchase warrants | shares             17.5  
Exercise Price of Warrants or Rights | $ / shares             $ 0.01  
XML 46 R38.htm IDEA: XBRL DOCUMENT v3.24.3
Equity method investment - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Jul. 28, 2023
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Feb. 09, 2023
Schedule of Equity Method Investments [Line Items]              
Loss from unconsolidated subsidiary   $ (256) $ (336) $ (767) $ (336)    
Placing Purchase Orders       Pursuant to the Supply Agreement, we have committed to placing a minimum level of purchase orders for torque tubes with Alpha Steel during the period from January 1, 2024 to June 30, 2025, with such volume commitments increasing in each of the next two annual periods.      
Net Profit Attributable       $ 4,000      
Purchase Obligation Percentage   11.00%   11.00%      
Taihua New Energy [Member]              
Schedule of Equity Method Investments [Line Items]              
Ownership percentage             51.00%
DAYV LLC [Member]              
Schedule of Equity Method Investments [Line Items]              
Ownership percentage             4.00%
Alpha Steel              
Schedule of Equity Method Investments [Line Items]              
Additional Interest Rate Above Prime 2.00%            
Ownership percentage             45.00%
Capital Contribution           $ 900  
Additional capital contributions       $ 1,800      
Potential Future Capital Contributions   $ 800   800      
Loss from unconsolidated subsidiary   300 $ 300 800 $ 300    
Liability For Unpaid Claims And Claims Adjustment Expense   $ 1,000   $ 1,000      
XML 47 R39.htm IDEA: XBRL DOCUMENT v3.24.3
ATM Program - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2024
Sep. 30, 2023
Sep. 14, 2022
Subsidiary, Sale of Stock [Line Items]              
Issuance of common stock, value   $ 10,367 $ 17,348 $ 6,292      
Proceeds from common stock         $ 0 $ 34,007  
Common stock, reserved for future issuance, value $ 64,900       $ 64,900    
ATM Program [Member]              
Subsidiary, Sale of Stock [Line Items]              
Common stock, value authorized             $ 100,000
Issuance of common stock (in shares) 0 6,149,885     0 15,421,885  
Issuance of common stock, value   $ 10,700       $ 35,100  
Proceeds from common stock   $ 10,400       $ 34,000  
Common stock, reserved for future issuance, value $ 64,900       $ 64,900    
XML 48 R40.htm IDEA: XBRL DOCUMENT v3.24.3
Accounts receivable, net - Schedule of Accounts Receivable, Net (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Jun. 30, 2024
Dec. 31, 2023
Sep. 30, 2023
Jun. 30, 2023
Dec. 31, 2022
Accounts Receivable, after Allowance for Credit Loss [Abstract]            
Trade receivables $ 20,482   $ 46,152      
Related party receivables 3,075   868      
Revenue recognized in excess of billings 14,757   26,813      
Other receivables 6   3      
Total 38,320   73,836      
Allowance for credit losses (975) $ (232) (8,557) $ (5,486) $ (1,387) $ (1,184)
Accounts receivable, net $ 37,345   $ 65,279      
XML 49 R41.htm IDEA: XBRL DOCUMENT v3.24.3
Accounts receivable, net - Additional Information (Details) - USD ($)
$ in Thousands
Apr. 03, 2024
Sep. 30, 2024
Jun. 30, 2024
Dec. 31, 2023
Sep. 30, 2023
Jun. 30, 2023
Dec. 31, 2022
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Retainage provisions included in receivables   $ 0   $ 900      
Allowance for credit losses   $ 975 $ 232 $ 8,557 $ 5,486 $ 1,387 $ 1,184
Major Customers [Member]              
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Trade Accounts Receivable Balance From Major Customer $ 30,800            
Fair value of retained equipment 13,200            
Cash payments 9,000            
Allowance for credit losses $ 8,900            
XML 50 R42.htm IDEA: XBRL DOCUMENT v3.24.3
Accounts receivable, net - Summary of Activity in the allowance for credit losses (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Accounts Receivable, after Allowance for Credit Loss [Abstract]        
Balance at beginning of period $ 232 $ 1,387 $ 8,557 $ 1,184
Impact of adoption of ASU 2016-13, effective January 1, 2023       0
Amounts charged (credited) to earnings during the period 743 4,099 1,330 4,302
Write-offs of accounts 0 0 (8,912) 0
Balance at end of period $ 975 $ 5,486 $ 975 $ 5,486
XML 51 R43.htm IDEA: XBRL DOCUMENT v3.24.3
Inventories, net - Schedule of inventories (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Inventory Disclosure [Abstract]    
Finished goods $ 15,639 $ 4,246
Allowance for slow-moving and obsolete inventory (515) (341)
Total $ 15,124 $ 3,905
XML 52 R44.htm IDEA: XBRL DOCUMENT v3.24.3
Prepaid and other current assets - Schedule of Prepaid and other current assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Prepaid Expense and Other Assets, Current [Abstract]    
Vendor deposits $ 6,462 $ 5,667
Vendor deposits with related party 1,528 520
Prepaid expense 862 1,251
Prepaid taxes 555 447
Deferred cost of revenue 1,934 666
Surety collateral 33 0
Other current assets 4,128 5,538
Total $ 15,502 $ 14,089
XML 53 R45.htm IDEA: XBRL DOCUMENT v3.24.3
Prepaid and other current assets (Additional Information) (Details)
$ in Millions
Sep. 30, 2024
USD ($)
Prepaid Expense and Other Assets, Current [Abstract]  
Short term non-interest-bearing customer advance $ 2.0
XML 54 R46.htm IDEA: XBRL DOCUMENT v3.24.3
Leases - Summary of Lease Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Lessee, Lease, Description [Line Items]        
Operating lease cost $ 252 $ 251 $ 861 $ 748
Short-term lease cost 100 132 304 334
Total lease cost 352 383 1,165 1,082
Cost of revenue [Member]        
Lessee, Lease, Description [Line Items]        
Total lease cost 186 245 681 710
Research and development [Member]        
Lessee, Lease, Description [Line Items]        
Total lease cost 43 14 71 40
Selling and marketing [Member]        
Lessee, Lease, Description [Line Items]        
Total lease cost 14 24 101 62
General and administrative [Member]        
Lessee, Lease, Description [Line Items]        
Total lease cost $ 109 $ 100 $ 312 $ 270
XML 55 R47.htm IDEA: XBRL DOCUMENT v3.24.3
Leases - Summary of Future Remaining Lease Payments Obligations (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]    
Remainder of 2024 $ 233  
2025 884  
2026 313  
2027 291  
2028 124  
2029 33  
Total lease payments 1,878  
Less imputed interest (123)  
Current portion of operating lease liability 872 $ 740
Operating lease liability, net of current portion 883 $ 1,124
Present value of operating lease liabilities $ 1,755  
XML 56 R48.htm IDEA: XBRL DOCUMENT v3.24.3
Property and equipment, net - Schedule of property and equipment (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Property, Plant and Equipment [Line Items]    
Property and equipment, gross $ 4,847 $ 3,433
Accumulated depreciation (2,438) (1,610)
Property and equipment, net 2,409 1,823
Leasehold Improvements [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment, gross 338 157
Field Equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment, gross 1,108 1,062
Information Technology Equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment, gross 609 466
Tooling [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment, gross 1,824 1,014
Capitalized Software [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment, gross $ 968 $ 734
XML 57 R49.htm IDEA: XBRL DOCUMENT v3.24.3
Property and equipment, net - Additional Information (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Property, Plant and Equipment [Abstract]        
Depreciation expense $ 0.3 $ 0.2 $ 0.8 $ 0.6
XML 58 R50.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible assets, net and goodwill - Summary of intangible assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross $ 2,568 $ 2,555
Accumulated amortization (2,431) (2,013)
Intangible assets, net $ 137 542
Minimum [Member]    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, estimated useful life 2 years 6 months  
Maximum [Member]    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, estimated useful life 3 years  
Developed Technology [Member]    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross $ 2,568 $ 2,555
Developed Technology [Member] | Minimum [Member]    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, estimated useful life 2 years 6 months  
Developed Technology [Member] | Maximum [Member]    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, estimated useful life 3 years  
XML 59 R51.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible assets, net and goodwill - Additional Information (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Indefinite-Lived Intangible Assets [Line Items]        
Amortization expense $ 0.1 $ 0.1 $ 0.4 $ 0.4
XML 60 R52.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible assets, net and goodwill - Summary of goodwill activity (Details) - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Goodwill and Intangible Assets Disclosure [Abstract]    
Balance at beginning of period $ 7,353 $ 7,538
Translation 68 (395)
Balance at end of period $ 7,421 $ 7,143
XML 61 R53.htm IDEA: XBRL DOCUMENT v3.24.3
Debt - Additional Information (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Debt Instrument [Line Items]        
Interest expense $ 0.0 $ 0.4 $ 0.4 $ 1.0
XML 62 R54.htm IDEA: XBRL DOCUMENT v3.24.3
Accrued expenses and other current liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Sep. 30, 2023
Accrued Expenses and Other Current Liabilities [Abstract]      
Accrued cost of revenue $ 15,523 $ 26,773  
Related party accrued cost of revenue 1,215 1,451  
Accrued compensation 3,695 3,858  
Other accrued expenses 3,532 2,766  
Total accrued expenses 23,965 34,848  
Warranty reserves 8,949 7,279 $ 7,738
Current portion of operating lease liability $ 872 740  
Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Total other current liabilities    
Non-federal tax obligations $ 41 119  
Total other current liabilities $ 9,862 $ 8,138  
XML 63 R55.htm IDEA: XBRL DOCUMENT v3.24.3
Accrued expenses and other current liabilities - Schedule of warranty accruals (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Accrued Expenses and Other Current Liabilities [Abstract]          
Balance at beginning of period $ 10,415 $ 12,081 $ 11,002 $ 12,426  
Warranties issued and remediation added during the period 3,096 1,086 4,735 3,938  
Settlements made during the period (839) (847) (2,131) (3,184)  
Changes in liability for pre-existing warranties (934) (363) (1,868) (1,223)  
Balance at end 's period 11,738 11,957 11,738 11,957  
Warranty accruals are reported in:          
Other current liabilities 8,949 7,738 8,949 7,738 $ 7,279
Other non-current liabilities 2,789 4,219 2,789 4,219  
Balance at end of period $ 11,738 $ 11,957 $ 11,738 $ 11,957 $ 11,002
XML 64 R56.htm IDEA: XBRL DOCUMENT v3.24.3
Income Taxes - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Income Tax Contingency [Line Items]          
Income tax expense $ 244 $ 166 $ 298 $ 175  
Statutory rate     21.00%    
Material change in unrecognized tax benefits     $ 0    
Income tax interest and penalties accrued $ 0   $ 0   $ 0
XML 65 R57.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingencies - Additional Information (Details)
$ in Thousands
9 Months Ended
Sep. 30, 2024
USD ($)
Product Warranty Liability [Line Items]  
Description of tariffs classification In particular, CBP accepted our position that the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, previously assessed under the Original 939 Assessment are not applicable as they are only applicable to articles that originate in China
Description of revised tariffs classification In particular, the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, are not applicable under the 625 Assessment for the same reason stated above with respect to the Revised 939 Assessment, which has been accepted by CBP
939 Assessment [Member]  
Product Warranty Liability [Line Items]  
Cost of assessment $ 2,010
CBP Assessments [Member]  
Product Warranty Liability [Line Items]  
Cost of assessment $ 2,840
XML 66 R58.htm IDEA: XBRL DOCUMENT v3.24.3
Stock-Based Compensation - Stock compensation expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Stock based compensation expense $ 1,319 $ 1,192 $ 4,243 $ 9,044
Cost of revenue [Member]        
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Stock based compensation expense 243 181 699 1,313
Research and development [Member]        
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Stock based compensation expense 93 85 267 449
Selling and marketing [Member]        
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Stock based compensation expense 108 166 266 821
General and administrative [Member]        
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Stock based compensation expense $ 875 $ 760 $ 3,011 $ 6,461
XML 67 R59.htm IDEA: XBRL DOCUMENT v3.24.3
Related party transactions - Additional Information (Detail) - USD ($)
$ in Thousands
1 Months Ended 3 Months Ended 9 Months Ended
Sep. 13, 2023
Feb. 28, 2022
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Related Party Transaction [Line Items]              
Stock-based Compensation Expense Reversed       $ 1,100      
Related party receivables     $ 3,075   $ 3,075   $ 868
Related party accrued cost of revenue     1,215   1,215   1,451
Accounts payable     18,742   18,742   7,979
Alpha Steel [Member]              
Related Party Transaction [Line Items]              
Related party receivables     3,100   3,100   900
Related party accrued cost of revenue     1,200   1,200   1,500
Vendor Deposits     100   2,800    
Total received Invoices from Alpha Steel     700   700   6,200
Accounts payable     $ 1,000   $ 1,000   $ 0
Fernweh Engaged Operator Company LLC [Member]              
Related Party Transaction [Line Items]              
Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited 2,000,000            
Unamortized Prepaid Balance $ 3,200            
South Lake One LLC [Member]              
Related Party Transaction [Line Items]              
Outstanding capital stock held   5.00%          
Related Party [Member] | Fernweh Engaged Operator Company LLC [Member]              
Related Party Transaction [Line Items]              
General and administrative expense       2,100   $ 3,500  
Cash payments       $ 800   $ 2,500  
XML 68 R60.htm IDEA: XBRL DOCUMENT v3.24.3
Net Loss Per Share - Schedule of Computation of Basic and Diluted Loss Per Share (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2024
Sep. 30, 2023
Earnings Per Share [Abstract]                
Net loss $ (15,359) $ (12,241) $ (8,771) $ (16,937) $ (10,414) $ (11,762) $ (36,371) $ (39,113)
Basic weighted-average number of common shares outstanding 127,380,292     119,793,821     126,234,997 112,794,562
Diluted weighted-average number of common shares outstanding 127,380,292     119,793,821     126,234,997 112,794,562
Basic loss per share $ (0.12)     $ (0.14)     $ (0.29) $ (0.35)
Diluted loss per share $ (0.12)     $ (0.14)     $ (0.29) $ (0.35)
XML 69 R61.htm IDEA: XBRL DOCUMENT v3.24.3
Net Loss Per Share - Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share (Details) - shares
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Potential common shares excluded from diluted net loss per share 19,167,812 11,030,960 19,167,812 11,030,960
Stock Options [Member]        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Potential common shares excluded from diluted net loss per share 2,278,938 3,048,139 2,278,938 3,048,139
Restricted Stock Awards [Member]        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Potential common shares excluded from diluted net loss per share 16,888,874 7,982,821 16,888,874 7,982,821
XML 70 R62.htm IDEA: XBRL DOCUMENT v3.24.3
Subsequent Events (Additional Information) (Details) - Subsequent Event - USD ($)
$ / shares in Units, $ in Millions
Nov. 08, 2024
Nov. 18, 2024
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]    
Secured notes matured in years 5 years  
Exercise Price of Warrants or Rights $ 0.01  
Warrant expiration years 10 years  
Reimbursement percentage 3.00%  
Common Stock    
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]    
Purchase warrants 17,500,000  
Maximum [Member]    
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]    
Long-Term Debt, Interest Rate 13.00%  
Minimum [Member]    
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]    
Long-Term Debt, Interest Rate 11.00%  
Senior Notes [Member]    
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]    
Aggregate principal amount $ 15  
Purchase warrants   17,500,000
Exercise Price of Warrants or Rights   $ 0.01
Private Placement | Senior Notes [Member]    
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]    
Aggregate principal amount $ 15  
EXCEL 71 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( >";%D'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 " '@FQ9CO#G_^X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>*$Y+#R;UI6.G#08K;.QF9+4UBQ-C:R1]^SE9FS*V!]C1TN]/ MGT -!H5]I.?8!XKL*-V-ONV2PK 5)^:@ !*>R)M4YD27FX<^>L/Y&8\0#'Z8 M(T%=51OPQ,8:-C !B[ 0A6XL*HQDN(\7O,4%'SYC.\,L K7DJ>,$LI0@]#0Q MG,>V@1M@@C%%G[X+9!?B7/T3.W= 7))C4?R6G^!QH*ZZ37U>[^_V#T'55KPLI"UGO:ZGD1E7K]\GUA]]-V/?6'=P_ M-KX*Z@9^W87^ E!+ P04 " '@FQ9F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M >";%F]2E')# 8 -L@ 8 >&PO=V]R:W-H965T&UL MM9IK[B;9V+UL._T@@VPS"XA*PD[^ M?8_ !F='")99OL2 .:_UZ.CR2LK5GO$O8DNI1,]1&(OKWE;*Y,U@(+PMC8@X M9PF-X9LUXQ&1<,LW Y%P2OPL* H'V+)&@X@$<6]ZE3U[Y-,KELHPB.DC1R*- M(L)?;FC(]M<]NW=\\!1LME(]&$RO$K*A"RI_3QXYW T*%3^(:"P"%B-.U]>] MF?W&=88J('OCCX#NQ]R8]Y-,U24/YQ/;OZ0'H0NEY+!39 M7[3/WQT.>\A+A631(1A*$ 5Q_DF>#Q5Q$N#@B@!\",!?!=A5O^ < IP,-"]9 MAG5+))E><;9'7+T-:NHBJYLL&FB"6*5Q(3E\&T"JYCX26\*IN!I(^#45,_ .RC>Y,JY0OD0?62RW E1]ZK^.'T IBZ+B M8U%OL%%P09-SY%AG"%MXJ"F/:PY_\"2$V[KP5\5QBIIS,CVG0L]E.\K1/[.5 MD!P:X[^Z&LH5AGH%U4/?B(1X]+H'75!0OJ.]Z4\_V"/K5QW>=Q)[!3LL8(FA93S13:!PH;W/==A&@5:8EX4F!=-,%WH M$)R$T!%\^HQ^HR\Z4+.295GV!$_LD:UC-,:V9!P5C"-CR=R4<]7A[P+A >-G M2KCJH@B&#VU"S6K]OHW[CA;2&-@2,RB#=H(8E,M:.V45!?W,]4((1T["W$ M:MDO"_;+)NSS6%*>NP'5ALFQ,G3L1L%O96\A5LMN6^6\;36A7T0D#-%-*N!K MH9^ES3IK$@I=OW?-<6WY3GR)W83O;43Y1C7H=Z @M\AE44)B;5>N$90\U7,: MP]IRXI(3-^)\1DN85T60N:Y'R@/F:R'-:M79-,:UI2R]DFUT)T5KW8)?-^;0 M+%.-UX4YLDMW9)MM3>&BER^)=A*MB;>M_B[=+-"6M71%MMG(%*RGON@.'NH'5;-8)6,7GL@N39%MMC-?,Q[26DUI MEOOD:!F[\$-V:8ALLR."4=3/#-!+M&*AELHL $N4N9:K"Z]CEV;'-KN=&23. MSY,7DHV6RRQ0/79V861P:62PV8 L QE2Q-;(QC^O?D$+ZJ4Z,63^@^C5;:)=1-C0BDL3^TG M+"]B%L\&EL\&- MG,T\]AB'Q5>V:W:6+;^@46EA"]TCER2!A(D81K\E?28"O=_K!C[7K-:V DIOA,UVQE@!RSW3 M5H!9@"77-@ M6\[2+.%&VT<%9S%L/7*V"V)/W[1K#-A?6M NW!,NW1-NM%=4@#XRH?K=WT%2 M/3*;%<>3\<6EEK0+.^64=LJI,4$9)Z>D$JQ&8.R,M:%3W)*G^0T\DFO+>PB.WI##ZF$UAJK98T6^CL9 MH$,]Y&H7F9HZ!-Y-;3P>C\;V!)9[.QWDR8E9C9LYKC\_I81+RL.7PXZU%LNL M5;6=9PYKF\?2&SE-=X+*W3P#HUFL'Z2GM](EF2'T2LF)8NRRRTE M/N7J!?A^S9@\WJ@?*/Z?8?H_4$L#!!0 ( >";%D$B@Q0E 8 *$; 8 M >&PO=V]R:W-H965T&ULK5G; ME-B:2>Q>\M F$R?M,TQ"%BZKLE87LXW6S:O%0F4;7C'U4C2\ACMK(2NFX53>+E0C./%SX6MQMM+BQ6 MYPV[Y==MM@AK)6:5'USH"@*NK= M?W;?%^+ 8<3#J1W(*AJTWE#-D5M M7N.UEG"W #^]NA1U#B^%YPB.E"B+G&DX>?/7J!GJ*C1IXUH%:MS=;[0@,=$763]L]_NGDTFGGW-FY>(!G-$ A(Z MW"_][E<\ W?+1J5*T4O):(Z84Y.Q*9^?>FA=YP"1WEJ3$>.]!& 1FA=5B%03I1 MQV0/-_'"_20T*T^ F%@/3V)"XA%$VPH':12D;HSI'F/JQ?B^X9+IHKY%)0?V M0-+0Q)E8G[5P,@TYM<$D)!@A=ABE>**FRSW>Y1-# !A?ZH=N#)B)W@ 'Z\E9 MM+0@D#!8CG#:1C@U'=B%$P<#$05/S"+-ZML"YGA?QTF0?: C #09@70812&9 M 'G EM@+\GB!QX M>=]UX:F)TKO?O34*+!>KL,J22>Z M)1[H!OOY9M> /.!L^ECB>&E5SC;#A ;)5/$&GL'120JE+-A-419Z@G"PEZZ^ M5:?\J&C'.0\4AOT6 O[:0L0RA8T M,[]OC))VOQ*;C0A=QF-YXC"C81I.2 O[6>M=G8F*(\WNN;^0-@51:@UO MVRB=0CC0%/;SU!5?CT>'58KI1"G)P%'$SU'',NHII#8=1:";QV+*91;&\43')0=+ M+C]MC>74(]J'COR16._S:(0TZWYG#C93I>EXU#J,\*$*/TY@X#-R"I_5HCX[ MM> V==$@LNIM6X4IGB 0,A <.87@GD+H6"1ADHY[E)T!7O3\+Z$YPN$+)_+_057(N3;__D#'V0]T1V(OQ5]K MD7W9B#+G4OW2"7;]X$S5RYK?O!?Q@Z(=)STP*/$S**Q3^^ZO3/K 4!)M6=ER MTP">!2^#(, (.@52&R;Y'.%@#I?,[^X*#)06=*\L_N7Y:S,9.2J4,IS,E EQ MS1O-JQL(\+C;U(VL*Y[U5YV;2'VA;4H>K]N\)LBUFK-7IOC M @Z"@O@%Q2<)A-+*AUT)YXAIZ"1*OS:#)XG)/(KC?:V^/TM;SSG!4UREA30(]W[N/9*TPVD:3\ =A GU M"Q,0RFW5EMT&<[\=)2IH*!OS56 +Y"^4>P/2%A]GA(X7UDZKY<0XHH-"H7Z% M<@@ZY^LB*YQK:FK+BS-*HR@8,[O+D"R7>&JOE![LZ?JER([2+)-!!I)9JVBXFH;)N%],N3'(@ M5ITXLQUH]^MWG- ,VD!A&A=@)^=]\YR38^S16LA[E0%H\I#S0HVM3.ORTK95 MDD%.54^44."=A9 YU3B52UN5$FA:BW)N>XX3VCEEA16/ZFM3&8]$I3DK8"J) MJO*P3>1N =*_ W K].M"&KT[JAFL8C*=9$ MFFAT,X.Z-K4:LV&%>8TS+?$N0YV.)Z)(\:5 2G"D!&Y\^@ M[!'?N2">X_4[Y)/#\AM(4.[6Q23<2"?&0% M%H%13J9"L;KK?ES-E9;8>S^[4FV\^]W>9D%>JI(F,+9PQ2F0*[#B=V_V?AMIT(J&5SH1DOR'M0FX\@RT6UVD^SZ"/"-S!#EKL MX)^PF5)5-W+P@N0YZZ&('M!2#TZGWO_^!R\[T8LBSP\&WC/BKLB@WP]\+^@F'K;$ MP].)\6R@-"U25BR[L(='8W=%'L1VG;^;G',0_"N><%0E'\FL09_MWZVN#-UW;%F$#?UE7=7D]60FPNI]-VL6+KO'W%-ZR6ORQYL\Z%O&SNI^VF87G1 M-5I74^)YX72=E_5D=M5]][&97?&MJ,J:?6Q0NUVO\^;[#:OXP_4$3QZ_^%3> MKX3Z8CJ[VN3W[):)SYN/C;R:'EF*O(:7V8T40TZQ)\E>VA/ M/B,EY8[SK^KB77$]\=03L8HMA*+(Y;\=F[.J4DSR.?X^D$Z.]U0-3S\_LK_I MQ$LQ=WG+YKSZ4A9B=3V))ZA@RWQ;B4_\X5=V$!0HO@6OVNXO>CA@O0E:;%O! MUX?&\@G69;W_GW\[=,1) \D#-R"'!D1OX(\TH(<&]-P[^(<&_KEW" X-.NG3 MO?:NX])546N9 7MT+^D_D@6L27\J>US,*52H\=0[_QMD4O/M?YMB@E]B6Z0)]O4_3B MQY?H1U36Z(\5W[9Y7;174R&?4-UGNC@\S86H]S,B'O&!YYF?WYQ"Z M)$M=DF6.R ;=[Q^[W[>QS_[@(J_DY-P% 8K!OGG8-5<+Q&Z&/4S#J^GNM'-- M%/4"/QZB4@#EXX .41ET1QI[^ @;" V.0@-KGLUY*]2TTUCR+7"9;R[)4I=D MF2.R01C"8QC",_)M,0P&%(L]37":!;[O$RWO3!2)<)AH>6>B?))@3\L[$Y6$ M. [AM(N.>B.KWK>-6M@V#5^6 KVHY,5+2&UDW/O"IYX^RDP4I9$N%J"*HR#2 MQ)JH*,0!K#4^:HVM0^S#AC6Y*.M[Q+YMU/H/+M:QRT'FDBQU298Y(AL$(CD& M(K$FW2?)F#>+%9*&21K5?"MK E4WBF]LC3YRE06@D[1,R<,WQAG "JDRBP-]$*HF.JS M"H!*XC@:47SBL+%]7F&U'&Q5IS@OI(-$CW* IC'^MQ MAF )C7Q=N FCV#M9[8?*2:^]1WM6!RDA2R#ESP-4,O#B%_^3.J&3BI'0B'PUR7 M;V(NL*=;5A"E#XD,1"7^B/#>LF*K%9N]S67EVT6\*-L-;U7>+V4O[&1GJ/E< M%<9;V2*1+>ON([?[Q M@UBQYAF) )@ZJBLV,1>!H1GPH\08 0 3"4=<%>XM)+9[R'[@/R_8@!,D^J0V MAU!4K^]2"!7I-B%[BFNHO[>5V&J6]OKOV)(W[#'R(O\V,N/'P$@,, YTV1 N MC")CL0-P-/0BO6@%<7%"QQ*^MW+8[N4^-GQ7=CNH4O_3\DU_=4%\8^H#4#@T M8@YQ);$N'.**1G*>](Z.V!W=[TP@52U!(HEIJ62,::!50G,0%TJKH@F%<#2D M>BYD("[!>,32D-[,$6POG+I);3'8$'V .@ M"ZH[$0 4Z@L01.0'(P:,],Z3V)WG<*M^=%A28^-.3;V!OF<#XL(D"G3! $X. M2R_114.X) A'[!?I?2?QKM65ESD.UG-WC.U_JWEA-H- MM!;QK6A%7A>RQ(='G=4S/WO4N61+G;)EKMB&<>K=-[&[[_%19UI>3"(:>R0Q M,A* XB22]MC810190T+]1-^ORD!6$B5^<+(P#E7WMIO8;;=M% *[H6.Z >B8 M;HAU1#?$:M5->]]-[;Y;EAO%=@'6TO:6SWX=ZY(M=L\UL>4%Y:']J.R-CLWP.H$A$],WR%(1Y^GR2 M ;!8HD;>)M"3,QCV0QCGO!RG;D]CN#V.X?8\QO]Q((/V90<]YTC&&:_(J;GK MC'&D[]#, 1@AD5%N 3#JA]1(01,6T7!LKYOVYI[:S?VM[,=R >MT>B[#*5OJ ME"USQ3:,05]ZT/#?+SS6JN7907#)ECIERURQ#8/0UT74OMO_],)C[K++)47? MX 90%%AW@',@7JAO?$)W)'$T-N;[TH+:#XRPX/2_BE"UURI:Y8AL&HZ]X MJ+WB.7_924RO$AKO& "43Q,C_TQ43"+]'0-T1^(G>K$S/3FQO&;-?7=4O)62 MMK78'T@]?GL\COZZ.X2M?7^#+^<8^#[%E]G^L'E/OS_[_CYO[LNZ115;REMY MKR(Y5IK]";[KST'1>"K[N/*Y87K%$ ^?N2<_%XH6YP/-0_^P=02P,$ M% @ "()L680(4@%A#P 2J4 !@ !X;"]W;W)K 0) XNZ,O'JO[4/)1EZ_VVW>R:J[.' MMMU_>W'1+!_*;=%\4^W+7?>;NZK>%FWW;7U_T>SKLE@=#]IN+ICOQQ?;8KT[ MN[X\_NQC?7U9'=K->E=^K+WFL-T6]>\?RDWU>'46G/WY@Q_7]P]M_X.+Z\M] M<5_>ENW/^X]U]]W%,V6UWI:[9EWMO+J\NSK[+OA6)$E_P#'B/^ORL7GQM==_ ME%^JZE/_S?>KJS._/Z-R4R[;'E%T_WPN;\K-IB=UY_'K"7KVG+,_\.77?]*S MXX?O/LPO15/>5)O_KE?MP]79[,Q;E7?%8=/^6#V*\O2!HIZWK#;-\?_>XRG6 M/_.6AZ:MMJ>#NS/8KG=/_Q:_G1KBQ0$!'SB G0Y@^@'QP '\= ?FR$\'1#J M!T0#!T2G R+M )8,'!"?#HBU _C0 N=[UV;]NZ^^VZ.ZZ]OJEVJTZ)YEBWOWOO%N7=>KENWWOO?MX5 MA]6Z.^Z]=^[]?+OPWGWUWOO*6^^\GQZJ0U/L5LWE1=N=;9_S8GDZLP]/9\8& MSNRGJBTVQ&$W]L,^=MHOZ_KX&;JS)@ +.^"FVFZ[BVKHZ-1QUMT TASJWP>/ MS^S'?[?J&K*[J(N-][%8K\Z[-KPI]FNZ*7(':[D\; ^;8X?^NWTHZZZ/M]T( M]] //9]+[Y]50_6+&$\]24"%7'02?-8A>]8A.U+# >J'\GZ]VZUW]]U(M"EV MR](KV@Z__,;CP=<>\QFC%/3$C(_,?I3^?!W'8>1?7GQ^*1@S2HM8F!%!H(:D M3DAF1O @XF&DAN5FV'FL)1-$# MGLQNFD.W66].M2]2+HAP]N7];I: M>=U#DO>Y;/IKOHMKZ_6R_[+IQSBO>"QJ>H /C4YA2:)=#S?6$YO8A@LD+$7" MLC%MD2,S"A!,T5/TK*?HC?7T]6E\1[7/< NGY[IGO1UV'=?EK^5]7+=''_[].-J MWS]WD7J+C5Z-M#OVC?593>;<.OL;Y2;\KZ;#C9EVVZ. M;^2N>HG;/MRUQ3]E(P4BVD8LS Q MU((T>!=06@JE9:/:(X?F%"B:*A=I>0=VS_M?9>MMZ"6P#X%IUYX'01(; H&Z MUU!:"J5E4%H.I0EW;ZD2D2YV8+>QGU9-E\JJZ7VQWGGO>N&\)Y5C6L#G^I*' M/>MDU2!I*92606GYB+85J(RJ8J3I'-A=YW2WTA:Q?RCJYS553BK&-%7C&0MU MA_D49EO&)D*,=6PW)B-.B+/9W.?ZW<",.]?76P45Q&(_]I.!BU/:LX'=G]6: M6EO*=C<[U(P-3 /5Z!TS) A\EB2^86I0H?1R-O13Y%":0-%4?4@?-; ;J5]6 M4A*8[B%54W(*LUZ-9HAY-3HQ&7%"9%T)$6<6EE!!MLJ20+J0@=V&?'UMB3W! MY O2] ^-#C)#ALI+R%#Z@H1ZB%":0-'4"B_I(C*[BVA[X&:F7W;.YT&@W7-N M["FF/CI!:2F4ED%I.90F4#152-)I9':GT7S(NBWWW>#B#]_MF6GK):&?A+J\ M N>P3H0$VK0P=6,RXH1X-YX8#@T1=Q[I"045Q6;)/)K1XSI[49=I=]_L3UGN M=D<:3#?,]+2,[C%# A;.HS#4*Q52*I0>U*&?(H?2!(JFZD.:;FQJ3>F8AV]F MVDW4G.<49KT)R8@3(N<\1)PYYZ&";',>)CTK9O>LG$]9[I9'.B\W MS'1>C XR0X:F/53HP 4)=:.@-(&BJ1*1GA5[Z])+4C:F]<+\F6YLV4]M\M,9 MU-B"TK)1[9%#>_+)XQ*T'I.9'E; NYSO:P7FC:# MTG(H3:!HJA:E]\?^Y[69]HR3!0BMSF2F'\CGOE%5#DV:06DYE"90-%5^TEID MCAI-9ST4,XVV(.'A3+]A0DLR&>$XZA*!5EH.?,I$OPU"BRU1-+7OI=')'/66 MH\N<[*#)(PJTNI*9AF8<=?,=H\P)FC:#TG(H3:!HZM9,Z8YR1XWER#(G3CBE M =,NN1M[LJEJ@=)2*"T;U1XY-*= T52I2/^3.RHM)Q0Z<:J>,9[KUKD#E5%4CW6AN M=Z/-=;A_'';V]2!N6KS)G,^-X29T&O]$B+$.Y\9DQ GQJ)M:&P\01(UAJ*\? M"BJ*)8'/@H$K5-JZW&[KVM?AW.T.W3//3??3Z!YB*WPPZ_YC3)]B4*$#+^^ MEA-":0)%4_4AW5G^_W1G[Z.P;-FD%I.90F4#15BM*< MY6]BSI*Z(PHA$[T6SWXZD^6$I*506C:F.7)H2H&BJ5J23BNW.ZUO8/3;,TX> MRZ .+C<-U=#G23C7QS*HC0NEY5":0-%4_4FWET]Q>TDY4:6A/#8,.:A]"Z6E M4%HVKD%R:%*!HJEO3Y/F;3AE@[QM]+&#IHX^4-HB)#:M]^^OTNL:4FC:#$K+ MH32!HJFZDDYO.,+I';$H$!+UGT9QJSW79+% 35XH+1O3'#DTI4#15*%(CS=T M;)+O!YQN9K<_U,N'HGLB*G;]1*]=U\=7P'CO3F8!*1YHC2Z4M@BI7>P!BXQU M2FC:#$K+H32!HJE*DU9QB-ME'Q*O90V,M\+8$TY6#-0CAM*R4>V10W,*%$V5 MRXL7R]H]8MOB4TBXI4$\U\OJ;NPI)@L$24NAM Q*RZ$TX>XM52+2V@[AN^Q# M8B>[&DGRP9:C0RE95!:/J9Q!2JEJAEI=X=3]]D[MR*%ID],;0$+W?OL MB1!CZ $7'$%C JRK8%+)1^;OB:C?;N=H<6UH;NC?9$R- 6,"J4 M7GJ"?HH<2A,HFJH/Z=&&K]QH3\N"V&C/PD3? A:Z-]H3(?J^X=2-R8@3XG$P MF\7ZY4CMH9]S_7(DH^8!']AI'TI+,@3NM*>;'EJ8&KIWVA,AW1RNNQZY\89A M*G3@BH36DD)I D537[XO[^[>OWH18FE+:(3 LS\N,YTU_H ,V:06DY ME"90-%6*TL&,<+6JD6G;!3'7:U7M"2<+!FIC0FG9J/;(H3D%BJ;*1?J8T9?7 MJD:$%SA+C"<&>X;)^H"6JD)I&9260VG"V5FJ0*3]&,$K52.BEC*8&;*!NI!0 M6@JE95!:/JIU!2JGJAKI0D93*U5?OB@A)%5CVEU1%$2ZR12Y*U6)$&-^XL9D MQ GQF$?Z$W1.Q!&5JE04]Y.Y'P], M148OC:Y4A7Z*'$H3*)JJ#VG=17;K[LOL@HAX2R9A%T1N]XX(,2]'MWM'G!!I M%Q!QA%U 1PW;!9%T[R*[>_=ZN\">8/(5Z3;PB) ANX *';@BH08>E"90-%4B MTL"+[ :>]:&;\+&ZVXYYX4'K(*&T%$K+H+0<2A,HFBHD:4U&=FO2OBI#W^Y- MOX_[YCZR4YAU7#=#S''=B+.&3>>>XDHSJ-HZ#$KEAY?;/?X MQJ_*D.UNIT\=U&/3=M.[AP@)6)(P'LWTM3,JE![4H9\BA]($BJ;J0QIOL=UX M<[Z8CY:%:3E1LY[8_9Y,(L2X'-V8C#@A86M/.%DOV#_ECOU;[F/:(X?F%"B:*A?IA<9V+]1F M=,6FDW@>,/.=Y/84DP4"W6T.I6506@ZE"7=OJ1*17FAL]T*_8'TYI@H'==5 M[5$H+872,B@M']&V I5158PT/>.IIN?+M_'04WW3%0Q#8JAQFYY$B.FRN$U/ MXH1X',YT5$[$G8?&W@ JBC,_" >VBB32]$Q>8WHZV]U.G_IHF;A-3R(D8(GO MLVBF;V"D0FF+!?HIMDTQ,AYA%B5YV#=FU/.%DNT/I(*"T;U1XY-*= T52Y2#LXL=O!MHEQ M0E0*!A&/#(% 35XH+872,B@MA]*$N[=4B4BG-X'OTDY,MY3Y^N9^>]K)LH'N MTH;2,B@M'].X I52U8RT9Y/7[-*FIVAFY255#T2$&7.O$76>;DQ&G1!5#T3$ M$?5 5)2M'BB1WF:"VJ5-MSNTR#-Q%WD2(4/U0%3HP-08:EE":0)%>]+'1?-0 MENVB:(OKRWUQ7_Y0U/?K7>-MRKL.[W_37_GU^O[A^9NVVE^==5.B7ZJVK;;' M+Q_*8E76?4#W^[NJ:O_\YJ+C/U;UIV..ZS\ 4$L#!!0 ( B";%F>?OTQ MGP@ *(F 8 >&PO=V]R:W-H965T&ULK9IM;^,V$L>_ MBN 6AUV@7DLD+5NYQ$ VV=XMT-X%3;=]+4MTK*XDNB25A_OT-Z04T18?D@!Y MD_AA2/])#N1VHH6\:^JS=?RXM9K!31FA92=9'#OWMZ1>M:]00Z_AXZG8V_ MJ1H>OW[N_6<]>!C,-A?TBM5_5J7<7\S6LZBDN[RKY6_LX=]T&-!2]5>P6NB_ MT<-@&\^BHA.2-4-C4-!4;?\_?QPFXJ@!].-N@(8&:-J >!K@H0'6 ^V5Z6%= MYS+?G'/V$'%E#;VI%WIN=&L83=6J9;R5'+ZMH)W<7+&VA$6A902O!*NK,I?P MYE;"/U@M*2*VBZYRL8]^AA47T8=O;=Z5%=A\C.;1M]OKZ,./'Z,?HZJ-?M^S M3N1M*Q%] 37E:?L%C&@<%GH>UF<4[/"6 M'CY%./XI0C$B#CU7KV^. W+P.,M8]X=]LZPF<*C2M9 M4>>L];T2=Z]JAY^)0U[0BQEL84'Y/9UM_O%#DL;_= WYG3H[F0 R3@ )];[Y M#P2DF@GG(/N6J6ZIHL[]9HY3O$K.%_?'\EUF69+@T>Q$V'(4M@RNS&7Y%VRR MWM,E@\!4L+:H:AJU@V+U::&6KU.;!-S@^YZ61ZM$$,&3I;2-LI@0]T*N1I&KH,AK"B,O MJKR'0UM&><.XK/[G5;JR1"0(91.E#J,X]BA=CTK70:7_ KCV84#DX&@07P]< M.95\TKKIWUUU4 [I$KVV],03Q;;%'+GU9J/>+*CW\F@BE=J2;F54"=%1\ ;A ME)E9(A!.)T)MFR7V*$UB0[,XJ/6&L_M*IQB0X41L"T2CDNIY%1!^YPU\#3NW M:N]A@AE_ZMC@&LNBVHBJKW",Y ML=2L4DNR;82/5N54,3**T2N]N:S$@8%+*Q]1$]R'514RWS869'LPB=?+Z6@< M9NML[1F. 742Q.#FSYSSO!VV(H<4J!Q"RN'9L]SI#;;CW@I;FFTKG&&?9L/6 M) S74;.BUSW0:0MA12])D[?=#C#5<JK:-R-*CV6 W"1)K<\5A M9@?"OC"U2WNG83P->PXK@F-?/#'D2\+HNZ8[RKD&/Y"/1C)_=&=JB)EL-H17Q.:J"7K(.)UM<& M\A,9P4[2V91VSV*?MW=43+(J(2@D8VH<=95OJ]J?825!T+XUQ7JOWDXGR% V M>0&S1<$ZE8;"+J;5O=K$SC$[V)JF1SG),!C;; YVR+-QD2$L"A/VZX!.3\6" M;"[.(4G/IO1WV&4Q]B3SR/ 3A?EYP^DAKTJS"Z"&AOT+&.K=RBG9YN(\(?$T M:76984@9/9(-0%$8H/_5,@/R'*!;)M/U=E@=)0"GT@P,41B&HTL>\B>?/R*; M:4F<'DW+H,\VFZ>P=SP2#?M0F'T@D7=Y+1PK?A0]G,)MK,T3O(PMY;;=DF2> MJ(T, %$8@"-9.(4-U;GGUH;:&EOZ;",8AR=>(T,^%"9?[Y8M:^>OG4\;;G,4 M)]8V99.DQ^751K[=I:A(0K7 M@.H\Q'6JX,F!D*.J2]9Q;*EUV)$4KWUQU< )96\ZP.KS^U<<@J @]-Z*Z/?J M[?00S[ /OU!==AQ2%D'%VXIV[&(B7DZK Y<9\45(;)"(PTC\ M) 94/EGI63 MPNRR/NSSZ%926CN%N\@(;C<5[C#+8I]P T8$K0NGV*/@P1X*-S3SF'8*,TL^HAAQ$XDR=9P0:WF+PI M#NRJ-F^+5\0!',3XFX^RWZFWTUDP[,9A=M\.YW90$C90T AU/NH8H);*"-P] ^W>*B MUWS0YRWTD?*B$IXM8%-YFF+R"SB"JKYW,*]]U1U!ND''"ORY+%NKJ3CNT3CW>3@R)29C$5SZU42ZC M+;VKVE8YDPM]WA4.N'VI!%0#I1U$QTO$_FBF>N@5?U=R,@!CE! M1M[UF>Q[]78Z)4=/9-E3BSDFS:VB$ MK'6WC1+B>3Y!#*O)"ZS64-&/JTK]4$CKA-*_'^Q/^NK>3S$Z^6/O0V[F6P(;ZT MLGF'44(23T)"#.I)&/4Z6/<#;"/B M>[Q%#/!)&/@OR=8/!/09@]I"G.XZSP68X7>.[R\DUN&(PPCC:=*R.+KMTU!^ MIR]!B4AOR?Z&S/CI>-'J4E\OFGS^.3F[ZJ]+F6[ZVUN_YAQH),"5=M!E_&D% ML\K["U']&\D.^D[1EDG)&OUR3_.2U ^^]G.R$# M9%#4\05LYWW>_)?25Q0AQ\):EF V,F/.\9YHLC%$&V1W)$1975H1F MD(LI79LLIPA&"LI2T[$LW\Q@@HV@K]86-.B3@J<)1@L*6)%ED+X/44JV \,V M=@M/R3KFU*O!+\2M&5[ M8R!W\D+(JYS,HX%AR810BD(N':#XVZ 'E*;22*3QI_(TZI 2W!_OW"=J[V(O M+Y"A!Y+^3B(>#XR. 2*T@D7*G\AVAJK]M*1?2%*F?L&VU+9:!@@+QDE6P2*# M+,'E/WRK[L,>8)\"G IPC@'O!.!6@-L4\"K :PJT*J#5%/ KP&\*M"N@W?0N M=2J@TS1"MP*ZJAS*YZ<>_@AR&/0IV0(JU<)-#E0%*5H\\P3+6E]R*JXF@N/! M KZ##0,+1-5[@T,$1@D+4\(*BL M>%Z.P/75#;@""08_8U(PB"/6-[F(+1W, ML(HS+.,X)^*XX)%@'C,PQA&*-/SL/-\]PYMBS_7&G=W&A\Y9PR7*[X!K?0&. MY7B:?![.X]\*?!8?G<U>"3YLGK\&GSY'7X[/_N_/S#>S\H M!+=^ USEYW[D#= 5>FGGZ>WDV=1C.0S1P!"'#T-T@XS@\R?;M[[JJNR29J-+ MFHTO:3:YI-GTDF:S2YK-+V1V4,=>7.??@AVB,YC@D&0+7WPEC-[K:+2U\ M92';H$UP:[?<5K=O;O:K4B=S',\^E(TTLDZ[?:0:Z\S\KML^E$UT,LNSO4/9 M5">SV[YS*)MI9*[O'NH_6AW9O:FO69:!C+_NZ??=EMBH_M.L$,I&@E0EEW;=%(T+*#*R>]++MHD!)]VB*;:-42?MPV(?:&ED<4.1*DE9<;]^SU"2XQ9IL/N01*(X M,V?FG!DR9XUU=[X@"N*^U,:?)T4(U>OQV*<%E=*/;$4&7W+K2AGPZC9C7SF2 M630J]7@VF;P8EU*99'X6UY9N?F;KH)6AI1.^+DOI=A>D;7.>3)-^X;/:%($7 MQO.S2FYH1>&V6CJ\C?=>,E62\GO#]N^**H\0?/@C-96WO' M+U?9>3)A0*0I#>Q!XL^6+DEK=@08WSJ?R3XD&QX^]][?Q=R1RUIZNK3ZJ\I" M<9Z\2D1&N:QU^&R;]]3E\YS]I5;[^%LTW=Y)(M+:!UMVQD!0*M/^E?=='?Z+ MP:PSF$7<;:"(\JT,3)!]J5XIXPTJ9):K+!($&+PXJ_%V@<'*?W]6(5: *>/ ^#V>NTKF=)Y4G$L MMZ5D_NRWZ8O)FR?2.]VG=_J4]_]#Y-..IB/Q"U_BW4^LJZ\!'_,;Q/;/#,-^2EHUT- (XL:B:UJM=:I3#-R2FS$4?)U?(Z.1[$:(#)5B5*@"9,[]",SD$#>B<@@(R\L&W\ M3])G\INXE)4*W MBNV0C>\7ZD20'3%/OST$1O +^5NJ:AS+B$ M9#9@K\V01:=2\J.6QI_=B])NJ8L,,DE[9.!LO2DPSF,RF43Z5O"T#_CA:EKH MI 1X"R1]^SA0P=.6]\8:U&@Y/#@":I"(X\,S'OXF2W ='E(F0VX3<\OJE D+ M*%#[21F0K76,,1+78 A!D1VBA\8.(V1L&G*%G%3AT2*RCAZX+"-="/- V!>[ MPW&$8>^XE$:6)(XZ]KI/>ZGV0K&&4+NLUC0\#'^43)?)\:,HH,I"I8584\H! M4G)!Y:I7_.QDP# ? ;=$ZO03N*1;3(Y;26EO12&W+*Q8V\B\U76D!HQT&HK^ M#DL:TZE];*;;T6HT+*6IH[!?Z#\U78!JSYEA-(LOQ! MD7V#Q?[5=49B=?MIN;AYW]4@-G:@V/" 5Y"NNJ,//EM]J>]T6$;."!>27DI1 MY0>J:4<\$X- U\L5]"CU$&Z I2(7D^7J&I#)KJ/CQN4X+^RA59]@'#AH-M7&Q;CIJA](EEQ,:(T:N=9T #/'0,5VD"7D5BH= M/R-[B64?(@CF("+"Q49GN!= )UK%4(G8#2I#6!4 MBAV2C_3'O+@!!822(63JK/=M;[;MWA&9T187M2KFQT8I*A5]LS[27:J1[0VL MNG'/W!6X"WZK)8:2:_6[J#GH0-S0O?3M-"UDR[$SL?B Z>NU5YF2F!J^-P)\ M)7$V0VF2CYB,WU9(L!"+W*E41E^K"I/G87@: 3;+VB8 M?OO#XD-=5A \Q,]*O>@/MA4OU9471Q^N+U;'8I&&D;C=-QTO\EKD-EXH6Z5R MK\01IG&W91'>]RI&=_HH!P&]*1MW9QB*.^B$!0VPD 2??XZVBG4FTW3?JP%I M2@>:>(%+A2:)ZI5,F?5TL$56E8XS&6VWY9.PS1Y5'3UVJQ@?7!6Y;/%"C('( ML=M;XWYU?^=>M%?-A^WMA1TG':KNA:8)<.TEN'T)MHH7S[4-Z.7X MR%HAQQOP/;&PO=V]R:W-H965T&ULM7UKE[V\WOF*OEG5S=9U M]&>S?M3N&N]R_M&V?'1U;'U55O45=;XU7[DV>?/#[)EGW;U5O],:U@6U3R_^Z3TB'YP;.+(S^XTA]<\;IE M(E[E]ZYS+U\T]5W6X&D:#?_@K?*O:7%%A4.YZ1KZMJ#?=2]OY#"R>I6UQ;HJ M5L7251T1:UGW55=4ZVQ7E\6R\.V+1QW-AU\]6NK8KV3LJR-C?Y/]7%?=ILW> M5+G/A[]_1.L,B[VRQ;ZZNG? &[^;9X\O9MG5Q=63>\9['#;_F,=[?&2\Z[C+ MM[K+[+^N%VW7$+/\]]2&9;PGT^-!@)ZW.[?TWYV0A+2^N?4G+__EGRZ_NOCV MGM4^":M]N57\^SSY\Q>N;9H\2 /4'5.I*[*Z8.B6A:[TO/7 MR[IJZ3>Y?/]^XWFT[XS75Z[/B\[G># GZ9=_Z4_HCU51.1K.E5E+A))G@M_OI:Q>24%?7RWJ_S6_FV5^OK]_RWY??GF6D;^G7'3VVG=XR M4[9OVAX'TM49E%1V>7'^'_S-==,5R]+3!YCNG5_WI1#\YOS_S;,?95GUKJCP M&3VQ=17I8(P\RV@+F.X;D'*[\$T0_1EO M\7L:5CZ^Y(\?SWB,]_[PB$,FDD$DV]37D= M3'3Y];?$(U&4'A"@1=]E>4W,6=5=D"8P0EZTR[)NZ:A;(NW?^P(GNMC_PT1@ MGOTJIT0#V=']T<,BML/RC=\*6D91Y30)++_I YN$.77K]D3*S'_:$4H ;73F MO7<-)L*JQ@?P!/)#@JE*RPY-))),1]6ZI3!=E U?%F2\G=)CH +GV6O?= 2? MZ!L!6:8W4]*+^/&&^&P"76G#]#7)OZNJGLYT\G3OTV5!]23+K;=%UR6,U?K[ M=5&JAYC&?:GT:(+F"0KY!BJ$!%R?>/-IN7'5FIEW6[2,]D[QG*K&FS>O32FR M[!!JJQL_TV7],7/1;NJ^S''R +)Z)+_WE2!%)DLG4OK 0++%DA^0DQB?SU@D MK^68WOE=W9#NJX+>_O<#YO,3.BX[A1(ZX7\.ACHAZGR@)9-VII7!P+%8X>!H M%CK7OB49:FGO?BUJ'E.1VN]7Q*X]JW3L!K:?##K]!9M?E[04P*&/M(9VW]*^ MVWGV4T%Z@*B^QXS,-;1K3$RT[[=\WO09L6Y+!*%IE_P ":QQ-O_&99N"\*V@ M"U:KY#2H9@7?1>T]SZZ/6H([K"#/_I(]FS\F@%R6:M!DP(J^K/(9?7WY;/Y- M^CVQRZ79%1U3$LMQNU]2?"A)!3P3\2_;5D^%O&@\W1W_EEB" NW5%Z19D M:7%ZJYYM8NL4Z[#!(+:FG]-.EQ^)74EG\\?7[W\FL:S7C=M"T9,C40"0L-S[ M=MD4"_!TI#58Q%G+W4'4 M29?3E[Q4DE+RB[!GVD">L[$%7V]<<^^ZP3&#=4,SI[.1M+N&E28>);M GV'^ M3;'<'%U%V].7,K>862SK(1*.EZ**G";C656]BZYGK1>WF1=ESYQ("\#H_A.Q M(=;,XQ,ZI/&)Y7ZMHO1=71G"N,,FEY[-+@D\ V(>C%D6IOT7U^;N[V3HL-B? M7?.1+/E//[T.4$^^#S@O')!7Z\7*:+LKBZBBQ6RQ[67$1 L'([+1/GEZ M<>K.3B_/9D35I>M;@=:34TQIN<&)W3%>(48]6 T+S>,+5K1D%5AM!$65NWW+ M4'5LL297_.SRXG1Y=OKX[/3Z;!8(2J3I"K:;:QH;U**YBSK'NB^?T<3$9E5. M.@Z311P%C8]'TA,F=-ED0#QE]K>>%.KE-Z:"Z#C ^$<.SHXGTBPYRIG)AA/D MY9:;PA-OS;,WJY7GB 7QT#Y CQF4,0L8U/I8-!A\K#PKXK 7I=9?RYJ BC&D MVFG][K7J0/F269^W>'69:-E[V%Z'&; RZ]);A51N((!$^'.BMQY%0M<@;Y=? M)[1=0J5BM9&"T);D=%;+_12B>9 _F*OH)] CM=%\\O!TJ.3$!)T2P]+8/6VO ME%EFL#6_T(9Y_<]L^3BB5*U$LH D-%YN LTV82M6'TKPG6>8D3,Z%'HS2_Y8 MT6;)X#M389X9A3B[H4TT)*C""RWMI8,^I"_P+/VW6H,O?SRATUOQQLA,8"9:'Q#A)/<, MN&;*FD"C 8AVX$*WH*/)_C*AHZ*6A<+SU7&-E M$QB!0RKZ$WQ()+U7BS!%:!QRK,L_HXVR7' @STC;(T1](*PT2#78(>]HG_5J M<@\HC*'ZQ>_@45I:[E5@4@UW32LI$TR',6Y\5=2-. L>XG!;E[=8W&OZDSC[ M!\)?)1#8ZT/>4.F6^.8(K&3 >1R&79)\G]ST MBY9(![+1L9%B4#3&RA+!,HQ/=!8G$N*C;OVDHI"P$GQ HD[7JZ8LJEL/B#P+ MO@$Y2#V?J-CVIP&>TMK*NEJ?RT1"O%:)1TP(SPI0FYT4A'CH69GTSC6D&CH6 M2O+CR!DC'7+Y]3P.?0\N9#$D>I,W7+0^A1T7\XO+*$3DY"IT4(E/_&1P2'# M ;0;D^A IN1E3?F>&!8[ZZ%/;9.X CU,L M^N"Y]CL\CGT]"X2A#Z[+W<81V/.^9&AUQ[BZU7&#N)7$(B4'1Y7""C;&/S_. M\M;^1:XF8GV((3,^@0@_M*1^:PO:P MC' BXK_MW)[U4HBT>>#[>L663<['7 E8@[Y:TTVVH-?8$CV-+/MB)YJ@L.0<#,YE;]_9]0"&])?9 1!(5_8;?# MPM\WSN)$UR4-2PMYL]P QC2%2R:]9P_)IS^'I>%HPM)NWO^(64O>\/V+X[!> MY505\.(F'9 D;W33.?@/>4LN4!XM^^G)]Q-\MQ'8"72LH VE8K44##=UFS^75.!LJJM+'S5-XF*QF%] M'[+9;RK?K/<<%C ,2+3C$R6ION0ET!H*PF^R(6CA=&X2_]8!#I$^Z_RNM:,7 M$T>_ X!G.IKAD;@>25N,$"HV94A/!TWBLG--B,L.0B,;4D/,\Q*A.2UN4PK] MN6C8*)3#84RR9^R3Z0%+^$TBOL(N##W)L:_OU)"O>EWS*.GC6(>V7>3B R\_ MY8TOY&G)YK3]$AF'55\>7_ 0!M\ZTKRT\*9H/PJY>X@<(CHX !Z6@^X<3)YQ M>L;2&T@E=&PK9V0IV%.*NF*6BLF_MJFDFY]+=/Y=P-: CR2435J&=$'GFK77 M\+;CO3&)A0 "XE;NEIQ0-KXD2>V#,I1UF^QJGOW6\E&2Y'$HMX6*)\YV=BQ?EEC&0[!#H.(H M8:(PHTT-MB&8.#OOAHBQW0E72HI4O':)["%^CVTS[I!\:]L:__I[8JDCU8D+$#VQ]"Z!5P:_ 1O<(]\N3B7AE8:]3' M<)<]OB4YU%6SK(.M5.2&B08]RU:CX4UQ:T.T;&Y+R#)BQYI]7/I@(.!ND5(# MZ]#J.)_&DAU< 10 <.I4 AJL697N[#DOZW5%/,D;T/W/[##Y8>@YDL,4L4QX(*9WT12!M4EA MM62!H?6B[5H6S;+?@C.7PYVFHSDU4FP1!_9USEJ M-1A@P@$.JD[8$S_(?@A"CR!#TXN"XVWN"/A4&B@/5BJ!6X(3X]#M>&P0AP1Q M*TEW]MW4=HAH2? 8A.-CE*QP0X^&/ ;_)J326=':V:P&"]?HB*Y#C9:=V>EM@<8F#]$TBOLI!0^U-L*RD!>,P M0@U!'(J7[#_1T>9V6!Q.1U$A8M&A@H K>^BD&C&<%L^1#AA,4%:!P4NAPPF M1FA0&F-V#$#=/HO31;Z5@SM2LL)>:H_:0%)ZIM$]/+OM4P[JM.2-"/[F\R/XY@:T1S.B6R=$"QCL@ ML<@K6UDB%;D(0,W0^6R'V91PA5RCSB=2!]XWG.B@W\%=$J:L!$21.A&!L"SG MF[>A:B/$Y.I&A3;WB(_RCQ=]03I/IO7B%9GU9];J]COH=:)B@YP\+$;6HA(F MJWIS]Q/.86@EM-*X?0DHF^$ 5"5*C9@Q!/E,&K0RGX2QHLC.?;PZ*_#*/=?:L2J@H?W>' IX4TI.66LB M)04BPD1/ZR/MP ML$"KO-:,BVO"EEBF8Y&@/F(A^6A68@@E"/>WV::^0VR0P[1F[T;@2T/*-B#A M[@YZ(:"564"6-M,L#:P$OF6&=/DM.P\6UQ$3%#8^@?^+Q'Q+%&OE.449\AO) M\V.M'(P9S5.KY7]X%-ZSA&(0-N>!N>Y+LP3B?)-'"FX4',=:22#B<>1L!!9Z MK5R,[G(*F]0!1QRY>(<^U!7]O7<<;N 1-"F /&*]+98@:<#U%MH,59C.TMA& MCF'P@LY@3GX\N55M".V,?*_&1WGC8"9$@91:+#$VEY$A"2LZ_&6>[9P,=2H( M11O2Y68O@GO($@WL*<>X*"10#E&6ZG>),Q,\MZT"YZ-#)#LX TUV#8USD#N% M_(-87O2>%SBCD,B,ILGPHYE>R>Z)X5:O&B[F06W?H* 10K23_/(/(1L52U0U M=[.J$7F3^AY55"-R\=/<)[!GU2EN,!1\^F_L6DL>-&)!(ZJ!9PS3L.J1F!&[ M8.RV:NH4CW#9T:[7-*(CI-FTW7E1S?1?P+ +="D,L*12+:",6S3^9&(4X^K M;WK>0Z<^4$TJYFD-Y!OO!22W0O?HMT]M0 ,2M.&](M=0:B'F72P]T!Y&) )& M[YY=*2R8R7X8.0C5^!M?"G1$)=(=-DA>()V-J3\N=V#% MD^Q"5U8'<,MB&'6.:C ):1NR"9OY0_M@U1N.*Z1PD,6/ZT+A0;W4ZE@"<76_ MEDJ,7IPM>IKDIV@-WX?^ O6@BG:XE$0VVDY5 @Y4T0026<6J8#(GK0J\:RF< M.;HZJ_+2 )C:$DN]FM^Z],&5G2*;Q:K&$2I=?D ]P)NT_J53LQEE1 QH3YH[ M^XEW]Y@(1/+F&];,]%,2\9;W$JE2M".YT0KC6+&;\ME###:3@C7K@ DTL-_% M47DX"V=SMA?/$J3?<5D1UPP+0=F62/@GAY% P %Z4:T/*DXDV =34-*N)$=- MYQ-D%XD441:A9H@#ZK-85:9H.S'1PB+MN,<'XQ'7T3*=I(?$CF,)TX&X:+!" MI#B).MZGO(U#E!N:Z3@F:[GX35">L-F,MU&^AO.W14*7'GQ\@%^3&9AR;JF5 M!A+8KWQ2\N]B)1<9DD51Q58,)H XTN8N$P7\F]/. 1"NFU]U=XYK M+^J2UDJFCR&&4 Y@N$1;*D>I&[C>W=XD [\B62)W%2BCOO5IF$%EJ4AIF,:/ M9PFVOIH_SMN(:JJ^!PH8* +1\' MD;APQ\L6W1 ,#<^!(#HT#6T*VU$69V:VX24VI>GO@]\?A+'CVA76QD(9*=J3 M<.Q)M(TG\^RO=9VS;'Y(]=K:/G6M%CL:BF,Z6QV,EC(9_8_'WGU0NL.(_2 T MGG#=,2X;1'CB?OFGV@]G)Q4V5FC5<. 7!#N'F487\$T:3!QG"2Q)*DU$Y9Z+ M3HS2VS?]I-&-- ,ZWHE+.U-("-))5?!,V"U)OR8YQXKH5#RQ"^_^#' M33:AMV;A0VE4ZJJ#3Z*H!RV.\&EBOHHV2<-)3VPA1Q9X-Q)[GOU2I[0GG@Q/ MH:H\D=)CU8X@LL8UCE688:_6!. 'ST 5Q'(8Z5J-P2VBRW"OS-+1K0N5@VEW M,3D9)%U\7N!G<#C[,34YZRR0=>@8Y)Q3TCBJO<@A&8B5>"]L"$TK84"E5OE%R@G" /& MABM)./.F:1+Q_\ZWCKNNP2U*?&7H3 MV%N?HA/.+Z;L-$BM+_X8@F.TC;V[PD>%)=#S#-7 M;XQFQ/'X0AP(V@]-P+1.3OET" L9W8--Q@US$(NPC#->51AP]44#RK.C 8>6 M^QA/'ECP_Q,O,]G,EH,KAT[:''7AS)])Y9S"9(L ,#(41UJ4RG%1&^TJO7>@ MY!).7AJ"=2%K#^S$IE@TX;1W='3"T.P=PP %1SI:;>$T!@LYL:@/@W&43CV" M@1*S)YZ&,4M*"Z *U'M+M#.:5L9TEJQ* D>QU[9?24..0 XNRY*^GS3]SF>R M)T]G !;$%5=/XUP287Z+#A>R]$4[BKDE6#C"+F9)]KY 6%P"XH&^ M+!(DREJSSUIU8!$C*%)-.+:Q_T#C@\&?TWRU%6F\MQS:;+#M(S4WP9A A;=6 MZE%(UTX2I)0'C'\-=PVZ FG,O%]*T-\:85HMF$WKP_8[G\X#SJG%8./G\H%M M.SHX@X:F%4PKZ$ $9'\GBYEIXHBFUW ]^S@\W-S\#FXHE+Z#"X#Z%T1B*MR>168%54&O!<2>ED3+EL M0Q8GA-)X\[&+&R<3S!SIF#!;6@!%N^YA4<%L20* K$&Q;043!CW(R7:,3P'O;]3EG"P.1$Y/*>*YAME[N-=3-!X .!CS0\'@<#2FV!1A8 MV)2+SK0UC4N6NB(D+(:Q#(MNFQ>FE46:B@KU*,IGTIP8>P;TZ#5 U,F[$..P1,MN(QV\J<; !:T)9 M^+3XQ?)[@4F$@;1%)P0ADVMHE BW1;XS6DL'![ M9CC\. A%29AL+VD"J7L:GK 5A;;'A&@(XHZ%(:VABT_7W*X0?V-SVQ9PW/78 MK/CXA\GS^\)%A3->HR(BX=J'Y@_)NT&Y<03>!>K+ZH6DO58:%XI=_C>'-;:I M8A&.'FQIM/"P0"MX&RTO#2O).F/M+8N=*J96;TB".V2;3P7IW41*]ZW:9DOW M.B;@Z/14(6=27-?EK MR>_.!<HZ^.2V:(\,^ST\LS0XQ[6XTPFJ8.;1NS M[/1J].BQ1A15R#82_?+Q65)/P,*2M,DS,J"'GIQEH<9\\AF+!WSVO-S2]_3L MV'D&$! "9C!5[8H]@".S,&BQ'O:8K+,^]<^AY//L^NAWDE[2@ DZ0=/5L;+0 MB\[19I%+1S2=,O^$3Z-(L1;0)[:7$0"B%5 M0ZMBTYYA7.%8EB.AXT#,]*:MTBC==PI^!BC:R![(.QU_)"(9G46A#%8CK=FB M&/5 4G3"M1?:OW6GD: 0M@[MUF0+K* ^ULK%ZP$E0^NM)7&$BV%0PDGP(:_T M=/17'*:HUBGCQ;$/AMO"5._*XX*;]OBJ5F.?+\3$TX8]O2?A%/FFLU@34<1+ ML.;9:QF$KT(:YF:3V+RA*FM8:+1^'YE3,N^-5A[&)&N($LU"4 -(?%GOO-V\ MQ^SYJ![7-O"--3YIG[6XB03S4!#U/[8V6W67Y$[U /;W4=D!-R1W\(B.L$;G M<$[LC:+\@?':N0 V^Y8[K919[KPH'-$WK%>&O1:A=.(@*ZLL&1KTGAK/[T./[6F#=4?9,ILZ2/X M/0'1Q_QT6,,]VFEZ$%(I.3X&+:U,2WO5>G%=_Z!@2 ]N8+J*;J"$8CXI6:A% M]R>N"A3_612E-#:3ID9QW3Z960(XTLD\,FV?:8&?*JOPZ$I97&Z>,[B8IP^@F]_I,K=]SO=>AF M<=;!.("&EE%PIC8M45+KR@OQE/[-.@'21EK3Z8$48^"9) ##KH_MBPE_3(L8 M54KXRDW+%Q"L97+HT)9X'6FQ<&'RP/_[73/_XB],B&#BT83TXEU];*7/,](! MARW4IEKJYHB#'?J&@W_--U2?/>!?2DA-J\>E4CXMNK<#/+X@+<[-:]R'S-=0 M3)K5>U!EIPT^R1*&O!/,K^(&NW?LEG/KP:*\WT2^@L[0 M32C-1X6KEP:#,+" /8O4)II<]T6J:N5(3E<]-\=X8H-N +P#7DK) V5BH"OH MSKJ,,1L)GD8K]J41@E'(B>\4W)'OR-J2M\\IU4/C'0;0Y7+$RVX#.; G][+- MPV$>DY4'491Z_.K+3RUC9-7>Q?A60@;&POP+"41-D"7$!M/I8Q7*@!V&GLFP M+X@O41&/"]5_9C]GPC()1X^8--Y]OW]GNAS M%J!#YW-8BCV$_4<]>!.NX+P?>.XIAZ>N5NI.(-HQRIU'7:KER<70 QEYP3J@ MU6SH%0#!FX?U-3\R[B2F/@T4:*!UZF&KC\;]D=V$+H FX,OY4"P[@5[ZE^SF1F&>R*CQ/H']5%O\L3T5:3D"=]&0%'. ^_W(\ ^; MDC0.9CV>1T9/BR=:O>.OJ'J7JIK0,QLA^B_0=0=3VEQ#.L:K;8*)I+7CZ@KS MD/U!W[@F\.6F?&*C?K MHIHH-]RX)K_C>[M+M\!%H&F#'A@.-W-)O4C2::;IM2,KNL_0SKX(+D[ZA/>: MZ5B5\T>H$9[EZ\K..40WQ&T\%P+>=C&K'A *E..COKN'Q>7?<[YTL_C^%%_F^LB[\?7.9C7=6<8 MY3[/-T',@GF+?/R+.U UELL$JH.2Z'5]1;E$-H;AB'XD-E*+W<=)L_9 MCQ"C*A4*O_9'I4-;#OY@:KCQ#W@V3OB(Y6CQ7^R. M/;SJ!_RQA]=T7Y+VSU)M9K$H7J4ZYONQ[<;+T0OX>$77?'TN GI:@8R4\BB9,RB:'"X9:TNJ?I/PR^<3!\<2 M@_9'VO34H\6;NM9I-B7)*LWLJH=9O/8G2:'936YJJ4;IJ(G+JLB<5 N[LSI> M/I%MHP7'?8>AK"#>TTMKSWI)\'^Q*%V[QL4M9 M- ^EE_Q,9!KT5HUF*G8STX.2UF3L;TMH:A^_O"QF1_ M;@^Z7N!\>:471UF&ACGT@&5D%KZG ML.PAP@/8%>5B>;CJ*A^9FWNP[ %;)S>*?MD;_V9R\!;O2?WK@\U-7>0T&]P. M=1DO?>)[H![/OPJ?,,?LY'45Y?X?NHO'?W(75\-=?#7:Q>5%!NOM<_ MA@_%4/&V+[U^95"CT+B[-+,;,XVCU\F%0G%LD=^/G-X]LY^%ZGZKZ9X-JML9 M 9$LHXC,5,LI03M^6RMIXAJO]\ _R#BL"KO@]%C%Y]D\>SL:+.FT&-7!D M1:6W43QO^+NF'R"$N+&IB_G_4RU]KVQ M[6C,V=2E3/QNRB)/&ZZU]]MN>@BO!;5B/%5%:6G_X$Z28?\!IW1O[8)OJ00% MOG.A[,5Q_O>PP)60&3.YR07W,5IX_O@E1W*1U/ UR1*VX7=AXC4L='Y5C6"K M9/SL?%Q>\SM3?TQ>$:.*BI8=+W"=? &!O/'@].2'ZYM7)V=V&]_US6\TUIR' M.;_X.CLG#22=Q^]"?_GI^YIL1W;U[.+L.:X7PETBH>="'F/NME]^G[R8%&\Z M^,U&1ZN"1O8DH,\MU3Z\Z$>N-@@XP%YT*5WHL6\Q=K[;I8SV]M'XS<*3U\0 M8_BBD:?S+%E0%J[HWO5DA9:9,+-VL^E-VL/\K/;PQWZL%);+5W+I4RWEBO(2 M3KO7 XL4$,H.D%062!+8ODY?ZRJO9'"Z+R:R3O*OK57P6$>ZJP[O=8J7^8=7 MJ-@5#OP.([S10*_(X&C.]'T%$I0;#*>54F;1](T")"LIQL> KA MO8^[72E=5)VVH+(ATJ;1T+>D5:3<=>[37OL'+FLWW_O!M_2R4T! M\:W!S$YZ&?),;^#FGKH:]K>R2P[X4FZ].<7A'@[$W27D ^S2;O1E%!TW$39R MQ29N@"9TK"%\YE6M,3P;C@MU'IH6"3SW?,T&[2:\J81C8OFI))7SS$RG=P+.'U./3!5WAI M%NY!7F_XRN<"B=EGUU#*C:^XHXO5_V< MURJ?W+S!6VG,S"BD@,;MPY7F] CI?&Y(9AEX_/C\\O+JZZ7SZ^O M3A[1+^/C+U_LW-K_S.F&ECS1%?WT8O[UTQ.)4MH?7;W#D "%Y/CP/S?\7B8\ M0-^O:E*S^@&ULE5AM<]LV$OXK&/7EDAE5DF4[ M=1+;,XZ=M,DDETSMIG-SGE M>2V7ZE;%W^M/'D_37DJN*V6#=E9X55R,KHY>O#JA_;SALU;K,/@MR).%Z99*^E5DC0_(.FY^.!L+(-X;7.5[YZ? MPJK>M'EGVJOYHP)O53T1Q[.QF,_F)X_(.^Y=/69YQX^[^B&Y^K9W-0AI<_'. M:1O%9SPW7@7Q[ZM%B!Z8^<]#D4B*3AY61'7T(M0R4QD_ZW,O:XI..)."1,?+3BC5KX!H4JGG,*CL=BK03>*:]H:W1" M"J,K'?%HM%QH0Z(R5]72;H1<>J58U)-8*C%Z__Y:7'5KHZ> >2S%G=1E(\4_ M4;ROK?++C7AR5TIMD)"GXMI-QN+]W8UX,DK[1D_'4!FB4D84I2BEL62/8]&0U6 MDK8;9>1:>O6(IT [68)W"$GM7=YD9$:RDS8Y2R@;(V:9:7)Z![._-DK$9J%" M,JV)+/2GD$FC1'!&>I+U)\@K3,0=#!\:6\B,MR,EI MKX[XPT*ON%728/>=NI=0N%!+! RF5(/6P5&J M5+50'@4;28&&2349G7+-0DFOK.'/"F[!8'I^Y:3/Z>&#M&@T/K#42GY1HI:; M1 &:6DRH$>X]8/SXW=G\Z.>7 >&R3 @-"5X8O608A2Y6:D6.Q1*F#?W.'OET(JX 1Y9X8"=B9 S2+R)5 =(GX9>L=90F^:<73?)JL6&ONH## MW(%7XQ1K G_:((K&,K KAU)!$"Q[X=&1R-E04@4AKH?,6B@ZG!,ZN(I*N4+% M.6GQR/ZH>\2!S5 2C]"F?*\SF9 P(7Z?W$Z 9PP.I!X9-DT0<_'#9"7C1&A=H.74IAF7@"$9L02G M(T M_MBD5-(8?+ZHV,:OUU1)VQ0$+4_^,!7\1;_203*8:XZC(L7)J?B!K0= M(L%O-S,=(<@LNQ+_0@3D M KE0N=CTT#E4A/L$S#0.T!L&9@W*V6Q+&H]47AWEXFBR=-R:>G+8TL2>UZ56 MA7A]K[*&QD#QL2ATECBM]1DA(TV_*#0BE$-KYIZ5VSP@C-BUI32W9P0Q"2-2G"\V,SG'8(>Q![\+NRD& MPR8"%); IT/*!1:DM12=11/@+.JV1D>?B)N$[WZ6J&2N..5 9.HE.E(W>HB1 M2/#W8C9YCB'8&%K8I:2)>-,V> N5X"$>15.!8Y",B2.Z:9+52Q-_%T>2LMV4B/C4^-)(Z@'LH?%"'(C,Y<6^OK>L!34T_R;NM M1&2A:&@4_=\V(7O#.J*7VC8JL>5]30#<]O=MG( CI1B>_W?$O,K6XMYOD[7HR[AHKRL[T$TM?,$*>X*.*-=/A$?AQ*'FUM9 S?:XW\['L<)"7@U=!Y)VS'D+0U9UK87T)[, M#HR@6U#N#=ELV4\;A?Y!T*EYA&J[T_Z8?9N6OYFT=_2PN\I7G+^4#QX,))^% M3LK)5E6-*00TBW!Z-)'P+=CWE;(GS)(T8^K8S<9&\F0LZ2*KJZ82!E,3<\:> MBC2M#X;D;YP89BZ%.PU/[]!*Z;M].V]?)0 2YLJL[&;@RD MY 22W"6S1^4]_%V[CMN2TL!)WLY_\+O _85+FSZI4" [9_NZ[YW=U8+Z2,=%#-VF2X,862#'$M/*J="?!=2-K3#<+ M?M,%Y+ #,+-7-"OP',OTDBE%!7\RF0VK(!W%60S)"I,7 ^T J90RIV$DM9![ M7>$$L'1$LP<.40 ?#USG?XL"E8;"G:2G$6 ?I5V J1*TY1"@Q+"#/,5,Y'.> M"1DO-,U2ATN-5'"OY<- 1:*(A=JX=OKK^A@)%KH054.7AJY8.9'M>$U3CE8 MT55\,#QD24O_75D.TM>CC$1A"3V?Y^$6;]N:&MQ6NFBE[7D:<&B!Z(4G@5R% M#.@A0"S<2G&.UJ"CMK$LH1BNT#78J':TK*7.VVOW4-GPQJM#:"A*3<3^@/>! M8;97]^-]QN[[[2XZJ/O.!MV7+J3W?'D;'NXN.UT9)+4<^;VH<(X+@,#R=7A[ M\Y(K^AK1GL>YJD.WI4^"U&Q!A=QGVHX%:9.'/O),!Y_H<%58\H=(NE2BFM+7 MNGZU_]9YE3[Q;;>G#Z4?I%]J&&U4@:.SR<^G(^'3Q\?T$%W-'_P6+N)>PC]+ MA3G'TP:\+QPFQO:!%/1?@"__"U!+ P04 " (@FQ9 'J/JT," "*!@ M&0 'AL+W=O=@,A M7VT*2,FV57/8*DJV[=G! UAK;&J;L/OO:QM"TRIAI5S -C//;XP8HD;(9U4 M:/12,JYBK]"Z6OJ^2@LHL1J)"KAYD@E98FVF,O=5)0$3EU0R/PR"N5]BRKTD MOV6-O%\?*)_=;6;6@Y8P8-@ORC11>Q]\!"!#-=,[T3S#;IZ9I:7 M"J;<%35M[.2CA])::5%VR<:@I+R]XY?N',X2#.=R0M@EA,Z[W!>ZA&:!+

TX80>*:DQNU1U"YU>AMKO9JDJG$+LF0]#@3R"E[Q_ M-YX'GP:4I[WR=(B>[&H&:!P<9O?CK?%S0KGG_6'$F3N MNJ!"J:BY;EM%O]HWVE7;7_Z&MUWZ$&ULG59=;]LV%/TK%UHQ MI(#@[V1)EQA(V@[M0]&@[=:'80^T=&UQH4B5I.SXW^]<2E:=(LF&O5@D?>^Y MYWZ2ESOG[T+%'.F^-C9<956,S:OQ.!05URJ,7,,6_ZR=KU7$UF_&H?&LRJ14 MF_%L,CD;UTK;;'F9SF[]\M*UT6C+MYY"6]?*[V_8N-U5-LT.!Y_TIHIR,%Y> M-FK#GSG^WMQZ[,8#2JEKMD$[2Y[75]GU]-7-0N23P!^:=^%H3>+)RKD[V;PO MK[*)$&+#110$A<^67[,Q @0:WWK,;# IBL?K _IOR7?XLE*!7SOS59>QNLK. M,RIYK5H3/[G=.^[].16\PIF0?FG7R7%Y_^4"WWFV\ MJB_'$8!R/"YZY9M.>?:$\@5]<#96@=[:DLN'^F,0&=C,#FQN9L\"?N9F1/-) M3K/);/$,WGSP;I[PYD_@]9Y1JK5 'U=&;Y140Z _KUA3%7X_YW<$N'H>5 M1GD5&E7P589.".RWG"U__FEZ-OGU&=*+@?3B.?1_2\GSRHL1B7[3._[1$F(: MN5ZQI^DB!7:6TXYIK0V7I$0R-&B1-J QF\8P.BZ2LB7ARQXRVD:' ^)OK8Y[ M*C7BIE=MUU0;SYW&B0JDL$(AY!0KINSMF^OL);4X\;2K=%&)V5KM:>U=31&M M30"6;PX;Y"R3\U0[CW.O;%"I;T-.;KT&A%!"-QNRO#-[TB&T(! 4VF8K) M"\#Q/AOT ITDWXYBG+TZYO;?%B$ZRPSD*0GQ&JH(R ,#<1^UT-2)! M0LV,Z$MUE*C',OM '@,318%2Q724B+4-Y.0_5MYHR 'A9/HR'8E1V2MC'B*& M=O4WFB 59 \+WTYFG=H!O _=06*U1UA%#HO!<;1!(^(QHCHAZ5G;SB51D<+ M31GZT8YK$#=;FB$X[\N]<%NVRF)>26(U?*VM7NNBLX\L;+5/?AE:6;!>T/QT-!V.@')G;?&CM<5H\H0U M3.?DR6/1_!'Y;#&Z&&"$DL*5(Q/8L[RVX*XP7[>Q]=RWT_/-;K3Y9G,I'=VNB]*>!;ESU8WK8M!/!Q.!FNARN#\U*]=FO-37;M"E?+2D*W7:V&V%[+0F[,@ M"G8+5VJ5.UX8G)]68B6OI?M<71J\#3J43*UE:94NR>B3U9:/V-7]YE9\&0#9*%3!TC"/SR*!@(9GQO,8-.)6_%L/*-+KZHS.5GP2R@3"Y%7;@KO?E#MOZ,&2_5A?7_:=/(3D8!I;5U>MUN MA@5K53:_XK:-P]Z&V?")#7&[(?9V-XJ\E;\))\Y/C=Z086F@\8-WU>^&<:KD MI%P[@Z\*^]SY/$UU73J+ *=2W8A%(4,JI3L=.*"SS"!MD2X:I/@)I&-ZKTN7 M6_J]S&1V?_\ 5G6FQ3O3+N)G :]EU:=D&%(\C$?/X"6=JXG'2W[FZM6>JV+I MI*%Y 7**,I4$FM,;(S/EZ"]M+?TS7UAGP)U_'XM(HW#TN$*NIQ-;B52>!2@8 M*\V-#,Y?OH@FP]?/N#/JW!D]A_Y+F7L>:=RGI\ >^T"I1DU:)S/22W(Y!XWC MI\K52>]0E5C2M15E9H\(.71RO4"(=XFDWP#4K$1^)>E],B*3>PHL'>!#.)K% M>!A-PF@<]ZYD(5AC)8S;WI--PN%T3+/)##(WLJP]DEZ5ZC^(PQIYFTHD$J8N M5 '75Y:B43@=3RF>A+,HZ7V$"^8>Y(1@E':BH&06)O&0IDDX2R:]^S1)&YH4 MH GV'-(QS#C"[RP< _RH]V1,#RB9ALEHC(?).(RGQ_2QI'EE%/0U00II(TF6 MH*;WP6D2]%89BWR@(6;X6.;SI=%?T?;HNJZJ8DOSE9&2 MA2QE/HH?4ZT:EGA. M9]((?U: +&P#%M/:&"_/ 6)%5L":EO=U>6=SZZ&EQ99T;3I+0Z"G19V!>'Z/ M8!,@_S.#0_)9+W&NN5R9[%7#_+L$'#):<%F;-,>I9)#_38X=%L,<$ MH]=^?V>U=S(%*8SPS2_[U&"H * M-5RD#:6,Y-&')7_@PAW;P[; T(VL\V4")X4R=".*VM/I805%23_NXA9ZNAK) M&<5.,(QK#@3%4FUX"5XQZ52)#HC0;-O&EXMRU30K_*T0@+)MA3[]UNI4>5LP MK5D'0'9CK]$O1.&[G2_S![QNO%_61<'MV!]NV5XPZK(2*GL,S'%C99&'+L_Z MQYW'[._&*.[<)_>E^!?SR6\R3IP<8].,9%:+[ M;,&TAHAX@$*.Z ?M)$63D(+[QQ$&A-(*/V;:H$]?FM96ZGN:V%BQ;DX$/HFX M<_I2;/**"9AYJ'\_2(CW/,NLIY&OA4/W-P[?'< MY2AY3RSD4-*ZF>>:)O&(,2S("GVVA&W' 'O2^^1QGMG^X7GXAU.$U^8U=4^] MBY9.B,!"KE3I60=FHS4JG?$$D?#X$(7);,KD\HS4>_=&F.9[Q_EB%D?QZ]Z\32PJSJS@ MSF$38YGY4UD*4_K!8R_6K9W344*C<'A\S)8F0SPGP[CW!=27KT!\7ZQB-TBT MVKI?GC6.HQA3Q\Z.O:@@KO?BP>/) 8TQ5DWNOSTVBP[V;A0H]I6_-\$]MJ.Y M7'2KW=5LWMQ([L2;>]U[1 2U2X5<8NNP/QT'9)J[4O/B=.7O)POMT%G\8X[K MI30L@.]+C;)K7UA!=V$]_Q]02P,$% @ "()L66MH+BT" P 4@8 !D M !X;"]W;W)K&ULA55-;]LP#+WW5Q!>,:Q %CMV MDJU=$B!=5VR'#46[C\.P@VS3L3I9]"0Y:?_]*-MU4Z#++I%$\CT^2B:SV)'Y M;4M$!W>5TG89E,[59V%HLQ(K8<=4HV9/0:82CH]F$]K:H,A;4*7".(KF826D M#E:+UG9E5@MJG)(:KPS8IJJ$N3]'1;ME, D>#-=R4SIO"%>+6FSP!MVW^LKP M*1Q81LNTO[+K8) X@:ZRCJ@>S@DKJ;A5W_3WL =Y&_P#$/2!N=7>)6I47 MPHG5PM .C(]F-K]I2VW1+$YJ_R@WSK!7,LZM/NDM:D=&HAV!1K<(';-Z7YCU M#.<=0_P/AE/X3-J5%C[H'/.G^)#5#)+B!TGG\4'"&ZS'D$0CB*-X>H O&4I, M6K[D/R7>PX6TF2+;&(2?Z]0ZP]_$K^#W.DA]OT7>4[:8?!\#'OX)_N,N).LPQRH %G!V] MDII-U%BA7>C,)^(IP(?7%6TY'7 2H-220H<@A]=Y!;/)#$YX3:83.#GZ2DZH MCG?""HXA&9U&,_A:>E#&$\CZ#5!CH'BJY9%36JB-Y'$CU3W/$"5\_8[X,JK: MI\_93;<\(0#_-++F:>,XS/$P8U=Z#PWC&V,;P7:&^6L3&X/8!XK,)]U)5X+@ MKKSE0KN>Y8O*T69&INPO&L- X\5^(2YY-H)@G674:&>9)$.Y%:G"MO\@ )'2 M%L?/?4GA7I]SBDT[S?S+,E/7\H-U&)CK;DX\AG?3]K,P&ZDM*"P8&HW?S (P MW03K#H[J=FJDY+B>=EORT$?C ]A?$)?2'WR"X6]D]1=02P,$% @ "()L M603M[2@\ P *@< !D !X;"]W;W)K&ULG57? M;]LV$'[W7W%0BV(#%.NWXZ2V 2?IL#T4#9JN>QCV0$MGBZM$:N0I3O_['BE; M]3 W ?8BD<>[[[[O2!X7>VV^V!J1X*EME%T&-5%W'46VK+$5=JH[5+RRU:85 MQ%.SBVQG4%0^J&VB-(YG42ND"E8+;[LWJX7NJ9$*[PW8OFV%^7J#C=XO@R0X M&C[*74W.$*T6G=CA ]+OW;WA632B5+)%9:568'"[#-;)]4WN_+W#9XE[>S(& MIV2C]1.VL92,L MWNKF#UE1O0SF 52X%7U#'_7^5SSH*1Q>J1OKO[ ??(LL@+*WI-M#,#-HI1K^ MXNE0AY. >?R#@/00D'K>0R+/\DZ06"V,WH-QWHSF!EZJCV9R4KE->2##JY+C M:'5OL!.R J$JT%2CX:3&H"(0UB+9142^UHMK".U5A M]>_XB-F-%-,CQ9OT6< '[*:0Q2&D<9H_@Y>-DC./E[T@^=T3GVR+7OH'+WWM M)8=P>RC!G^N-)<,'YZ]S91BRY.>SN,MT;3M1XC+@VV+1/&*P>O,JF<5OG]&0 MCQKRY]#_U[8]CW@YA9= 7W8H-=]62\C+6V 'V.J&K[U4N^O)3U*Q2?>6H^W/ MP+M*V&X8X[BU<(?EP9)X2S;YC*K2AF]9IZUD_-+QI'I].86T33N&['[1H$ M**TNI&)B:.EB@\+P3ARZ"B.)ZE&H$L>"D08^JA>=T7]SS_2;2:8?NN=6*O9U MX;Z/2I)HI_"IEG:$X:%%9L=(&RX)&N(WX22;YSL]=_BCD_[%KCO?I=UIZA4- MK6RTC@_!>NA_W]V'5^2],#NI+#2XY=!X>ED$8(;./$Q(=[X;;C0Q+S^L^3%# MXQQX?:LU'2&PO=V]R:W-H965T+*"6J)!7'_WYWE.(Z;F)@^T*1Q[OC\_!>J/E. MF\^V1'3P6*G:+@:E<\UL-+)YB96P%[K!FG8VVE3"T=)L1[8Q* IO5*E1'(:3 M425D/5C.O>S6+.>Z=4K6>&O ME4ES/X:E=XM!M'@27 GMZ5CP6@Y;\065^C^ M;&X-K48'+X6LL+92UV!PLQA<1;/KE/6]PE\2=_9H#LQDK?5G7OQ>+ 8A T*% MN6,/@CX/>(-*L2."\:7W.3@],2&H9-U]Q6-_#T<&6?B*0=P;Q!YW M=Y!'^;-P8CDW>@>&MC60*Y-HXUP""75^I=6&(?&LND59:6LAW"/C]0>X*HH)'L0 M2NV'L'LZOCN)N@8A -$T2O8'@1)K=JS-_AMO'JT IB5,7OIE@0_4.AIJ! XV M(I=*.F^XPFU[#$,IHNRA5Z)N2=.UALE(2T)G:2/' IPF9K7/B!.]AAC61''8 M71E2]1E#AZH]%!IJ[4#O:B ^'3]1[T\<]. D$IJ/! ,?J7/:[@X8%C52HLV: MJ@L5 ;'2.D)%P%W)FHJ:)&G,@OO2($+5U1ARC1'AQF&U1N/+Y ]*BS/[P1NZ M(L=!)S;VK:\J'I*OL^#C(QFS"XS3-@E6IC?N19Q1"$9O9(;:0)12BJ0AL&*NCSS8AUZ:SZC9TG;1#T*(YC$ MP:](P2:L/N,*ZJR2^P0_$:1QZ8DE40SQ-/Q/I.!=2^F 1(-?1%],)[?"OY7I>!S<=+4$''!^C,^8[3GMIO$WV7G8'T*-/E7R$Z=9 MEOPO=/!2-Q\=O:D5FJW_<^":;6O7/:\'Z>'GY*I[D[^J=W\V'X392FY\N"'3 M\&(Z'H#I_A:ZA=.-?Z'7VM%[[Z?<=-&P NUOM'9/"S[@\,NV_!=02P,$% M @ "()L6>0W, <> P +0< !D !X;"]W;W)K&ULG55-;]LX$+W[5PS4H&@ P?J,HJ2V@21MT0(M8#1M][#8 RV-+2(4J9!4 MG.ROWR%EJRZ:>+%[D![$3A (KZQ@8O1[P!H5P1"3C?L<9C"$=\'"]9__@ M.KE##^"=O!-Z>(56^L:G=@ MVK=<#F_VN*O# :",7P"D.T#J=0^!O,IWS++%3*LM:.=-;&[A4_5H$L>ENY1; MJ^F4$\XNEIKN5]LG8+(&O.]Y1Q6W(4BTL\A2 .<653NRZX$L?8'L KXH:1L# M[V6-]:_XB(2-ZM*]NNOT*.$M=E/(XA#2.,V/\&5CMIGGR_XEVQ"6@DGKDWZ_ M3QK^O%H9J^D[^>NYU ?F_'EFUSN7IF,5S@-J#H/Z 8/%ZU=)$;\]HCL?=>?' MV/_K+1TGNYC"$;X7SJ!2U(C&8@UJ#;9!6"M!'0924]D[/SR0>.XE!"$B9Q M2<^X2">?Y#"07&=;K!JIA-H\'3@7\07D13'YIA058$.PDG00.,DG-ZSCE@G^ M-V5CU-INF4:X*$HXSW("T!'D89F?0Q;F63:YJJJ^[05SR==(UUOQ(? ;2,FA MA%-:)6&1Q' Z.5;:$^=/NDZ\FHRJ4]*G\SY#E;R&+ M%T).GVN(Z&"$M:@W?E ;^NIZ:8=I-EK'?\'5, )_N@\_DB],;[@T('!-T'AZ M?A: 'H;SL+&J\P-QI2R-5[]LZ'^&VCG0^5HIN]^X .,?&PO=V]R:W-H965TBZ5;IKZ9"M/!8"VEF065M,PE#4U18,S-2#4JZ M62M=,TM'O0E-HY&57J@681)%UV'-N SF4T^[T_.I:JW@$N\TF+:NF7Y:HE#; M61 '.\(GOJFL(X3S:<,V>(_V2W.GZ13N44I>HS1<2="XG@6+>++,'+]G^)WC MUASLP7FR4NJK.WPH9T'D#$*!A74(C)8'?(="." RXUN/&>Q5.L'#_0[])^\[ M^;)B!M\I\0AN8UWU4N3<5RZ1[FW MFFXYR=GY!VF9W/"50&#&H#5#D)0*3):P4:K<M!E!YJ< 'T# M'Y6TE8'WLL3RO_(A&;BW,ME9N4S. MYC,X(T&D(2)=D9O'3O=>KQTA-X/_>N M>3\/0K#P(8!;;@JA3*L1_EJLC-64.W\?"T.G)3NNQ=73Q#2LP%E !6-0/V P M?_TJOH[>GO$AV_N0G4-_ZL7@^M6P*]4K08N_T2FZ9HRP&*]0KU/ [C% MHJ?$GI(.;O&!NDQ#&!:+2BJA-D^0C')X_6JJN7M#5RS%?79R=BT.PSEQBNH!H%%-'$,(W-_F<,J26 M:1KT34\\#3W'3J>D5W^ARNP'E=D)E2.X;36]]$LT^E[-[1-0CJA6?T^Q%1-, M%@A;9BC"W\_C/D\VK\RFS[ &9A15NN)3.8DK6!C57SL&;89JG?LW3 M\>"S9M*([B4I7RXA?9-3$AR@D/9G\ED2^S7.4CA6]^%!]ZY1;_R,&PO=V]R:W-H965T\. M+] 8(6(97PZ2%\I3,A?J$??(M7"91=(-<* MU&KA70]>O)E-!C'4B&9QVDI2;LCSJF8;0)Y+X/-CP0Y<\\>YY%J MR)$RC/J>7P#/8)KFHV7"IQ):C.W-[--8$C^1\9%ST]5\CJ7CCAI(4K'E2=-H MXB8[!&^0&!<7AGQL$4.L@Y[[9LQQXSSIKRJVU$@0*+ PQ8N$ZXW"9W+@+0R MP K4QNA0QQW8G7Y.=?K8)=+0&_2[V[<"[=9:&YC9:QZ?A?.B(W]R'=^6C M\CMMI>2W#,W35R\2\$.O'B;DVM@?-XZXV\9AS<\;>G'@]:US=)S(!N.#N?H/ M4$L#!!0 ( B";%D4 8NIMP0 $ + 9 >&PO=V]R:W-H965T1%QMMOM@5HH.[ME'V,E@YMSX? MCVVUPE;8,[U&17\6VK3"T=8LQW9M4-1>J&W&213EXU9(%VPFROL=&;RR .=@(]2RQ:5E5J! MP<5E=_)E+BS>Z.:SK-WJ,B@"J'$ANL9]T)M?@&%N M0F/"N^JER3BI."D?G:&_DN3<[*JJ3(*N56UEXK6JL'\J/R=:]PQ6/2JLN.JN+_.[5I4>!E0 M UDTMQC,?OPASJ.?GW$DVSN2/8?^'3+Y/'ZAH#H+U']DK M3;UN'0GH!1 7+'1#0T.JY?GH1"HZTITE"'L*5 4.VSD![4H!7F$UG,3^)!WM MU%?:.H8T>(NJ0W@!\22<)"D121Y.I^GH S:"]:Z%<5N:%,?EXC"))_3-)O$! M=LN^"3]BTC O)_0M)L6HC[SX-@)I.$D32,)IGH\^:2>:QRQD51J6^82(- N+ MK!A]%L8(198-5<,\15AF):W3,)F6HUV&U]IX2\AJFMN&S%)+:)#&UC[26RBF M"4RS:/1.JY<+K(FM 2?N0,\;N?2>6,ABB.-R,/'IE+V ,BSRQ-L3IP6\4?T] MT8_LIM?O-.C.]/M_#;)PQY++A?,HP30'MS#G,NGH]YPO&* R>:<=Y2H/(7B8 M5FI;2I2_#&QP!D\D:&TDW4ZRV1)4U70U6=02OK-0=ZS*P(D\I9 N*2YL.Q6U MM;J27M%&NA7YZJPC@]GU2AM*"?T#$NR%*#H.3=\+)Y*P^NBNC5Z@Y;N.>#C+ MLD++'4>W%B=MO@5*J-0U^$Y N*'*$VK[DX7-KCR\,Z+A$S9KZ!][/OJT,HC0 M]I,8>1)_$^1WU.S/_/^V_7Q.? KVU.A:-$)5/H%S7$JEV']*[& U-5T49C%7 M=9R$41$S$8=1E/0G69+OZIP+2UK+:>$@&6RQEGU-B9IMJSOCZXJB,*"G853F MU)I1D4,63E/NPC(M1O2H< W)<_Y:0H@\]6M,?5(,5$*!.ST,&*KZ M8:AB\J'HB7(R?7QR/Q+V.1<&*50\ )!KY'R80,>[]GYZ]*@/]H.DHO%P3)J& M5U%2E).X/*3_ES_'[K_QP:NF1;/T;S>^):@;^P?._G3_/+SJ7T7W[/W;\JTP M5)&6.G!!HM'9=!* Z=]K_<;IM7\CS;6C%Y&ULK55M;]HP$/XKI^SE$TI"0E_6 1*TF]8/E:K2KA^F?3#) M0:PZ=F8[!?;K=W9"1D6AFC0)!?M\S^/G[NSS<*7TDRD0+:Q+(P$H<#,.@9&?\]XB4(X(I+QJ^4,NBT= M<'>\9?_J8Z=8YLS@I1*//+?%*#@/(,<%JX6]4ZMOV,9SXO@R)8S_PJKQ3=, MLMI85;9@4E!RV?RS=9N''^&1Y<<9,)96J-\&,R-U;3 M@?CY6L@-X^!U1G=)+DS%,AP%= L,ZF<,QA_?]4_CST?T#CJ]@V/L;Y;C.+J? MAM R6,< ='#!%C0K-"*43:W0U0HHTQ;+.>HNW=UBT:B3)_N]BTGA?S'EG MZKV0$\)]0:4#5JI:6N.%((XB%R0P!"3\7G"YJ#FQ)S=)83_L0SD+7 M15!K6G%Q,6.0^BP\(A3LV7URD(KNO"5Q3$!&BI9(F0!5:ZBER\U2\M\M?(X2 M%YR",MSM>X59F]B^3VSJB3L,=<5,USZQ1$\B??(HL4Q83@=(HZ!]&ULS5AM<]NX$?XK&%U[M-,W+O[T.D'B%Q*N) $ X!2U%_?9Q<@1=FRF_93OTA\ M 1;[\NRSN[S>6??9;XB"^EJ5M;\9;4)HWDZG/MM0I?W$-E3C36%=I0-NW7KJ M&TSX?J:SUP59I,S2H M3!W_]=?DA\&&R]DS&^9IPUSTC@>)EC_JH&^OG=TIQZLAC2_$5-D-Y4S-07D( M#F\-]H7;>UM5)L#+P2M=Y^K>UL'4:ZHS0_YZ&G $+YQF2=Q=%#=_1MR5^AD" M-E[]NAMG$;@QFK'^S+KH&0=/0=]"O8(ME76!WCQ,PW.ZT2RI+%* M"\'9BCAT21.6K8S<./8J(J9L33 ! CM),5CY[V O<78ZW7,PP+E,R#$H%7)$ M7%'3V@8C$1PK3R&4T6MCY=HR(27?FAB_DM81(S7(?0"L(QC@*6W%\0VY@.+$ M*,/Y6C7:!9.UI79POH>R?TWR/$<)5M%75#P?H]M%&K&HU<_:91O6 %RT&*O[ MNX^"*ZRLH7U&$0R =%%@KP=LV0B8JD./K10.43+HSP"3CL[X4#76!?70$"/' MP'4_F E-QC',>/4*AF^)ZT/8P(V^$3=:51&T@KW&BT>Q$H<4SE;J[QO.!7BB M!1D[Q#&XO:K;:H6;V6SY^FQV?GE^,7]]KG[@0[[_[G(^G[V[F)^K][WV\O#L MW:OHT:<2+A9OKA:OKXXD_,V9-5*@5%>+JZ>BQHEA2BG,6X:@F,0"CL^.MC\6 MRFX_K/&=@A.82^JY57!8*=Z'P[(("%RZ+RU#5U<^!HFCW_I(;0S<7^T>C8G[ M$Z=9WF8IE#N!?N=I+ 4/0M& 9%!]'G1WD;F,5UTY0F>D HX "; MB;K3;#6. V$PM"P PVP)!B&SC9N$X0178@BG7R1BY*Q,B FG M[R/YQ<1P3+#C$]%F-I%DJP,@P4P%*1RB1ZH+'&8^!O- >B5 MP7BO8BR'W+ZC+N>. M$'%\NMI).>$(N20ZM[MZIYVX^ZGQ ,G0^ ./)6AE&;LCAJ6QWD2.Z70;8BVA M1[QV_D?F^C<3_H\DOP7*^FHP@,D8W2Z8D2NW$O:2>*+T>V\*)C=A;QBU0X_- M_^*2;\'F& D&%Z"3@*F1.;_)@YROH-XAW.*Q>WEE:Q9W>,=>99^5E/+=1KF! MFYJ4@+%,ZS".+0EC4K/IJ:X;=-JY6EN;QUJ1B$%P/&*5KN7QNNHZJ=B6@3=7%NY\7$^'CCO& M&Z*P,>@ ^CZP3[G57GP\P?3C"$+AQ<=B5VA2G@O(Z?!&E"&4J%(^ H0BY-#2 M -F=+V.GPA&4&&%J 2(QPOBNM4!7)A&*->O0(,5JQAWT"9D1![$X'GHLIB-G MN)?K8N#;U>_)Q&'-&A:=/OLJ>(>+A,E23>O29R(>8;\*[)G_.=_-O]BW+SA. M.LW"E.P"5<3A 3(#=Z-=X!]7F1-E0PSLUI^./>\;]G_+0=$4Y#*68EH?H(BF M@[::B2H3)#.&UZW)=:RM?4<2)X'AS"6(V.@M3UXY._I)"_\XY1,$XT1RL+ ; MG5.JH<1(U)AW3%+3'X0Q3GGW19R$!=9HV$0GI?:(N_Y'&QTR/)1"8 MH6V".;XQ/,7A6JBD.#!)IR=[HTO,KA$]J@7C--BEJ;3NFV7T<+VT>XNYK=[+ M-P'&$NI7UZ;(N*10 MR:!CVU(*YO[>)8&EFKF^2ATD0]&,X+/@)%4+XUQ+(R M0 $48V$KID'"1,46"-/V>D;>2M.<]Q;35+\(;ZKD-,DMW4>#QTOB;PY4%!+! M. !PFMC2Y"("\8&I@@9FR^[+QF':[YHNF9Y+\P5(-V$_.?7)9SKX8H>BN9;O MDC[6N_CQKG_:?_I\'[_X'9;'[Z9@)30QS)P%MLXF;\Y'RL5OD?$FV$:^_X%( M@ZWD&ULE57;CMHP$'WG*T9I M5;42)5?"I8 $='MYV HMV_:AZH-)!A*1V*EM8/?O.W8@2R5 JA398WOF^(P] M/AD=A-RJ#%'#4UEP-78RK:NAZZHDPY*ICJB0T\I:R))I&LJ-JRJ)++5!9>$& MGA>[)CBFUP MB?I[M9 T.U-_.(N,OW7XD>-!G=E@,ED)L36#K^G8\0PA M+##1!H%1M\,RG:_ 242C;PJ'VC4('DIW2HCP&$X,RYW7/GH[G MP/*N-[(L/S+-)B,I#B"--Z$9PZ9JHXE1K M[.@RMGDZ0U6Q!,<.O0V%-OAJW'3")"6=<&FMH NEF- MY0JEO=YOQ/'&>NMMSD%G8J<83]4[6PVF"5^LUEPH#6)-*K%'OD-X#4$44NOW M?6KCP<#8[= /6P^4-)/$EL#H]>Y)E2I[^X,0^ET(XAY$T:"U))G(^<9ZD5AM M49N1[_7!CV/RBJ$?^*W/R%&RPGJQE%YG;@K(R ST>UWHQ1Z$;<_W(6Y'L=]Z M%)JU$$ETK)/7O[))>*_ ]DYN<*RAP3:%>I]=U0-:J5@^TJ*R2K(0F7;)F1C\"E,:!UM=" MZ-/ ;-#\6B9_ 5!+ P04 " (@FQ9DV^E7$D' !L$@ &0 'AL+W=O M M2;?>N-M^V-D/$'DI8D,1+ !*=G]]S[T@*4JVE71G$HL$<0_NX]P'>;ZS[K,O MB(*ZW925OTB*$.HWDXE/"]IH/[8U57B26[?1 ;=N/?&U(YV)T*:2YKU^[RW#:A-!5=.^6;S4:[NW=4VMU%,DNZA4]F701>F%R>UWI--Q3^ M75\[W$UZE,QLJ/+&5LI1?I$L9V_>G?%^V?";H9T?7"NV9&7M9[ZYRBZ2*2M$ M):6!$31^MO2>RI*!H,8?+6;2'\F"P^L._0>Q';:LM*?WMOS=9*&X2%XG*J-< M-V7X9'<_46O/2\9+;>GEK]K%O0ML3AL?[*85A@8;4\5??=OZ82#P>OJ(P+P5 MF(O>\2#1\H,.^O+?J-2!,G6M7;A3 MOSI=>2W^\N>3 'S>-4E;K'<1:_X(UG?J9UN%PJOOJXRR0_D)].J5FW?*O9N? M!+RA>JP6TY&:3^=G)_ 6O;$+P5O\;6/5?Y8K'QSN_ON0W1'V[&%8SILWOM8I M721(#$]N2\GELR>S5].W)Y0^ZY4^.X7>*UV+TN$+$3J--7LU5H_C#3T"&H9" M+>\J/5Y>J8\?WZNK2OU *]<@=3D>\Y':D:)JC=3-#C8^UQXYGJ;DO77*5/@7 M"'X)*EA N&I'!2@2!7^IR>F ?>_MIM;5'2.\4,^?/7D]GT_?,JQ>[.N1LH#(<7"2)5V;7PPJ1\!T<0U;_.P@Z@@^X"_VF4JM55NU@W, M@-_&ZM>"%(ZDM67@Z"!6D/ OEM=K09D5.V5SB;%:%;;,@")[^4^[>0-+>:52+]4WW1G0 M7KS##DAU;8(NX2Z;?@9G-,<%GM^"$)$>PAVFE\XRPQX8J0_&IXYKOQ#J$9FH MV0GCH^"1LT3[Z,CQEX5+#U)5XI(''(<;5N2T \<(H4(E"PB#@@=G"ZEGBY@_ MMY2VA$".H+X+B3H0M%^L*JXH)F5"KQU%+K4$#/$.V[GWJ>?H!M+NME3>C00B MN8G":MG))B_VN2TX74K^Z&Q31ZZQ)(@961OS$F=\3>["JL*D!>CMT1>QR43O M(2-R OF=>&@^FDZG_%\U$E3*(C^4K6,EBIQ+K0-.;2.3'&W)>5 ) +I&FM\: M=&58JIZJV7B&[EB6K?,$[!_4,_X@HX)%1K!) M3]5B/.\4'T5N,N_RIH1F^Q.8BBHMM%L3E[DU5?!\&;V404?#O8O#WAN8-8X/ M$%H6B#P255HS<6ONZ ANM=UU,588<@;;&;I"]_B2G+ 8=;1!I#+8,Q\$@C'8 MPI?]RHAY4>\9"B=_V9;1H$[W2Q4)[?>T\J-84L5J^S@#- IXYF/MV.B,4*!\ M ;+?Q28"S*=J.GY]9,3\A!''X>8*."C[;9$X;KR@'9FM7I5=H])W\09$*S2L M=X]O#_<#<28@'[ KKLZZ\!QP[3@VT_%WCYH%UX*'DK&<9LX@2*E%%\]0G&W# MSD)'DYFIT4Q7NX.V<#W:Z^I.+B M5Y#2.2_U9U@'O;VDC_?-L5G#@G./#.AG*S2U8,@?>^/_Y<9L7X=:;LQ.4#YO M:X5.4]=(AGF)'I?HJJ%A385T2B[@];";#N);3738_X@==K]@4@]YZ%4.X(I8 MY4% ,M'G'NW&ZL-Q$?S*JG8F54VJ ^S!A(#YL+;>[.O#<2+-!Q7CV%G'$:I: MPF^E.VZMM/;#V!T>CMF#1[[8EWR,$+^I,]*Q M97$H&"HJ E_+)@F-+^R.!S7U3XL6^NU()=>Q-P[S1-*/9Q@,Z<$G2J\PPO-I MR6\/J71 _62LECG/1'W!EKY1UZ5)^]'IV#($H/=SYWF),"J6$'W:N^\P5MTP M8[I7A3C/,(G!_%@#V[J];_X/)N!S55GT+'YZWW,O.E 4R8S;F[Q3>%N:3"SO MH.4MWX\?>J><#+X (+76\IV#JQYTC!\#^M7^4\HR?D'8;X_?87[&E&$P@I64 M0Q1L>YDH%[]MQ)M@:_F>L+(!>2R7!2%7'&_ \]PB^.T-']!_8+K\"U!+ P04 M " (@FQ9I%6"@/A;$&=[5H^ &W:#XV&T6:.Z+D98U"EU* POW2N??OUI'U M[QS^*O&HSV2PF>RD?+3*[_G2\2PAK# S%H'3SQ.^P:JR0$3CWP'3&;>T@>?R M"?U=ESOELN,:W\CJ4YF;8NDD#N2XYVUE'N3Q-QSRF5F\3%:Z^X9C[QMZ#F2M M-K(>@HE!78K^ES\/=3@+2%X*"(: H./=;]2Q_)4;OEHH>01EO0G-"EVJ7321 M*X5MRM8H6BTISJP^4-__D%K#!A5L"ZYPX1K"M:MN-F"L>XS@!8P4WDMA"@UO M18[Y9;Q+?$92P8G4.K@)N,5F"J''(/""Z 9>."89=GCA"WAON1*E.)PE"7_? M[[11=";^N99O#Q==A[/WY$XW/,.E0Q=!HWI"9_73#_[<^^4&V6@D&]U"_\Z. MW,2XSM"/IV#!*PO>$+BVX),_"X4(==]!M!T$JK_!>DBYZV!GAAM")8Z"_0Z0<:KK*VXL3I=U#(#6H2\K%H;?)DU^$', MPL1C01J [ZU \&]B1&HQBD MHQC.*"-Z3Z!I52.U36,/F:R;MN-]'9S!\>L:4 BUY%HI<@E"&BA%5K4Y0B,- M"E/RJOK/Y\\&'!-X/(H8&K0S3I-'%IA^H$P6L=Q>M]/D2_N_2Q^S]6AI)I5N*=0;QK/'%#]?.L5 M(YMNINRDH0G5B07])4!E'6A]+ZD&@V(W&/]DK/X#4$L#!!0 ( B";%E; MG.>!HP4 !D- 9 >&PO=V]R:W-H965TRQ9>E\XV* M>/6K:6@]JRH9-68Z+XI7TT9I.SH]3FN?_>FQZZ+1EC]["EW3*'][SL:M3T:S MT6;ABU[541:FI\>M6O$EQ[_;SQYOT\%+I1NV03M+GI23)9.'\H= MN2Q4X/?.?-55K$]&1R.J>*DZ$[^X]1_B:WIC M(&BTS7_53<_#EL%1\8C!O#>8)]PY4$+YFXKJ]-B[-7G9#6_RD%)-U@"GK13E M,GI\U;"+IY?=(O#WCFVD#]?X'8ZG$6[EX[3L79QG%_-'7+RAC\[&.M '6W&U M:S\%G '3?(/I?/ZDPTMN)[1?C&E>S ^>\+<_Y+B?_.W_;([T[]DB1(^.^.^A M=+.W@X>]B4K>AE:5?#*"# +[:QZ=/G\V>U6\>P+KP8#UX"GOVUCYT7H\[6)V M-*%[;NA/2Y_<-3<+]G24J1W3F@D?V7-%VD9'BA;:5MJN"(L-Y;&PUK$F9;$C M1!T[$9,R>+MF=*>G%[%F>O[L:#XOWEWTB^EU]FZ/X%.'T+$\R+[-AC'L$:WU M^EI%IM: 3T@]CBFPU? :N.P$5NM= P_.WY)UD<-.N$^R,L02C_A9K3RODE.O M;:E;8%6-Z\"$6](O-#N$C(Q)$\%65+JFP2,PE5?4=KZL(7%:*^^5L+8=[6N_ MN)W<8#%[/3XLBG%1%&!-H2\DFNO\3H )_05W"358-886K+PPCPJ$2 H_Y 4Z M;&5$A, @>$,'?JE-",/=+GAAP/.6MA6[I.">.-NN*7Z]JA); @ZOE193!*(PKT M(QG(S?F[A)DZ M2F7*SJ@430A?U[JL[QIGR!]TI&YC,*T3G94KNQ0_%W4C.H*F2#<-H^21T4I\ MP[[4(4$0X=C-2A)^R5GMQ:28)3TD48ZE:[Y)]P!TR?Z''E'5-SSWR;O;#0-;3CC6QVAX%_1F2SPLH M#G!2?R.>Y%2*R%X0ANS>IDP/G3*#]',/;PJ]\RDUS&Y5I>&V^O.N9L:E.@)\ MI=.@3\8Y.F:-SSJ3-"FT#\+UI6E'#P(X_/4 M%\S##6-S>YL\="6:;EU7&_:K="D/E"91OKD.J\.]_RQ?=^^VYW\:/BJ_PKV$ M#"]A6DQ>'X[(YXMX?HFN39??A8M@,SW6^-^%O6S ]Z5#?OV+!!C^&SK]'U!+ M P04 " (@FQ9%@++YE L !=D &0 'AL+W=OMSVT:6[[^"TL[N2E64+,EVXCB)JQ3%F3Z\O*+)QM7 M5">OON'OWC2OOJG[KBPJ_Z;)VGZS<7)W8%V^+U;K#%T]>?;-U M*W_GN]^V;QKZ]"2,DA<;7[5%766-7WY[ MU^_QX/.TF;EK M_6U=_E[DW?K;DQZ7KB^[M_7#?WC=T'.,MZC+EO_-'N39+YZ=9(N^[>J- MODPKV!25_.\^*""2%UY<'GCA6E^XYG7+1+S*[UWG7GW3U ]9@Z=I-/S!6^6W M:7%%A5.YZQKZM:#WNE=W\\]N+[.GE++N^O'YV9+RG 0Y/>;RG!\:[B1NV;6;_[V;>=@WAS?^?VK", M]VQZ/!#3RW;K%O[;$Z*6UC?W_N35O_W+U1>77Q]9[;.PVF?'1G_UG6N+%F?& M8U>=$PRO*?,$WV;NT9?S9;5^T T+YR?5YT M/L>#.5&T_*6OT(=E43D:SI592W-X(OJNS6B"LL]]UM%P-#U1&<^%C[77OUW< M761_O;EYPY^OOC[+B(?2VQT]MIG>,D.V;]H>)-C5&?A.=G5Y_E_\RTW3%8O2 MTQ>8[JU?]:4 _.[\_UQD/\JRZFU1X3MZ8N,JXJL8>9;1%C*7_T'\1&:BGUU6 M@:V5!-Q%WS38>.6ZOO$)P#:.#\ 10Z#O<69%[@' RB]\VX)Q8%,N6[JBB3O! M\'7?))O(O?T[#R]15__73&XR3'3^*HX5VW/#.V MW*T;[_GUBO WVPBC\6 T$Q/Q@S(T_L+P"]>NLR7)ISCF)XUTP2A_ +?GKF0D M$QDKV]_;)H&\%8@3>$E*$4DT]2;%=2#1U9=?$XY$4GJ$@.9]E^4U(6=5=X&: M@ AYT2[*NJ6C;@FT?^\+G.A\]P\C@8OL5SDE&LB.[G,/B] .RS=\*V@91973 M)!#FQ@]L$L;4C=L1*#/_84N"'[#1F7?>-9@(JQH?P#/0#Q&F,BT[-*%($@%5 MZQ:"=)$V?%F0/'8*CP$+O,AN?=.12D2_B.)D?#,%O9 ?;XC/)L"5-DP_$_V[ MJNKI3"=/]Q@O"ZPG66Z]*;HN0:S6'^=%*1]B&/>EPJ,)G"+U MA\7:52M&WDW1L@9WBN>4-=Z]OC6FR+1#BEC=^)DNZ_/$1;NN^S+'R4,YU2/Y MHZ]$^6.P=$*ECPPD6RSY 3F)\?F,2?)&CNFMW]8-\;XJ\.W_W$,^/\'CLE,P MH1/^L((\^TOVXN(I*=QEJ=)4!JSHQRJ?T<]7+RZ^2G^'\0$0 M+]RVZ.@(L2RWW3;UAX+HW]/I_27[XMGPG<;#;M*WW ( N*-V(]T0H)#/[ZYMW/Q!/J5>,VD#)DF!30AICI^';1%',@ M?-\0BD +R7XAU,YHOR?)BR=$/@0OI4E:5 5ZJH@1M<2RF+\PBWT GR%!0C_R M4HE%D)V%/=,&\IPE/8AJ[9JCZP:Z#M8-L9#.1JS&-?I2Y1<9C68^!<+P4E2(T&<^JLD4$#;/E,QP0%Y%)W/"S;8LHGP0FOWD%%,L=G!B#ZPL$:+NK8:)YNDET,2$9E5.#!:3 M124.X@:/I"=,JFV30=TJL[_UQ,VOOC(61,KGT[ $A'-H%O6<&2< $!IDR)@W6?):>&7'8BT+KKV5-6I(AI"H) M^MNM\D#YD5&?MWA]E7#9(VBOPPQ0F7GIO>IS;D" !/AS@K<>10+70&]77R:P M78"E8K41@N"69/)7B]V4.O4H?C!6T2O@([7!?/+P=*CDQ$0U)H2EL7O:7BFS MS"!K?J$-\_I?V/)Q1"E;B6 !2&B\W B:9<)&5 XPP;>>=9R<55.!-Z/DCQ5M MEK0-9RS,,Z(09C>TB88(57"AI;UTX(?T YZE?ZL5P,$G=G5.NSA_CO?YS^SZ M^2SNVG\@?41?HR?F #BIGAN64&1X8*W?U<3IV3@BP"Q(C$-*TTY(IF==L?&S M??0TH+&N##SV -I!/$PX?;O;S.LR._GAW>V/)W1Z2]X8B0G,1.N#.CJ)/0.L MF9(FX&C0@CM@H9O3T61_F>!1DI2+,$1H'++JRS_#C;)D;9'ZOP>L=(@U6"'O*-=UJO( MW8,PANKG?P!':6FY5X)).=P-K:1,=#J,<>>KHF[$4O$@A_NZO,?B;NDC8?8/ MI'^5T,!.3T;?G,&69!NYK_I6R6FM#)9M*S+%2K? +P?42E8X#ZMA5T3?)W?] MO"70 6QT;,085!MC9@G?+,8G.(L%"_)1G\(DHQ"?%@Q0@D[7*Z9XD7K4[7C\N+R*A(16=BJ.BC%)T8Z,"18 M_U"T&Z/H *;D7+IC5H!C'@,7,*RR>EX6JX32%FQQ*KXSPD*/>N]3V63F (]3 MS/M@-O=;/(Y]O0B H2]NRNW:D;+G?$[9@-C8INFKR6O*%6_M;V37PN&H.@2F9Z5"#^TY'YJJ M[6$9X43$?MNZ'?.EX.;ST._K)4LV.1\S)2 -^FI))^/S@;R>0]85T0^GFWX7EN^E7?=@GF M,^C^KZNJ[#LBJUSQ3K)RR E[O?>"3@(@D3&SU*D_1D(S)AH'7HRX"BT.YD^6 MU_V\@WK3"_F[NJE $T+EOQ.A>R3MZL^J[8(>:6G2ID8B"Q-/AXEQ]V M!?D%\^;GB.(DBRMQG^9Y S4*$Y3!Q501]>U%DD@)/2T@Z/GPE0LY" T,24!C MBDW%8R(W#\I)%8ZG!0U-PY;%_XA+G R?+0=)4D'!<%NQ^'=-!<@JMS+W5=\D M+!J']7T(C[^N?+/:L5O =$""'9\H4?45+X'64)#^)AL"%T[G)O)O'=0AXF>= MW[9V]"+BZ#TH\ Q'$SSB5"1JB^Y)U4U9I:>#)G+9NB8XA0>ND36Q(<9Y\="< M%O\% -OG?$>6GA3=&^%W#W(#EX=' /"Q[ M_-F3/>/8D,56$,?H6%;.2%*PI11YQ2PEDW]O4THW.Y?@_(X=GGC^"8-$+(-3+8JM2&F> MEG4X"Q5!42#^NH0(<@B#L%-'C[)NDUT=\XU_$7SC7QQU=1\).+>MX0!9D8Q'A5<$BW$QW8SQPNF7,D& 0''X>VJKPET&"S*4 M9!E(5D(%W3G8J5Y53K(FXUY9N5?/D^E^]OB&>(&NFOD-4%O)?AAI47QJU2/? M%/<;(4Q83!2E)GTM#F.-CAX#@UG M1,ZF[ QN7%_E"@X3!C+A'ID^1'$(U":FV9(6 ,X;Y>>B:!;]!IBY&.XT'8]VUN')-<1[OMEX+Y?'N6=K";#C _,4A < M4TYQXL\?+?LA,"$X7II>&"Z#?4O*8*7!@R"Y$Q54=.&X=%C&$C61!L MSZH\%5(7ASH.DM%*PO0-/1IB._Q.R&U@QF^XLAPL7#U&NG*U6)4..&&A9?U6 MF8RH$\$&"=C*P3SC(FU;T_!LFJCO$/0=N53.5N_OR%!IX26NWV?FSJF@$=.T M'"%GA@8*8P?V<$=SWSUP$@VC&QOZT]L"R8EOJ&\2=J(8/90FI*J6M& <1DCJ MB$/QDOT'.MK<#HM##$CAR9SR:U."B4[_&U.I9$PWK8C#F/;&4!,5$^]S+.-I',!&* M@UPEDZLP7NR[.%W$6SFX SE$;+GW2+HD)GR!/(I$)H\3,4@#_J^># P/W)", MB1DPSI)X>"8A)#6%7:7<9WIRV:<*^DW-42)ZY>HR^]=$E8_*E6Z9C$_HO7L@ M%GIEJ4^@(K,)E@1D$.L%+-HX9;%1@QSA%.\;#O[0>S A!2DK4>J(G0A!6.3W M]9N01A/\E'6C1)M[^(SYY7E?$ ^6:;U8BJ:-,&IUNRWD#$&Q09X")%C6(C4I MJWIS@228PZJ>P$IC&274^PP'H"Q1DO8,(>V8&$Z:SU!'/8L*H;/$Y$ M=8S_OPC\_\5QCFVLDKD%".P>8=IN4@W_S*$X44==*9QDMRY6:Z [^QU2)22X M1O/@I"C'\O%L6JOO=- M)2FA#:?J.M5\^',0D2Y1MX#)V$H%#D4/%)IY!TFPV1"O M\GGN5%#3'3-NRL MJVDX<=?G^>BYITE:#CVXGZ&EZ8$ B_*WNIH \I!#%?8*?5EO@C>M M:*,Q O\SJZ@VN!@D,1@_:=0EIAP;2YMMX]?P!&F2U#&:^2K0S%='$?UFG^G/ ML-PIDOF\D;)W'+$="Q58*PT'K1D3ZV*1*AH*L&,&B^C >:WA.=<$\#*SB^FL M^HC%;Z*\C?ZVP/6^SM;U QS)[-,W16"D)6O\P08D ZD#PPQJW"R8 #;3+/7" M!1IBXG#Y/5MYY@04V1PV/F&H%8E>(R[/I>=X=@B&)<^/Q560\C1/K2K1XZ/P MGL5OAQ@+#\P9BAI2$D^->\])E*+@,H<4W?FPB6, %G@M70P%<+X#L29V3W.F M%WVI*_I[[]@WQ2-H! E!YWI3+ #28("9'SSD"SO+>3!P##U== 87V1MX-]O@ M!QP9R8V/M,^>;Y E,=B8#&^V/>MJS'3QR5P0%Z3!I(10M"&WP@1IL..9NT I MEV.<%Q)5 5N1.@T)2I =95N%08;RI&SO##0R.M1: MVI;39P_$8WQQQG%*+> M46:;8FTZB82"1:-1]P=\ 7M9J(/46Q#15I(1?@BARYA,K8&^90TWK22#*=,< M@8N?YAJF77:,,5Y=QHJIRZ,,[4?U>133?KSC;T\7!B5#9NG?. Q-VU&/%VU4 M%3+6.1OFB.+W9!.>W1X:_L[T)75P1QB_A29L;)V"0R9 M^ADV\UG[8)D4$"8$0I$+$]>%])UZH3GFI&G7_4KRF7HQS^EI8BQ%:Q9A*!%2 MF[MHATM)J+/ME%?B0%7E0SBX6!8,YJ3:B'YDNK"52%K"0SFZ5CX MX/R8 IMY6\<^5EU^4$UA%-#Z%T[UB4BEHEGT)-*RGWAW3PE 1/'$OWA7145, MIN6]1*@4[8AR-4\_YKVG>/88@LTD[=.*V (,[+TX*@]G02'.F<"S9'=M.3F/ M,^\%H"QDQ8&90WK"106!H6(9>5OBKH:,+&E7DNE!YQ-H%^%(858AV)W_R8^# ,46QHICWQ MS&?C+X%]0YDY*DVO(].]?D2:=D@D!0[91@^8&9\U4+;W]9Z5D6R7C]$M-'E( MXF253TJ(7$S.)+DZ+ZI8VL6G(7X@\_;0K4SGQ/[[[@.9]D].$ZG MJDM:*RDHK C*,<)D*5&YSD&?!IZC;F=DBK>(L)N.=<'ZWJ=>,B7L(CW0-!PS M2RR@ZXOGV7GV].*2 ]GT4]_&H%3CH#&>EURFQ^K\!:D'K3@3E''"1$=2$"L" M[ /E7#PO6W1#E75X#F1(@>W1IK =I3>F+!M>7*N:T;+W_EY4**Y=C8^8^R9Y MN!+=.(F"^N0H!L?*\:NCI=ZO_EK7.9C-),Y^W*NB,AB/7]FWKM7T:5/U^9@M MLTZ3(^WX#T?2?!! P_C;(-"5(/TA)!_X1R.X^54M[S5$"1LKM XAH"M"!TS=05/X[Y6=J%U$26.T[S'RM)3(?3JM%0PD)U4.G[ZR $()D!YBX3BU+* MSTQ5"4:G6IB,^VH:TVSP7N\2(V^02\&^SWNFOK0X.@9U9YHC+F=K03T;27)) M25$.3,<$ 6OMYYJ*N C!N-_]N&8PE K.?4BV3'U+P)/(:8)$0_ A$>5%FP35 MI<2_D",+N!N!?9']4J>P)YP,3Z%.)6$2A_*G 61QQ!VCV-@]X>IX7X-#>:_3 M]MSGC0786YF3'SP#SA@3_J0I0/0.TSD-8<\D%GT1(31$^X/LY5PYCNMKT%.< M%N<;QW6E.9%V&[(W+6<)*VKP7T#^@*5+XR?26ZPFC#F'V)%69PHX2/-HVA'CN+$-(AJ(*,D6\:NRL;-GD@ULJ99DL?/9C];!;!U MU9]]$(]GH3([JK1I&4V2W8>RLI&W.R0_1W>[-!R20#IT>HA[#VW0_(3"K#67 M1'.:S)\(1JKI VVLL%*G=K"U.?ODF&X1NR!<'>]E\+NFD4VJ$A_W:O;. O*S M =0/)!0&608)TEH>6R%ED8EC7QXP\C$U=%!V36/F_4("959IV&I%0IJ N]OZ M=!X@;BWZ EZ7+PSJT=P<5(PN(=EQ#'1^;'UF,;3)4AHNDUSW6*26 M/5I4ZHU?2FYZ#%-N0N0S>%EY\[%'!TXF2%EB<6&V-+N3=MU#H /7DZ 9":-B MTP["(BF@C$BWPG?%$(M\)Y+I= )BL&7:KL\YVA^ G$AT5B<;IJK%3L-#? H M$<,##8_'CK)B4P"!!4TYHU9K?SD?LRM"D&_HYK*(D!FEFC:IX=N0W*9X)M7? ML2A+8RSMUYR5$3!!JS*;^[33#J+B0QW>C2 M%LG !@9'):/T.L:I8T[^U?&4>NZH<2YJ:IH1/,FY/V^HH5]G\(NE>K#0+[59 MB@YA98J2FLQR.LW!E23FVK)PF2U)H@P;4E() Y7G].3MW6_M"9INI,KX,4\1 M3VD/KG!N,3,SU#U.:&3#-47GT'_Q&DL1I/16CI(+QF'U2RTF20UU35E#89C+?*8_R1+E)8(=[\- M)MYSV$A,=+A10'2PSDQDG7EP1LL>)V4<@WVLLAE4->F;5NO AW(QR#?KDE8J M@]8$/ "SU)!R=*Q#PDRI?O]XPV!3J/%#W2S)$..F9NR;'C@*Q8FYDX"6Y'0. M3]@2\-M#1#14:0_YJ*V ET_7C-#@'67IWQ9P8^BQ6:''#Y/G]XF+"F>\0E)3 M@K6/S1\"W8/2CFB&%,B=K><2H%VJURYV=;G;KV=(&8M@]&!+HX6'!5HR[VAY MJ=-/UAGK')CLE#&UVHX/QJ%M/B&D8PP[IO%?'<^\?[N?V3')JS]Y%.3VL-)B MN2,X;:L=Y$E!%-![6+XO1@=+$,9AG7J=4P* MEY;::(\3L @M%8D"/,U$L2\8JG"I;7P8.Y+;A0 M4/MLA3>839%:M6@*9O.Z?0^WW99U"8%$%#[B3&-C/E;/]UONY)2\S#!J3-9)9ZR*'Q!)!#/WRHU79* I"M!([CQ-G2^Z0759QU_)SM M5]9.*"ORXCSWF]A&$$5#6(LZ:U4+-V,QFINQT9@EGB$/$(U@$6J)!:T1= IV MX^XZ?US4W?ZQB"NIKJ3,7#.3=UF_S45![;?,C[E"A4!7?+#X:G+D%T,ES3"4 M^;(T.J%5(&#!'K@P.8=ND_Y8XZJ/V/=!.\(24_""G^O!DBQ5#+-7 MMY2Q)>-/NFI&CK*_K#DZ\L*;)(TV8&6?HZ*;\^\(\"^STZLS4Z5WMAI!-(UP MVS9FV>GUZ-%#Y8O/I69*#P\22-&AA'84>>G:6A4J>R6?,3_/1\W(Q M^?.S0^<9U)'@R(30;)=L&AV8A=4GZYX28\K6(>5C(/DRNSGXFX0AU9&%'@3I MZIA9:.XL?*RP]!=>TH@.C:?5'VC_V&HU!*7=!/!$.@04(]@$]-*$ M.F15*X=6QJ;=*M"YN"Q'1,<>JNE-6W9>NN]4#1OH\P;V -YIOS !R> L#&6P M&FD*(HQ1#R353CA?2:MV']1%%L()H=$'R0(K6XJ)M[$KKD3RO17#CS1T")1P M$GS(2ST=?8O]-]4J1;PX]MYP&XCJ;7F8<-/N$LK5V/H,L8JT3%L[])PB#G@6 M4W>*V'[Q(KN50;@)WS"&G\1,3*NRLK!&JZ0082?QWF@:,&(2UV CGQ'8QLG187SL7AP9"N%>V.OWH17K31.^0>) M,EOZ2/V>4-''^+1?$#+::7H0DM\\/@9-B$[K!%1Z<<'2(,E.#VX@NHINP(1B MG"]9J$5=)IK4BB4OC%)::A"G1D+J+IE97$G20V,DVCY2 K_D4&=$HJ0$P*8V MNK3*XR3%J$T'D Q5CR3P&S8]:%] M,> /<1@FKO6FY]5BLH0A[@3QJWJ#=;R\YYR'(%'>K:.>RZ=Z=.-)NYR1 M&XB;GYIV$^I\D!7NI5HI#"S*GOF,$TZN^R)6M71$I\N>*^T\H4$W4+R#OI2" M!\S$E*[ .^L2M5')YA(I]JD>@I'SB[O9;LEV9&[)V^=0][[P#@/HRG3ZF!TT M0(>A93(L,N3V76)Q(4O4Y.=,4(9=Q(GKP)#!>@(1+DS7+3"2LA=8//,#-+W( MOC]NB;YD MHW/H?E"T.U_Z %;\05C/<]RSW%\-342LT)>#M&.0V1EVI*?S&T M0$96L YHN33:^"58\Y"^9D?&G<28L"D%ZO*=>MAJ"M"YN)O@!> $W!86.=T3 MVHL;"!/I-LT9;2-3(+D"8J(4TGH&"_)$1(U=9'93S4<.[:E(TT2X]HVHF%WM M[T:"?UCAJ'XP*UX_,'J:U-)J=]FBZEW*:D(S@*BB_P)>MS>ES36$8VRJ%D0D MK1T-B\Q"]GO=.32S02Z((<2)9?MH>]03$['+7<*= E&%M3/A0/DCOIR/UB)_ MY=Z8F@&;UA!->Y(>_,B1Q"KUY!*LO\24AB?7'X@I*#(KY+A';/Q$W]U1\N=( M6EWGIY)UJ-P G_;XP>_C+7[RYF(-P C<4ADJJ2/WA_N169UHFM@<:L+KMCO? MECU,[V955!-IH&O7Y ]\8T3IYFA!G5;[ N'0$U(2:9+Z4 WT'5C1,4$[^R1U M<=(F/"JF8[K2YT C/,N-,L_913?4VW@N.+SE^/8J9S\.,CKB+*J!7/E1KZ W M+-I#%#DX99_1: MN-MNT7BM\)&R4VNKXTIMOWS/N#Q+VQEH>YX$JL,4=36]A3F$,IBA"SY$MM*V MXL,P/ML1(E0E5^+7_B!U:"G(9X:&&_^(9>,$CYC>3)DVL(^25$2=M_K:J(<\ MMOA/-L<>7_4C]MCC:SH6I/VS4)N9+XI7J8;Y;BR[,ZM3'DT/YMU(#HT:,ISM M3S3#W6$>W]HC9OX15C P::7! J\]30BQ*LXA"DS&2GDQ:20YEJ:%6:2KV"!C M9R[7R]J$@26;3_]WT+'$J3@U4^._(1;B>#_GI$)L<;R6B:ZYI7P]@7"SP,KL M[JF'Q+:T4\6HZ'XV7HZV7>45W7#C=CCT-#4;(>51,&>033I<,M:6I$,G[I>/ M!PZ.)3KM#Y1SJD6+"RI7:30EB2K-K&_,+/8S2T)HUK]3)=4H'#71$I#$236W MVQ)B)YNDY>RC#6RT(V-Q).#Z=@\CI*<'2Y#?4FH3'7!UK1WQ+$+#&+J',C(+ M=ZY#P0.V*=+'87W65C\3-$5UV#ZV3/M*?=M'M3 [>_#VI?;VWN:D.=;-! MV[NKV,V.&]P]O?@B?,,8LY6+DLK=/W073__D+JZ'N_ABM(NKRZ1-WW@;MUJ M8<.'9*C8QE";)@UR%!KWD$9V8Z1Q=(MJR*#'%CWK?4DCJ]TLE#U8LOMLD/;/ M&A#1,I+(C+6T M'8TYF^KPQEU7KXXW345GNZI+RPS%]^2&H-.3 M'V[NOCLYL^:H-W>_T5@7/,SYY9?9.?%-J6-_&[HGG+ZK2>)EUR\NSUYF/VZX M:U HH9''F";MS>^36\1Q,]!O-CI*/=0?*6$(+M#WX6(\:=P1M!>[E5IZ+,0J MV-C7P1KVVE7A\9>Y)UN/U:+AQ5S/+[)D05FX3F+;D^Q<9$*"6IRHMSX,H\K: MH2*6UZ7&A/PD#>9J2;*4&[.M:0X6*:HSFVV2#R&A:_LYO8-=KC!RNB\&LD[R M[ZWE'5E_ U?M=W"+E]^$*\>L00G?^8<;@+3_#/N@IKMQB"MQ,)SF=YD KAGN3MMI2BN$X+FEE\:@ER*$/3W%?N8>#3S@V/7"QB M'@/#*ZQI+.2?<;);O DY4A>1S331?$5$\Z/TFI! AM++E\^FZ"4^>9!.OL+- MZLG'B*73Z(FTS,&=?IU?20M$Z3L1RB\%G;11_DQOB^ 2R1I:0V4M,_@""6U+ MY-!E!M$"<51!XVK7>GE3QS6AC70\QNT I--KX(%Q53,CSX;C0@B%&E12^7MN M(D.["3=[L2?OR#)E'*E'KZ(!/%6=F=S^:LU7P=0()R<:S57P8YL"6!]'C%]M4=, M$:1#NB+L_=DUQ&+CE;#U2&*^"4ZUHC. $!903PBKA4:518X;R%OSBD(14JMJ3IYE(#O*5<^*:? MY37M8_$:*OPZNT43#6+QMW3R@A#;K2=5]W$<2HYMF+8)?4WQ2Q!J@#R_BAP+ M.@-[1X)6,K@6FF4,NS*XF84")-6!#8T.=DV:I?ERW(8+_']A^GW?6FDM?HL1 M*>O36.V2/C.R)W9T&MD=U0YCH_&KX_W!25?3IBJ:/CFI[WWB&*$AOK 0N6U0 MS=((T\8G_5PD6Y$[^@0'KFCO_';:TL?/G\1"(;]J&KMQ@2AF17;_C/-=\BB@?H]V5- M2HY^P 2(,_'R7OTO4$L#!!0 ( B";%DIEKN6X , "@) 9 >&PO M=V]R:W-H965TR&]J MBZCAI:FYFKE;K=N)[ZM\BPU3=Z)%3D]*(1NF:2DWOFHELL(Z-;4?!4'J-ZSB M[GQJ]Q[D?"IVNJXX/DA0NZ9A\OL2:[&?N:%[W'BL-EMM-OSYM&4;7*'^TCY( M6OD]2E$UR%4E.$@L9^XBG"R'QMX:_%;A7IW,P62R%N*;67PL9FY@"&&-N38( MC(9GO,>Z-D!$X\\#IMN'-(ZG\R/ZCS9WRF7-%-Z+^FM5Z.W,S5PHL&2[6C^* M_4]XR,<2S$6M['_8=[9IXD*^4UHT!V=BT%2\&]G+H0XG#EGPBD-T<(@L[RZ0 M9?F!:3:?2K$'::P)S4QLJM:;R%7<-&6E)3VMR$_/%WDN=EPK*G".U3-;U^@! M)S'<2:F8@M MD_K[F6WL!:,A9&E&-L_(=Q9);'CU%YD3&WS)D;I)5-=533EO%(2)-QJ.($J] M+(R=7RD%>0:9 I$2FM409UXK:@-MM<( M[$I9BIVDDELSO95(QKP 3H#0=*\,-*^,2SHQAD8>L&<*Z*\3F9HX3Q;GBOOG MZ_#_UJB-9B/U,V?):IL0T[#&3<6Y28(JVZ*L1&'T&1MQAEZSD*T]BHR35E](>PP?1?&'F!9HKV=X&?&=W0WPN$PP&=_T?_>OLFB M,'KO+)JNG?F6R0VE<]O5&(L!: '()+>R/JGU@>X$[E;:-':NW M M--VL=KJE3QF4QH">ET+HX\($Z#^.YG\#4$L#!!0 ( B";%D> %80C@( M (8% 9 >&PO=V]R:W-H965T51I8W2:7P MHR 8^27CTDLGC>]1IQ-56\$E/FHP=5DR_39'H;93+_3VCB>^+JQS^.FD8FM< MH/U6/6JR_ XEYR5*PY4$C:NI-PO'\\3%-P'?.6[-P1Y<)TNE7IQQGT^]P!%" M@9EU"(R6#5ZC$ Z(:/S>87I=29=XN-^CWS6]4R]+9O!:B1\\M\74N_0@QQ6K MA7U2VZ^XZV?H\#(E3/.%;1L;1QYDM;&JW"43@Y++=F6ON_]PD' 9O),0[1*B MAG=;J&%YPRQ+)UIM0;MH0G.;IM4FF\AQZ2YE836=@?J"AZ4M(6!6YEC_F^^3[0Z;M&>VSPZ";C MZ@+B8 !1$"4G\.*NU[C!B__3ZQO<<),)96J-\'.V-%;3X_AUK.,6,#D.Z 0S M-A7+<.J1(@SJ#7KIQP_A*/AR@F[2T4U.H:<+$F!>"P2U@H-K.D;S)-!QF@>( MD"D2F;&8NU*V0%@I06KEP#(^," !4!@ &0 'AL M+W=ON!Y:I%CQ=2YJ)'3R5+(BFG:RI6G:HDLLZ"J]$+?3[V*%=P9#ZWM M08Z'HM%EP?%!@FJJBLGW*99B/7("9VMX+%:Y-@9O/*S9"F>HO]QY(5 M%7)5" X2ER-G$@RFL?&W#L\%KM7.&DPFS.9;-G)\(PA+7&C#P.CSBM=8 MEH:(9/S><#I=2 /<76_9O]C<*9FT()P>/TBL69$!XQD(G:.DH%(BU\"40JW@ M](G-2U1G0T]3. /R%AOJ:4L=?D!]"7>"ZUS!+<\P^Q?ODZ]P@XN-);"6J/>,/!.2>JT6JB#^8TC=. WIF[AI>O'?^;K0.0V,DAD)-9/Z M'0(W"?N0A'YOJQ[;2U?0)Z; #9.@.]+LC>Q)DD <7_1N<(F47D9I*6TRDOB* MO$$"748QI&G:FS42*0CUHHDI60E1!"='_3 (KWKW^TH4NX'1XR91O_&PO=V]R:W-H965THVV%XH49Q[?TSR2FFR5?C0%HH7GJJS-U"^L;<9!8%8% M5L)MH M?#/@>!?PN\2M>=,'5K)4ZI$'O^13/V1"6.+*,H*@QQ/>8EDR$-'XLL/T^R4Y M\6U_C_[1:2U:$M[K[8_XTZ/([A2I7$M;+O8P<"' M56NLJG;)Q*"2=?<4S[OO\"8A"[^2$.\28L>[6\BQ_%%8,9MHM07-T83&'2?5 M91,Y67-1%E;3K*0\._N$),G V8-8EFC.)X$E4)X*5CN FPX@_@K %7Q6M2T, M?*ASS _S R+3,XKWC&[BDX +;"XA"2\@#N/T!%[2*TP<7G):X9_72V,UF>"O M8QH[B/0X!&^,L6G$"J<^.=^@?D)_]MTWT3#\X03!M">8GD*?+;K] &H-CBM\ M>*8M9_ 8SY-(QWG>M1JP0P3:Q*!H3'M:"ROK#93=UUDIVF;&8LXL;,&1)>U7 MBAA[#X5&A*JK,G*5@6IDL5JB=H7ZE6B_?8$"8QE_78N^5H^@X:G[!ND8.R(?-(.6&8.1Y12$D& MA5X50+KH)'BB$ZZA\\I"FD"44@BDH;>@ X=U<0R5^1&=2IHFZ5$8P3#V?L*: MU)=NUM1]RN^LRTTW=J@7I>&+5**,#L#F_%[ M]QU:LU.3TX@4.CM2F9/$H^X LBSESI"^OGLS@O@JXDX&4>RFKLAI!S5I]E\C MNLA&F?<)C1F#K)JV\Q9Y%JEH9Y2?P+DW9ZG$_TF49#-B\%Y@*<52EM)*VJ)< MU=%@X-VV6G,2&Y;OM1-I+[QM1O$_=E<_?P$U.JNOWH%F6?*_V!WU7/#F>JI0 M;]PES&=.6]ONINK?]O?\=7>]O89W/PF?A=Y(JG*):TH-+T=D*]U=O-W JL9= M=DMEZ>ITW8+^55!S ,VOE;+[ 2_0__W,_@902P,$% @ "()L6=@Y(AK? M @ / 8 !D !X;"]W;W)K&ULA55=;]HP%'WG M5UQEU50DU'P6* ,D:%>MTBJATFT/TQY,>+BZX#O'+?F8 S.R4JI)S>YRR9> MX 2AP-0Z!D8_+WB-0C@BDO&\X_3:E YX.-ZSW];>RL-\S)<6971"-3LA0G'E6)0?V"WO3CA[ ??#JA.VEU)Z?8ITLJRJP2"&H- MY=&K.Z;X).=QQ8[E;">B7N?$6JJ%R)#'A!?E[093%P!G$\I&]X.>C<& SI M&_2CSIULVI*K;XMI+I50F[>#X'YP!4F_WWE4BFQO"#8D'00.D\XU*[EE@O\F M-T:M[99IA*O^$ 9Q0@#:@J0W3 80]Y(X[LS2M"HJP9SY#.FD4MXD/H>( H;0 MI5'8ZX>A7]0T07J3=VW#!U_)6U3W.UJVQIG34?X M&][TU7NF-UP:$+@F:' QN/1 -[VJF5A5UOUAI2QUFWJ84WM'[0)H?ZV4W4]< M@O8/8_H'4$L#!!0 ( B";%E-?]ON3P, +$' 9 >&PO=V]R:W-H M965TFTL@*;U2*,(FBZ[!D7 ;+N9?=ZN5< MU59PB;<:3%V63#^N4:CC(HB#D^ CWQ^L$X3+><7V>(?V4W6K:1=V* 4O41JN M)&C<+8)5/%MG3M\K_,WQ:,[^P66R5>J[V[PO%D'D D*!N74(C)8'?(M"." * MXT>+&70NG>'Y_PG]-Y\[Y;)E!M\J\9D7]K (I@$4N&.UL!_5\0]L\_$!YDH8 M_X5CHYNE >2UL:ILC2F"DLMF93_;.IP93*-G#)+6(/%Q-XY\E!MFV7*NU1&T MTR8T]^-3]=84')>.E#NKZ923G5V^EY;)/=\*!&8,6C,"25>!R0+V2A5'+@0, M[QF=FZMY:,FCLPOS%GW=H"?/H+^&#TK:@X%WLL#BO_8A1=J%FYS"72>]@'=8 MC2&-1I!$R:0'+^W23SU>^@S>[Z<<7<)GM5CY6L"&FUPH4VN$KZNML9HNT;=+ M96B\3"Y[<8TU,Q7+<1%0YQC4#Q@L7[V(KZ,W/3E,NAPF?>C+NZ:?0.V /V7S M4JR]:)=C_=\M@5Q17QJ+A7-K#P@[):C!N=S/!D,N2:1J0T4U5_#.6$[M0ZJ? M#.YJ 7]2'QH8?D&FZ9@HM5AN47>\P@;S5A)[23K8X /-CXHP+.8'J83:/T(R MSN#5BVD2QV\@'4?P$I)1=CUMUBP;W"O+1"MK)*L\K\M:^&!8J;3E_S _'(:D M,$ECN/)_49S"U>"9UG@)<7I#WVR20 ][6<=>UL\>C=FB)A]4QZ[C_*SB]O$2 M?;UPE^G;U)J(\31)TH>R:4IT37FI_JX97-E'72!TLT#5^E>$6R:8S!&.S%!U M6O;-;/!7/_[3N^'=>8;7+2"SL,4]E])%3#6I4'-54+UO1FF6^C5+IX-[S:01 M#7E$[Q#2UQEQ=H9"WI_83Y+8K_$DO#9&2]1[_UBXJUY+VTS43MJ]1ZMF M#/]2;QZS#TQ3#@8$[L@T&M\0:[IY()J-594?REME:<3[WP.]J:B= IWOE+*G MC7/0O=++?P%02P,$% @ "()L66 UP=A%! > H !D !X;"]W;W)K M&ULK5;?;^,V#'[W7T%XAZT%?(U_Q\Z2 &WOA@W8 MW8JVVST,>U!L)C%.EG*2TJ3__2C92=,V#39L+Q$EB^1'ZB/#\4:JKWJ):&#; MWEE5:HTU?-S2,VO4P$0-OYDE M*KA>*X7"P*\-FS6\,0U]/;MG,X[Z?#PPY-R:&%2]HZO.4?R&HQ(^26&6&CZ* M&NOG^@,"O4<>[Y!?Q2<-WN'J I(P@#B,TQ/VDGTF$F?E3!M%I/KK M6"XZ5^EQ5[;01GK%*ISX5$D:U0/ZT^^_B_+PQQ.!I/M TE/6IW=4N/6:(\@Y M_+N@CD5RTM?Q2'9.\="I=$ZKWBD_R&0EJ<2U(04"3+=@+CGUBD8L1MY9(^A( MKC69T.= ;VZPG9&AW:0&<5PO"N(HH]\TBPYLMS8VYCI+$N1E1K]%5GA=;MG+#"1! MEL00!\,\]^ZE8?SU%4*5!&6>D9"D09$6WA>F%!.$K,^LO5,$95K2.@SB8>GM MWG EE4-"J*E=*X(E%L"1NM4^TX]0#&,8IJ'W68KW01D4>>SP1$D!)UB;[5F;_6/6;G:!NR0Q?I28I\U=VFYOHYX] M F6DD34X*B%@'GGW2X4(;=>XT#:N%Q3\3&Y/?'_) M7\=82](GR;MBG(D*@1F8X:(1PKX=):%'3:P-@S2RM(CB("PB*T1!&,;=21KG M.Z+8EVFTMJRR%:>PQ;KI*,IJBZU>*VO<9J&WG@1AF1.WPR*'-!@FEL9E4GCT M9VPXZ0NCZ=^FQB.J9U D)9S;-1VZ-28N1$Y*@JA(X=R[7C*QL*C$ 0]ID@!J M%N]Q2U5OC6Z>X)]!F:2=B3QQ:T1$*WHIIL2='R8,1?T\51'%4'1"F0U?GSS5 MU/[-F4)*E:T@M!P9]25\G/9/Y==9?;;O-075US%MJOZBI"S'47DH_Z=XCA7> MX& ::%$MW,QCV^Q:F&XPV)_NQZK+;IIXNM[-9)^8(D9J:B5S4@TOAE1TJIMS MNHV1*S=;S*2A2<6)2QH-4=D+]'TNI=EMK(/]L#G]&U!+ P04 " (@FQ9 M31Z]Q>\" !@!@ &0 'AL+W=OH?U5+2RFU1TKQ$KG+!0>)FXLS\T3PR^E;A9XX'=2:#\60MQ,XL MOJ43QS.$L,!$&P1&TQX76!0&B&C\/6(Z[97&\%P^H7^VOI,O:Z9P(8I?>:JS MB3-P(,4-JPO]( Y?\>A/S^ EHE!VA$.C&X4.)+72HCP:$X,RY\W,GH[O<&8P M\%XQ"(X&@>7=7&19?F2:3<=2'$ :;4(S@G756A.YG)N@K+2DTYSL]'2E1;*[ M-7ZEL! EQ5HQ^USO']FZ0'4S=C5=8Y3=Y @Y;R"#5R"'<"^XSA1\XBFF_]N[ M1*_E&)PXSH.K@"NL[B#TNA!X070%+VQ]#BU>^!I>QB3>SJW/2_9,*:9A)B7C M6[3R[]E::4GY\N>2\PUV=!G;U-!(52S!B4-%HE#NT9F^>^/'WH70- M?;JBFDSK D%LP$8.DO.8X9.1\1+KJ[B769^GQJ5K@%H"($LRJ%#F(H4#4T#? M1A14ZFK4>=]SD'G8E:,9ZJ&QM^,X0O M4FD%<,@\#M?D*-DA=5B*=5E;C+& M-!@8]'O0CST(NY[O0]R-8K_S*#0IJUUMBO!KKIL&T.ZV[7/6=(T7]:;WWC.YS;F" C=DZMWU>P[(II\U"RTJ MVT/60E-'LF)&OP"41H'.-T+HT\)&PO=V]R:W-H965TOF MP19)S1R>F3-#:K:7ZE$7C!EXKKC0SFN[8FIEO]4KAS.]1\K)B0I=2@&+;N7<;WBS'UMX9_%VRO3X:@XUD M(^6CG7S,YUY@"3'.,F,1*#Z>V!WCW (AC?\Z3*_?TCH>CP_H'USL&,N&:G8G M^?L'D(<$(B":'0!+^ZCC1U>_!.\>ZI$*7;'T?YSN]%&87'\>R[> M%FYT'LXVS(VN:<;F'G:$9NJ)>8O?WX63X,\+9$<]V=$E],4:&S!O. .YA3M9 MU8VAKI!QNJ2ZS("*'-Z7O#$LAX\BDQ5J9[6\?@GO7$R7=_U:*,:@:G5D5D= M%0RK-HAII?B"#A?>#ZQ45J\8^M' 5AFW5795"C"%;#1R1YZ_P16$8Q*/4^@F M$Y+&TVX23T@\#0^3E(1A#->#[Z[1<%OZQ!2>&Z!MH!KPQ-$&85%?P,,*,LJS MAF/*<+[I\Y5W^7)L:J3LO"&,IB1. A*E$81A2J9I3)(HQ/4)B>(12=,IKD>X M/B+C2318_@K04@Z&8=2QQ^&H'T9I/XS'<'VA5,9]J8S?7"JWPI2.%)YV*$W6 MJ-*4F)_[YXPW5JZMDM7K@CJ4D16J*Z6+-721SOF^P$,4ZD;54ENQMI Y!E:= M\RDDL'^M-+I@X9T3/)<@I(%2N!BAEH9A&BCG/Z#/A7[)A2FH 2L31:L_#A8$ MJ$9PN1>PL;?5<& YFX+ASS:%E5N\M?H'M\?0QYNS$R&.R[2W/LW$S6#=1;SM M4V!D]@BEUHT]JZ%!)JI;E+43M>94G.8H(M$TP?9*(";!*"%AG/X:N,:U)Z8= M/;1Z6'_3MDF3)"')= 13DB:1[93!ZI#R5RJ=1GN06AP.A)>.Z1.!OMB!X61* MDM!V(PDPL>DD@'.-XA]=?153.W?!:^30"-/>@OUJ_PUQVUZ=+^;M!\AGJG8E MYHRS+;H&PRD6N6HO]79B9.TNTHTT>"V[88'?04Q9 WR_E9B#;F(WZ+^L%O\# M4$L#!!0 ( B";%E9Z 8>'0H &1> 9 >&PO=V]R:W-H965T\(Q*MBS#+*7SZRM'B^'EB#UQV?D\52ZAW#FZL57;!')K^N'KC: M&JXI<9*Q7"1%3CB;7P]NK0_A^$PGJ,[X;\*>Q<9OHB]E5A3?]4887P]&.D7 Q( MS.:T3.7GXCE@S05--"\J4E'])<_-N:,!B4HABZQ)K'*0)7G]G_YL;L1&@NGD MC01VD\#>2C!^*\*X23#>2F#;;R0X:Q*<'9I@TB28;"5X\Z*G38+IH1'.FP3G MVQ?]5H*+)L'%H1$NFP27E1SJYU<]?(=*>G/%BV?"]=F*IG]4"JI2JV>>Y%KL MCY*KHXE*)V\>:Y&38DX>DT6>S).(YI+<1E%1YC+)%^2A2),H88*\)[=QG&B) MTI2$>?VB:<'^X3!)DU3\B[PC0R*6E*NSDYQ\S1,I3M1.]?O+LB@%S6.UW9YP MGZ2I HBKH527HC,TC)IL.W6V[3>R/2;W12Z7@KAYS.*>])XY_:4A_5#=PO5] MM%_OXT?;"/Q4/)V2T<4)L4?V&?GZZ) _WFW>CYXLWIF)#HM.B6U7Q#%QZ(LP MXQPS[I&M3LEXU,U@#\8]'#,V8#Q,;GQ,;H(#'I[U^O V1/SFS0X/>'9CRY2O MCLK&Z[=U7''/WN#>4;'LR@C(P9(6 B"=>1UMI;7F5%>GU3C M:L6+>2()E9(GLU+269DK)?-2EIR11(B2YA$[(4\T M+7O+1V.(8]6(A#G3G?IQ>K:K1F1([Z"0/C)D@(2%(%A'C>=K-9[O46,N6%3J M(0$R*X4Z*@2)=6_@5]4IZ!.?D7BL^,YWBI+QUI-SD/%<),Q#PGPD+$#"0A"L M(]"+M4 OC )UF(AXLJI& HHYB=)"Z)IZEL2J+9E$>E]1$YB]$)IDJEIBJ&QE1G5Z6S50*Z[SN M29]4:5^%P/J44,E%94CA5/5*9X4JY=Y9IZ,162E0U?VN*EZJQ[Z2K,PT1+)< M7TM_L=CWXB)O>H"$A2!8Y\6]7+^XE_MJEHCE2@?ZU175N\M9K/I^/!&JX:,> M@#Y,%[WM&R/ZV-<5"7-JV.5&?34ZM;9:-\B W@$!?63 D+0;". JU1._H\ M,O?K*.+CN\A#YLF+DN7YLVA70I;,NU562N(QDO4.5'4D1"[)@.>,T35^(.GVAFP5S M7F1DKDMM70>I@OR%42Y.25^Q#;T5 906HFC=]V;#M;&,[TV8K6C",U4^ZW)[ M413Q_.4B: Z6Y4)K7T#8[K=L=UOVG!- \A2A:5W1V*SK;*+K/ M[(FIYB/A+"H6>?(_%I,DC](RKGYHBYEQU8)0QZOS>M5HC'"T&I$TIZ%M/D[+ MVAD8Z3MKNGV6UYS5Z37OG.7WL48[ R,!]#)#%*TKHM;!LO996)R_Z)J@&CK3 MI9?J#+ 7DM5]CKGJ=/0*!VIQ06E.0^N.MNX*!^IR'133A\8,H+30VC7JK/&F M^+L":STLRVQBW7ZY)P^\6'":D3_OJQ[I7[V*@EI84)H#I;E0F@>E^5!: *6% M*%I7R*WE99D]+X@/88YQM,JAOEA#VV=%0(-ZAP7UH4$#*"U$T;JZ;.TQR^R/ MW3I_06D.E.9":1Z4YD-I 906HFA=$;>NFK7'5MNR*1CY9?Z\[J,9 M>+2DSW=;/UNN&C2@"Z5Y4)H/I0506HBB=77:FFN6V<0)!XY>W-0LUEJ T!TISH31OS_V?U/+M52W4 MFX+20A2M^TE_ZT[99G?JL9RUWS8THYJ5B\ZITK)D/.MM*9BIQVH82G.@-!=* M\_8\#:O2<)^$H=D(H+001>M*N#6*;+-1=$]_[NVLF1%'ZQ5J$4%I+I3F06D^ ME!9 :2&*UA5Q:SS99N/IB'D)9M+16H8:3%":"Z5Y]JX5U3,Y 1HS@-)"%*VK MT=;7LLV^UM_IJ)G11XL6:F[MN>SQFPU+%YH/[[?SX4/S$4!I(8K6%6WKE=EF MK^S@;IF9<[1"H689E.9":=Z>^V^-#+*%.F-06HBB=67;.F.VV1G[W7X9U N# MTAPHS872O#U/PS9H&.JB06DABM;5<.NBV7M;:QCHAS83=NG36';'9LI?)=2 MS?C9']9/8DY->L4.=."C-A=(\*,V'T@(H+431NDLA MM>[EHZU.<.W-. MCE4OE.9":1Z4YD-I 906HFA=];;&W-ALS#VR/%$R_51(IE5Z5#O$C#ZV'0*E M.5":"Z5Y4)H/I0506HBB=<7=&G9CLV'WGT*U#_0X'!&US/5.>[16H88K&DHIFY^BAY-&2BO6D9ET: M&]H+V*46L6LM(FDNE.9!:3Z4%C0T/:6[+7S.3R?=LB=$!>WJM/7JQF:O"-/< MA?IX4)H#I;E0F@>E^5!:T-#,79@0%;-6[W!CQ>F,\46U7+D@U:+1]7*VZ[WK M)=%OJX7 M_8[U@?7ZMGO61_\>L'S%E^OOWY/^2+)!4G97(4:G9Y/!H372YK7 M&[)85>M=SPHIBZSZN60T9ER?H([/"]4(:39T@/7"\C?_!U!+ P04 " ( M@FQ9(;/,YNL& "@-@ &0 'AL+W=OAV =:HBVNDJB2E)W\^U&7 MV%8LL_9ZT"^))/,\AQ1?\E ZXM6:\6\B(D2BQR1.Q74GDC*[['9%$)$$BS.6 MD53]LF \P5*=\F579)S@L#1*XJYE&,-N@FG:&5^5UV9\?,5R&=.4S#@2>9)@ M_G1#8K:^[IB=YPL?Z3*2Q87N^"K#2_) Y.=LQM59=T,):4)205F*.%E<=R;F MI6]9A4%9X@LE:[%SC(JFS!G[5ISUP7G9NU5WE'UI8XG'5YRM$2]**UIQ M4 JBM%9=2--"NP^2JU^ILI-CYWM.Y1-*B(Q8B&BZ(D(J:4KT%DW"D!;ZPC&Z M3:M14JCMM4TDIK'X0Q7Y_&"CUZ_^0*^4)?H4L5S@-!177:EJ5O"[05V+:54+ MZT M>NB>I3(2R$E#$K;8.WK["XU]5]V1S6VQGF_+C:4%OLOC,V2=OT&68?7: MVJ,W?R#9&>H9I7F_Q=P^WKS-N_-SWMV?\^[IS6T2*'/SH+FO-W?)_ P9%VWF MC9[L;03>*WF]0ZU1LWV8QP2Q!:K%?E^)_78C=H&^WBDS="M)(OYIJ?--Y:/? M[J.(+YNQO M]-C7T<=W3 BTX"Q!>1JP5+"8AEB24*T>YH*&5"T@V@2HA9XJP HV+&'%XF8U M?FL-AE?=U:ZP6@KU>B\*.2V%1L-1LY![#,F#;* /!&MT\P0-M!\]B'-!T MB68Y#R*UJD(?>$AX6U"\T8).[51(F T)SYSK/RSB.U M=E$6_'M.D,SG1*@EEHS0),XBC!XD449AS@M6X3XCG*K@4([0=SC-U7A$53#K M%V[?Y2I.U,%Q\*8BB3R(T(K%>?)X-\OV#<-X,15#>O0@83X0K"&FT49,HQ]-0?54/8_I MLGK,F1$>J%&LGM_;-*7EG:JI"G:QTW/&F6F^",>0'IUC/+J0'CU(F \$:VCE M?*.5"-71WL='=Q2]XCKV U",DS(:$.9 P%Q+F0<)\(%A#CZ:Q?7-H:&?"#VLU M_XF(9L7R51,K]9A310=*LT%I#BC-!:5YH#2_IC57$(/M"J(IJ9V7T:964O;D M[R_H[FZJC:EZQLEZ@J39H#0'E.:"TCQ0F@]%:^K.VNK.^@7!M78")4Q(F@U* M4YH+2/%":#T5K"G.;0S#U283&%RZ2*!<2?<22H,FEL$P*6/B'P/[^6U%-/UHVY MUXF]?=V8>^+:*^2TD%KD< 3) VVA#T5K]O+V];NE?8LZOJ-X3N/BO8#+./J< M9IB&:!ICF@@T2;>'X;]YO3O!>]M3_Y[WU698/Z=([RZ8+Z M]$!I/A2MTE-W9WM+0OBRW.HDU!(E3V6U$6!S=;.=:E)N(GIQ?6I>VF;+=<>\ M=*O-4EM\M7?K'O,E306*R4*Y,LY&:NCR:CM4=2)95FZNF3,I65(>1@2'A!<% MU.\+IH)??5(XV&Q*&_\'4$L#!!0 ( B";%EKSY/$F 0 ( ? 9 M>&PO=V]R:W-H965TY,1V7UQ[9=$P+D28Y>62(%UF&V;<[DM+=Q+"-UPL?D_5&J OF=+S% M:[(@XO/VD&)8JD0D)4NA$%C^O) 925-%DN7XNX8:34XEW#]^I0=EY65EGC G,YK^F<1B M,S&&!HK)"A>I^$AW$:DKU%.\)4UY^1_MJMB!8Z!EP07-:K$L09;DU2_^6C?$ MGD!RN@5.+7 .!=X[ K<6N*<*O%K@G2KHU8+>J77HUX+^J1D&M6!PJF!8"X;E MTZT>1_DLYUC@Z9C1'6(J6M+406F(4BT?89(K[RX$DW<3J1/3VT\/Z)'1-<,9 M^@7=QG&B+(53=)]7+X8RV,6<")RD_%*&?%[,T<6'2_0!)3GZM*$%QWG,QZ:0 MA5%(V>ERMT,^U\M_*W*MW-?+'S"3?!C=0]_K.[1"7+;*^6. MYDFZC:?=DN>^QRN>>!(GLBN^0@N<$D17:"'H\AE]^5V&HGM!,OY7EV4KKM?- M5]!H/ M>CKZ])[S N?+TGM+FF6R%^7*@E?H!:<%Z3*?%GBN^2I8OX2I^L]2-@<$N9#P@)(6 @)BT8=:QSUUXSR+5?9UMLG,>L_K=W012*/-E@6 M[;+S@U>%[;T_%YUUA/1M;S0<]@Y69OHBGFL(4%KP_7J&'2%VSW/LHXI&4$5K M/^N]SY\V]#I=3SRW%ZEI;1J<]"D/B@M *6%'0WB]NS#!HF@DK9]X[SY MQ@%6 4K:MLS;5VE;^\$19I5? MY_C>,E]?E',G)Z T'Y06G-8@(6C2"(I6.V@4QLJ2VZ!/%,^U#T@9:N;6$H44/2=J9?7VJ)8$N* M8@-\L;7<<\[5/9<4Q>F1LJ]\!R#0QRWY8DIX]8N.3:RAH7C/!)<"_ ;@ M5V;5U:VL66"!YU-&CXB5T9*M/*C\K=#2D30O.W$EF+R;2IR8W\>"RZZ* M(3W@-8&/*)P*(;E ;]G02]H<,>[\ @5/"/TC E]4"O7_W ;U# M:8X^[^B>XSSA4UW(/$LU/6YR^E3G9+V2TPJ*6V0;'Y%E6,X _&$<_NL^'X4O MQN$+B"7?)#\/#RY(?@T>7)6^=P779&VQY6VQY6Q6>_U1ZGON.- M (;NB9S%F"0I +]1CE'_]RON6!RDOEWR/M:T!D6+"?>.U[@&&:: MG%DYL -H\Q]_,#WCIZ%.4$FV4$FV5$D6JB2+%)&=]9/=]I,]QC[_S' ")W/- MX.Q04W@51?DF/TK!E[0,5:E8*B2+%)$=F:L MVQKKOF'L ?)]-5SI-D__DQ[+%SL\QR G>;DH6*=$0K:#/KN]JIN.[_H=HT?U MKS6Z+VEY@6EWK%8I&:HDBQ21G5GMM59[HU;_*7;RE?[&V/5Z!?8Z?HZ*7.MG M7Z[KI4JY4"59I(CLS$N_]=(??\=2@8!.YP!X>G4&OU#>3WILUZ*US;BR[L\Q9 M## %;G?N7@Y0N4[0L388_[@AEAYDQ,%YV/"7;6.H=YGR:XRUY)O)3_LC5R*PI49*23"0L0YQL M9L;MX"886%I01'Q.R$$<;2-]*FO&ONK!?30S+)T1H224&H'5UYXL"*6:I/+X M5D&->DXM/-Y^H?O%R:N366-!%HS^DT0RGAD3 T5D@W=4/K%#0*H3&FI>R*@H M/M&ABK4,%.Z$9&DE5AFD259^X^_5#W$D&+BO".Q*8)\K<"J!*QA5@M&Y@G$E&)\KF%2"2;&ZY7(4:[G$$L^GG!T0U]&*IC<*0Q1JM81) MIKW[++DZFBB=G-^&(=ME4B@?AB39XS4E[U&F_C-_H-LH2K2_,$7W6?DOT6Y[ MNR02)U2\4R&?GI?H[9MWZ U*,O0Q9CN!LTA,3:DRTWPSK+*X*[.P7\LBYU?( M;LI-9:7:3W;M)[O@.:_P5 VA>,TXUB4)W7*.LRU1M4XBY8S&^&\9 M$XYDC#/4%'WY2S'1O22I^+?+2F4";G<"NM;?B!R'9&:H8BX(WQ-C_OMO@Y'U M9Y>Q(&%+2)@'"?,A82M(6 $:YC5JH2C7+.]HF^'@M5R4*Z MBTBD2]K/HMA9U'KIESJQA(T*F.XX]G-K:NZ/[04YG=>>[MHZF="'G' %"0N M8 W7N+5KW%[7W%+5\.$L)$A=%%'(B;I,(LJ$Z#9)+^Q2D[CM51L/3VS2CK$= MNQGCM6,FP^'X9/G;04-W,FH&K=I! V=R0@HZ@@83MPYJ+,.P7H9A[S(\X/_4 MS[\H6B3"!?KR0-(UX9V7C%[2I6L "5M"PCQ(F \)6T'" B!8PW6CVG6C7]W? MC"#-"@E;0L(\2)@/"5M!P@(@6,.LX]JLX]X2^9'C2)GTY1;OJ>YFT!VFQ17, MYRQ%S4K:9ZFM(&$>),R'A*T@ M80$0K&&KZ]I6U[VV6F 1HQS_T!;J;*^O6QY2]S&G%NJ=XU(+0<(\2)@/"5M! MP@(@6,-" ^OG,TX+\HZMHC7NCEHWQXO^.2\U%2C- Z7YH+05*"V HI7.,H\> MI.M7-P^8;Y-,($HV"F]=C56=X>7;D'(@65X\6U\SJ9JG8C,FJNGB.D =WS F M7P;Z<7W]3FK^/U!+ P04 " (@FQ9P] *PZ4# "/# &0 'AL+W=O M1 4CT MK*9;#.I)\QP6N(MK$&^E$]!MJ\,?B=P$$?/2#/9,/95#SXE,\/2"X(<8JD1L/K; MPQ+R7 .I9?S58!IM2.UX_/R*_K'BKKALL( ER[^01&8S(S!0 BG>Y?*9'7Z& MAH^O\6*6B^H7'1I;RT#Q3DA6-,YJ!06A]3_^UN3AR$'A]#LXC8/3=?#><' ; M!_?2"%[CX%T:P6\<*NIFS;U*7(0E#J><'1#7U@I-/U39K[Q5O@C5.EE+KMX2 MY2?#>1RS'95"U3P&LL>;'.X05?J\1^M:.HBE:*[+2>1W1"B2&2"<*WUA&@-2 M2D4QAX1(E#,A0*";""0FN;A5$"_K"-U\N$4?M.-O&=L)3!,Q-:5:N8YOQLTJ M%_4JG3=6Z:+/C,I,H!5-(.GQCX;])P/^ILI8FS;G-6T+9Q!P#>4#Y>7N;A^=_Q=]]9^CGR3#;37D5GCN>QIZ/M(03B5P-#\1RK(6RJ]**.B/ M^49(KLZ)/_OD4 ?T^@/JL_-1E#B&F:$.1P%\#T;XXP_VR/JIKQ;7!(NN";:Z M$MA)U;RV:MX0>KC >548+-$&MH120K=ZKY? ">O;8XL:;U3AZ?MG'SJN,S7W MQ[D^M['=8'QJ%)T;!;[?,5KU(-F!UQJ=0H)OZ"H'D%DF& ',M1H&2'=>BU#?.VZH-9DTE'EN9'MNE9'E3U(KN7T9V/<9F,\F(TO7%&_9VDJ*F4VIVD?U_% M(6JF[UI$YQ;WP<3N[./5$,X)R: E&5QZW !-A@^:X&SK3\9^A^BYC>\%HP[7 M"X!6[P#59,VC#JL I5G=VBK]ZDK5%V4[VW;/\ZII[,PO[,>EW3,?J6Z[;H[_ M@:];]<]JBQ J4 ZI"F4]C%51>-W^U@/)RJJ_VS"INL7J,5-?#,"U@7J?,B9? M!SI ^PT2_@U02P,$% @ "()L61^;PGZ& @ 8@8 !D !X;"]W;W)K M&ULK55=3]LP%/TK5H8FD(!\E\'22- *C8=)B,+V M,.W!36X;"\?.;+>%?[]K)V0MA&X/>TE\[7..S[VQ;[*-5(^Z C#DJ>9"C[W* MF.;"]W5104WUJ6Q X,I"JIH:#-72UXT"6CI2S?TH"$9^39GP\LS-W:H\DRO# MF8!;1?2JKJEZO@(N-V,O]%XF[MBR,G;"S[.&+F$&YJ&Y51CYO4K):A":24$4 M+,;>97@Q22W> ;XQV.BM,;&9S*5\M,%-.?8":P@X%,8J4'RM80*<6R&T\:O3 M]/HM+7%[_*)^[7+'7.94PT3R[ZPTU=C[Y)$2%G3%S9WPD%R[)]FT MV#,$%RMM9-V1T4'-1/NF3UT=M@AA\@XAZ@C1OQ+BCA"[1%MG+JTI-33/E-P0 M9=&H9@>N-HZ-V3!AO^+,*%QER#/YC5B#,%(QT,=$X*DY(3,\*>6* Y$+POXL MD\,I&,JX/D+,PVQ*#@^.R $BR'TE5YJ*4F>^04M6V"^Z[:_:[:-WMI]!KQ+][$0?36BOAJ1TXO_4HUG,F6ZX%*O%) ?EW-M M%)ZWGT/YM8+)L*"]@Q>ZH06,/;QD&M0:O/SCAW 4?![*]C^)[>0>][G'^]3S M:R88GJ.2+*4<_I0M?^3XMCNL\S =Q>>9O][.X2TJB9)1#]KQEO3>DKW>+CEV M&RH*(-BWB,;@I)9K)I8$CQV1;OI:%\R%$Z4,_07H,=2V]1\7F0OK+D;W4 VWV_4K5D0A,."Z0%IV>H MHMJ.U@9&-JXIS*7!%N.&%?X$0%D KB^D-"^![3/];R7_#5!+ P04 " ( M@FQ9B\F%7AX# "D"0 &0 'AL+W=OS#6%I M<-).VDV"X;S'SWGM@QEM"'UB*0!'VR(OV=A(.:^N3)/%*12879(*2O%D26B! MN1C2E<.,1A5>P1SX0S6C8F1V69*L@))EI$04EF/CVKZ:V)84J(C'##9L M[QK)4A:$/,G!MV1L6)((23T_(IQ$)N*[G[4FX*MSK+G,XR1^5S7['L\U;T$@/EQ:WRXEIY<($F MK2<_KQ>,4[%3?^F*;F;Q]+/(]KUB%8YA;(C^9$#78$3OW]F!]4EGP7]*]L(0 MMS/$/94]>H0R(50T3T58QK4+W"0(5 +Y9EE'@1/R%45A#66M]6[0]V7H>@>,_: @"/2,8<<8GF23]9) MQ'O"]7ZUNN!%D_K682_HPCPK'!YPF7M'J/Q^^8[I*BL9RF$I=-;E0-1%FT^" M9L!)I4[5!>'BC%:7J?B, BH#Q/,E(7PWD =U]V$6_0%02P,$% @ "()L M6>NNIG@Q @ ;P0 !D !X;"]W;W)K&ULA51= M;]LP#/PKA%8,+=#&KM-F0^<82-L-ZT.QH$&WAV$/BLW$0F7)DYB/_?M1LA-D M0-J]V*3$.][9E/*-=2^^1B38-MKXL:B)VILD\66-C?0#VZ+AG85UC21.W3+Q MK4-915"CDRQ-1TDCE1%%'M>FKLCMBK0R.'7@5TTCW9];U'8S%I=BM_"DEC6% MA:3(6[G$&=)S.W6<)7N62C5HO+(&'"[&8G)YSW7@*ZWV\0F;OC854*X\V:8'LX)&F>XMM_UW. !DV2N MK =D47?7**J\ER2+W-D-N%#-;"&(5B.:Q2D3?LJ,'.\JQE$Q==A*58$T%5BJ MT7%3Y] 02.^1/)Q.JDJ%#R@U/)AN"C@[@]-[)*FT/X,34 8>E=:\[O.$6%8@ M3\I>PFTG(7M%P@S; 0S3<\C2[ J>9_=P>G+V+TW"KO;6LKVU+/(._V/M\Y8G MV&.T^"U:G$1KYW#76_TYF7MR/""_CJGONEP=[Q(.S8UO98ECP:?"HUNC*-Z_ MNQREG][P,-Q[&+[%7LQJZP@(70/&F@ME.$1/%W.43IEE/R%L259K:4H\IK_K M,(H=PAE=%UF>K ]%)0?S$X[BHW1+93QH7# F'7RX%N"Z\>X2LFT00 "D: 9 M >&PO=V]R:W-H965TDQ(6XLR8T1UQ!N[2S9;+ 7L^ M+=$&+S'_5MY2<64W+$F:XX*EI 4KV?6)W@5PU :*,2?*3ZPDW,@0[DGY$%> M?$YFEB.?"&=XQ24%$H<]7N LDTSB.?ZI2:W&IS0\/7]B_U4%+X*Y1PPO2/97 MFO#MS HMD. UVF7\CAQ^QW5 (\FW(AE3O^!088.)!58[QDE>&XLGR-.B.J+' M.A$G!H)';^#6!F[7P'_&P*L-O',]^+6!?ZZ'46V@0K>KV%7B(L31?$K) 5") M%FSR1&5?68M\I86<*$M.Q=U4V/'Y%RRRS,!'L*QF"B!KH,9 _"@FHSB^CS!' M:<8^"-"W903>O_L WH&T %^W9,=0D;"IS<632#Y[57N]KKRZSWCUP TI^):! MN$APHK&/ANTG _:VR$"3!OYSW^ MW]Y;R?":.>$I/N_9.<$8QA?5/+@ $68KFI;JO?[^16#!9XYS]K>N[!6QKR>6 MHG?%2K3",TNH&L-TCZWYSS_!P/E%EW.39)%)LM@06:LZ?E,=?XA]_D>)*>)I ML0&9>D]7A'%=*2J60+'(OXO]W!VY4WM_FF$=!K8Q41\3!AU,W,>,_;#!M,(< M-6&.!L-<;@GE'SFF^0_BK&A&)[ZAXW3BU&"\3BZB/L9S_$Z<&HSGZ^,,FCB# MP3B_$HZR'X08]-WV2JG!A%XGQ#X&PF#4B5$# MXV*'P?<;G-]CJI600::72HA)LL@D66R(K%6.L"E'^%8"'YJLCDFRR"19;(BL M59U)4YW)JQ5ATG])PZ"C"'V,ZW=>]JB/"<*NN/ZR1^VJ9J"E.WUV_LRA8:#"PL^Z)-)AQ5R9TOIZ3B6,G @>7 MTJ*UR3*YU)4J(=K3!ZP6OH,:8;0%,$6 MZC=-@]T)EVIT(&4& MT4U:,)&TM7#E7(Z%JM'JNT1UP4FI-M[O">&PO=V]R:W-H965T M'/$#V$J1N5JN>U&JC31]T M.MT+!R:)58,YVR3=;W]C(&P"A#U%?9-@\(Q__QGC&68'(7^H'8 F/Q.>JKFU MTSJ[M6T5[2"AZD9DD.*3C9 )U3B46UME$FA<&"7<]AQG8B>4I58X*^XM93@3 MN>8LA:4D*D\2*I_O@(O#W'*MXXTGMMUI<\,.9QG=P@KTUVPI<6377F*60*J8 M2(F$S=SZX-XNW*$Q*&9\8W!0)]?$2%D+\<,,_HSGEF.(@$.DC0N*?WM8 .?& M$W+\6SFUZC6-X>GUT?M#(1[%K*F"A>#?6:QW79(6L M>ZII.)/B0*29C=[,11&;PAK5L-2D<:4E/F5HI\-/@#%0Y#U9E7DD8D,>?OF'7E#6$J^ M[$2N:!JKF:V1TZQF1Q737(XWZC!?])O?0X3F;F$^/#>W M,3IUB+PZ1%[A;W@Q1$H!#,AC!A)5'^,Q()\873/.]/. :$'6)D(L'I 'IB+* MR5] )?E,,90X@_S]8:VTQ$W[3U<\2H!1-X!YDV]51B.86_BJ*I![L,+??W,G MSA]=T?E%SLYB-:QC->SS'I9[)@9I]M&%]-V5+B:%"W/,[$-OB(G:GXKH7>9* M$:-:Q*A7!'*/N[A+J_$)=Q",&MR]GJ_D'M?X)UW[&_"(W'*B]J45;5HBX9TW;X S]H".E=ZDHAKO-2 M=)U>*::D$)9DN888BZ4&7$1W%DJG)>:]ZS6STK_:M6I.6@BW5\TBEQ*303(A MB]8,CWY1U\HR7_Q8*CM%NNV#U?>:&MU6U?!'3CWI'/VEM+N]U3!\O,0Y("GV MT*@D.A?7R>]U%(96CKP6OWMZ+)P+>*FW;G_!79J$(MZ>\ASZ(L^@NQ-K%V/7 M'X^;\+^T'-LG[:KY5OA,Y99A+\EA@^Z=&Q\C*+RQU^ MLH T$_#Y1@A]')BFN/X("O\#4$L#!!0 ( B";%FI?@5$WP, H4 9 M >&PO=V]R:W-H965T%6"5Q:Z8U:6=4LD"2><;1'7T0I-'Y2]*;-5-6FNIW$AN;J:JCP9 MSKE2!)>/B.0Q@N_KM%!S)*]0KA3T$BV4:N(U!<26J.B,1,]O09*4BA,RW6NGVZH]=8_?]ID=7:$Z)*EDWX/^Z 5_>J7!T)R$37[M* MW6'[W=AZE=Z(@D0PM=0R%, W8(7__H,#Y[^NPGL":[7!J]O@F=!/2F7%F>B< MY!U<4,+IQ\DF]$?^<&)O]BLZ#O)\SZN#6DS]FJEO9/HJBM;9FA()L5K2JA51 M2O1#HXOD#FFP=_^7KN^-#EAV1.$ .]TT!S7-P5\U5*V]+J:#(PZN[XP/B!X' MX9%[HIU!S3,P\GP'ZCF9,!JCNTP]!3:@:0KTY3UD#\ [16\$/%?T/8&U:A_6 MM0\ON/:'?;:A)[!6&T9U&T;]KOW1D0Z]HT5U'(,'PVZICFN>8R//-RG0U@09 M-&I$.G=R>@)K%8V=YB7N7%"E%7A/G>@+K=V*/3^#^U5JA=>2(78.M=H5Y01N MMUIQXRRP\8T=WN4[)ZX=[3U$2YA[QM2IE5FG1HBS)Z^"(\O*=M>O5)?:.V/^<8LN48' M7>S0.3DF7E80(D!JX#U/4E8_)IH+>#ZNV_\!=02P,$% @ "()L6=!> M:WNB @ Z0< !D !X;"]W;W)K&ULK55=;]HP M%/TK5E9-K=21D*1=QR 2$*KUH1(JZO8P[<$D%[#JV*EMH/WWNW9"!E7*JJTO MB>V<<^Z';^[M;Z5ZT"L 0YX*+O3 6QE3]GQ?9RLHJ.[($@1^64A54(-;M?1U MJ8#FCE1P/PR"2[^@3'A)WYU-5=*7:\.9@*DB>ET45#V/@,OMP.MZNX,[MEP9 M>^ G_9(N80;FOIPJW/F-2LX*$)I)010L!MZPVYO$%N\ WQEL]=Z:V$CF4C[8 MS4T^\ +K$'#(C%6@^-K &#BW0NC&8ZWI-28M<7^]4[]VL6,LX2EU)#D[Z26Z(L&M7LPF7? ML3%?3-@ZF1F%7QGR3#)56'+*/!,J<@*/:U9B$9AS(K!$/Y%AGC-[GY23&U$5 MI;W=TQ0,95R?(>1^EI+3DS-R0I@@MXQS!.B^;] W:\'/:C]&E1_A*WY$Y%8* ML])D(G+(6_CI%9Q!V2%1<$["((Q;_!F_G1ZUA?-_ MUB?_;/T@&5%3)9'3B_Y2)>=DRJDPKE@FNV(A/X=S;13^\K_:[KU2CMN5;1OL MZ9)F,/"PSVE0&_"2CQ^ZE\'7MJ2_IUCZGF*3=Q([N)ZXN9[XF'J2 HIFK/HY MX0EGB(:VJZA4NE4OL!-DDP0=K(_-?HI;0>$A*&T%71V")JV@RP94A>KO]:X" MU-(-#4TRN1:F*M#FM)E+0]>.7YR/NKUQM^4\Q3E6C9T_\M40O*5JR80F'!9H M*NA\QM:JJL%2;8PL7>><2X-]V"U7.(M!60!^7TAI=AMKH)GNR6]02P,$% M @ "()L6=%?!^[7 P 114 !D !X;"]W;W)K&ULM5C1;MLV%/T50BN&%F@B4;+L)+,-I Z*!FB H&ZWAV(/M'1M$Z5$CZ3L M9-C'CY04R4IE.DKEEUB4[CT\]_"2.>!XQ\4/N090Z"%AJ9PX:Z4V5ZXKHS4D M1)[S#:3ZRY*+A"@]%"M7;@20.$]*F.M[WM!-"$V=Z3A_=R^F8YXI1E.X%TAF M24+$XP=@?#=QL//TX@M=K95YX4['&[*".:AOFWNA1VZ%$M,$4DEYB@0L)\XU MOIKYGDG((_ZDL)-[S\B4LN#\AQG\>%W,@DB8?H"PH-'@19S+_BW9E MK.>@*).*)V6R9I#0M/@E#Z40>PEX="#!+Q/\YPF# PE!F1#DA1;,\K)NB"+3 ML> [)$RT1C,/N39YMJZ&IF89YTKHKU3GJ>EMJDBZH@L&B$@)2KY'J6X>DL9H MQ7F\HXRA,S0O%AGQ):+/$]#;&U"$,OE.!WZ;WZ"W;]ZA-SH.?5WS3&HD.7:5 MIFHF=*.2UH>"EG^ UAPVYRCPWB/?\P#%V MM_O%M 6%8174(#FH2 ZL)*^C*$LR1I1>*Y)PH>B_Q!P9;20+I'!O_C-_$.!G M+-NB/!RTTPPKFF%7+?7.:R,9_B02#D;/*(8_40P'?CO!845P:"5XIYL^R1+T M_0Z2!8C6SK8B=.WLGL :Q8ZJ8D>GW.&C/G7H":RAPT6EPT77K@2I:)+OIDS" M,F.(T26TB6!']M$C$"'1$"4\5>NV,V-F17AEY9=5Y9?V=BY*B+[2F%GL>")^LZ8] !T77MQ9MS7QMT;6EP5:GH#W2 M5IOXC:[P*T3KE#.^>K0VOQVO\Y*?PL?@VLC@X*3M;_5)G;7H":VI1>V7L-TP M=7%U)=016]<:=GK2+>[5O M?:$UM:@-'+;ZHE\[Q.W0+[$N=HC75E_;-FQW5T>WQ@O' M+T^Z-7JU>GVA-2\O:J_G6_W3+VV-(] 6?V//[%JTNW?'92X8[XA8T50B!DL- M[YV/]$DLBCN[8J#X)K_V6G"E>)(_KH'$($R _K[D7#T-S$U:=7,Z_1]02P,$ M% @ "()L6<;, 3&J @ ^ < !D !X;"]W;W)K&ULK55M;],P$/XK5IC0)FU-FF0#2AJI;XA*FS2M&GQ ?'";:VK-L8/M MMH-?S]E)0S=EI8)]2>SS/<^]^'R7;*5ZT"L 0QX++G3?6QE3]GQ?+U904-V1 M)0@\64I54(-;E?NZ5$ S!RJX'P;!E5]0)KPT<;);E29R;3@3<*N(7A<%53^' MP.6V[W6]G>".Y2MC!7Z:E#2'&9C[\E;ASF]8,E: T$P*HF#9]P;=WB2V^D[A M"X.MWEL3&\E[F69]+[ . 8>%L0P4?QL8 >>6"-WX47-ZC4D+W%_OV#^Y MV#&6.=4PDOPKR\RJ[[WW2 9+NN;F3FX_0QW/I>5;2*[=EVQKW< CB[4VLJC! MZ$'!1/6GCW4>]@#(TPX(:T#X'!"_ (AJ0'2LA;@&Q,=:N*P!+G2_BMTE;DP- M31,EMT19;62S"Y=]A\9\,6'K9&84GC+$F70J#!4YFW,@5&LP^IP(K$XJ,I)+ MF6T9Y^2"#+*,V7NEG$Q%59SVED_'8"CC^@Q5[F=C=D;WR M&;CR(=^N$4.F!@K]O>WZ*P-QNP';%7NZI OH>]CV-*@->.G;-]VKX&-;[E^3 M;/R:9)-7(GMR2W%S2_$A]G102&78K^J-PB..% UM5U&Q=*O68 ?*)@TZW<3? M[*?X&*5QJU+\5&GR%Z4J5'^OE16@Z-N MBWR,8ZV:0G_HJYEX0U7.A"8UCMP4VFB85C9VVWA7^_8R<-I82*PUX2VYGWYLVS,QZNI7K4!8 A M3R47>N05QE27OJ_3 DJJ3V4% K\LI"JIP:G*?5TIH)D#E=P/@R#V2\J$EPS= MVJU*AG)I.!-PJXA>EB55SQ/@MYFX8[EA;$+?C*L: XS, _5K<*9W[)D MK 2AF11$P6+DC7N7T]C&NX"?#-9Z:TQL)7,I'^WD.AMY@14$'%)C&2B^5C % MSBT1ROC;<'IM2@O<'F_8O[G:L98YU3"5_!?+3#'RSCV2P8(NN;F3ZQ_0U#.P M?*GDVCW)NHD-/)(NM9%E T8%)1/UFSXU/FP!D*<;$#: M'2HRDDN9K1GGY(3,ZCTF 6&,JZ/,/!A=D4.#X[( 6&"W!=R MJ9%)#WV#4FU"/VUD36I9X3NR+LB-%*;0Y*O(('N-]['$MLYP4^.;[H';[OK8MH]-8>C-T>D"NF4R[U4@'Y/9YK MH]#L/UTNUEGZW5EL![C4%4UAY.$OKD&MP$L^?^K%P9+"5,C[?4?4VY"2Z&'2KBEM5\4<-!#Q3>ZV+ MW[K2#WL[(CN">OUH1Z2_U7E*4+EKR)JD&ULK55M;],P$/XK5IC0)D'SN@(EC;0V151BTK1J\ 'Q MP4VNC37'#K;;CG^/7]+0C:RJ8%\2^_P\S_GNK+MTQ\6]K 4>J@IDV.O4JH9 M^;XL*JBQ'/ &F#Y9<5%CI;=B[5EJ;3 T+4'?-C= [OU,I20U,$LZ0@-78 MNPI'L\3@+> K@9T\6",3R9+S>[.9EV,O,!<""H4R"EC_MC %2HV0OL;/5M/K M7!KBX7JO_LG&KF-98@E33K^14E5C[[V'2ECA#56W?/<9VG@NC5[!J;1?M'/8 M8>*A8B,5KUNROD%-F/OCAS8/!P2MTT^(6D+TE/"+,/-.%DKH4Z)Y*LMAJ=!;=%66Q!0. M4S1G[O69,I[GH#"A\D)#[A8Y.C^[0&>(,'1-*-4 F?I*7\)(^47K<.(<1L\X MC-$U9ZJ2:,9**'OX^7'^AR-\7P??92#:9V 2'15<0#- CH] M[@OG_[S/_MG[HV3$W7.(K5Y\[#G,F51BHYN!0M^_: ":*ZCEC[Y:.[6D7\WT MN)%L< %C3S#A+ZRN 4AE;!3(9M%J3^]C"W#A&&AY!!\AB4GP*:_>TK[! N0/^@'=4@ MUG8.2%3P#5/N*7;6;M10FR1]Y-]>NL5@3)A&%E785 M#-[I;BGKR ,0)^O.%?[C7'0#>SL-U!+ P04 M" (@FQ9]>>1O?,# "=#P &0 'AL+W=O^ M_0XE65$H176-O-@ZYC^:WPR/X7C/Q0^Y(42A0YXQ.;$V2A57MBW3#8,FLZ+I_=B^F8;U5&&;D72&[S'(O' M&Y+Q_<1RK>.#![K>*/W GHX+O"9SHKX6]P+N[,;+DN:$2]FZ1AIEP?D/??/7R_$7[VM:Q M4+J5BN>U&"+(*:O^\:%.1$O@>R\(O%K@&0(W>$'@UP+_5$%0"X(R,Q5*F8<9 M5G@Z%GR/A+8&;_JB3&:I!GS*=-WG2L!;"CHUO4Y3L25+1 XPDB21"+,EXFI# M!'Q=",(4RBA>T(PJ"F_?HSF,O.4V(XBOT%%\UQ9_+L6WM?AC2_QV1A2FF7P' M;K[.9^CMFW?H#:(,?=GPK02M'-L*F'1D=EK'?U/%[[T0_YP4E\AW+I#G>$&/ M_'98/B,IR-U2[O?(9Z=_W9#;4(BF&EY3#:_TY_^D&B8:4].0&5V["= ,\-#?X>HR!T#?S! ,_$#QO\\,2*YWI68;W? M]-&&'1 _&IFT/49)F!BT@_&<21LUM-$@;;5:8&-9[^.-NBBA[QF\72,OCB*# M=S"B,WGCAC<>Y/W"%*JI]&+SU]M=#7K\U;[@M;P]KT>K%78'^3]Q]GY%EI#!#"E\0'R1 MT769S?[&U.V,PL#8]VYKFV>[HVO.L.&PSL5^ZCG=P7[KC++?U![;Z*,D,F=@ MCU7B^N92.AS=K]+;K:.0/KC^C<6:,@F+R@K<.Y!J3N33_P%02P,$% @ "()L6>Q*G'AT! MTQ, !D !X;"]W;W)K&ULK5A=;]LV%/TKA%9L M+;!$G]:'9QN(+1D=L*)!O2X/PQYHB;:)2J1'TG'R[T=*BF)+C*JY?K%%ZMQS M>0\OKTA.CI1]XSN$!'@J;I#!>2W=(^(?+.AK(!"-MG6Y'N& M8%8:%;GI6)9O%A 38S8I^^[9;$(/(L<$W3/ #T4!V?,,+WNZ$ MZC!GDSW/>NQ-*5>CF?.BV=SI)5RA_2UPK5^!8SF>9CR+X>:N+IP?\Y[\F/=EOWF, M4FENZ\S/M'2;_'-+/O<[^9>$VR^)IDR37)EE%*HX:%4>]*CY455@M#\RY6DQJ#3%4H S# MZO.=R<('L@-3^LJUU2-PY6IT$JYK1:UH%UV0;84M4-P%>8';FJE$XRYRPY:X MO>%?**[?B.OWBBNW5B*74A+!Y6%JH:-JN'0 HKDFO^%]^1D MV%VT=M!>:PL=*AJULW(05S*(:]D;X87Z18U^4>_NXZ&S@84,R=*YITS(BHG) M6*=D=,UMQC7)XFN2)=OUD&/UKI//;QUHM*<1JY.W8>2UJ[<& M%7260#R(*QG$M:Q1IUN1P E>NQI8,8UMJ8:?[XDH? M\^3.H4!L6]X.<9#2 Q'5\:_I;6Z@[LI[EU;_W!XO;$U_;(^3ZG[IE;ZZ[OH$ MF3PL<)"CC71EW08R,5AU@U0U!-V7-QYK*@0MRL<=DILWI@#R_892\=)0#II[ MO-E_4$L#!!0 ( B";%EU"OE540, +4- 9 >&PO=V]R:W-H965T MJZ3-+1;R#K(2QL[]YQCW^/8UZ.MD#]4 J#)799R-;82K3=# MVU91 AE5)V(#'-^LA,RHQJ9B9G)C1 _3.,\'EN.&1"D$&G#0/'O%F:0IH8(A_&S MXK1J20/E?E80^ /,T KP)X#P&]OP#\"N ?J]"K +UC M%?H5H'\L(*@ 09'[,EE%ID.JZ60DQ99($XULYJ&PJT!C@ADW"VNI);YEB-.3 M@>*O"-G<4D8)Y\3 MD2O*8S6R-8[&<-I1I3PME;V_*/OD0G"=*#+G,<0-^+ =?]J"MS$+=2J\72JF M7BOA$C8GQ'?>$L_Q>@WCF1T/]YNF\W_J\_]37[3#0X@0[C;!#W+IU\O*+_C\ M)Y<5F:%+C*^!1_?DVR>,(^<:,O6]:<64I+UF4K/'#M6&1C"V;7.OC7UGLT:;X0[/.@5-KI8<0<%A#KK; MB=?#)7Z[;];C&#<(#F/"!I[3]X0?\P9M$ZIW_,6+_.6+\U8TM-=:Z% MO">2ZL9LM>*?^PUT21:69*=[N75.//>! 5TJ+CHB.W JJ)T*6IVZ0'\DPX,P M2BAN7^:TR[F$2*PY^P5QL>AO@,.*Z<;3KY7]N3YV218&C[X1YX&)79JUBC_7EB?EYEW* M+=KDRES;>V5E!G)=7 4B43.=5D*U+WU'>.L**T?]$_=X4DH&UILBJ+V1F@LD8O'!.]5($T OE\)H7<- M(U#?U":_ 5!+ P04 " (@FQ9Z)#Y=\\# #K"P &0 'AL+W=OD9-D)7*$K&F! 8/'M'CYWSQUSD[W2GTV&:.%+ M+J29!IFUQ4T8FB3#G)DK5:"DG8W2.;,TU=O0%!I9ZHUR$<91- QSQF4PF_BU MI9Y-5&D%E[C48,H\9_HP1Z'VTZ ;'!<>^3:S;B&<30JVQ17:#\52TRQL4%*> MHS1<2="XF0:WW9MYUQOX$W]QW)NS,3A7UDI]=I/[=!I$CA$*3*R#8/39X0*% M<$C$XY\:-&CN=(;GXR/Z;]YYU_QUKAP8. M+U'"^%_8UV>C )+26)77QL0@Y[+ZLB]U(+[%(*X-8L^[NLBSO&.6S29:[4&[ MTX3F!MY5;TWDN'2JK*RF74YV=K90>6<6'>PBO@$O[,5&G(W$Q"2Z0<=)C4!.85@?@K!,;P0%=F M!GZ5*:9/[4-RIO$H/GHTCUL!5UA<02_J0!S%??BPNH,WK]ZVX/::2/4\;N\K MN$NMTC*Q\)%IS:0]P'O.UEQP&GUZ3V?AWF)N_KX4@0JX?QG8U=V-*5B"TX * MRZ#>83![_5-W&+UKH=UO:/?;T&=W:!+-"Z^:VH!EFF\V!A+!C.$;GG@]+Y%N MA[V74#!M>5(*ICNPF"^IP!(L+*:@2@V%,CYOP&;,T@_"JJ[#7M1M6!"A>/ S M* VC*_?=^),[)DH\3G+424:IQ0UVJ-SH-4HI/\$A>Y!GGG2 &=A3D;NOLR>I M>%KFA3-R"9ZH4EJ*,66O6TI+2XG> 8K\CE,2BP,9&J2_%$K*2.U!_M!\RUT- MC'MCN/7[KF2 :02IZ%L4@@BL!=;7'OR6D@[NM&<5^)@)-%5<5(5KT171(J-A MB^*#1O'!?U'<.>:\^7;EV^&?*?__E_:"2"=EA_'@7%!ZX?RR83E2Y)@A,L8R ME]5LK79(K[/-:,,4Y++3TQU^K"/\-#DZL,]XDD%&;->(\E0?ZX.KEQ:EAXW2 MPU8IGF7CIP?,UZ@O/D&M0-_Y!(T:FJ.7>CE'+T#[NJ%]W1K=A3+6I2IK(GR) M884Q]!BN!=K-XJ@;3<+=A9O'S:_[S^4-S_HO>M2VOLLTU7M4M6+-:M/)WE;]V^EXU08_ M,$W_$0P(W)!I=#6BQUA7G64UL:KPW=Q:6>H-_3"C;ARU.T#[&Z7L<>(N:/K[ MV;]02P,$% @ "()L642=T:%4! ?QD !D !X;"]W;W)K&ULQ9EM;Z,X$,>_BL6M3KM26S 0DO222&U@[U;:2E6S>_=B M=2_<,$E0 >=L)^G>IS_;4!(>BMJ>I;Y)L)GYV>,9_HG-Y$#9 ]\ "/28I3F? M6ALAMI>VS9<;R B_H%O(Y9T591D1LLG6-M\R(+%VRE+;=9S SDB26[.)[KME MLPG=B33)X98AOLLRPGY>0TH/4PM;3QUWR7HC5(<]FVS)&A8@OF]OF6S9%25. M,LAY0G/$8#6UKO!EA /EH"W^3.# 3ZZ1"N6>T@?5^!)/+4?-"%)8"H4@\FL/ M$6M68RO'T^HG^60AC XO]=UQZKKO24A #352_.OL9]O!X8N]/E[O#"(_= MNE'8-O)=WZL;16VCL>/[E5$M[$$5]J W[#GE M&5_%W;0[X#].,&LGM@G578 M2WIM%9J$A29AD2%8+1U!E8[@G:4D,)E$D[#0)"PR!*LE<5@E<6A<2@KBX.39 M;CW_\[8-'N&&D+1M@G%#D:(.CH>];AT953&/>F.^DZM(V'*CZS*68I+2K:[> M/D'I1;ZV%DW"0I.PR!"LEI=QE9?Q.PO*V&023<)"D[#($*R61.P<=R*.<4DI MD:?/^;@I*1TVHT%#4CILWT)0.(]\?=VL*/MF X?ZPY28YR=>Z-N5>_0&$ M:O5)2C_PM>5HE!8:I46F:/74N,?4N.\L+.4$3*72)"TT2HM,T>JI/&Y?<>_& MZFWBXK7_1#BCIKIT& 5!4U[:1F[3*.HP&KGX&7DY;OEP_Y[O=\B!D517*(FS M)$^X8$2=SO5K3"_UU85IDA8:I46F:/7\'/>F>/#>&F-T3VN4%AJE1:9H]50> M][6X=\?U-HT)6@<>H^&@J3%MHV'@-#6F;>0Y&#=%IFT5^$%39>R3 ^4,V%J? MY',9E*RWXLRPZJW>%ESI,_)&_S6^G..._E"]7= 'V$=\\6KBAK!UDG.4PDH. MY5P,94Y9<=I?- 3=ZN/L>RH$S?3E!D@,3!G(^RM*Q5-##5"]F7!BCG>1W.&]L^(42@'TF<\LO>1HCM>;_/ M@PU),#^C6Y+*_ZPH2["0NVS=YUM&<)@')7'?,HQQ/\%1VIM?Y,?NV/R"[D0< MI>2.(;Y+$LR>KDE,#Y<]L_=\X#Y:;T1VH#^_V.(U61+Q=7O'Y%[_2 FCA*0\ MHBEB9'79NS+/?6N4!>1G?(O(@9]LH^RK/%#ZF.W],>"LD*[V)Q3P\^ M*;]0WL" QCS_BP[EN48/!3LN:%(&RQ8D45I\XA_EA3@),(>O!%AE@/4R8/1* MP* ,&+0-&)8!P[9-&I4!H[8*XS)@W%9A4@9,V@9,RX!IGMTB'7DN;2SP_(+1 M V+9V9*6;>2&R*-E"J,T\^Y2,/G?2,:)^3V)L2 AVF(FGI!@..4X=Q5'']%5 M&$;9-H[135K\3C*_O;>)P%'\ASSCZ])&[]_]@=ZA*$5?-G3'<1KRB[Z03X;,P0=D&=9 =3WTX2YY.$/6- ^W5)>CA?K R,.'BG"G?;BJ\>ZOJ7N_ MIN[KPVT2R'!3%5[+Y.#X"QGDO,%/?B%W^2_D2_4+0=]OY:GH1I"$_ZUHYW7! M':JYV:!TSKIPPO:D-__]-W-L_*GR"R3,AH0YD# 7$N9!PGP@6,V# MPZ,'ASKZ?"EH\/@Q&Z-#M*")G+CPHBMV?F3;!-V3/6%(ZV]ZI, 1@(2[?%#3%0# M^;46U=5.D#![U'# P)B,Z@YP(!7=-HH>I*+?5)R.IT?!6O;'Q^R/.V0?!P'; MR;V IX-(+3UD'H,JZEM UZY P>]*\(M/)T'J1=DA)MY6D!RGI M-R4GL\E,G??I,>]3?=[C[0:CI2 D1M\_D>2!,.6,5DOIFGM(F T)Z*YJ!NE!2)@-"7,@82XDS(.$^4"PF@=-HRI^&7 37SVK MJ_- :79).QT5!HV['P=4TVVEZ8%J^@K-V8EDW08G-5#S;6; >FYG2T#2[))6 MGY(V+0&IZ;;2]$ U?97FZ%5/6)4G+*TGOI$TI S99$MY)-0=@I;0.?N0-+ND MU:Y*,_F0DJY"TIHVDP^IZ4/1ZB:I2L.FMNHW_T(%CLMQ0_88-^F>1@'A:,5H M@DXFU4KW@):'06EV2:O=9#3= UKX;2/I@4KZ"LFQ]6K/4=5J37VQMLU-M![1 M.?F@55E344DUFMF'U'1;:7J@FKY"\[7<5X544U])=0E+#V2#G'2-U[)'^+PE M# LYCF15>YP^H=O;A?8.6\_O; S0^BHHS0&EN: T#Y3F0]'JGJS*N^;XC6ZU M3= *+RC-!J4YH#07E.:!TGPH6MV,58'9U%>8EQLLL>B&B*2:NN2;;] ;F4K4@DU"N<9K,F*L=QHS& +/2-ZVQ!2)H#2G-! M:1XHS8>BU2U8U;I-?;'[:XH3RD3T;^8U1K8X"M$UCG$:J*=JT^8B7^.>=J'7 M[.PLT'(V*,T%I7F@-!^*5G=65=,VM>7*^9+NQ ;=XD>"/LN!]:=S/=!2-BC- M!J4YH#07E.:!TGPH6OVAPZJ@;1EO-->S0*O;H#0;E.: TEQ0F@=*\Z%H=3-6 M975+7U;_O!-Y(-;4BLG,CI@9U-6-!FIS?X9\:+AS)L M4$T'E.:"TCQ0F@]%JYNKJL];^OI\O:=['F;1?^B72S!ZXJMGR"W050)0F@U*)Q6"N#Z^LT= %R] :8ZE> Z[:1'0 M-0F%I*6P".A:0__DQ<*$L'7^DBE'^?IF\0;5\>CQ1=:K_/7-%\=M\]PQ%<== M\]PK7E.M\,5;LY\P6T1"UV!-WFKS4^4"%HDF]N" X) MRTZ0_U]1*IYW,H'CZ\#S_P%02P,$% @ "()L65]4D$DA! EQ0 !D M !X;"]W;W)K&ULK5A;C^(V%/XK5KJJ=J6=R?U& M 6D8+J'J5J.ETSY4?3#$0+1)G-H.;/]][22DD#5IIO4+V,[YOG.._<7'\?B, MR1=Z1(B!KUF:TXEV9*P8Z3K='5$&Z2,N4,Z?[#')(.-='H&DUR;CJNQ%S(=XY*E28Y>"*!EED'RUPRE^#S13.TR\#DY')D8T*?C A[0 M!K'7XH7PGMZRQ$F&OVJQ9]#!J=C@L^ "&O.)AJ5@BHT7_,D%UK?,,*?)AS'IC_SU^DG3"EX001L MCI @\ V_(V*RQ0!O ?/."M*!BME\NX,TF0'8!Z#>9*6#,5=]/LY8C!)Z0?. M\[J9@_?O/H!W0 =4/*4@R<%KGC#ZD0_R]B]'7%+.1LIG%F]A!M4/ +;^ @LPW(D\3SW MPW\L\U[XO!_^"1(.-^_"%\.#MR7PY?#@9?#5\.!E\.C_S?SZ/^=^(P2[?:?L MBL^^P[> )$_RP_5;\?O3EC+"=_8_9$*OZ1PYG:AV(UK '9IHO)Q11$Y(FW[_ MG>D9/\A4II)LKI)LH9)LJ9)LI9(L4DFV5D1VHV.GU;'3QU[5AI3O[C+)UDBO M0HKSU&GZ8+JV&X[UT[4896:6Y9BW9G.)6>#[':N%C,P+;?_6;"DS,QS3N35; MRW9W=C6,K/0-.W6[&8%W'8%W-X5J*OMN3JQH?@!GA#A!U"0 ME]F6;RV\'.]PEO'"W!17?I:EC%=3OOG(UJSVY5[%:%J^'1A6V$GZN3>JM^XA M*LD6DAS,T _MP.JLR%*EVY5*LDBV#IYE.V'8D?):EJWEAXY[)=,;87FML+Q> M85T.;ZJDY0V65F]<;Y662K*%)(<[TE+I=J62+)*M@UQ:LFQ[I>6WTO('[%FB M;H""*ZG2CTPR-4MPO6,:CV97+KV^WBH7E60+>?R=*K-4Z7*EDBR2QF]U"OA: M:F6[DIR"%.VY*^/1Y_L>J:_!Z@[#175'LL6,X:QJ'A&,$1$&_/D>8W;I" ?M M7>3T;U!+ P04 " (@FQ9+-'JF*(# ")$0 &0 'AL+W=O% M7!D'IJ8P5L!%$5GE.Q3^WD/'CRK"-UXD'MC\H/6&&RY+N80OJ]W(C<&1VE)3E M4$C&"R)@MS)N[.O8MK1!O>(/!D=Y Y6?.\K!2MM4>C2!O@/4V_*Q*>PPG_NP@499G\'CU)/2.7IL*MZ(#, MI W[M@G;>2-LE]SS0ATPC )C&+"/QNV#$7L34]CET7G-XZTS"MQ">45E%XG MI3=&#S=< :I),X)/<8Y*-4\L@9Z4:?N\%_B\9[J;E*AAO7)(ML;CK/:HO\B> M0SNPYPO?=I;F\ZDD PMMR[6"N=5?&%U*C"\@]M(TZ](T&TW35O'DB?Q6ZF*6 MY/T]Y(\@!FMVE/.I-3LE+)H2%D\$ZXDQ[\28?Q7M9SZEE%/"HBEA\42PGI2+ M3LK%%V\_BX]Z@.,L_,#US[K/Q^M$15/"XHE@ M/2EMZ\,AR?KB;:AUV?LM,O?Q;^&=-:*!E8O =WS'/NM$%R/C"Y!-JLR3HV4. M8E^?Z26FH2I4@%>'_'4;9VH!UT;U_"?P%0 M2P,$% @ "()L6;8K@>]L! L1@ !D !X;"]W;W)K&ULQ5E1;^(X$/XK5FYU:J6VB0.TM >16KJKJ[1=H7*]?5C=@PD# M6$UBUG:@E>['WSC))H""KZ"@]@%B)_/-?./Q\,7MK81\47, 35[C*%%]9Z[U MXL9U53B'F*D+L8 $[TR%C)G&H9RY:B&!33*C.')]S[MT8\83)^AEJ4/HWA^O4O]"\9>20S9@H&(OK.)WK>=[H.F<"4I9%^$JL_H2#4,7BA MB%3V25;%LYY#PE1I$1?&&$',D_R;O1:)6#.@[1T&?F'@O]>@51ADF7/SR#): M]TRSH"?%BDCS-**9BRPWF36RX8E9QI&6>)>CG0Y&Z5C!SQ0233XO\5.1D]O) MA)L4LX@\)'FAX.B4G-R#9CQ2I^2<;)OAU//HGIQ\.B6?B$O4G$E0A"?D.>%: MG>$D7C_R*$(DU7,U1F[\NV$1Y5T>I;\CRF]B>4&\[AGQ/;]=8SYXASFM-72$_/B*D.1!0ZS^J4M'[K]=[]]L[1NU8"'T'=R["N02G.#WW^BE]T==C"!,)=)/A,:"P%+*1E@,;\!D;278\3H[#0=6PP-IMDN:;6M8 MGU]!AEP!&4H> A%3\IV96L#])"3)FF,MV1RUFZ&:CKL,O N/]MSE.C&KZP.) M=4IB'2NQ@@:!UP67>9'O7#D[$O5V+YW5\D"&ER7#2VM<3\#C<2I5OFL7N([X MC;]@=0QSI.O-Y6IM+9?5W8%DKDHR5U8RV(UB7**1%N%+'0&K];Y]I2&P#:+= MDFCW@UMPM\E4-02VD:KK,E77UIH8IC*<8P+(JFA)=6QSB,Y:9=.KCF?^MJK; MZNM )M2KU(IGY?+(7GF1% 4^EJ M"&TS794PHU8Q$WP5R>S\+Y QN8>Q/D,!JP']:/+$=&U'+_ V6SK=;NEVKX>R MJC04M8N>1Y[\?]4W)'\*PL<04[124[3]T57?D*@JTG4,B48KC4;MTFK_JN_4 M5?VV[K1[/915IPG?(?XVSTDJO>;;]=JA[\5VV+T/0#S[:_8FN4J;^58Q$R"GI:F\ M88219!OP7_+NIF7'WIOA,627OW8>]N$'8LV>B!U#S_F5GO/M>FZ_IE6 69N6 MW>&^A-RU\V1SF/_(Y(PGBD0P17COX@I;A6QEM@)A="C\*D#07N]CD;A;WD?1@XN8G,Z"A\O'C[8R'US9O W<_>G9UU'R]O M]N,7%K@,(Z_HU1&BG:ZY4&6+8O+)&B=;LOK MH/G2HZ9R8"96.&KV>CS,I=AL>1RZ@,E,2AH\$3X*)X2SJ6+ RDG)^,J%^Q"8 M22Y5H$VM&2L]B-2_'-QS/2C#1J=D0BJ;VV5PW]-F^!ZP[H%!QGEKL!^ZP'A8 M$:VI$K>F8P?;X#,H:-H/J\HX+!19]?I7X89@;R;)5*J,JC9-+UR'QD-.<["C M6#&'NY95!*#6LC2-C)%""F(]K!E-P\C.*.?W\(Q^SW>TE_G6GG9A1T7;-(:: MII-Q'=#?5G/:V[+]%^D&%7N2^M/"3$?8/M0*O5,T9TO;7^:M 4R]AZN3JN*K MCYP5HJ1N\DJ!+O2ZG98Y[ M[I^@Y[^[S@455!&^;=K4_FM>Y1<[CJ__E67[6V7?L-=C\^)][2:O3L%D<@HF M3Z(F!Z=@,GV5)J/F!;YU2M@Y([31 ,YBH_ ;G/KX)FDP73"NF6AZ5',([#_ A@6![, <9Q+"S/_S2? 3H? MAV'>!EYD@'(&*,>Q?,C$?K \?DYJ+O],TS2.DP1;TFA"L%FBE8&"[@-4. MY/?G@9KR<^(8=A7SACW!.)*F& *UZ*_1)$%6)X&/?W^PIR2.T]2/ .9W$,<8 M D\CCF .P .&Q+%]#^Z]CZ+U>RK:_.=L_!M02P,$% @ "()L69>*NQS M $P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/ M:(7->=I3W;+T]!;X"O M.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_ M'7P+C3L')W:?N_W2C7:UTH:YLT=3*A*X?G:HBH/$;O?4# M862MIH/#*4*:4ER; )TD9J:[%9P;?RE\]:SL?G4 7-2'[ES# 3 M$;+7DSD!F;\F9(H@)P3DA!=R+I_$SHNYT? O>.%6S1U+=U3!/-Z;31<)F.L+ K;0*Q$D.\) MR/>\D-?_-3%JURIL;"FTV2D?XB4X=H^HX#WBY9L9KTOEQ)V3)6A.7#@GS3J& MFX"'>4P*AMDP%W?_"L@EUD[6&(G2R9C9)Q?=)//"J4+IG81O_U,8U1M6RB1C M9I7,8**9 #F3\D=K-?\H38VY1.+C:012)O:8@H&SC!4?C2GEBS"R*&63F9AV_M!O(;M:UP&MK M2XQ)&6/,K(PKM>QU&26&,;,9((2X!I*2Z\=M3%5\VUE?VS5Q"6L"Y\V4(!)V M012V5N)./O861$()(6'?0'DI4RA^Y#DCH-9$8M@B_NS3[++ M0NLXR,]W;0FEB(19$;>Q$=CF,H86\#_PM9OU7@]2LDB89?$%[GMC?9LBB\5& M]K+BA/)#PNR'1;/T$(BCMZYWSU*EA%)%PJP*,B?N[R M)?F%2>DB8=;%\RQJC^?_P("40Q)FAY#I5+^L03DD979(ETZ=ZKV4TDC*K!$B MKXJL&),22*[*EE&M29M?\K@(CSL1%6>(R44JY)F5V#2IR[,GB M*;+:%_PQ)F6#BO5"MM5/D% MOL)#>R&K8@X1#EZZ9PBR//X)N&JJZA+:OIH;*\O#LWZ'YQ0__@102P,$% M @ "()L67=+<84& @ \20 !H !X;"]?;7/2Y;)-X^V,YOGI=N;B]7/(_S.QWVSVZ_RS7_\^ MYM/TC\'I3S^^EUW.4[-X[<9MGE9-^CA<3Y=T.7*S>'E;->/+FS2I=I!" MD-8/,@BR^D$.05X_*" HZ@>U$-36#[J'H/OZ00\0]% _Z!&"'NL'R1)E7!(D MS; FT%J0:R'P6A!L(1!;D&PA,%L0;2%06Y!M(7!;$&XAD%N0;B&P6Q!O(=!; M46\ET%M1;R706VBOJK01Z*^JM!'HKZJT$>BOJK01Z M*^JM!'H;ZFT$>AOJ;01Z&^IM!'K;;+.$0&]#O8U ;T.]C4!O0[V-0&]#O8U M;T.]C4!O0[V-0&]'O9U ;T>]G4!O1[V=0&]'O9U ;Y]M=A/H[:BW$^CMJ+<3 MZ.VHMQ/H[:BW$^CMJ+<3Z!VH=Q#H':AW$.@=J'<0Z!VH=Q#H':AW$.@=LY^5 M!'H'ZAT$>@?J'01Z!^H=!'H'ZAT$>K>H=TN@=XMZMP1ZMZAW^YUZE^GSD,NU MYVN-S_].JJ?SO?GZ^,ORZ^3LO5QP3K<5Y?DO4$L#!!0 ( B";%G_)Z=U MXP$ &PD 3 6T-O;G1E;G1?5'EP97-=+GAM;,W:74_",!0&X+]"=FM8 MZ=?\B'"CWJH7_H&Z'61A6YNV(/Q[NP$F&B4:3'QO6*#M><]ZDN>*ZZ>MHS#: MM$T7IMDB1G?%6"@7U)J06T==6IE;WYJ8OOH7YDRY-"_$Q&12L-)VD;HXCGV- M;'9]2W.S:N+H;I-^#K7MIIFG)F2CF]W&/FN:&>>:NC0QK;-U5WU*&>\3\G1R MV!,6M0MG:4/&ODSH5[X/V)][6)/W=46C1^/CO6G3+K9I6(C;AD)^O,07/=KY MO"ZILN6J34?RX#R9*BR(8MODNZ)GQY-CNF':??*3\X00V/$Z_XX\S?J__ MRSX$2!\2I \%TH<&Z:, Z>,";%D'04UB@0 +$ M 0 " 0 !D;V-0&UL4$L! A0#% M @ !X)L68[PY__N *P( !$ ( !KP &1O8U!R;W!S M+V-O&UL4$L! A0#% @ !X)L69E&PO=V]R:W-H965T&UL4$L! A0#% @ !X)L602*#%"4!@ H1L !@ M ("!3PX 'AL+W=O";%E J1-G!@, * 8 " @1D5 !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0# M% @ "()L680(4@%A#P 2J4 !@ ("!KB 'AL+W=O M?OTQGP@ *(F M 8 " @44P !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ "()L60']ZH?J M!0 E0P !@ ("!-SP 'AL+W=O\( -%@ &0 @('@; >&PO=V]R:W-H965TH^K0P( (H& 9 M " @09V !X;"]W;W)K&UL4$L! A0#% M @ "()L69OPV)NZ! L0H !D ("!@'@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "()L6;V2;%5E P * @ !D M ("!D9( 'AL+W=OZD2#X# \!P &0 @($ME@ >&PO=V]R M:W-H965T&UL M4$L! A0#% @ "()L6;'S<4,R P H0< !D ("!D)X M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M"()L69-OI5Q)!P ;!( !D ("!$*X 'AL+W=O&PO=V]R:W-H965T M %80C@( (8% 9 " @=SO !X;"]W;W)K&UL4$L! A0#% @ "()L6&PO=V]R:W-H M965T&UL4$L! M A0#% @ "()L64U_V^Y/ P L0< !D ("!S/P 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "()L M62H011'F P 90D !D ("!] @&'AT* !D7@ &0 M @($1# $ >&PO=V]R:W-H965T&UL4$L! A0#% @ "()L66O/D\28! @!\ M !D ("!AQT! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "()L6&PO=V]R:W-H965T M'@, *0) 9 M " @7&UL4$L! A0# M% @ "()L6>NNIG@Q @ ;P0 !D ("!S#0! 'AL+W=O M&PO=V]R:W-H965T0[ M 0!X;"]W;W)K&UL4$L! A0#% @ "()L6:E^ M!43? P "A0 !D ("!I#\! 'AL+W=OZ(" #I!P &0 M @(&Z0P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ "()L6<;, 3&J @ ^ < !D M ("!H4H! 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ "()L6?7GD;WS P G0\ !D ("! M.E,! 'AL+W=O'0$ #3$P &0 @(%D5P$ >&PO=V]R:W-H965T&UL4$L! A0#% M @ "()L6>B0^7?/ P ZPL !D ("!EU\! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "()L6:4&LB,V P 1A, T M ( !&GP! 'AL+W-T>6QE&PO=V]R M:V)O;VLN>&UL4$L! A0#% @ "()L67=+<84& @ \20 !H M ( !KH4! 'AL+U]R96QS+W=O XML 72 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 73 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 75 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.3 html 175 296 1 false 35 0 false 5 false false R1.htm 100000 - Document - Document and Entity Information Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 100010 - Statement - Condensed Consolidated Balance Sheets (Unaudited) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited Condensed Consolidated Balance Sheets (Unaudited) Statements 2 false false R3.htm 100030 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) (Unaudited) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited Condensed Consolidated Balance Sheets (Parenthetical) (Unaudited) Statements 3 false false R4.htm 100040 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited Condensed Consolidated Statements of Comprehensive Loss (Unaudited) Statements 4 false false R5.htm 100050 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Deficit) (Unaudited) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited Condensed Consolidated Statements of Stockholders' Equity (Deficit) (Unaudited) Statements 5 false false R6.htm 100060 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited Condensed Consolidated Statements of Cash Flows (Unaudited) Statements 6 false false R7.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 7 false false R8.htm 995420 - Disclosure - Description of business Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDescriptionOfBusiness1 Description of business Notes 8 false false R9.htm 995430 - Disclosure - Summary of significant accounting policies Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPolicies1 Summary of significant accounting policies Notes 9 false false R10.htm 995440 - Disclosure - Equity method investment Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestment Equity method investment Notes 10 false false R11.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 11 false false R12.htm 995450 - Disclosure - ATM Program Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgram ATM Program Notes 12 false false R13.htm 995460 - Disclosure - Accounts receivable, net Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNet Accounts receivable, net Notes 13 false false R14.htm 995470 - Disclosure - Inventories, net Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNet Inventories, net Notes 14 false false R15.htm 995490 - Disclosure - Prepaid and other current assets Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssets Prepaid and other current assets Notes 15 false false R16.htm 995500 - Disclosure - Leases Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeases Leases Notes 16 false false R17.htm 995510 - Disclosure - Property and equipment, net Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNet Property and equipment, net Notes 17 false false R18.htm 995520 - Disclosure - Intangible assets, net and goodwill Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwill1 Intangible assets, net and goodwill Notes 18 false false R19.htm 995530 - Disclosure - Debt Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebt1 Debt Notes 19 false false R20.htm 995540 - Disclosure - Accrued Expenses and Other Current Liabilities Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities Accrued Expenses and Other Current Liabilities Notes 20 false false R21.htm 995560 - Disclosure - Income Taxes Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxes Income Taxes Notes 21 false false R22.htm 995570 - Disclosure - Commitments and Contingencies Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingencies Commitments and Contingencies Notes 22 false false R23.htm 995580 - Disclosure - Stock-Based Compensation Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensation Stock-Based Compensation Notes 23 false false R24.htm 995590 - Disclosure - Related Party Transactions Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactions1 Related Party Transactions Notes 24 false false R25.htm 995600 - Disclosure - Net Loss Per Share Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShare1 Net Loss Per Share Notes 25 false false R26.htm 995610 - Disclosure - Subsequent Events Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEvents Subsequent Events Notes 26 false false R27.htm 995620 - Disclosure - Summary of significant accounting policies (Policies) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies Summary of significant accounting policies (Policies) Policies 27 false false R28.htm 995660 - Disclosure - Accounts receivable, net (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetTables Accounts receivable, net (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNet 28 false false R29.htm 995670 - Disclosure - Inventories, net (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetTables Inventories, net (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNet 29 false false R30.htm 995680 - Disclosure - Prepaid and other current assets (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsTables Prepaid and other current assets (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssets 30 false false R31.htm 995690 - Disclosure - Leases (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeasesTables Leases (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeases 31 false false R32.htm 995700 - Disclosure - Property and equipment, net (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetTables Property and equipment, net (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNet 32 false false R33.htm 995710 - Disclosure - Intangible assets, net and goodwill (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillTables Intangible assets, net and goodwill (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwill1 33 false false R34.htm 995720 - Disclosure - Accrued Expenses and Other Current Liabilities (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables Accrued Expenses and Other Current Liabilities (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities 34 false false R35.htm 995740 - Disclosure - Stock-based Compensation (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationTables Stock-based Compensation (Tables) Tables 35 false false R36.htm 995750 - Disclosure - Net Loss Per Share (Tables) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareTables Net Loss Per Share (Tables) Tables http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShare1 36 false false R37.htm 995770 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails Summary of Significant Accounting Policies - Additional Information (Details) Details 37 false false R38.htm 995780 - Disclosure - Equity method investment - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails Equity method investment - Additional Information (Details) Details 38 false false R39.htm 995790 - Disclosure - ATM Program - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails ATM Program - Additional Information (Details) Details 39 false false R40.htm 995800 - Disclosure - Accounts receivable, net - Schedule of Accounts Receivable, Net (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails Accounts receivable, net - Schedule of Accounts Receivable, Net (Details) Details 40 false false R41.htm 995810 - Disclosure - Accounts receivable, net - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails Accounts receivable, net - Additional Information (Details) Details 41 false false R42.htm 995820 - Disclosure - Accounts receivable, net - Summary of Activity in the allowance for credit losses (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails Accounts receivable, net - Summary of Activity in the allowance for credit losses (Details) Details 42 false false R43.htm 995840 - Disclosure - Inventories, net - Schedule of inventories (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetScheduleOfInventoriesDetails Inventories, net - Schedule of inventories (Details) Details 43 false false R44.htm 995850 - Disclosure - Prepaid and other current assets - Schedule of Prepaid and other current assets (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails Prepaid and other current assets - Schedule of Prepaid and other current assets (Details) Details 44 false false R45.htm 995860 - Disclosure - Prepaid and other current assets (Additional Information) (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsAdditionalInformationDetails Prepaid and other current assets (Additional Information) (Details) Details http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsTables 45 false false R46.htm 995870 - Disclosure - Leases - Summary of Lease Expense (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails Leases - Summary of Lease Expense (Details) Details 46 false false R47.htm 995880 - Disclosure - Leases - Summary of Future Remaining Lease Payments Obligations (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails Leases - Summary of Future Remaining Lease Payments Obligations (Details) Details 47 false false R48.htm 995890 - Disclosure - Property and equipment, net - Schedule of property and equipment (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails Property and equipment, net - Schedule of property and equipment (Details) Details 48 false false R49.htm 995900 - Disclosure - Property and equipment, net - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetAdditionalInformationDetails Property and equipment, net - Additional Information (Details) Details 49 false false R50.htm 995910 - Disclosure - Intangible assets, net and goodwill - Summary of intangible assets (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails Intangible assets, net and goodwill - Summary of intangible assets (Details) Details 50 false false R51.htm 995920 - Disclosure - Intangible assets, net and goodwill - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails Intangible assets, net and goodwill - Additional Information (Details) Details 51 false false R52.htm 995930 - Disclosure - Intangible assets, net and goodwill - Summary of goodwill activity (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfGoodwillActivityDetails Intangible assets, net and goodwill - Summary of goodwill activity (Details) Details 52 false false R53.htm 995940 - Disclosure - Debt - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails Debt - Additional Information (Details) Details 53 false false R54.htm 995950 - Disclosure - Accrued expenses and other current liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails Accrued expenses and other current liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details) Details 54 false false R55.htm 995970 - Disclosure - Accrued expenses and other current liabilities - Schedule of warranty accruals (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails Accrued expenses and other current liabilities - Schedule of warranty accruals (Details) Details 55 false false R56.htm 995980 - Disclosure - Income Taxes - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails Income Taxes - Additional Information (Details) Details 56 false false R57.htm 995990 - Disclosure - Commitments and Contingencies - Additional Information (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails Commitments and Contingencies - Additional Information (Details) Details 57 false false R58.htm 996020 - Disclosure - Stock-Based Compensation - Stock compensation expense (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails Stock-Based Compensation - Stock compensation expense (Details) Details 58 false false R59.htm 996030 - Disclosure - Related party transactions - Additional Information (Detail) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail Related party transactions - Additional Information (Detail) Details 59 false false R60.htm 996050 - Disclosure - Net Loss Per Share - Schedule of Computation of Basic and Diluted Loss Per Share (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails Net Loss Per Share - Schedule of Computation of Basic and Diluted Loss Per Share (Details) Details 60 false false R61.htm 996060 - Disclosure - Net Loss Per Share - Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails Net Loss Per Share - Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share (Details) Details 61 false false R62.htm 996070 - Disclosure - Subsequent Events (Additional Information) (Details) Sheet http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails Subsequent Events (Additional Information) (Details) Details http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEvents 62 false false All Reports Book All Reports ftci-20240930.htm ftci-20240930.xsd img146223903_0.jpg http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 false false JSON 78 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "ftci-20240930.htm": { "nsprefix": "ftci", "nsuri": "http://www.ftcsolar.com/20240930", "dts": { "inline": { "local": [ "ftci-20240930.htm" ] }, "schema": { "local": [ "ftci-20240930.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/2023/calculation-1.1.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/2024/elts/srt-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd", "https://xbrl.sec.gov/country/2024/country-2024.xsd", "https://xbrl.sec.gov/dei/2024/dei-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd", "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" ] } }, "keyStandard": 239, "keyCustom": 57, "axisStandard": 13, "axisCustom": 1, "memberStandard": 25, "memberCustom": 10, "hidden": { "total": 9, "http://xbrl.sec.gov/dei/2024": 4, "http://fasb.org/us-gaap/2024": 3, "http://www.ftcsolar.com/20240930": 2 }, "contextCount": 175, "entityCount": 1, "segmentCount": 35, "elementCount": 637, "unitCount": 5, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 714, "http://xbrl.sec.gov/dei/2024": 31, "http://xbrl.sec.gov/ecd/2024": 4 }, "report": { "R1": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation", "longName": "100000 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "dei:EntityRegistrantName", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "dei:EntityRegistrantName", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited", "longName": "100010 - Statement - Condensed Consolidated Balance Sheets (Unaudited)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited", "longName": "100030 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) (Unaudited)", "shortName": "Condensed Consolidated Balance Sheets (Parenthetical) (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "U_USDollarShare", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "U_USDollarShare", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited", "longName": "100040 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited)", "shortName": "Condensed Consolidated Statements of Comprehensive Loss (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited", "longName": "100050 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Deficit) (Unaudited)", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Deficit) (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "C_2cac785c-cfce-4649-9d36-5e33a051a182", "name": "us-gaap:StockholdersEquity", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_07a83710-a0d3-47ae-b61d-d2b99a45c3ec", "name": "us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R6": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited", "longName": "100060 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)", "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:NetIncomeLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ShareBasedCompensation", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R7": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:NetIncomeLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": null }, "R8": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDescriptionOfBusiness1", "longName": "995420 - Disclosure - Description of business", "shortName": "Description of business", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPolicies1", "longName": "995430 - Disclosure - Summary of significant accounting policies", "shortName": "Summary of significant accounting policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestment", "longName": "995440 - Disclosure - Equity method investment", "shortName": "Equity method investment", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R11": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgram", "longName": "995450 - Disclosure - ATM Program", "shortName": "ATM Program", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:AtmProgram", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:AtmProgram", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNet", "longName": "995460 - Disclosure - Accounts receivable, net", "shortName": "Accounts receivable, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:AccountsAndNontradeReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:AccountsAndNontradeReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNet", "longName": "995470 - Disclosure - Inventories, net", "shortName": "Inventories, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssets", "longName": "995490 - Disclosure - Prepaid and other current assets", "shortName": "Prepaid and other current assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeases", "longName": "995500 - Disclosure - Leases", "shortName": "Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNet", "longName": "995510 - Disclosure - Property and equipment, net", "shortName": "Property and equipment, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwill1", "longName": "995520 - Disclosure - Intangible assets, net and goodwill", "shortName": "Intangible assets, net and goodwill", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebt1", "longName": "995530 - Disclosure - Debt", "shortName": "Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities", "longName": "995540 - Disclosure - Accrued Expenses and Other Current Liabilities", "shortName": "Accrued Expenses and Other Current Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxes", "longName": "995560 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingencies", "longName": "995570 - Disclosure - Commitments and Contingencies", "shortName": "Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensation", "longName": "995580 - Disclosure - Stock-Based Compensation", "shortName": "Stock-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactions1", "longName": "995590 - Disclosure - Related Party Transactions", "shortName": "Related Party Transactions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShare1", "longName": "995600 - Disclosure - Net Loss Per Share", "shortName": "Net Loss Per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "25", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEvents", "longName": "995610 - Disclosure - Subsequent Events", "shortName": "Subsequent Events", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "26", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies", "longName": "995620 - Disclosure - Summary of significant accounting policies (Policies)", "shortName": "Summary of significant accounting policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "27", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetTables", "longName": "995660 - Disclosure - Accounts receivable, net (Tables)", "shortName": "Accounts receivable, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:AccountsAndNontradeReceivableTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:AccountsAndNontradeReceivableTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetTables", "longName": "995670 - Disclosure - Inventories, net (Tables)", "shortName": "Inventories, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsTables", "longName": "995680 - Disclosure - Prepaid and other current assets (Tables)", "shortName": "Prepaid and other current assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeasesTables", "longName": "995690 - Disclosure - Leases (Tables)", "shortName": "Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetTables", "longName": "995700 - Disclosure - Property and equipment, net (Tables)", "shortName": "Property and equipment, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillTables", "longName": "995710 - Disclosure - Intangible assets, net and goodwill (Tables)", "shortName": "Intangible assets, net and goodwill (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables", "longName": "995720 - Disclosure - Accrued Expenses and Other Current Liabilities (Tables)", "shortName": "Accrued Expenses and Other Current Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:AccruedExpensesAndOtherCurrentLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ftci:AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:AccruedExpensesAndOtherCurrentLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ftci:AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationTables", "longName": "995740 - Disclosure - Stock-based Compensation (Tables)", "shortName": "Stock-based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareTables", "longName": "995750 - Disclosure - Net Loss Per Share (Tables)", "shortName": "Net Loss Per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "36", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "longName": "995770 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details)", "shortName": "Summary of Significant Accounting Policies - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:Cash", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "ftci:AbilityToContinueAsAGoingConcern", "div", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_e4c75929-f544-40d7-80bb-484f2fc939f1", "name": "ftci:ConsecutiveBusinessDays", "unitRef": "U_Days", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "p", "ix:continuation", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R38": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails", "longName": "995780 - Disclosure - Equity method investment - Additional Information (Details)", "shortName": "Equity method investment - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:IncomeLossFromEquityMethodInvestmentsNetOfDividendsOrDistributions", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:PlacingPurchaseOrders", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "us-gaap:EquityMethodInvestmentsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R39": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "longName": "995790 - Disclosure - ATM Program - Additional Information (Details)", "shortName": "ATM Program - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "C_5466b3fe-dd72-4043-9fbb-19ecfa97151e", "name": "us-gaap:StockIssuedDuringPeriodValueNewIssues", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_faccaeb0-3593-4cc1-9df9-2805590882b5", "name": "ftci:CommonStockValueAuthorized", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "ftci:AtmProgram", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R40": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails", "longName": "995800 - Disclosure - Accounts receivable, net - Schedule of Accounts Receivable, Net (Details)", "shortName": "Accounts receivable, net - Schedule of Accounts Receivable, Net (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:TradeAccountsReceivable", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "div", "us-gaap:AccountsAndNontradeReceivableTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:TradeAccountsReceivable", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "div", "us-gaap:AccountsAndNontradeReceivableTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "longName": "995810 - Disclosure - Accounts receivable, net - Additional Information (Details)", "shortName": "Accounts receivable, net - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:RetainageProvisionsIncludedInReceivables", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:AccountsAndNontradeReceivableTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:RetainageProvisionsIncludedInReceivables", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:AccountsAndNontradeReceivableTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails", "longName": "995820 - Disclosure - Accounts receivable, net - Summary of Activity in the allowance for credit losses (Details)", "shortName": "Accounts receivable, net - Summary of Activity in the allowance for credit losses (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "C_8c8df044-7366-41bb-9147-695840be7870", "name": "us-gaap:AccountsAndFinancingReceivableAllowanceForCreditLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_ee37a64f-cb90-42b0-960f-3f70d1ce8d4a", "name": "ftci:ImpactOfAdoption", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R43": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetScheduleOfInventoriesDetails", "longName": "995840 - Disclosure - Inventories, net - Schedule of inventories (Details)", "shortName": "Inventories, net - Schedule of inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:InventoryFinishedGoods", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:InventoryFinishedGoods", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails", "longName": "995850 - Disclosure - Prepaid and other current assets - Schedule of Prepaid and other current assets (Details)", "shortName": "Prepaid and other current assets - Schedule of Prepaid and other current assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:VendorDeposits", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock", "div", "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:VendorDeposits", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock", "div", "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsAdditionalInformationDetails", "longName": "995860 - Disclosure - Prepaid and other current assets (Additional Information) (Details)", "shortName": "Prepaid and other current assets (Additional Information) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:ShortTermNonInterestBearingCustomerAdvance", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:ShortTermNonInterestBearingCustomerAdvance", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "ftci:PrepaidExpensesAndOtherCurrentAssetsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "longName": "995870 - Disclosure - Leases - Summary of Lease Expense (Details)", "shortName": "Leases - Summary of Lease Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:OperatingLeaseCost", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:OperatingLeaseCost", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails", "longName": "995880 - Disclosure - Leases - Summary of Future Remaining Lease Payments Obligations (Details)", "shortName": "Leases - Summary of Future Remaining Lease Payments Obligations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails", "longName": "995890 - Disclosure - Property and equipment, net - Schedule of property and equipment (Details)", "shortName": "Property and equipment, net - Schedule of property and equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "div", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "div", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetAdditionalInformationDetails", "longName": "995900 - Disclosure - Property and equipment, net - Additional Information (Details)", "shortName": "Property and equipment, net - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:Depreciation", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:Depreciation", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails", "longName": "995910 - Disclosure - Intangible assets, net and goodwill - Summary of intangible assets (Details)", "shortName": "Intangible assets, net and goodwill - Summary of intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "longName": "995920 - Disclosure - Intangible assets, net and goodwill - Additional Information (Details)", "shortName": "Intangible assets, net and goodwill - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfGoodwillActivityDetails", "longName": "995930 - Disclosure - Intangible assets, net and goodwill - Summary of goodwill activity (Details)", "shortName": "Intangible assets, net and goodwill - Summary of goodwill activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "C_7443e68e-4d81-48eb-81f3-7f25c5aac270", "name": "us-gaap:Goodwill", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_2cac785c-cfce-4649-9d36-5e33a051a182", "name": "us-gaap:Goodwill", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R53": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails", "longName": "995940 - Disclosure - Debt - Additional Information (Details)", "shortName": "Debt - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:FinancingInterestExpense", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:FinancingInterestExpense", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails", "longName": "995950 - Disclosure - Accrued expenses and other current liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details)", "shortName": "Accrued expenses and other current liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:AccruedCostOfRevenues", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ftci:AccruedExpensesAndOtherCurrentLiabilitiesTableTextBlock", "div", "ftci:AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_26510b6e-5038-405c-83ca-11eaf329b905", "name": "ftci:AccruedCostOfRevenues", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ftci:AccruedExpensesAndOtherCurrentLiabilitiesTableTextBlock", "div", "ftci:AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails", "longName": "995970 - Disclosure - Accrued expenses and other current liabilities - Schedule of warranty accruals (Details)", "shortName": "Accrued expenses and other current liabilities - Schedule of warranty accruals (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "C_8c8df044-7366-41bb-9147-695840be7870", "name": "us-gaap:StandardProductWarrantyAccrual", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_8c8df044-7366-41bb-9147-695840be7870", "name": "us-gaap:StandardProductWarrantyAccrual", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "div", "ix:continuation", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails", "longName": "995980 - Disclosure - Income Taxes - Additional Information (Details)", "shortName": "Income Taxes - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:IncomeTaxExpenseBenefit", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "U_pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "span", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "unique": true } }, "R57": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "longName": "995990 - Disclosure - Commitments and Contingencies - Additional Information (Details)", "shortName": "Commitments and Contingencies - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:DescriptionOfTariffsClassification", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_f2c17fd0-649c-4495-b7ca-ee1ebf0eea74", "name": "ftci:DescriptionOfTariffsClassification", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails", "longName": "996020 - Disclosure - Stock-Based Compensation - Stock compensation expense (Details)", "shortName": "Stock-Based Compensation - Stock compensation expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "div", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "div", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "longName": "996030 - Disclosure - Related party transactions - Additional Information (Detail)", "shortName": "Related party transactions - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "C_5466b3fe-dd72-4043-9fbb-19ecfa97151e", "name": "ftci:StockBasedCompensationExpenseReversed", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_5466b3fe-dd72-4043-9fbb-19ecfa97151e", "name": "ftci:StockBasedCompensationExpenseReversed", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails", "longName": "996050 - Disclosure - Net Loss Per Share - Schedule of Computation of Basic and Diluted Loss Per Share (Details)", "shortName": "Net Loss Per Share - Schedule of Computation of Basic and Diluted Loss Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:NetIncomeLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true }, "uniqueAnchor": null }, "R61": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails", "longName": "996060 - Disclosure - Net Loss Per Share - Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share (Details)", "shortName": "Net Loss Per Share - Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "U_shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_4aab394a-de65-4e07-bb3e-e626a7e7cd84", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "U_shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } }, "R62": { "role": "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "longName": "996070 - Disclosure - Subsequent Events (Additional Information) (Details)", "shortName": "Subsequent Events (Additional Information) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "C_dd5b007f-56d4-4e8e-9f9e-4870f3ea81a7", "name": "ftci:SecuredNotesMaturedInYearsFromIssuance", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "us-gaap:SubsequentEventsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_dd5b007f-56d4-4e8e-9f9e-4870f3ea81a7", "name": "ftci:SecuredNotesMaturedInYearsFromIssuance", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "us-gaap:SubsequentEventsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ftci-20240930.htm", "first": true, "unique": true } } }, "tag": { "ftci_AbilityToContinueAsAGoingConcern": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AbilityToContinueAsAGoingConcern", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Liquidity", "label": "Ability to continue as a going concern", "documentation": "Ability to continue as a going concern" } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsAndFinancingReceivableAllowanceForCreditLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsAndFinancingReceivableAllowanceForCreditLoss", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Allowance for credit losses", "terseLabel": "Allowance for credit losses", "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end of period", "label": "Accounts and Financing Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss of accounts and financing receivables. Includes, but is not limited to, notes and loan receivable." } } }, "auth_ref": [ "r226" ] }, "us-gaap_AccountsAndNontradeReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsAndNontradeReceivableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNet" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net", "label": "Accounts and Nontrade Receivable [Text Block]", "documentation": "The entire disclosure for accounts receivable, contract receivable, receivable held-for-sale, and nontrade receivable." } } }, "auth_ref": [ "r224", "r235" ] }, "us-gaap_AccountsAndOtherReceivablesNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsAndOtherReceivablesNetCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Receivables Collected", "terseLabel": "Other receivables", "label": "Accounts and Other Receivables, Net, Current", "documentation": "Amount, after allowance, receivable from customers, clients, or other third-parties, and receivables classified as other due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Accounts Payable, Current, Total", "terseLabel": "Accounts payable", "label": "Accounts Payable, Current", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r47", "r687" ] }, "us-gaap_AccountsPayableCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrentAndNoncurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Accounts Payable, Total", "terseLabel": "Total received Invoices from Alpha Steel", "label": "Accounts Payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r103", "r920" ] }, "ftci_AccountsReceivableAllowanceForCreditLossExpenseReversal": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AccountsReceivableAllowanceForCreditLossExpenseReversal", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss Expense (Reversal)", "documentation": "Accounts Receivable, Allowance for Credit Loss Expense (Reversal)", "terseLabel": "Amounts charged (credited) to earnings during the period" } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Accounts Receivable Allowance for Credit Loss", "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]", "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r839" ] }, "us-gaap_AccountsReceivableNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNetAbstract", "lang": { "en-us": { "role": { "label": "Accounts Receivable, after Allowance for Credit Loss [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Accounts receivable, net", "terseLabel": "Accounts receivable, net", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r833" ] }, "us-gaap_AccruedBonusesCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedBonusesCurrentAndNoncurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Bonuses", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements." } } }, "auth_ref": [ "r103" ] }, "ftci_AccruedCostOfRevenues": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AccruedCostOfRevenues", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued cost of revenue", "label": "Accrued cost of revenues", "documentation": "Accrued cost of revenues" } } }, "auth_ref": [] }, "ftci_AccruedExpensesAndOtherCurrentLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AccruedExpensesAndOtherCurrentLiabilitiesAbstract", "lang": { "en-us": { "role": { "label": "Accrued Expenses and Other Current Liabilities [Abstract]", "documentation": "Accrued Expenses and Other Current Liabilities Abstract." } } }, "auth_ref": [] }, "ftci_AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AccruedExpensesAndOtherCurrentLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities" ], "lang": { "en-us": { "role": { "documentation": "Accrued Expenses and Other Current Liabilities Disclosure Text Block", "terseLabel": "Accrued Expenses and Other Current Liabilities", "label": "Accrued Expenses and Other Current Liabilities Disclosure [Text Block]" } } }, "auth_ref": [] }, "ftci_AccruedExpensesAndOtherCurrentLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AccruedExpensesAndOtherCurrentLiabilitiesTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" ], "lang": { "en-us": { "role": { "documentation": "Accrued Expenses and Other Current Liabilities Table Text Block", "terseLabel": "Schedule of Accrued Expenses and Other Current Liabilities", "label": "Accrued Expenses and Other Current Liabilities [Table Text Block]" } } }, "auth_ref": [] }, "us-gaap_AccruedIncomeTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedIncomeTaxesCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-federal tax obligations", "label": "Accrued Income Taxes, Current", "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations." } } }, "auth_ref": [ "r49", "r102" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total accrued expenses", "terseLabel": "Accrued expenses", "label": "Accrued Liabilities, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r49" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Accumulated depreciation", "totalLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Total", "terseLabel": "Accumulated depreciation", "periodStartLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Beginning Balance", "periodEndLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Ending Balance", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r28", "r147", "r527" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Accumulated Other Comprehensive Income (Loss), Net of Tax, Total", "terseLabel": "Accumulated other comprehensive loss", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r15", "r16", "r68", "r152", "r523", "r554", "r558" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Loss", "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r2", "r9", "r16", "r444", "r447", "r486", "r549", "r550", "r808", "r809", "r810", "r821", "r822", "r823", "r824" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r742" ] }, "ftci_AdditionalCapitalContribution": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AdditionalCapitalContribution", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional capital contributions", "label": "Additional capital contribution", "documentation": "Additional capital contribution" } } }, "auth_ref": [] }, "ftci_AdditionalCapitalContributions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AdditionalCapitalContributions", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional capital contributions", "label": "Additional Capital Contributions", "documentation": "Additional capital contributions" } } }, "auth_ref": [] }, "ftci_AdditionalInterestRateAbovePrime": { "xbrltype": "percentItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AdditionalInterestRateAbovePrime", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional Interest Rate Above Prime", "label": "Additional Interest Rate Above Prime", "documentation": "Additional Interest Rate Above Prime" } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapital", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Additional Paid in Capital, Total", "terseLabel": "Additional paid-in capital", "periodStartLabel": "Additional Paid in Capital, Beginning Balance", "periodEndLabel": "Additional Paid in Capital, Ending Balance", "label": "Additional Paid in Capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r59", "r687", "r957" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Additional Paid-in Capital", "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r569", "r821", "r822", "r823", "r824", "r900", "r958" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r755" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r755" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r755" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r755" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition, Total", "terseLabel": "Stock-based compensation", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r39", "r40", "r370" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Stock offering costs", "terseLabel": "Stock issuance costs", "label": "Adjustments to Additional Paid in Capital, Stock Issued, Issuance Costs", "documentation": "Amount of decrease in additional paid in capital (APIC) resulting from direct costs associated with issuing stock. Includes, but is not limited to, legal and accounting fees and direct costs associated with stock issues under a shelf registration." } } }, "auth_ref": [ "r10", "r96" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments to reconcile net loss to cash used in operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]", "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table" } } }, "auth_ref": [ "r788" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r714", "r724", "r734", "r766" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r717", "r727", "r737", "r769" ] }, "ecd_AggtPnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtPnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Pension Adjustments Service Cost [Member]", "terseLabel": "Aggregate Pension Adjustments Service Cost" } } }, "auth_ref": [ "r789" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r755" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r762" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r718", "r728", "r738", "r762", "r770", "r774", "r782" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r780" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Total stock compensation expense", "terseLabel": "Stock based compensation expense", "label": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r402", "r410" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableAllowanceForCreditLossDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Accounts Receivable, Allowance for Credit Loss, Beginning Balance", "periodEndLabel": "Accounts Receivable, Allowance for Credit Loss, Ending Balance", "label": "Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r153", "r226", "r240", "r241", "r245", "r922" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableAllowanceForCreditLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additions charged to earnings during the period", "label": "Accounts Receivable, Allowance for Credit Loss, Recovery", "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery." } } }, "auth_ref": [ "r244" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "terseLabel": "Write-offs of accounts", "negatedLabel": "Write-offs of accounts", "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance." } } }, "auth_ref": [ "r243" ] }, "ftci_AlphaSteelMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AlphaSteelMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Alpha Steel [Member]", "terseLabel": "Alpha Steel", "label": "Alpha Steel [Member]", "documentation": "Alpha Steel" } } }, "auth_ref": [] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "AmendmentFlag", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Amendment Flag", "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfFinancingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfFinancingCosts", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Amortization of debt issue costs", "terseLabel": "Amortization of debt issue cost", "label": "Amortization of Debt Issuance Costs", "documentation": "Amount of amortization expense attributable to debt issuance costs." } } }, "auth_ref": [ "r76", "r330", "r813", "r904" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense", "label": "Amortization of Intangible Assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r259", "r265", "r666" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Potential common shares excluded from diluted net loss per share", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r207" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r23" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [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_AntidilutiveSecuritiesNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesNameDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities, Name [Domain]", "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented." } } }, "auth_ref": [ "r23" ] }, "us-gaap_ArrangementsAndNonarrangementTransactionsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ArrangementsAndNonarrangementTransactionsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]", "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r438" ] }, "ftci_AssessmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AssessmentMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "939 Assessment [Member]", "label": "939 Assessment [Member]", "documentation": "939 Assessment [Member]" } } }, "auth_ref": [] }, "ftci_AssessmentTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AssessmentTypeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Assessment Type [Axis]", "documentation": "Assessment Type [Axis]" } } }, "auth_ref": [] }, "ftci_AssessmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AssessmentTypeDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Assessment Type [Domain]", "documentation": "Assessment Type [Domain]" } } }, "auth_ref": [] }, "us-gaap_AssetAcquisitionTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetAcquisitionTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAcquisitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of allocation of the purchase price", "label": "Asset Acquisition [Table Text Block]", "documentation": "Tabular disclosure of asset acquisition." } } }, "auth_ref": [ "r899" ] }, "ftci_AssetPurchaseAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AssetPurchaseAgreementMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset Purchase Agreement [Member]", "label": "Asset Purchase Agreement [Member]", "documentation": "Asset purchase agreement." } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Assets", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r101", "r114", "r151", "r175", "r211", "r213", "r219", "r220", "r233", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r439", "r441", "r459", "r517", "r595", "r661", "r662", "r687", "r705", "r885", "r886", "r910" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "ASSETS", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "terseLabel": "Current assets", "label": "Assets, Current", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r142", "r158", "r175", "r233", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r439", "r441", "r459", "r687", "r885", "r886", "r910" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "ftci_AtmProgram": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AtmProgram", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgram" ], "lang": { "en-us": { "role": { "label": "ATM Program", "documentation": "ATM Program" } } }, "auth_ref": [] }, "ftci_AtmProgramMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AtmProgramMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "ATM Program [Member]", "documentation": "ATM Program [Member]" } } }, "auth_ref": [] }, "ftci_AvailableForCustomerPursuant": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AvailableForCustomerPursuant", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Available For Customer Pursuant", "label": "Available For Customer Pursuant", "terseLabel": "Available for customer pursuant" } } }, "auth_ref": [] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r777" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r778" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r773" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r773" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r773" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r773" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r773" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r773" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r373", "r374", "r375", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r397", "r398", "r399", "r400", "r401" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r776" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r775" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r774" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r774" ] }, "ftci_AynaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "AynaMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Ayna [Member]", "label": "Ayna [Member]", "documentation": "Ayna" } } }, "auth_ref": [] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance Sheet Location", "label": "Balance Sheet Location [Axis]", "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r277", "r924", "r925" ] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance Sheet Location", "label": "Balance Sheet Location [Domain]", "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r41", "r42", "r277", "r924", "r925" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Basis of presentation and principles of consolidation", "label": "Basis of Accounting, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "srt_BoardOfDirectorsChairmanMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "BoardOfDirectorsChairmanMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Board of Directors and Chairman", "label": "Board of Directors Chairman [Member]" } } }, "auth_ref": [ "r832" ] }, "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationAndAssetAcquisitionAbstract", "lang": { "en-us": { "role": { "label": "Business Combination and Asset Acquisition [Abstract]" } } }, "auth_ref": [] }, "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDescriptionOfBusiness1" ], "lang": { "en-us": { "role": { "terseLabel": "Description of business", "label": "Business Description and Basis of Presentation [Text Block]", "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [ "r46", "r84", "r85" ] }, "ftci_CapitalContributions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CapitalContributions", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Capital Contribution", "label": "Capital contributions", "documentation": "Capital contributions" } } }, "auth_ref": [] }, "us-gaap_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Cash", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash", "periodStartLabel": "Cash, Beginning Balance", "periodEndLabel": "Cash, Ending Balance", "label": "Cash", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r125", "r520", "r570", "r590", "r687", "r705", "r803" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Cash and Cash Equivalents, at Carrying Value, Total", "terseLabel": "Cash and cash equivalents", "periodStartLabel": "Cash and Cash Equivalents, at Carrying Value, Beginning Balance", "periodEndLabel": "Cash and Cash Equivalents, at Carrying Value, Ending Balance", "label": "Cash and Cash Equivalents, at Carrying Value", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r20", "r145", "r648" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value." } } }, "auth_ref": [ "r21" ] }, "us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Cash", "label": "Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]", "documentation": "Entity's cash and cash equivalents accounting policy with respect to restricted balances. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits." } } }, "auth_ref": [ "r21", "r100" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total cash and restricted cash", "terseLabel": "Total cash and restricted cash", "periodStartLabel": "Cash and cash equivalents at beginning of period", "periodEndLabel": "Cash and cash equivalents at end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r20", "r80", "r171" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Decrease in cash and cash equivalents", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r1", "r80" ] }, "ftci_CashPaidDuringThePeriodForThirdPartyInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CashPaidDuringThePeriodForThirdPartyInterest", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash paid during the period for interest", "label": "Cash paid during the period for third party interest", "documentation": "Cash paid during the period for third party interest" } } }, "auth_ref": [] }, "ftci_CashPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CashPayments", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "verboseLabel": "Cash payment", "terseLabel": "Cash payments", "label": "Cash Payments", "documentation": "Cash Payments" } } }, "auth_ref": [] }, "ftci_CashRecevedForAcquireFoundation": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CashRecevedForAcquireFoundation", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Cash Receved for Acquire Foundation", "label": "Cash Receved for Acquire Foundation", "terseLabel": "Cash receved for acquire foundation" } } }, "auth_ref": [] }, "ftci_CbpAssessmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CbpAssessmentsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "CBP Assessments [Member]", "label": "CBP Assessments [Member]", "documentation": "CBP Assessments [Member]" } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r753" ] }, "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]", "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year" } } }, "auth_ref": [ "r750" ] }, "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]", "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested" } } }, "auth_ref": [ "r748" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CityAreaCode", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise Price of Warrants or Rights", "label": "Class of Warrant or Right, Exercise Price of Warrants or Rights", "documentation": "Exercise price per share or per unit of warrants or rights outstanding." } } }, "auth_ref": [ "r349" ] }, "us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase warrants", "label": "Class of Warrant or Right, Number of Securities Called by Warrants or Rights", "documentation": "Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares." } } }, "auth_ref": [ "r349" ] }, "ftci_ClosingBidPrice": { "xbrltype": "perShareItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ClosingBidPrice", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Closing bid price", "label": "Closing bid price", "documentation": "Closing bid price" } } }, "auth_ref": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r754" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r754" ] }, "us-gaap_CollaborativeArrangementsAndNoncollaborativeArrangementTransactionsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CollaborativeArrangementsAndNoncollaborativeArrangementTransactionsLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Collaborative Arrangement and Arrangement Other than Collaborative [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": [ "r438" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and contingencies (Note 14)", "label": "Commitments and Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r54", "r105", "r519", "r581" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies", "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r91", "r285", "r286", "r641", "r865", "r870" ] }, "ftci_CommonStockCapitalSharesReservedForFutureIssuanceValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CommonStockCapitalSharesReservedForFutureIssuanceValue", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, reserved for future issuance, value", "label": "Common Stock, Capital Shares Reserved for Future Issuance Value", "documentation": "Common Stock, Capital Shares Reserved for Future Issuance Value" } } }, "auth_ref": [] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r695", "r696", "r697", "r699", "r700", "r701", "r702", "r821", "r822", "r824", "r900", "r955", "r958" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, par value", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r57" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares authorized", "label": "Common Stock, Shares Authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r57", "r582" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Common stock issued for notes purchased", "totalLabel": "Common Stock, Shares, Issued, Total", "terseLabel": "Common stock, shares issued", "label": "Common Stock, Shares, Issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r57" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares outstanding", "periodStartLabel": "Common Stock, Shares, Outstanding, Beginning Balance", "periodEndLabel": "Common Stock, Shares, Outstanding, Ending Balance", "label": "Common Stock, Shares, Outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r10", "r57", "r582", "r601", "r958", "r959" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock par value of $0.0001 per share, 850,000,000 shares authorized; 127,723,582 and 125,445,325 shares issued and outstanding as of September 30, 2024 and December 31, 2023", "verboseLabel": "Common stock, value, issued", "totalLabel": "Common Stock, Value, Issued, Total", "periodStartLabel": "Common Stock, Value, Issued, Beginning Balance", "periodEndLabel": "Common Stock, Value, Issued, Ending Balance", "label": "Common Stock, Value, Issued", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r57", "r522", "r687" ] }, "ftci_CommonStockValueAuthorized": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CommonStockValueAuthorized", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, value authorized", "label": "Common Stock Value Authorized", "documentation": "Common stock value authorized." } } }, "auth_ref": [] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r759" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r758" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r760" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r757" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Comprehensive loss", "terseLabel": "Comprehensive loss", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "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": [ "r17", "r161", "r163", "r168", "r512", "r532", "r533" ] }, "us-gaap_ConcentrationRiskCreditRisk": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskCreditRisk", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration of credit risk", "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for credit risk." } } }, "auth_ref": [ "r45", "r129" ] }, "ftci_ConsecutiveBusinessDays": { "xbrltype": "integerItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ConsecutiveBusinessDays", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consecutive business days", "label": "Consecutive business days", "documentation": "Consecutive business days" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue", "label": "Contract with Customer, Liability, Current", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r351", "r352", "r363" ] }, "ftci_CostOfAssessment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "CostOfAssessment", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of assessment", "label": "Cost of Assessment", "documentation": "Cost of Assessment" } } }, "auth_ref": [] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Cost of Revenue", "totalLabel": "Cost of Goods and Services Sold, Total", "terseLabel": "Total cost of revenue", "label": "Cost of Goods and Services Sold", "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities." } } }, "auth_ref": [ "r71", "r72", "r506" ] }, "us-gaap_CostOfRevenueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfRevenueAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenue:", "label": "Cost of Revenue [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfSalesMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenue [Member]", "label": "Cost of Sales [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "srt_CounterpartyNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "CounterpartyNameAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Counterparty Name", "label": "Counterparty Name [Axis]" } } }, "auth_ref": [ "r179", "r180", "r312", "r338", "r493", "r500", "r516", "r652", "r654" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "ftci_Covid19PandemicPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "Covid19PandemicPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Covid-19 Pandemic", "label": "Covid-19 Pandemic Policy [Text Block]", "documentation": "Covid-19 Pandemic Policy [Text Block]" } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility", "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r298", "r883" ] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility", "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r298", "r883", "r884" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Current Fiscal Year End Date", "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "ftci_DayvLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DayvLlcMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "DAYV LLC [Member]", "label": "DAYV LLC [Member]", "documentation": "DAYV LLC" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Debt Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebt1" ], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Text Block]", "terseLabel": "Debt", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r92", "r173", "r272", "r273", "r274", "r275", "r276", "r297", "r298", "r308", "r314", "r315", "r316", "r317", "r318", "r319", "r324", "r331", "r332", "r334", "r469" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Line Items]", "label": "Debt Instrument [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": [ "r181", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r333", "r667", "r668", "r669", "r670", "r671", "r685", "r816", "r903", "r905" ] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Table]", "label": "Schedule of Long-Term Debt Instruments [Table]", "documentation": "Disclosure of information about long-term debt instrument or arrangement." } } }, "auth_ref": [ "r13", "r32", "r33", "r44", "r94", "r95", "r181", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r333", "r667", "r668", "r669", "r670", "r671", "r685", "r816", "r903", "r905" ] }, "ftci_DeferredCostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DeferredCostOfRevenue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred cost of revenue", "label": "Deferred Cost of Revenue", "documentation": "Deferred cost of revenue" } } }, "auth_ref": [] }, "us-gaap_DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of prepaid and other current assets", "label": "Deferred Costs, Capitalized, Prepaid, and Other Assets Disclosure [Table Text Block]", "documentation": "Tabular disclosure of the amounts paid in advance for capitalized costs that will be expensed with the passage of time or the occurrence of a triggering event, and will be charged against earnings within one year or the normal operating cycle, if longer; the aggregate carrying amount of current assets, not separately presented elsewhere in the balance sheet; and other deferred costs." } } }, "auth_ref": [] }, "us-gaap_DeferredCreditsAndOtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredCreditsAndOtherLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-federal tax obligations", "label": "Deferred Credits and Other Liabilities, Current", "documentation": "Carrying amount as of the balance sheet date of unearned revenue or income, not otherwise specified in the taxonomy, which is expected to be taken into income during the current period and current obligations not separately disclosed in the balance sheet (other liabilities, current)." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Deferred Income Tax Expense (Benefit), Total", "terseLabel": "Deferred income taxes", "label": "Deferred Income Tax Expense (Benefit)", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r7", "r135", "r818" ] }, "ftci_DeferredIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DeferredIncomeTaxes", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred income taxes", "documentation": "Deferred Income Taxes" } } }, "auth_ref": [] }, "us-gaap_DeferredRevenueRevenueRecognized1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredRevenueRevenueRecognized1", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognized included in deferred revenue", "label": "Deferred Revenue, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously reported as deferred or unearned revenue." } } }, "auth_ref": [] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Depreciation, Total", "terseLabel": "Depreciation expense", "label": "Depreciation", "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation." } } }, "auth_ref": [ "r7", "r27" ] }, "us-gaap_DepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationAndAmortization", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Depreciation, Depletion and Amortization, Nonproduction, Total", "terseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization, Nonproduction", "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production." } } }, "auth_ref": [ "r7", "r27" ] }, "ftci_DescriptionOfBusinessLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DescriptionOfBusinessLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Description Of Business [Line Items]", "label": "Description Of Business [Line Items]", "documentation": "Description of business." } } }, "auth_ref": [] }, "ftci_DescriptionOfBusinessTable": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DescriptionOfBusinessTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Description Of Business [Table]", "label": "Description Of Business [Table]", "documentation": "Description of business." } } }, "auth_ref": [] }, "ftci_DescriptionOfClosingBidPricOfOurCommonStock": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DescriptionOfClosingBidPricOfOurCommonStock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Description of closing bid pric of our common stock", "label": "Description of closing bid pric of our common stock", "documentation": "Description of closing bid pric of our common stock" } } }, "auth_ref": [] }, "ftci_DescriptionOfRevisedTariffsClassification": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DescriptionOfRevisedTariffsClassification", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Description of revised tariffs classification", "label": "Description of Revised Tariffs Classification", "documentation": "Description of Revised Tariffs classification" } } }, "auth_ref": [] }, "ftci_DescriptionOfTariffsClassification": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "DescriptionOfTariffsClassification", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Description of tariffs classification", "label": "Description of Tariffs Classification", "documentation": "Description of Tariffs classification" } } }, "auth_ref": [] }, "us-gaap_DevelopedTechnologyRightsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DevelopedTechnologyRightsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Developed Technology [Member]", "label": "Developed Technology Rights [Member]", "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property." } } }, "auth_ref": [ "r99", "r855", "r856", "r857", "r858", "r859", "r861", "r863", "r864" ] }, "srt_DirectorMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "DirectorMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Board of Directors", "label": "Director [Member]" } } }, "auth_ref": [ "r832", "r956" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensation" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-Based Compensation", "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r368", "r372", "r403", "r404", "r405", "r676" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "Document Fiscal Period Focus", "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Year Focus", "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Period End Date", "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Quarterly Report", "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r709" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentTransitionReport", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Transition Report", "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r741" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentType", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Type", "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]", "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year" } } }, "auth_ref": [ "r752" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Note 11. Net loss per share", "terseLabel": "Net loss per share:", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic loss per share", "totalLabel": "Earnings Per Share, Basic, Total", "terseLabel": "Basic", "label": "Earnings Per Share, Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r169", "r187", "r188", "r190", "r191", "r192", "r194", "r200", "r202", "r204", "r205", "r206", "r210", "r434", "r437", "r452", "r453", "r513", "r534", "r658" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted loss per share", "totalLabel": "Earnings Per Share, Diluted, Total", "terseLabel": "Diluted", "label": "Earnings Per Share, Diluted", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r169", "r187", "r188", "r190", "r191", "r192", "r194", "r202", "r204", "r205", "r206", "r210", "r434", "r437", "r452", "r453", "r513", "r534", "r658" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShare1" ], "lang": { "en-us": { "role": { "terseLabel": "Net Loss Per Share", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r199", "r207", "r208", "r209" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations", "terseLabel": "Effect of exchange rate changes on cash and cash equivalents", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r460" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statutory rate", "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r176", "r415", "r424", "r678" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsInvestment": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectiveIncomeTaxRateReconciliationTaxCreditsInvestment", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investment tax credit, percentage", "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Investment, Percent", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to investment tax credit." } } }, "auth_ref": [ "r819", "r889", "r890" ] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]", "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [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_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "verboseLabel": "Stock Options [Member]", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line One", "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine2": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressAddressLine2", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line Two", "label": "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/2024", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, City or Town", "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Postal Zip Code", "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, State or Province", "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Central Index Key", "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r707" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Common Stock, Shares Outstanding", "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Current Reporting Status", "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r707" ] }, "dei_EntityExTransitionPeriod": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityExTransitionPeriod", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Ex Transition Period", "label": "Entity Ex Transition Period", "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards." } } }, "auth_ref": [ "r792" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFileNumber", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Securities Act 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/2024", "localname": "EntityFilerCategory", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Filer Category", "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r707" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Incorporation, State or Country Code", "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Interactive Data Current", "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r791" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityRegistrantName", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Registrant Name", "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r707" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityShellCompany", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Shell Company", "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r707" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntitySmallBusiness", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Small Business", "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r707" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Tax Identification Number", "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r707" ] }, "ecd_EqtyAwrdsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments, Footnote [Text Block]", "terseLabel": "Equity Awards Adjustments, Footnote" } } }, "auth_ref": [ "r746" ] }, "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]", "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table" } } }, "auth_ref": [ "r787" ] }, "ecd_EqtyAwrdsAdjsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments [Member]", "terseLabel": "Equity Awards Adjustments" } } }, "auth_ref": [ "r787" ] }, "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]", "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table" } } }, "auth_ref": [ "r787" ] }, "us-gaap_EquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquipmentMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Field Equipment [Member]", "label": "Equipment [Member]", "documentation": "Tangible personal property used to produce goods and services." } } }, "auth_ref": [] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component", "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r10", "r139", "r164", "r165", "r166", "r182", "r183", "r184", "r186", "r192", "r195", "r197", "r212", "r236", "r239", "r270", "r350", "r422", "r423", "r431", "r432", "r433", "r435", "r436", "r437", "r443", "r444", "r445", "r446", "r447", "r448", "r451", "r461", "r463", "r464", "r465", "r466", "r467", "r471", "r474", "r486", "r531", "r549", "r550", "r551", "r569", "r625" ] }, "srt_EquityMethodInvesteeNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "EquityMethodInvesteeNameDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investment, Name", "label": "Investment, Name [Domain]" } } }, "auth_ref": [ "r229", "r230", "r232", "r430", "r793", "r794", "r795", "r895", "r896", "r897", "r898" ] }, "us-gaap_EquityMethodInvestmentOwnershipPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestmentOwnershipPercentage", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Ownership percentage", "label": "Equity Method Investment, Ownership Percentage", "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting." } } }, "auth_ref": [ "r229" ] }, "us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestmentRealizedGainLossOnDisposal", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Gain from disposal of investment in unconsolidated subsidiary", "totalLabel": "Equity Method Investment, Realized Gain (Loss) on Disposal, Total", "terseLabel": "Gain from disposal of investment in unconsolidated subsidiary", "label": "Equity Method Investment, Realized Gain (Loss) on Disposal", "documentation": "Amount of gain (loss) on sale or disposal of an equity method investment." } } }, "auth_ref": [ "r811", "r812", "r813" ] }, "us-gaap_EquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestments", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity method investment", "label": "Equity Method Investments", "documentation": "This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized." } } }, "auth_ref": [ "r211", "r217", "r220", "r227", "r804", "r837" ] }, "us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestmentsAndJointVenturesAbstract", "lang": { "en-us": { "role": { "label": "Equity Method Investments and Joint Ventures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestmentsDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestment" ], "lang": { "en-us": { "role": { "terseLabel": "Equity method investment", "label": "Equity Method Investments and Joint Ventures Disclosure [Text Block]", "documentation": "The entire disclosure for equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group." } } }, "auth_ref": [ "r137", "r231", "r234", "r795" ] }, "ftci_EquityMethodInvestmentsFinancialInformationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "EquityMethodInvestmentsFinancialInformationTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSalesOfEquityMethodInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Equity Method Investments Financial Information", "label": "Equity Method Investments Financial Information [Table Text Block]", "documentation": "Equity method investments financial information." } } }, "auth_ref": [] }, "us-gaap_EquityMethodInvestmentsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestmentsPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Equity method investments", "label": "Equity Method Investments [Policy Text Block]", "documentation": "Disclosure of accounting policy for equity method of accounting for investments and other interests. Investment includes, but is not limited to, unconsolidated subsidiary, corporate joint venture, noncontrolling interest in real estate venture, limited partnership, and limited liability company. Information includes, but is not limited to, ownership percentage, reason equity method is or is not considered appropriate, and accounting policy election for distribution received." } } }, "auth_ref": [ "r5", "r43", "r230" ] }, "us-gaap_EquityMethodInvestmentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestmentsTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSalesOfEquityMethodInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Equity Method Investments", "label": "Equity Method Investments [Table Text Block]", "documentation": "Tabular disclosure of equity method investments including, but not limited to, name of each investee or group of investments, percentage ownership, difference between recorded amount of an investment and the value of the underlying equity in the net assets, and summarized financial information." } } }, "auth_ref": [ "r228" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r756" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r714", "r724", "r734", "r766" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r711", "r721", "r731", "r763" ] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r762" ] }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementPolicyPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value of Financial Instruments", "label": "Fair Value Measurement, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities." } } }, "auth_ref": [] }, "ftci_FairValueOfRetainedEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "FairValueOfRetainedEquipment", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value of retained equipment", "label": "Fair Value Of Retained Equipment", "documentation": "Fair Value Of Retained Equipment" } } }, "auth_ref": [] }, "ftci_FcxSolarLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "FcxSolarLlcMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fcx Solar Llc [Member]", "label": "Fcx Solar Llc [Member]", "documentation": "Fcx Solar Llc [Member]" } } }, "auth_ref": [] }, "ftci_FernwehEngagedOperatorCompanyLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "FernwehEngagedOperatorCompanyLlcMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Fernweh Engaged Operator Company LLC [Member]", "label": "Fernweh Engaged Operator Company LLC [Member]", "documentation": "Fernweh Engaged Operator Company LLC [Member]" } } }, "auth_ref": [] }, "us-gaap_FinancingInterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancingInterestExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest expense", "label": "Financing Interest Expense", "documentation": "This element represents interest incurred for borrowed money which was used to produce goods or render services." } } }, "auth_ref": [ "r73" ] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, estimated useful life", "label": "Finite-Lived Intangible Asset, Useful Life", "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Accumulated amortization", "terseLabel": "Accumulated amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r149", "r251", "r264", "r666" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r258", "r260", "r261", "r262", "r263", "r264", "r267", "r268", "r507", "r508", "r644" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Finite-Lived Intangible Assets, Gross, Total", "terseLabel": "Intangible assets, gross", "label": "Finite-Lived Intangible Assets, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r251", "r264", "r508", "r666" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets [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": [ "r258", "r264", "r267", "r268", "r269", "r507", "r644", "r666" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r258", "r260", "r261", "r262", "r263", "r264", "r267", "r268", "r644" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Intangible assets, net", "terseLabel": "Intangible assets, net", "periodStartLabel": "Finite-Lived Intangible Assets, Net, Beginning Balance", "periodEndLabel": "Finite-Lived Intangible Assets, Net, Ending Balance", "label": "Finite-Lived Intangible Assets, Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r507", "r861" ] }, "us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized period", "label": "Finite-Lived Intangible Assets, Remaining Amortization Period", "documentation": "Remaining amortization period of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r507" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r718", "r728", "r738", "r770" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r718", "r728", "r738", "r770" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r718", "r728", "r738", "r770" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r718", "r728", "r738", "r770" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r718", "r728", "r738", "r770" ] }, "ftci_ForwardStockSplit": { "xbrltype": "pureItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ForwardStockSplit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Forward stock split", "label": "Forward stock split", "documentation": "Forward stock split" } } }, "auth_ref": [] }, "ftci_ForwardStockSplitTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ForwardStockSplitTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Forward Stock Split", "label": "Corporate Conversion And Stock Split Policy [Text Block]", "documentation": "Forward stock split." } } }, "auth_ref": [] }, "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]", "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year" } } }, "auth_ref": [ "r751" ] }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GainLossOnSaleOfPropertyPlantEquipment", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Gain from sale of property and equipment", "label": "Gain (Loss) on Disposition of Property Plant Equipment", "totalLabel": "Gain (Loss) on Disposition of Property Plant Equipment, Total", "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property." } } }, "auth_ref": [ "r7" ] }, "us-gaap_GeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeneralAndAdministrativeExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "General and administrative expense", "totalLabel": "General and Administrative Expense, Total", "terseLabel": "General and administrative", "label": "General and Administrative Expense", "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line." } } }, "auth_ref": [ "r75", "r605" ] }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeneralAndAdministrativeExpenseMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "General and administrative [Member]", "label": "General and Administrative Expense [Member]", "documentation": "Primary financial statement caption encompassing general and administrative expense." } } }, "auth_ref": [ "r75" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfGoodwillActivityDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Goodwill, Total", "terseLabel": "Goodwill", "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end of period", "label": "Goodwill", "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r148", "r253", "r509", "r662", "r665", "r679", "r687", "r844", "r851" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwill1" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, net and goodwill", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r842", "r854" ] }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Goodwill", "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined." } } }, "auth_ref": [ "r252", "r257", "r665" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfGoodwillActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Translation", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) asset representing future economic benefit from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r256" ] }, "us-gaap_GoodwillImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillImpairmentLoss", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment of goodwill", "label": "Goodwill, Impairment Loss", "documentation": "Amount of impairment loss from asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r7", "r254", "r255", "r257", "r665", "r679" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GrossProfit", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit (loss)", "terseLabel": "Gross loss", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r69", "r73", "r113", "r175", "r233", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r459", "r660", "r661", "r826", "r827", "r828", "r829", "r830", "r885" ] }, "ftci_HxTrackerMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "HxTrackerMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "HX Tracker Member", "terseLabel": "HX Tracker", "label": "HX Tracker [Member]" } } }, "auth_ref": [] }, "us-gaap_IPOMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IPOMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "label": "IPO [Member]", "documentation": "First sale of stock by a private company to the public." } } }, "auth_ref": [] }, "ftci_ImpactOfAdoption": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ImpactOfAdoption", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails" ], "lang": { "en-us": { "role": { "documentation": "Impact of adoption.", "label": "Impact Of Adoption", "terseLabel": "Impact of adoption of ASU 2016-13, effective January 1, 2023" } } }, "auth_ref": [] }, "ftci_ImpactOfStockSplit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ImpactOfStockSplit", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "label": "Impact of Stock Split", "documentation": "Impact of stock split." } } }, "auth_ref": [] }, "us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ImpairedFinancingReceivableUnpaidPrincipalBalance", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Impaired Financing Receivable, Unpaid Principal Balance", "terseLabel": "Unpaid receivable balance totaling", "documentation": "Amount of unpaid principal balance of impaired financing receivables with related allowance for credit losses and without related allowance for credit losses." } } }, "auth_ref": [ "r116" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment", "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets." } } }, "auth_ref": [ "r0", "r90" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Loss before income taxes", "totalLabel": "Loss before income taxes", "terseLabel": "Pre-tax income (loss) from company's operations", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r70", "r108", "r113", "r514", "r529", "r660", "r661", "r826", "r827", "r828", "r829", "r830" ] }, "us-gaap_IncomeLossFromEquityMethodInvestmentsNetOfDividendsOrDistributions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromEquityMethodInvestmentsNetOfDividendsOrDistributions", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Loss from unconsolidated subsidiary", "totalLabel": "Income (Loss) from Equity Method Investments, Net of Dividends or Distributions, Total", "terseLabel": "Loss from unconsolidated subsidiary", "label": "Income (Loss) from Equity Method Investments, Net of Dividends or Distributions", "documentation": "This element represents the undistributed income (or loss) of equity method investments, net of dividends or other distributions received from unconsolidated subsidiaries, certain corporate joint ventures, and certain noncontrolled corporations; such investments are accounted for under the equity method of accounting. This element excludes distributions that constitute a return of investment, which are classified as investing activities." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of operations", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r271", "r277", "r280", "r455", "r456", "r457", "r546", "r548", "r610", "r644", "r680", "r926" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Domain]", "documentation": "Location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r277", "r280", "r455", "r456", "r457", "r546", "r548", "r610", "r644", "r680", "r926" ] }, "us-gaap_IncomeTaxContingencyLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxContingencyLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Contingency [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_IncomeTaxContingencyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxContingencyTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Contingency [Table]", "documentation": "Disclosure of information about tax positions taken in the tax returns filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other income tax contingencies. Includes, but is not limited to, interest and penalties, reconciliation of unrecognized tax benefits, unrecognized tax benefits that would affect the effective tax rate, tax years that remain subject to examination by tax jurisdictions, and information about positions for which it is reasonably possible that amounts unrecognized will significantly change within 12 months." } } }, "auth_ref": [ "r891" ] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes", "label": "Income Tax Disclosure [Text Block]", "documentation": "The entire disclosure for income tax." } } }, "auth_ref": [ "r176", "r413", "r415", "r416", "r417", "r418", "r420", "r421", "r425", "r427", "r428", "r429", "r565", "r678" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Provision for income taxes", "verboseLabel": "Income tax expense", "negatedTerseLabel": "Income tax expense (benefit)", "totalLabel": "Income Tax Expense (Benefit), Total", "terseLabel": "(Benefit from) income taxes", "label": "Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r124", "r136", "r196", "r197", "r211", "r216", "r220", "r414", "r415", "r426", "r535", "r678" ] }, "us-gaap_IncomeTaxesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxesPaid", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash paid during the period for taxes, net of refunds", "label": "Income Taxes Paid", "documentation": "Amount, before refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax." } } }, "auth_ref": [ "r22", "r82", "r814", "r893", "r894" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Increase (Decrease) in Accounts Payable, Total", "terseLabel": "Accounts payable", "label": "Increase (Decrease) in Accounts Payable", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Accounts receivable", "label": "Increase (Decrease) in Accounts Receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInDeferredRevenue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue", "label": "Increase (Decrease) in Deferred Revenue", "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r645" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Inventories", "totalLabel": "Increase (Decrease) in Inventories, Total", "label": "Increase (Decrease) in Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Impact on cash from changes in operating assets and liabilities:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accruals and other current liabilities", "label": "Increase (Decrease) in Other Accounts Payable and Accrued Liabilities", "documentation": "The increase (decrease) during the reporting period in other obligations or expenses incurred but not yet paid." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other non-current liabilities", "label": "Increase (Decrease) in Other Noncurrent Liabilities", "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherOperatingAssets", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Other assets", "totalLabel": "Increase (Decrease) in Other Operating Assets, Total", "label": "Increase (Decrease) in Other Operating Assets", "documentation": "Amount of increase (decrease) in operating assets classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherOperatingCapitalNet", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Lease payments and other, net", "totalLabel": "Increase (Decrease) in Other Operating Assets and Liabilities, Net, Total", "label": "Increase (Decrease) in Other Operating Assets and Liabilities, Net", "documentation": "Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Prepaid and other current assets", "totalLabel": "Increase (Decrease) in Prepaid Expense and Other Assets, Total", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-Lived Intangible Assets [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": [ "r258", "r266", "r269", "r666" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r718", "r728", "r738", "r762", "r770", "r774", "r782" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r780" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r710", "r786" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r710", "r786" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r710", "r786" ] }, "us-gaap_IntangibleAssetsFiniteLivedPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsFiniteLivedPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, net", "label": "Intangible Assets, Finite-Lived, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for finite-lived intangible assets. This accounting policy also might address: (1) the amortization method used; (2) the useful lives of such assets; and (3) how the entity assesses and measures impairment of such assets." } } }, "auth_ref": [ "r503", "r504", "r505", "r507", "r655", "r854" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Intangible Assets, Net (Excluding Goodwill), Total", "terseLabel": "Intangible assets, net", "label": "Intangible Assets, Net (Excluding Goodwill)", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r258", "r861", "r862" ] }, "us-gaap_InterestIncomeExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestIncomeExpenseNet", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Interest expense", "totalLabel": "Interest Income (Expense), Net, Total", "label": "Interest Income (Expense), Net", "terseLabel": "Interest income (expense), net", "documentation": "Amount of interest income (expense) classified as operating." } } }, "auth_ref": [ "r510", "r827" ] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNet" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "terseLabel": "Inventories", "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": [ "r246" ] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryFinishedGoods", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetScheduleOfInventoriesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Inventory, Finished Goods, Gross, Total", "terseLabel": "Finished goods", "label": "Inventory, Finished Goods, Gross", "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer." } } }, "auth_ref": [ "r805" ] }, "us-gaap_InventoryImpairmentPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryImpairmentPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment", "label": "Inventory Impairment, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for recognizing inventory losses, including, but not limited to, substantial and unusual losses resulting from the subsequent measurement of inventory due to physical deterioration, obsolescence, or changes in price levels." } } }, "auth_ref": [ "r840" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryNet", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetScheduleOfInventoriesDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "terseLabel": "Inventories", "label": "Inventory, 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": [ "r155", "r649", "r687" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Inventories", "label": "Inventory, Policy [Policy Text Block]", "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost." } } }, "auth_ref": [ "r126", "r144", "r154", "r246", "r247", "r248", "r502", "r656" ] }, "us-gaap_InventoryValuationReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryValuationReserves", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetScheduleOfInventoriesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Allowance for slow-moving and obsolete inventory", "terseLabel": "Allowance for slow-moving and obsolete inventory", "periodStartLabel": "Inventory Valuation Reserves, Beginning Balance", "periodEndLabel": "Inventory Valuation Reserves, Ending Balance", "label": "Inventory Valuation Reserves", "documentation": "Amount of valuation reserve for inventory." } } }, "auth_ref": [ "r87", "r806" ] }, "ftci_JobsActAccountingElectionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "JobsActAccountingElectionPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "JOBS Act Accounting Election", "label": "Jobs Act Accounting Election Policy [Text Block]", "documentation": "Jobs act accounting election policy text block." } } }, "auth_ref": [] }, "us-gaap_LeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseCost", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Total lease cost", "totalLabel": "Total lease cost", "terseLabel": "Total lease cost", "label": "Lease, Cost", "documentation": "Amount of lease cost recognized by lessee for lease contract." } } }, "auth_ref": [ "r479", "r686" ] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Lease Expense", "label": "Lease, Cost [Table Text Block]", "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income." } } }, "auth_ref": [ "r906" ] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r89", "r483" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "label": "Leases [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LesseeLeaseDescriptionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeLeaseDescriptionLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [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": [ "r478", "r484" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Future Remaining Lease Payments Obligations", "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r907" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total lease payments", "label": "Lessee, Operating Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2029", "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remainder of 2024", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less imputed interest", "terseLabel": "Less imputed interest", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r482" ] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeases" ], "lang": { "en-us": { "role": { "terseLabel": "Leases", "label": "Lessee, Operating Leases [Text Block]", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r473" ] }, "us-gaap_LetterOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LetterOfCreditMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Letter of Credit", "label": "Letter of Credit [Member]", "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Liabilities", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "label": "Liabilities", "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others." } } }, "auth_ref": [ "r13", "r48", "r49", "r50", "r52", "r53", "r54", "r55", "r175", "r233", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r440", "r441", "r442", "r459", "r580", "r659", "r705", "r885", "r910", "r911" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and stockholders' equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r63", "r106", "r525", "r687", "r817", "r838", "r902" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "terseLabel": "Current liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r50", "r143", "r175", "r233", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r440", "r441", "r442", "r459", "r687", "r885", "r910", "r911" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilityForUnpaidClaimsAndClaimsAdjustmentExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilityForUnpaidClaimsAndClaimsAdjustmentExpenseNet", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Liability For Unpaid Claims And Claims Adjustment Expense", "periodStartLabel": "Liability for Unpaid Claims and Claims Adjustment Expense, Net, Beginning Balance", "periodEndLabel": "Liability for Unpaid Claims and Claims Adjustment Expense, Net, Ending Balance", "label": "Liability for Unpaid Claims and Claims Adjustment Expense, Net", "documentation": "Liability as of the balance sheet date for amounts representing estimated cost of settling unpaid claims under the terms of the underlying insurance policies, less estimated reinsurance recoveries on such claims. This includes an estimate for claims which have been incurred but not reported. Claim adjustment expenses represent the costs estimated to be incurred in the settlement of unpaid claims." } } }, "auth_ref": [ "r542", "r543", "r919" ] }, "us-gaap_LineOfCreditFacilityCommitmentFeePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityCommitmentFeePercentage", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Commitment fees rate", "label": "Line of Credit Facility, Commitment Fee Percentage", "documentation": "The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used." } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityFairValueOfAmountOutstanding", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility amount", "label": "Line of Credit Facility, Fair Value of Amount Outstanding", "documentation": "Fair value of the amount outstanding under the credit facility." } } }, "auth_ref": [ "r458" ] }, "ftci_LiquidityPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "LiquidityPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Liquidity", "label": "Liquidity Policy [Text Block]", "documentation": "Liquidity Policy [Text Block]" } } }, "auth_ref": [] }, "ftci_LiquidityRatioAmountMinimumLimit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "LiquidityRatioAmountMinimumLimit", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Liquidity ratio amount, minimum limit", "label": "Liquidity Ratio Amount, Minimum Limit", "documentation": "Liquidity Ratio Amount, Minimum Limit" } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LocalPhoneNumber", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebtPercentageBearingFixedInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtPercentageBearingFixedInterestRate", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Term Debt, Interest Rate", "label": "Long-Term Debt, Percentage Bearing Fixed Interest, Percentage Rate", "documentation": "The interest rate applicable to the portion of the carrying amount of long-term borrowings outstanding as of the balance sheet date, including current maturities, which accrues interest at a set, unchanging rate." } } }, "auth_ref": [ "r51" ] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r13", "r866", "r867", "r868" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r13", "r31", "r866", "r867", "r868" ] }, "us-gaap_LossContingencyDamagesSoughtValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LossContingencyDamagesSoughtValue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Damages sought value", "label": "Loss Contingency, Damages Sought, Value", "documentation": "The value (monetary amount) of the award the plaintiff seeks in the legal matter." } } }, "auth_ref": [ "r871", "r872", "r873" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MajorCustomersAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r223", "r674", "r689", "r692", "r888", "r923", "r927", "r928", "r930", "r931", "r932", "r933", "r934", "r935", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946", "r947", "r948", "r949", "r950", "r951", "r952", "r953", "r954" ] }, "ftci_MajorCustomersMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "MajorCustomersMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Major Customers [Member]", "documentation": "Major Customers [Member]" } } }, "auth_ref": [] }, "us-gaap_MalpracticeLossContingencyLettersOfCreditAndSuretyBonds": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MalpracticeLossContingencyLettersOfCreditAndSuretyBonds", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Malpractice Loss Contingency, Letters of Credit and Surety Bonds", "terseLabel": "Outstanding surety and performance bonds", "documentation": "Amount of letters of credit and other surety bonds that are available for the future payment of malpractice claims." } } }, "auth_ref": [ "r110" ] }, "ftci_MasterProjectSupplyAgreementsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "MasterProjectSupplyAgreementsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Master Project Supply Agreements [Member]", "label": "Master Project Supply Agreements [Member]", "terseLabel": "Master project supply agreements [Member]" } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Maximum [Member]", "terseLabel": "Maximum [Member]", "label": "Maximum [Member]" } } }, "auth_ref": [ "r287", "r288", "r289", "r290", "r367", "r411", "r454", "r501", "r545", "r547", "r559", "r572", "r573", "r633", "r634", "r635", "r636", "r637", "r642", "r643", "r663", "r672", "r675", "r681", "r682", "r683", "r684", "r690", "r887", "r912", "r913", "r914", "r915", "r916", "r917" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r754" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r754" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum [Member]", "label": "Minimum [Member]" } } }, "auth_ref": [ "r287", "r288", "r289", "r290", "r367", "r411", "r454", "r501", "r545", "r547", "r559", "r572", "r573", "r633", "r634", "r635", "r636", "r637", "r642", "r643", "r663", "r672", "r675", "r681", "r682", "r683", "r690", "r887", "r912", "r913", "r914", "r915", "r916", "r917" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r773" ] }, "us-gaap_MoneyMarketFundsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MoneyMarketFundsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Carrying value of money market fund", "label": "Money Market Funds, at Carrying Value", "documentation": "Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r781" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r223", "r674", "r689", "r692", "r888", "r923", "r927", "r928", "r930", "r931", "r932", "r933", "r934", "r935", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946", "r947", "r948", "r949", "r950", "r951", "r952", "r953", "r954" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r755" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by financing activities", "label": "Net Cash Provided by (Used in) Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r170" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from financing activities:", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r170" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from investing activities:", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivities", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in operations", "negatedLabel": "Net cash used in operating activities", "terseLabel": "Net cash used in operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r80", "r81", "r83" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from operating activities", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLoss", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "verboseLabel": "Net loss", "totalLabel": "Net loss", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r74", "r83", "r109", "r141", "r159", "r162", "r166", "r175", "r185", "r187", "r188", "r190", "r191", "r192", "r196", "r197", "r203", "r233", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r434", "r437", "r453", "r459", "r530", "r603", "r623", "r624", "r703", "r885" ] }, "ftci_NetProfitAttributable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "NetProfitAttributable", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net Profit Attributable", "label": "Net profit attributable", "documentation": "Net profit attributable" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recent accounting and regulatory pronouncements not yet adopted", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r754" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r718", "r728", "r738", "r762", "r770" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r745" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r744" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r762" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r781" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r781" ] }, "us-gaap_OffBalanceSheetCreditLossLiabilityCreditLossExpenseReversal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OffBalanceSheetCreditLossLiabilityCreditLossExpenseReversal", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Credit loss provision", "terseLabel": "Credit loss provisions", "label": "Off-Balance-Sheet, Credit Loss, Liability, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss for off-balance sheet credit exposure. Excludes off-balance sheet credit exposure accounted for as insurance and instrument accounted for under derivatives and hedging." } } }, "auth_ref": [ "r242" ] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpenses", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total operating expenses", "terseLabel": "Total operating expenses", "label": "Operating Expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpensesAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating expenses", "label": "Operating Expenses [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Loss from operations", "terseLabel": "Loss from operations", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r113", "r660", "r826", "r827", "r828", "r829", "r830" ] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseCost", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Operating lease cost", "terseLabel": "Operating lease cost", "label": "Operating Lease, Cost", "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability." } } }, "auth_ref": [ "r480", "r686" ] }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiability", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Present value of operating lease liabilities", "totalLabel": "Present value of operating lease liabilities", "terseLabel": "Total lease liability", "label": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r476" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Current portion of operating lease liability", "terseLabel": "Operating lease liabilities, current portion (included in Accrued expenses and other current liabilities)", "label": "Operating Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r476" ] }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]", "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current operating lease liability." } } }, "auth_ref": [ "r477" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfFutureRemainingLeasePaymentsObligationsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liability, net of current portion", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r476" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease right-of-use assets", "label": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r475" ] }, "us-gaap_OperatingLeasesOfLesseeDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeasesOfLesseeDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Supplemental Information, Operating Lease", "label": "Lessee, Operating Lease, Disclosure [Table Text Block]", "documentation": "Tabular disclosure for lessee's operating leases. Includes, but is not limited to, description of lessee's operating lease, existence and terms of renewal or purchase options and escalation clauses, restrictions imposed by lease, such as those concerning dividends, additional debt, and further leasing, rent holidays, rent concessions, or leasehold improvement incentives and unusual provisions or conditions." } } }, "auth_ref": [ "r119", "r120", "r121", "r122", "r123" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]" } } }, "auth_ref": [] }, "ftci_OtherAccruedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "OtherAccruedCompensation", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Other Accrued Compensation", "label": "Other Accrued Compensation", "terseLabel": "Accrued compensation" } } }, "auth_ref": [] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other accrued expenses", "label": "Other Accrued Liabilities, Current", "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": [ "r49" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other current assets", "label": "Other Assets, Current", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r157", "r687" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Other Assets, Noncurrent, Total", "terseLabel": "Other assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r150" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Total", "terseLabel": "Foreign currency translation adjustments", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r3", "r531" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Other Comprehensive Income (Loss), Net of Tax, Total", "terseLabel": "Other comprehensive gain (loss)", "label": "Other Comprehensive Income (Loss), Net of Tax", "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss)." } } }, "auth_ref": [ "r10", "r12", "r160", "r163", "r167", "r192", "r461", "r462", "r467", "r511", "r531", "r808", "r809" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]", "terseLabel": "Other comprehensive income (loss):" } } }, "auth_ref": [] }, "us-gaap_OtherCurrentLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherCurrentLiabilitiesMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued Expenses and Other Current Liabilities [Member]", "label": "Other Current Liabilities [Member]", "documentation": "Primary financial statement caption encompassing other current liabilities." } } }, "auth_ref": [] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total other current liabilities", "terseLabel": "Other current liabilities", "label": "Other Liabilities, Current", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r49", "r687" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Other Liabilities, Noncurrent, Total", "terseLabel": "Other non-current liabilities", "label": "Other Liabilities, Noncurrent", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r53" ] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNoncashIncomeExpense", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Lease expense and other", "totalLabel": "Other Noncash Income (Expense), Total", "label": "Other Noncash Income (Expense)", "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other." } } }, "auth_ref": [ "r83" ] }, "us-gaap_OtherNoncurrentLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNoncurrentLiabilitiesMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other Noncurrent Liabilities [Member]", "label": "Other Noncurrent Liabilities [Member]", "documentation": "Primary financial statement caption encompassing other noncurrent liabilities." } } }, "auth_ref": [] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Other income (expense), net", "totalLabel": "Other Nonoperating Income (Expense), Total", "terseLabel": "Other income (expense), net", "label": "Other Nonoperating Income (Expense)", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r77" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r754" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r716", "r726", "r736", "r768" ] }, "ftci_OutstandingCapitalStockHeld": { "xbrltype": "percentItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "OutstandingCapitalStockHeld", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding capital stock held", "label": "Outstanding capital stock held", "documentation": "Outstanding capital stock held" } } }, "auth_ref": [] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r719", "r729", "r739", "r771" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r719", "r729", "r739", "r771" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r743" ] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PayablesAndAccrualsAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Warranty accruals are reported in:", "label": "Payables and Accruals [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PaymentsOfStockIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsOfStockIssuanceCosts", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Stock offering costs paid", "terseLabel": "Stock issuance costs", "label": "Payments of Stock Issuance Costs", "documentation": "The cash outflow for cost incurred directly with the issuance of an equity security." } } }, "auth_ref": [ "r19" ] }, "us-gaap_PaymentsToAcquireOtherInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireOtherInvestments", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Equity method investment in Alpha Steel", "terseLabel": "Investment in Alpha Steel", "label": "Payments to Acquire Other Investments", "documentation": "Amount of cash outflow to acquire investments classified as other." } } }, "auth_ref": [ "r78" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of property and equipment", "totalLabel": "Payments to Acquire Property, Plant, and Equipment, Total", "label": "Payments to Acquire Property, Plant, and Equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r79" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r753" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r753" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r745" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r762" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r755" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r744" ] }, "ftci_PercantageOfConcentrationsOfCreditRisk": { "xbrltype": "percentItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PercantageOfConcentrationsOfCreditRisk", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentrations of credit risk, percentage", "label": "Percantage of Concentrations of credit risk", "documentation": "Percantage of Concentrations of credit risk" } } }, "auth_ref": [] }, "ftci_PlacingPurchaseOrders": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PlacingPurchaseOrders", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Placing Purchase Orders", "label": "Placing purchase orders", "documentation": "Placing purchase orders" } } }, "auth_ref": [] }, "ftci_PlcBarclaysBankMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PlcBarclaysBankMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Barclays Bank PLC [Member]", "label": "PLC Barclays Bank [Member]", "documentation": "PLC Barclays Bank [Member]" } } }, "auth_ref": [] }, "ecd_PnsnAdjsPrrSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsPrrSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Adjustments Prior Service Cost [Member]", "terseLabel": "Pension Adjustments Prior Service Cost" } } }, "auth_ref": [ "r746" ] }, "ecd_PnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Adjustments Service Cost [Member]", "terseLabel": "Pension Adjustments Service Cost" } } }, "auth_ref": [ "r790" ] }, "ecd_PnsnBnftsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnBnftsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Benefits Adjustments, Footnote [Text Block]", "terseLabel": "Pension Benefits Adjustments, Footnote" } } }, "auth_ref": [ "r745" ] }, "ftci_PotentialFutureCapitalContributions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PotentialFutureCapitalContributions", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Potential Future Capital Contributions", "label": "Potential Future Capital Contributions", "documentation": "Potential Future Capital Contributions" } } }, "auth_ref": [] }, "us-gaap_PreferredStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred Stock", "label": "Preferred Stock [Member]", "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company." } } }, "auth_ref": [ "r695", "r696", "r699", "r700", "r701", "r702", "r955", "r958" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, par value", "label": "Preferred Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r56", "r336" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares authorized", "label": "Preferred Stock, Shares Authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r56", "r582" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Preferred Stock, Shares Issued, Total", "terseLabel": "Preferred stock, shares issued", "label": "Preferred Stock, Shares Issued", "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt." } } }, "auth_ref": [ "r56", "r336" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock par value of $0.0001 per share, 10,000,000 shares authorized; none issued as of September 30, 2024 and December 31, 2023", "totalLabel": "Preferred Stock, Value, Issued, Total", "periodStartLabel": "Preferred Stock, Value, Issued, Beginning Balance", "periodEndLabel": "Preferred Stock, Value, Issued, Ending Balance", "label": "Preferred Stock, Value, Issued", "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": [ "r56", "r521", "r687" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Prepaid Expenses and Other Current Assets", "totalLabel": "Total", "terseLabel": "Prepaid and other current assets", "label": "Prepaid Expense and Other Assets, Current", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r807" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseAndOtherAssetsCurrentAbstract", "lang": { "en-us": { "role": { "label": "Prepaid Expense and Other Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PrepaidExpenseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Prepaid Expense, Current, Total", "terseLabel": "Prepaid expense", "label": "Prepaid Expense, Current", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r156", "r249", "r250", "r650" ] }, "ftci_PrepaidExpensesAndOtherCurrentAssetsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PrepaidExpensesAndOtherCurrentAssetsTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssets" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid and other current assets", "label": "Prepaid Expenses and Other Current Assets [Text Block]", "documentation": "Prepaid Expenses and Other Current Assets." } } }, "auth_ref": [] }, "us-gaap_PrepaidTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidTaxes", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid taxes", "label": "Prepaid Taxes", "documentation": "Amount of asset related to consideration paid in advance for income and other taxes that provide economic benefits within a future period of one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r651", "r664", "r841" ] }, "us-gaap_PrimeRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrimeRateMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Prime Rate [Member]", "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers." } } }, "auth_ref": [] }, "us-gaap_PrivatePlacementMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrivatePlacementMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Private Placement", "label": "Private Placement [Member]", "documentation": "A private placement is a direct offering of securities to a limited number of sophisticated investors such as insurance companies, pension funds, mezzanine funds, stock funds and trusts." } } }, "auth_ref": [] }, "ftci_ProceedsFromDeferredOfferingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ProceedsFromDeferredOfferingCosts", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred offering costs", "label": "Proceeds From Deferred Offering Costs", "documentation": "Proceeds from deferred offering costs." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromIssuanceInitialPublicOffering": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromIssuanceInitialPublicOffering", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Proceeds of IPO", "terseLabel": "Proceeds from IPO", "label": "Proceeds from Issuance Initial Public Offering", "documentation": "The cash inflow associated with the amount received from entity's first offering of stock to the public." } } }, "auth_ref": [ "r4" ] }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Proceeds from common stock", "terseLabel": "Sale of common stock", "label": "Proceeds from Issuance of Common Stock", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r4" ] }, "us-gaap_ProceedsFromIssuanceOrSaleOfEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromIssuanceOrSaleOfEquity", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Proceeds from Issuance or Sale of Equity, Total", "terseLabel": "Sale of common stock", "label": "Proceeds from Issuance or Sale of Equity", "documentation": "The cash inflow from the issuance of common stock, preferred stock, treasury stock, stock options, and other types of equity." } } }, "auth_ref": [ "r4", "r562" ] }, "us-gaap_ProceedsFromSaleOfEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleOfEquityMethodInvestments", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from disposal of investment in unconsolidated subsidiary", "label": "Proceeds from Sale of Equity Method Investments", "documentation": "The cash inflow associated with the sale of equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence." } } }, "auth_ref": [ "r18" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Proceeds from stock option exercises", "terseLabel": "Proceeds from stock option exercises", "label": "Proceeds from Stock Options Exercised", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r4", "r11" ] }, "us-gaap_ProductMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Product", "label": "Product [Member]", "documentation": "Article or substance produced by nature, labor or machinery." } } }, "auth_ref": [ "r673" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service", "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r221", "r506", "r536", "r537", "r538", "r539", "r540", "r541", "r544", "r647", "r673", "r688", "r690", "r691", "r693", "r694", "r874", "r875", "r888", "r923", "r927", "r928", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946", "r947", "r948", "r949", "r950", "r951", "r952", "r953", "r954" ] }, "us-gaap_ProductWarrantiesDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantiesDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "Product Warranties Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesSummaryOfChangesInProductWarrantyReservesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Standard and Extended Product Warranty Accrual, Total", "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end of period", "label": "Standard and Extended Product Warranty Accrual", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers." } } }, "auth_ref": [ "r103", "r291", "r293", "r296" ] }, "us-gaap_ProductWarrantyAccrualClassifiedCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyAccrualClassifiedCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Other current liabilities", "terseLabel": "Warranty reserves", "label": "Product Warranty Accrual, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r49", "r878", "r882" ] }, "us-gaap_ProductWarrantyAccrualNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyAccrualNoncurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Other non-current liabilities", "terseLabel": "Warranty reserves", "label": "Product Warranty Accrual, Noncurrent", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and due after one year (or beyond the operating cycle if longer) for estimated claims under standard and extended warranty protection rights granted to customers." } } }, "auth_ref": [ "r53", "r878", "r882" ] }, "us-gaap_ProductWarrantyAccrualPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyAccrualPayments", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesSummaryOfChangesInProductWarrantyReservesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Settlements made during the period", "totalLabel": "Standard and Extended Product Warranty Accrual, Decrease for Payments, Total", "label": "Standard and Extended Product Warranty Accrual, Decrease for Payments", "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty." } } }, "auth_ref": [ "r294" ] }, "us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyAccrualPreexistingIncreaseDecrease", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesSummaryOfChangesInProductWarrantyReservesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Standard and Extended Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties, Total", "terseLabel": "Changes in liability for pre-existing warranties", "label": "Standard and Extended Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties", "documentation": "Amount of increase (decrease) in the standard and extended product warranty accrual from changes in estimates attributable to preexisting product warranties." } } }, "auth_ref": [ "r295" ] }, "us-gaap_ProductWarrantyExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Warranty and remediation provisions", "label": "Product Warranty Expense", "documentation": "The expense charged against earnings for the period pertaining to standard and extended warranties on the entity's goods and services granted to customers." } } }, "auth_ref": [ "r6", "r876" ] }, "us-gaap_ProductWarrantyLiabilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyLiabilityLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product Warranty Liability [Line Items]", "label": "Product Warranty Liability [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_ProductWarrantyLiabilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductWarrantyLiabilityTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product Warranty Liability [Table]", "label": "Product Warranty Liability [Table]", "documentation": "Disclosure of information about product warranty liability, including, but not limited to, reductions in the liability for payments made under the warranty, changes in the liability for accruals related to product warranties issued, and changes in the liability for accruals related to preexisting warranties." } } }, "auth_ref": [] }, "ftci_ProductWarrantyLife": { "xbrltype": "durationItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ProductWarrantyLife", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product warranty life", "label": "Product Warranty Life", "documentation": "Product warranty life." } } }, "auth_ref": [] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service", "label": "Product and Service [Domain]" } } }, "auth_ref": [ "r221", "r506", "r536", "r537", "r538", "r539", "r540", "r541", "r544", "r647", "r673", "r688", "r690", "r691", "r693", "r694", "r874", "r875", "r888", "r923", "r927", "r928", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946", "r947", "r948", "r949", "r950", "r951", "r952", "r953", "r954" ] }, "us-gaap_ProgramRightsObligationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProgramRightsObligationsAbstract", "lang": { "en-us": { "role": { "label": "Program Rights Obligations [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r8", "r483" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNet" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment, net", "label": "Property, Plant and Equipment Disclosure [Text Block]", "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r88", "r130", "r133", "r134" ] }, "ftci_PropertyPlantAndEquipmentEstimatedFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PropertyPlantAndEquipmentEstimatedFairValue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Property Plant and Equipment Estimated Fair Value", "label": "Property Plant and Equipment Estimated Fair Value", "terseLabel": "Equipment estimated fair value" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Property, Plant and Equipment, Gross, Total", "terseLabel": "Property and equipment, gross", "periodStartLabel": "Property, Plant and Equipment, Gross, Beginning Balance", "periodEndLabel": "Property, Plant and Equipment, Gross, Ending Balance", "label": "Property, Plant and Equipment, Gross", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r89", "r146", "r528" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [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": [ "r483" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Property and equipment, net", "terseLabel": "Property and equipment, net", "periodStartLabel": "Property, Plant and Equipment, Net, Beginning Balance", "periodEndLabel": "Property, Plant and Equipment, Net, Ending Balance", "label": "Property, Plant and Equipment, Net", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r8", "r483", "r515", "r528", "r687" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of property and equipment", "label": "Property, Plant and Equipment [Table Text Block]", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r8" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Domain]", "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [ "r89", "r483" ] }, "ftci_ProvisionForInventoryObsolescence": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ProvisionForInventoryObsolescence", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Provision for obsolete and slow-moving inventory", "label": "Provision For Inventory Obsolescence", "documentation": "Expense charge to establish an inventory obsolesce reserve." } } }, "auth_ref": [] }, "us-gaap_ProvisionForOtherCreditLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProvisionForOtherCreditLosses", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Provision For Credit Losses", "label": "Provision for Other Credit Losses", "documentation": "Amount of expense related to credit loss from transactions other than loan and lease transactions." } } }, "auth_ref": [ "r6", "r107" ] }, "ftci_PurchaseObligationPercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PurchaseObligationPercentage", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase Obligation Percentage", "label": "Purchase Obligation Percentage", "documentation": "Purchase Obligation Percentage" } } }, "auth_ref": [] }, "ftci_PurchaseOfPropertyAndEquipmentIncludedInAccountPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "PurchaseOfPropertyAndEquipmentIncludedInAccountPayable", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Purchases of property and equipment included in ending accounts payable and accruals", "label": "Purchase Of Property And Equipment Included In Account Payable", "documentation": "Purchase of property and equipment included in account payable." } } }, "auth_ref": [] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r743" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r743" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement", "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r287", "r288", "r289", "r290", "r365", "r367", "r398", "r399", "r400", "r411", "r454", "r498", "r499", "r501", "r545", "r547", "r559", "r572", "r573", "r633", "r634", "r635", "r636", "r637", "r642", "r643", "r663", "r672", "r675", "r681", "r682", "r683", "r684", "r690", "r697", "r869", "r887", "r901", "r913", "r914", "r915", "r916", "r917" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement", "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r287", "r288", "r289", "r290", "r365", "r367", "r398", "r399", "r400", "r411", "r454", "r498", "r499", "r501", "r545", "r547", "r559", "r572", "r573", "r633", "r634", "r635", "r636", "r637", "r642", "r643", "r663", "r672", "r675", "r681", "r682", "r683", "r684", "r690", "r697", "r869", "r887", "r901", "r913", "r914", "r915", "r916", "r917" ] }, "us-gaap_ReceivablesNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReceivablesNetCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "label": "Receivables, Net, Current", "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value." } } }, "auth_ref": [ "r687" ] }, "ftci_RecievablesFromRelatedParties": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RecievablesFromRelatedParties", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Related party receivables", "label": "Recievables from Related Parties", "documentation": "Recievables from Related Parties" } } }, "auth_ref": [] }, "us-gaap_Reclassifications": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Reclassifications", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassifications", "label": "Reclassifications [Text Block]", "documentation": "The entire disclosure for classifying current financial statements, which may be different from classifications in the prior year's financial statements. Disclose any material changes in classification including an explanation of the reason for the change and the areas impacted." } } }, "auth_ref": [ "r46" ] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r711", "r721", "r731", "r763" ] }, "ftci_ReimbursementPercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ReimbursementPercentage", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reimbursement percentage", "label": "Reimbursement Percentage", "documentation": "Reimbursement Percentage" } } }, "auth_ref": [] }, "ftci_RelatedPartyAccruals": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RelatedPartyAccruals", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Related party accrued cost of revenue", "label": "Related party accruals", "documentation": "Related party accruals" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Related Party", "label": "Related Party, Type [Domain]", "documentation": "Related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest." } } }, "auth_ref": [ "r225", "r366", "r490", "r491", "r518", "r526", "r575", "r576", "r577", "r578", "r579", "r600", "r602", "r632" ] }, "us-gaap_RelatedPartyMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyMember", "presentation": [ "http://www.ftcsolar.com/20240930/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": [ "r177", "r178", "r490", "r491", "r492", "r493", "r518", "r526", "r575", "r576", "r577", "r578", "r579", "r600", "r602", "r632" ] }, "us-gaap_RelatedPartyTransactionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyTransactionAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction [Axis]", "documentation": "Information by type of related party transaction." } } }, "auth_ref": [ "r490", "r491", "r909" ] }, "us-gaap_RelatedPartyTransactionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyTransactionDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction [Domain]", "documentation": "Transaction between related party." } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyTransactionLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "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": [ "r225", "r606", "r607", "r610" ] }, "us-gaap_RelatedPartyTransactionsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyTransactionsAbstract", "lang": { "en-us": { "role": { "label": "Related Party Transactions [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Related Party", "label": "Related Party, Type [Axis]", "documentation": "Information by related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest." } } }, "auth_ref": [ "r225", "r366", "r490", "r491", "r518", "r526", "r575", "r576", "r577", "r578", "r579", "r600", "r602", "r632", "r909" ] }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RelatedPartyTransactionsDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactions1" ], "lang": { "en-us": { "role": { "terseLabel": "Related party transactions", "label": "Related Party Transactions Disclosure [Text Block]", "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": [ "r487", "r488", "r489", "r491", "r494", "r566", "r567", "r568", "r608", "r609", "r610", "r629", "r631" ] }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RepurchaseAgreementCounterpartyNameDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Counterparty Name", "label": "Counterparty Name [Domain]" } } }, "auth_ref": [ "r179", "r180", "r312", "r338", "r493", "r500", "r516", "r653", "r654" ] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Research and Development Expense, Total", "terseLabel": "Research and development", "label": "Research and Development Expense", "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity." } } }, "auth_ref": [ "r412", "r644", "r661", "r918" ] }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpenseMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Research and development [Member]", "label": "Research and Development Expense [Member]", "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included." } } }, "auth_ref": [] }, "srt_RestatementAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RestatementAdjustmentMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments", "label": "Revision of Prior Period, Adjustment [Member]" } } }, "auth_ref": [ "r182", "r183", "r184", "r194", "r195", "r210", "r451", "r452", "r472", "r796", "r797", "r798", "r799", "r800", "r801", "r802", "r831" ] }, "srt_RestatementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RestatementAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revision of Prior Period [Axis]" } } }, "auth_ref": [ "r140", "r182", "r183", "r184", "r185", "r186", "r187", "r188", "r189", "r190", "r193", "r194", "r195", "r196", "r197", "r198", "r210", "r237", "r238", "r432", "r433", "r434", "r435", "r436", "r437", "r450", "r451", "r452", "r453", "r470", "r472", "r485", "r486", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r557", "r558", "r560", "r831" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r712", "r722", "r732", "r764" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r713", "r723", "r733", "r765" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r720", "r730", "r740", "r772" ] }, "srt_RestatementDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RestatementDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revision of Prior Period [Domain]" } } }, "auth_ref": [ "r140", "r182", "r183", "r184", "r185", "r186", "r187", "r188", "r189", "r190", "r193", "r194", "r195", "r196", "r197", "r198", "r210", "r237", "r238", "r432", "r433", "r434", "r435", "r436", "r437", "r450", "r451", "r452", "r453", "r470", "r472", "r485", "r486", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r557", "r558", "r560", "r831" ] }, "us-gaap_RestrictedCashCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashCurrent", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted cash", "label": "Restricted Cash, Current", "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits." } } }, "auth_ref": [ "r803", "r815" ] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Restricted Stock Awards [Member]", "terseLabel": "RSUs", "label": "Restricted Stock [Member]", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r23" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Stock Units (RSU)", "label": "Restricted Stock Units (RSUs) [Member]", "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met." } } }, "auth_ref": [] }, "ftci_RetainageProvisionsIncludedInReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RetainageProvisionsIncludedInReceivables", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Retainage provisions included in receivables", "label": "Retainage Provisions Included in Receivables", "documentation": "Retainage provisions included in receivables." } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Retained Earnings (Accumulated Deficit), Total", "terseLabel": "Accumulated deficit", "periodStartLabel": "Retained Earnings (Accumulated Deficit), Beginning Balance", "periodEndLabel": "Retained Earnings (Accumulated Deficit), Ending Balance", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r60", "r96", "r524", "r553", "r558", "r564", "r583", "r687" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Deficit", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r139", "r182", "r183", "r184", "r186", "r192", "r195", "r197", "r236", "r239", "r270", "r422", "r423", "r431", "r432", "r433", "r435", "r436", "r437", "r443", "r445", "r446", "r448", "r451", "r471", "r474", "r549", "r551", "r569", "r958" ] }, "ftci_RetireAggregateSharesOfCommonStock": { "xbrltype": "sharesItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RetireAggregateSharesOfCommonStock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Retire aggregate shares of common stock", "label": "Retire Aggregate Shares of Common Stock", "documentation": "Retire Aggregate Shares of Common Stock." } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenues", "totalLabel": "Revenue from Contract with Customer, Excluding Assessed Tax, Total", "terseLabel": "Total revenue", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r111", "r112", "r211", "r214", "r215", "r218", "r220", "r221", "r222", "r223", "r361", "r362", "r506" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureRevenue" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue", "label": "Revenue from Contract with Customer [Text Block]", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r138", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r364" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognition", "label": "Revenue [Policy Text Block]", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r604", "r646", "r657" ] }, "ftci_RevenueRecognizedInExcessOfBillings": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RevenueRecognizedInExcessOfBillings", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognized in excess of billings", "label": "Revenue recognized in excess of billings", "documentation": "Revenue recognized in excess of billings" } } }, "auth_ref": [] }, "us-gaap_RevenuesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenuesAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue:", "label": "Revenues [Abstract]" } } }, "auth_ref": [] }, "ftci_RevisionsOfPreviouslyIssuedFinancialStatementsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RevisionsOfPreviouslyIssuedFinancialStatementsPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Revisions of previously issued financial statements", "label": "Revisions Of Previously Issued Financial Statements [Policy Text Block]", "documentation": "Revisions Of Previously Issued Financial Statements." } } }, "auth_ref": [] }, "ftci_RevolvingCreditFacilityAvailableRemainingBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RevolvingCreditFacilityAvailableRemainingBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Available borrowing capacity under the Revolving Credit Facility", "label": "Revolving Credit Facility, Available Remaining Borrowing Capacity", "documentation": "Revolving Credit Facility, Available Remaining Borrowing Capacity" } } }, "auth_ref": [] }, "ftci_RevolvingCreditFacilityGrossMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RevolvingCreditFacilityGrossMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate commitments", "label": "Revolving Credit Facility, Gross Maximum Borrowing Capacity", "documentation": "Revolving Credit Facility, Gross Maximum Borrowing Capacity" } } }, "auth_ref": [] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility Agreement [Member]", "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "ftci_RightOfUseAssetAndLeaseLiabilityRecognitionForNewLeases": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "RightOfUseAssetAndLeaseLiabilityRecognitionForNewLeases", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Right-of-use asset and lease liability recognition for new leases", "label": "Right-Of-Use Asset And Lease Liability Recognition For New Leases", "documentation": "Right-Of-Use Asset And Lease Liability Recognition For New Leases" } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r781" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r781" ] }, "us-gaap_SaleOfStockConsiderationReceivedOnTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SaleOfStockConsiderationReceivedOnTransaction", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase cost of shares", "label": "Sale of Stock, Consideration Received on Transaction", "documentation": "Cash received on stock transaction after deduction of issuance costs." } } }, "auth_ref": [] }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SaleOfStockNameOfTransactionDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of Stock", "label": "Sale of Stock [Domain]", "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of accounts receivable, net", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "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": [ "r58", "r64" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "documentation": "Disclosure of information about security that could potentially dilute basic earnings per share (EPS) in future that was not included in calculation of diluted EPS." } } }, "auth_ref": [ "r23" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Diluted Net Income Per Share", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]", "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities." } } }, "auth_ref": [ "r23" ] }, "us-gaap_ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Table]", "documentation": "Disclosure of information about collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r438" ] }, "srt_ScheduleOfCondensedFinancialStatementsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ScheduleOfCondensedFinancialStatementsTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Revision of previously issued financial statements", "label": "Condensed Financial Statements [Table Text Block]" } } }, "auth_ref": [ "r820" ] }, "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Compensation Arrangement with Individual, Excluding Share-Based Payments and Postretirement Benefits, by Title of Individual and by Type of Deferred Compensation [Table]", "documentation": "Disclosure of information about arrangements that are not equity-based payments, or pension and other postretirement benefits, with individual employees. The arrangements (for example, profit sharing, deferred bonuses or certain split-dollar life insurance arrangements) are generally based on employment contracts between the entity and one or more selected officers or key employees, and which contain a promise by the employer to pay certain amounts at designated future dates, sometimes including a period after retirement, upon compliance with stipulated requirements. This type of arrangement is distinguished from broader based employee benefit plans as it is usually tailored to the employee. Disclosure also typically includes the amount of related compensation expense recognized during the reporting period and the carrying amount as of the balance sheet date of the related liability." } } }, "auth_ref": [ "r36", "r98" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Computation of Basic and Diluted Income (Loss) Per Share", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r825" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table]", "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements." } } }, "auth_ref": [ "r38" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock compensation expense", "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]", "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement." } } }, "auth_ref": [ "r38" ] }, "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investment, Name", "label": "Investment, Name [Axis]" } } }, "auth_ref": [ "r229", "r230", "r232", "r430", "r793", "r794", "r795", "r895", "r896", "r897", "r898" ] }, "us-gaap_ScheduleOfEquityMethodInvestmentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEquityMethodInvestmentsLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Equity Method Investments [Line Items]", "label": "Schedule of Equity Method Investments [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r175", "r229", "r230", "r232", "r233", "r459" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of intangible assets", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r666", "r860" ] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of goodwill activity", "label": "Schedule of Goodwill [Table Text Block]", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r665", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853" ] }, "us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfIndefiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Indefinite-Lived Intangible Assets [Table]", "documentation": "Disclosure of information about indefinite-lived intangible asset. Excludes finite-lived intangible asset." } } }, "auth_ref": [ "r258", "r266", "r269", "r666" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureInventoriesNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Inventories", "label": "Schedule of Inventory, Current [Table Text Block]", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r14", "r65", "r66", "r67" ] }, "ftci_ScheduleOfOperatingLeaseAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ScheduleOfOperatingLeaseAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Supplemental Balance Sheet Information of Leases", "label": "Schedule Of Operating Lease Assets And Liabilities Table [Text Block]", "documentation": "Schedule of operating lease assets and liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfOperatingLeasedAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfOperatingLeasedAssetsTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Operating Leased Assets [Table]", "documentation": "Disclosure of information about long-lived, depreciable assets that are subject to operating lease agreements and are used in the normal conduct of business to produce goods and services. Examples may include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of warranty accruals", "terseLabel": "Summary of Changes in Product Warranty Reserves", "label": "Schedule of Product Warranty Liability [Table Text Block]", "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability." } } }, "auth_ref": [ "r292" ] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table]", "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r8", "r483" ] }, "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRestructuringAndRelatedCostsTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Restructuring and Related Costs [Table]", "documentation": "Disclosure of information about restructuring cost. Includes, but is not limited to, expected cost, cost incurred, statement of income caption that includes restructuring cost recognized, and amount of restructuring reserve." } } }, "auth_ref": [ "r278", "r279", "r280", "r281", "r282", "r283", "r284" ] }, "ftci_ScheduleOfSeveranceAndTerminationRelatedCostsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ScheduleOfSeveranceAndTerminationRelatedCostsTableTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureReductionInForceTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of severance and termination-related costs", "label": "Schedule of Severance and Termination Related Costs [Table Text Block]", "documentation": "Schedule of Severance and Termination Related Costs [Table Text Block]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r369", "r371", "r373", "r374", "r375", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r397", "r398", "r399", "r400", "r401" ] }, "us-gaap_SecuredDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SecuredDebtMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Secured Notes [Member]", "label": "Secured Debt [Member]", "documentation": "Collateralized debt obligation backed by, for example, but not limited to, pledge, mortgage or other lien on the entity's assets." } } }, "auth_ref": [] }, "ftci_SecuredNotesMaturedInYearsFromIssuance": { "xbrltype": "durationItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SecuredNotesMaturedInYearsFromIssuance", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Secured notes matured in years", "label": "Secured Notes Matured In Years From Issuance", "documentation": "Secured Notes Matured in Years from Issuance" } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "Security12bTitle", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Title of 12(b) Security", "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r706" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "SecurityExchangeName", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Security Exchange Name", "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r708" ] }, "us-gaap_SellingAndMarketingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingAndMarketingExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Selling and Marketing Expense, Total", "terseLabel": "Selling and marketing", "label": "Selling and Marketing Expense", "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services." } } }, "auth_ref": [] }, "us-gaap_SellingAndMarketingExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingAndMarketingExpenseMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationStockCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Selling and marketing [Member]", "label": "Selling and Marketing Expense [Member]", "documentation": "Primary financial statement caption encompassing selling and marketing expense." } } }, "auth_ref": [ "r75" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Selling, General and Administrative Expense, Total", "terseLabel": "General and administrative expense", "label": "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": [ "r75" ] }, "us-gaap_SeniorLongTermNotes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SeniorLongTermNotes", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Aggregate principal amount", "terseLabel": "Long term senior secured notes", "label": "Senior Notes, Noncurrent", "documentation": "Carrying value as of the balance sheet date of Notes with the highest claim on the assets of the issuer in case of bankruptcy or liquidation (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion. Senior note holders are paid off in full before any payments are made to junior note holders." } } }, "auth_ref": [ "r13", "r687" ] }, "us-gaap_SeniorNotes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SeniorNotes", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate principal amount", "label": "Senior Notes", "totalLabel": "Senior Notes, Total", "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of Notes with the highest claim on the assets of the issuer in case of bankruptcy or liquidation (with maturities initially due after one year or beyond the operating cycle if longer). Senior note holders are paid off in full before any payments are made to junior note holders." } } }, "auth_ref": [ "r104", "r921" ] }, "us-gaap_SeniorNotesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SeniorNotesMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Senior Notes", "label": "Senior Notes [Member]", "documentation": "Bond that takes priority over other debt securities sold by the issuer. In the event the issuer goes bankrupt, senior debt holders receive priority for (must receive) repayment prior to (relative to) junior and unsecured (general) creditors." } } }, "auth_ref": [] }, "us-gaap_ServiceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ServiceMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Service", "label": "Service [Member]", "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service." } } }, "auth_ref": [ "r673" ] }, "ftci_SettlementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SettlementMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Settlement Member", "terseLabel": "Settlement [Member]", "label": "Settlement [Member]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Stock-based compensation expense", "totalLabel": "Share-based Payment Arrangement, Noncash Expense, Total", "terseLabel": "Stock-based compensation", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAcceleratedCompensationCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAcceleratedCompensationCost", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increased stock-based compensation expenses", "label": "Share-Based Payment Arrangement, Accelerated Cost", "documentation": "Amount of additional cost recognized for award under share-based payment arrangement from occurrence of event accelerating recognition of cost." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r369", "r371", "r373", "r374", "r375", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r397", "r398", "r399", "r400", "r401" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares of Common stock purchased", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period", "documentation": "Number of shares issued under share-based payment arrangement." } } }, "auth_ref": [ "r37" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r373", "r374", "r375", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r397", "r398", "r399", "r400", "r401" ] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "label": "Share-Based Payment Arrangement [Policy Text Block]", "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost." } } }, "auth_ref": [ "r368", "r376", "r395", "r396", "r397", "r398", "r401", "r406", "r407", "r408", "r409" ] }, "ftci_SharesIssuedForLegalSettlement": { "xbrltype": "sharesItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SharesIssuedForLegalSettlement", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issued for legal settlement, shares", "label": "Shares issued for legal settlement", "documentation": "Shares issued for legal settlement" } } }, "auth_ref": [] }, "ftci_SharesIssuedForLegalSettlementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SharesIssuedForLegalSettlementAmt", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issued for legal settlement", "label": "Shares issued for legal settlement amt", "documentation": "Shares issued for legal settlement amt" } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesOutstanding", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "label": "Shares, Outstanding", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_ShortTermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermDebtTypeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Short-Term Debt, Type [Axis]", "documentation": "Information by type of short-term debt arrangement." } } }, "auth_ref": [ "r48", "r866", "r867", "r868" ] }, "us-gaap_ShortTermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermDebtTypeDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Short-Term Debt, Type [Domain]", "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing." } } }, "auth_ref": [ "r47", "r866", "r867", "r868" ] }, "ftci_ShortTermInterestBearingLoanCustomerDvance": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ShortTermInterestBearingLoanCustomerDvance", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Interest Bearing Loan & Customer dvance", "documentation": "Short-term Interest Bearing Loan & Customer dvance" } } }, "auth_ref": [] }, "us-gaap_ShortTermLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermLeaseCost", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureLeasesSummaryOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term lease cost", "label": "Short-Term Lease, Cost", "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less." } } }, "auth_ref": [ "r481", "r686" ] }, "ftci_ShortTermNonInterestBearingCustomerAdvance": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "ShortTermNonInterestBearingCustomerAdvance", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Short term non-Interest-Bearing customer advance.", "label": "Short Term Non-Interest-Bearing Customer Advance", "terseLabel": "Short term non-interest-bearing customer advance" } } }, "auth_ref": [] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPolicies1" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of significant accounting policies", "label": "Significant Accounting Policies [Text Block]", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r84", "r172" ] }, "us-gaap_SoftwareDevelopmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SoftwareDevelopmentMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Capitalized Software [Member]", "label": "Software Development [Member]", "documentation": "Internally developed software for sale, licensing or long-term internal use." } } }, "auth_ref": [] }, "ftci_SouthLakeOneLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SouthLakeOneLlcMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "South Lake One LLC [Member]", "label": "South Lake One LLC [Member]", "documentation": "South Lake One LLC [Member]" } } }, "auth_ref": [] }, "us-gaap_SpecialAssessmentBond": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SpecialAssessmentBond", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Special Assessment Bond, Total", "label": "Special Assessment Bond", "terseLabel": "Outstanding surety and performance bonds", "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of a type of municipal bond typically used to fund a development project. Also called special assessment limited liability bond, special district bond, special purpose bond, special tax bond and community development obligation. Interest owed to lenders is paid by taxes levied on the community benefiting from the particular bond-funded project. For example, if a bond of this sort was issued to pay for sidewalks to be repaved in a certain community, an additional tax would be levied on homeowners in the area benefiting from this project." } } }, "auth_ref": [ "r13", "r48", "r921" ] }, "us-gaap_StandardProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StandardProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Balance at end of period", "terseLabel": "Balance at end of period", "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end 's period", "label": "Standard Product Warranty Accrual", "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability." } } }, "auth_ref": [ "r878", "r882" ] }, "us-gaap_StandardProductWarrantyAccrualPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StandardProductWarrantyAccrualPayments", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Settlements made during the period", "terseLabel": "Settlements made during the period", "label": "Standard Product Warranty Accrual, Decrease for Payments", "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties." } } }, "auth_ref": [ "r879" ] }, "us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StandardProductWarrantyAccrualPreexistingIncreaseDecrease", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in liability for pre-existing warranties", "label": "Standard Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties", "documentation": "Amount of increase (decrease) in the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties." } } }, "auth_ref": [ "r881" ] }, "us-gaap_StandardProductWarrantyAccrualWarrantiesIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StandardProductWarrantyAccrualWarrantiesIssued", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfWarrantyAccrualsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Warranties issued during the period", "terseLabel": "Warranties issued and remediation added during the period", "label": "Standard Product Warranty Accrual, Increase for Warranties Issued", "documentation": "Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties." } } }, "auth_ref": [ "r880" ] }, "us-gaap_StandardProductWarrantyDescription": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StandardProductWarrantyDescription", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Warranty description", "label": "Standard Product Warranty Description", "documentation": "Describes the nature of the product warranty, including the approximate term of the product warranty, how the product warranty arose, and the events or circumstances that would require the warrantor to perform under the product warranty." } } }, "auth_ref": [ "r29", "r30" ] }, "us-gaap_StandardProductWarrantyPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StandardProductWarrantyPolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Warranty", "label": "Standard Product Warranty, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability." } } }, "auth_ref": [ "r877" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r10", "r57", "r61", "r62", "r139", "r164", "r165", "r166", "r182", "r183", "r184", "r186", "r192", "r195", "r197", "r212", "r236", "r239", "r270", "r350", "r422", "r423", "r431", "r432", "r433", "r435", "r436", "r437", "r443", "r444", "r445", "r446", "r447", "r448", "r451", "r461", "r463", "r464", "r465", "r466", "r467", "r471", "r474", "r486", "r531", "r549", "r550", "r551", "r569", "r625" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Line Items]", "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r182", "r183", "r184", "r212", "r474", "r506", "r561", "r571", "r574", "r575", "r576", "r577", "r578", "r579", "r582", "r585", "r586", "r587", "r588", "r589", "r591", "r592", "r593", "r594", "r596", "r597", "r598", "r599", "r600", "r602", "r604", "r605", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r622", "r625", "r698" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Balance sheet", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Condensed Consolidated Statement of Stockholders' Equity", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity." } } }, "auth_ref": [ "r182", "r183", "r184", "r212", "r225", "r474", "r506", "r561", "r571", "r574", "r575", "r576", "r577", "r578", "r579", "r582", "r585", "r586", "r587", "r588", "r589", "r591", "r592", "r593", "r594", "r596", "r597", "r598", "r599", "r600", "r602", "r604", "r605", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r622", "r625", "r698" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r715", "r725", "r735", "r767" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "ftci_StockBasedCompensationExpenseReversed": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "StockBasedCompensationExpenseReversed", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based Compensation Expense Reversed", "label": "Stock-based Compensation Expense Reversed", "documentation": "Stock-based Compensation Expense Reversd" } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesAcquisitions", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issued for HX Tracker acquisition, Shares", "label": "Stock Issued During Period, Shares, Acquisitions", "documentation": "Number of shares of stock issued during the period pursuant to acquisitions." } } }, "auth_ref": [ "r56", "r57", "r96" ] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Issuance of common stock (in shares)", "terseLabel": "Sale of shares, shares", "label": "Stock Issued During Period, Shares, New Issues", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r10", "r56", "r57", "r96", "r562", "r625", "r638" ] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Shares of common stock issuable upon vesting of restricted stock awards", "terseLabel": "Shares issued during the period for vested restricted stock awards, shares", "label": "Stock Issued During Period, Shares, Restricted Stock Award, Gross", "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards." } } }, "auth_ref": [ "r10", "r96" ] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationForfeited", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited", "label": "Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited", "documentation": "Number of shares (or other type of equity) forfeited during the period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock upon exercise of stock options, shares", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r10", "r56", "r57", "r96", "r382" ] }, "us-gaap_StockIssuedDuringPeriodValueAcquisitions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueAcquisitions", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issued for HX Tracker acquisition, Amount", "label": "Stock Issued During Period, Value, Acquisitions", "documentation": "Value of stock issued pursuant to acquisitions during the period." } } }, "auth_ref": [ "r10", "r57", "r61", "r62", "r96" ] }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueNewIssues", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Issuance of common stock, value", "terseLabel": "Sale of shares", "label": "Stock Issued During Period, Value, New Issues", "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering." } } }, "auth_ref": [ "r10", "r56", "r57", "r96", "r569", "r625", "r638", "r704" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issued during the period for vested restricted stock awards", "label": "Stock Issued During Period, Value, Restricted Stock Award, Gross", "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period." } } }, "auth_ref": [ "r10", "r56", "r57", "r96" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock upon exercise of stock options", "label": "Stock Issued During Period, Value, Stock Options Exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r10", "r57", "r61", "r62", "r96" ] }, "ftci_StockIssuedForAccruedLegalSettlement": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "StockIssuedForAccruedLegalSettlement", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Stock issued for accrued legal settlement", "documentation": "Stock issued for accrued legal settlement" } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedAndRetiredDuringPeriodShares", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase and retirement of common stock (shares)", "verboseLabel": "Share repurchased and retired (Shares)", "terseLabel": "Share repurchase and retirement (shares)", "label": "Stock Repurchased and Retired During Period, Shares", "documentation": "Number of shares that have been repurchased and retired during the period." } } }, "auth_ref": [ "r10", "r56", "r57", "r96" ] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedAndRetiredDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase and retirement of common stock", "terseLabel": "Share repurchase and retirement", "label": "Stock Repurchased and Retired During Period, Value", "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital)." } } }, "auth_ref": [ "r10", "r56", "r57", "r96" ] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of treasury stock", "terseLabel": "Repurchase of treasury stock", "label": "Stock Repurchased During Period, Shares", "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r10", "r56", "r57", "r96", "r563", "r625", "r639" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total stockholders' equity", "terseLabel": "Stockholders equity", "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r57", "r61", "r62", "r86", "r584", "r601", "r626", "r627", "r687", "r705", "r817", "r838", "r902", "r958" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Stockholders' equity", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityNoteAbstract", "lang": { "en-us": { "role": { "label": "Stockholders' Equity Note [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock", "label": "Equity [Text Block]", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r93", "r174", "r335", "r337", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r350", "r449", "r628", "r630", "r640" ] }, "us-gaap_StockholdersEquityReverseStockSplit": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityReverseStockSplit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reverse stock split", "label": "Stockholders' Equity, Reverse Stock Split", "documentation": "Description of the reverse stock split arrangement. Also provide the retroactive effect given by the reverse split that occurs after the balance sheet date but before the release of financial statements." } } }, "auth_ref": [ "r97" ] }, "ftci_SubscriptionRevenueContractTerms": { "xbrltype": "durationItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SubscriptionRevenueContractTerms", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subscription revenue contract terms", "label": "Subscription Revenue Contract Terms", "documentation": "Subscription revenue contract terms." } } }, "auth_ref": [] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event", "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r468", "r496" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "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": [ "r468", "r496" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "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": [ "r468", "r496" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "label": "Subsequent Events [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEvents" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent events", "label": "Subsequent Events [Text Block]", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r495", "r497" ] }, "us-gaap_SubsidiaryOrEquityMethodInvesteeSaleOfStockBySubsidiaryOrEquityInvesteeTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsidiaryOrEquityMethodInvesteeSaleOfStockBySubsidiaryOrEquityInvesteeTable", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Subsidiary or Equity Method Investee, Sale of Stock by Subsidiary or Equity Investee [Table]", "documentation": "Disclosure of information about sale of stock made by subsidiary or equity method investee to investor outside consolidated group by type of sale. Includes, but is not limited to, stock issued in business combination in exchange for share of acquired entity." } } }, "auth_ref": [] }, "us-gaap_SubsidiarySaleOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsidiarySaleOfStockAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of Stock", "label": "Sale of Stock [Axis]", "documentation": "Information by type of sale of the entity's stock." } } }, "auth_ref": [] }, "us-gaap_SubsidiarySaleOfStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsidiarySaleOfStockLineItems", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAtmProgramAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Subsidiary, Sale of Stock [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "ftci_SunEdisonUtilityHoldingsIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SunEdisonUtilityHoldingsIncMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "SunEdison Utility Holdings, Inc. [Member]", "label": "Sun Edison Utility Holdings Inc [Member]", "documentation": "SunEdison Utility Holdings Inc. member." } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental disclosures of cash flow information:", "label": "Supplemental Cash Flow Information [Abstract]" } } }, "auth_ref": [] }, "ftci_SuretyCollateral": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "SuretyCollateral", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Surety collateral", "label": "Surety Collateral", "documentation": "Surety collateral." } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r761" ] }, "ftci_TaihuaNewEnergyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TaihuaNewEnergyMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureEquityMethodInvestmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Taihua New Energy [Member]", "documentation": "Taihua New Energy [Member]" } } }, "auth_ref": [] }, "ftci_TamaraMullingsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TamaraMullingsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "documentation": "Tamara Mullings [Member]", "label": "Tamara Mullings [Member]", "terseLabel": "Tamara Mullings [Member]" } } }, "auth_ref": [] }, "ftci_TariffsOnMerchandisePercent": { "xbrltype": "percentItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TariffsOnMerchandisePercent", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tariffs on merchandise, percent", "label": "Tariffs on Merchandise, Percent", "documentation": "Tariffs on Merchandise, Percent" } } }, "auth_ref": [] }, "us-gaap_TaxesPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TaxesPayableCurrent", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Taxes Payable, Current, Total", "terseLabel": "Income taxes payable", "label": "Taxes Payable, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r48", "r49" ] }, "us-gaap_TechnologyEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TechnologyEquipmentMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Information Technology Equipment [Member]", "label": "Technology Equipment [Member]", "documentation": "Equipment used in the creation, maintenance and utilization of information systems which include computers and peripherals." } } }, "auth_ref": [] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "TitleOfIndividualAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]" } } }, "auth_ref": [ "r832", "r908" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]" } } }, "auth_ref": [] }, "us-gaap_ToolsDiesAndMoldsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ToolsDiesAndMoldsMember", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePropertyAndEquipmentNetScheduleOfPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tooling [Member]", "label": "Tools, Dies and Molds [Member]", "documentation": "Equipment commonly used to cut, shape, and form metal and other materials into goods for sale." } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r753" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r760" ] }, "ftci_TradeAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TradeAccountsReceivable", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetScheduleOfAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Trade receivables", "label": "Trade Accounts Receivable", "documentation": "Trade Accounts Receivable" } } }, "auth_ref": [] }, "ftci_TradeAccountsReceivableBalanceFromMajorCustomer": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TradeAccountsReceivableBalanceFromMajorCustomer", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Trade Accounts Receivable Balance From Major Customer", "label": "Trade Accounts Receivable Balance From Major Customer", "documentation": "Trade Accounts Receivable Balance From Major Customer" } } }, "auth_ref": [] }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TradeAndOtherAccountsReceivablePolicy", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net", "label": "Accounts Receivable [Policy Text Block]", "documentation": "Disclosure of accounting policy for accounts receivable." } } }, "auth_ref": [ "r115", "r117", "r118", "r834", "r835", "r836" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r780" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r782" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "TradingSymbol", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "ftci_TranslationAndOther": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TranslationAndOther", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetSummaryOfActivityInTheAllowanceForCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Translation and other", "label": "Translation and other", "documentation": "Translation and other" } } }, "auth_ref": [] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r783" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r784" ] }, "ecd_TrdArrExpirationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrExpirationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Expiration Date", "terseLabel": "Expiration Date" } } }, "auth_ref": [ "r784" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r782" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r782" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r785" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r783" ] }, "ftci_TreasuryStock1Member": { "xbrltype": "domainItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "TreasuryStock1Member", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfStockholdersEquityDeficitUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Treasury Stock", "label": "Treasury Stock -1 [Member]", "documentation": "Treasury Stock -1 [Member]" } } }, "auth_ref": [] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParentheticalUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Treasury Stock, Shares", "label": "Treasury Stock, Common, Shares", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r34" ] }, "us-gaap_TreasuryStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockValue", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Treasury stock, at cost; 10,762,566 shares as of September 30, 2024 and December 31, 2023", "verboseLabel": "Treasury stock, value", "totalLabel": "Treasury Stock, Value, Total", "periodStartLabel": "Treasury Stock, Value, Beginning Balance", "periodEndLabel": "Treasury Stock, Value, Ending Balance", "label": "Treasury Stock, Value", "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury." } } }, "auth_ref": [ "r34", "r35", "r57", "r61" ] }, "us-gaap_TypeOfArrangementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TypeOfArrangementAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureAccountsReceivableNetAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureIntangibleAssetsNetAndGoodwillAdditionalInformationDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureDescriptionOfBusinessAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]", "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r438" ] }, "ftci_UnamortizedPrepaidBalance": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "UnamortizedPrepaidBalance", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Unamortized Prepaid Balance", "label": "Unamortized Prepaid Balance", "documentation": "Unamortized Prepaid Balance" } } }, "auth_ref": [] }, "ftci_UnauditedInterimFinancialInformationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "UnauditedInterimFinancialInformationPolicyTextBlock", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Unaudited Interim Financial Information", "label": "Unaudited Interim Financial Information Policy [Text Block]", "documentation": "Unaudited interim financial information." } } }, "auth_ref": [] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r779" ] }, "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued, Total", "terseLabel": "Income tax interest and penalties accrued", "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued", "documentation": "Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return." } } }, "auth_ref": [ "r419", "r677" ] }, "us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnrecognizedTaxBenefitsPeriodIncreaseDecrease", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Unrecognized Tax Benefits, Period Increase (Decrease), Total", "label": "Unrecognized Tax Benefits, Period Increase (Decrease)", "terseLabel": "Material change in unrecognized tax benefits", "documentation": "Amount of increase (decrease) in unrecognized tax benefits attributable to uncertain tax positions taken in tax returns." } } }, "auth_ref": [ "r892" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UseOfEstimates", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Use of estimates", "label": "Use of Estimates, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r24", "r25", "r26", "r127", "r128", "r131", "r132" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableRateAxis", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableRateDomain", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Domain]", "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "auth_ref": [] }, "ftci_VendorDeposits": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "VendorDeposits", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vendor deposits", "label": "Vendor Deposits", "documentation": "Vendor deposits" } } }, "auth_ref": [] }, "ftci_VendorDeposits1": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "VendorDeposits1", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Vendor Deposits", "label": "Vendor Deposits 1", "documentation": "Vendor Deposits 1" } } }, "auth_ref": [] }, "ftci_VendorDepositsWithRelatedParty": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "VendorDepositsWithRelatedParty", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosurePrepaidAndOtherCurrentAssetsScheduleOfPrepaidAndOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vendor deposits with related party", "label": "Vendor Deposits With Related Party", "documentation": "Vendor Deposits With Related Party" } } }, "auth_ref": [] }, "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]", "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year" } } }, "auth_ref": [ "r749" ] }, "ftci_WarrantExpirationYears": { "xbrltype": "durationItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "WarrantExpirationYears", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Warrant expiration years", "label": "Warrant Expiration Years", "documentation": "Warrant Expiration Years" } } }, "auth_ref": [] }, "ftci_WarrantsRecoverableFromManufacturer": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "WarrantsRecoverableFromManufacturer", "crdr": "credit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Warranty recoverable from manufacturer", "terseLabel": "Warranty recoverable from manufacturer", "label": "Warrants Recoverable From Manufacturer", "documentation": "Warrants recoverable from manufacturer." } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted weighted-average number of common shares outstanding", "totalLabel": "Potential common shares excluded from diluted net loss per share", "terseLabel": "Diluted", "label": "Weighted Average Number of Shares Outstanding, Diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r201", "r206" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-average common shares outstanding:", "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/DisclosureNetLossPerShareScheduleOfComputationOfBasicAndDilutedLossPerShareDetails", "http://www.ftcsolar.com/20240930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic weighted-average number of common shares outstanding", "totalLabel": "Weighted Average Number of Shares Outstanding, Basic, Total", "terseLabel": "Basic", "label": "Weighted Average Number of Shares Outstanding, Basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r200", "r206" ] }, "ftci_WorkforceActivityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "WorkforceActivityAbstract", "lang": { "en-us": { "role": { "label": "Workforce Activity [Abstract]", "documentation": "Workforce Activity [Abstract]" } } }, "auth_ref": [] }, "ftci_WorkingCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://www.ftcsolar.com/20240930", "localname": "WorkingCapital", "crdr": "debit", "presentation": [ "http://www.ftcsolar.com/20240930/taxonomy/role/Role_DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Working capital", "label": "Working Capital", "documentation": "Working Capital" } } }, "auth_ref": [] }, "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]", "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested" } } }, "auth_ref": [ "r747" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482338/360-10-05-4" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21D", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-21D" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15" }, "r13": { "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" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14" }, "r16": { "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" }, "r17": { "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" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r20": { "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" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-1" }, "r22": { "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" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-4" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-8" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r28": { "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" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "460", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "460", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r31": { "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" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "710", "SubTopic": "10", "Section": "25", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483070/710-10-25-11" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "825", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478898/942-825-50-1" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/205/tableOfContent" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r49": { "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(20))", "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 210.5-02(21))", "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(22)(a)(1))", "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(23))", "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(24))", "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(25))", "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(26))", "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(28))", "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(29))", "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(3))", "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(30)(a)(1))", "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(30)(a)(3))", "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(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r64": { "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(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r65": { "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" }, "r66": { "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" }, "r67": { "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" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r74": { "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" }, "r75": { "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" }, "r76": { "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(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r79": { "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" }, "r80": { "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" }, "r81": { "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" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r83": { "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" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/235/tableOfContent" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/275/tableOfContent" }, "r86": { "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" }, "r87": { "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" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/360/tableOfContent" }, "r89": { "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" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.CC)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480091/360-10-S99-2" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/440/tableOfContent" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/470/tableOfContent" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/505/tableOfContent" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7" }, "r96": { "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" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "4", "Subparagraph": "(SAB Topic 4.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-4" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "710", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483043/710-10-30-1" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "38", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38" }, "r100": { "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(1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r101": { "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/2147478546/942-210-S99-1" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r105": { "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(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r106": { "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/2147478546/942-210-S99-1" }, "r107": { "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(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r108": { "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/2147478524/942-220-S99-1" }, "r109": { "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/2147478524/942-220-S99-1" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "954", "SubTopic": "450", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477850/954-450-50-1" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-11B" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-15" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-15" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-6" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "840", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481440/840-10-50-2" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "840", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "40", "Subparagraph": "(Note 3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481418/840-10-55-40" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "840", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481501/840-20-50-1" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "840", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481501/840-20-50-2" }, "r124": { "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" }, "r125": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "210", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-20" }, "r126": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "270", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482989/270-10-45-6" }, "r127": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1" }, "r129": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1" }, "r130": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-1" }, "r131": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11" }, "r132": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-12" }, "r133": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-6" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-7" }, "r135": { "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" }, "r136": { "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" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "323", "Publisher": "FASB", "URI": "https://asc.fasb.org/323/tableOfContent" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r139": { "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" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6" }, "r141": { "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" }, "r142": { "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" }, "r143": { "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" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1" }, "r145": { "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" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r150": { "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" }, "r151": { "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" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r159": { "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" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r168": { "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" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r170": { "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" }, "r171": { "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" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-1" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(e)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r175": { "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" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(k)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(k)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-12" }, "r190": { "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" }, "r191": { "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" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/260/tableOfContent" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7" }, "r206": { "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" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3" }, "r210": { "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" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/310/tableOfContent" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r226": { "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" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481664/323-10-45-1" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r233": { "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" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/326/tableOfContent" }, "r236": { "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" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4" }, "r239": { "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" }, "r240": { "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" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/330/tableOfContent" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-1" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-4" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-20/tableOfContent" }, "r253": { "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" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-2" }, "r255": { "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" }, "r256": { "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" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r281": { "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" }, "r282": { "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.b.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r283": { "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.b.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r299": { "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r312": { "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" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r322": { "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" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r333": { "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" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r340": { "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" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-16" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3" }, "r350": { "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" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15" }, "r361": { "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" }, "r362": { "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" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r366": { "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" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.C.Q3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "730", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/740/tableOfContent" }, "r414": { "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" }, "r415": { "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" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C" }, "r418": { "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" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15" }, "r420": { "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" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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.1.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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/2147477891/740-270-50-1" }, "r429": { "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" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478758/740-323-25-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "808", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479402/808-10-50-1" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-6" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r458": { "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" }, "r459": { "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" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r461": { "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" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-5" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/842-20/tableOfContent" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "12A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-2" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2" }, "r486": { "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" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/850/tableOfContent" }, "r488": { "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" }, "r489": { "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" }, "r490": { "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" }, "r491": { "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" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/855/tableOfContent" }, "r496": { "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" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2" }, "r498": { "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" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-9" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478411/912-330-50-1" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "920", "SubTopic": "350", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478609/920-350-50-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "920", "SubTopic": "350", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478609/920-350-50-1" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "920", "SubTopic": "350", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478609/920-350-50-4" }, "r506": { "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" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1" }, "r509": { "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/2147478546/942-210-S99-1" }, "r510": { "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(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r512": { "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/2147478524/942-220-S99-1" }, "r513": { "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/2147478524/942-220-S99-1" }, "r514": { "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/2147477314/942-235-S99-1" }, "r515": { "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/2147478451/942-360-50-1" }, "r516": { "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)(1)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r517": { "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/2147478777/944-210-S99-1" }, "r518": { "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)(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r519": { "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/2147478777/944-210-S99-1" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r521": { "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/2147478777/944-210-S99-1" }, "r522": { "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/2147478777/944-210-S99-1" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r524": { "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/2147478777/944-210-S99-1" }, "r525": { "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/2147478777/944-210-S99-1" }, "r526": { "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)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r527": { "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/2147478777/944-210-S99-1" }, "r528": { "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/2147478777/944-210-S99-1" }, "r529": { "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/2147477250/944-220-S99-1" }, "r530": { "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/2147477250/944-220-S99-1" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r532": { "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(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r533": { "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/2147477250/944-220-S99-1" }, "r534": { "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/2147477250/944-220-S99-1" }, "r535": { "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/2147477250/944-220-S99-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-3" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(cc)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-3" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9" }, "r549": { "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" }, "r550": { "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" }, "r551": { "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" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r553": { "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" }, "r554": { "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" }, "r555": { "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" }, "r556": { "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" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r558": { "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" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.W.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-3" }, "r561": { "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" }, "r562": { "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" }, "r563": { "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" }, "r564": { "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" }, "r565": { "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" }, "r566": { "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" }, "r567": { "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" }, "r568": { "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" }, "r569": { "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/2147478009/946-205-45-4" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-21" }, "r571": { "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/2147477796/946-210-45-4" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r596": { "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/2147479170/946-210-S99-1" }, "r597": { "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/2147479170/946-210-S99-1" }, "r598": { "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/2147479170/946-210-S99-1" }, "r599": { "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/2147479170/946-210-S99-1" }, "r600": { "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/2147479170/946-210-S99-2" }, "r601": { "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/2147479170/946-210-S99-2" }, "r602": { "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/2147479105/946-220-45-3" }, "r603": { "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/2147479105/946-220-45-7" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r616": { "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/2147479134/946-220-S99-1" }, "r617": { "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/2147479134/946-220-S99-1" }, "r618": { "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/2147479134/946-220-S99-1" }, "r619": { "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/2147479134/946-220-S99-1" }, "r620": { "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/2147479134/946-220-S99-1" }, "r621": { "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/2147479134/946-220-S99-1" }, "r622": { "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/2147479134/946-220-S99-1" }, "r623": { "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/2147479134/946-220-S99-1" }, "r624": { "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/2147479134/946-220-S99-3" }, "r625": { "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/2147479134/946-220-S99-3" }, "r626": { "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/2147479134/946-220-S99-3" }, "r627": { "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/2147479134/946-220-S99-3" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2" }, "r629": { "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/2147477968/946-235-50-2" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2" }, "r631": { "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/2147477968/946-235-50-2" }, "r632": { "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/2147477802/946-310-45-1" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r638": { "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/2147478448/946-505-50-2" }, "r639": { "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/2147478448/946-505-50-2" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-6" }, "r641": { "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/2147478522/954-440-50-1" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" }, "r645": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r646": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r647": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r648": { "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" }, "r649": { "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" }, "r650": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r652": { "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" }, "r653": { "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" }, "r654": { "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" }, "r655": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r656": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r657": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r658": { "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" }, "r659": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r660": { "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" }, "r661": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48" }, "r662": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "49", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49" }, "r663": { "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" }, "r664": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5" }, "r665": { "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" }, "r666": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40" }, "r667": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r668": { "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" }, "r669": { "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" }, "r670": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E" }, "r671": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F" }, "r672": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r673": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r674": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r675": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8" }, "r676": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r677": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-217" }, "r678": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "231", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231" }, "r679": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r680": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "102", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102" }, "r681": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "103", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103" }, "r682": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r683": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r684": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r685": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8" }, "r686": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53" }, "r687": { "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" }, "r688": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2" }, "r689": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r690": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F" }, "r691": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r692": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r693": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E" }, "r694": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18" }, "r695": { "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/2147478795/946-210-50-1" }, "r696": { "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/2147478795/946-210-50-6" }, "r697": { "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/2147477439/946-210-55-1" }, "r698": { "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/2147477802/946-310-45-1" }, "r699": { "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/2147477271/946-320-S99-1" }, "r700": { "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/2147477271/946-320-S99-2" }, "r701": { "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/2147477271/946-320-S99-3" }, "r702": { "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/2147477271/946-320-S99-6" }, "r703": { "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/2147479168/946-830-55-10" }, "r704": { "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/2147479168/946-830-55-11" }, "r705": { "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/2147479168/946-830-55-12" }, "r706": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r707": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r708": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r709": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r710": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r711": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r712": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r713": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r714": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r715": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r716": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r717": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r718": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r719": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r720": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r721": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r722": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r723": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r724": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r725": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r726": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r727": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r728": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r729": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r730": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r731": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r732": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r733": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r734": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r735": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r736": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r737": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r738": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r739": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r740": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r741": { "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" }, "r742": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r743": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r744": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r745": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r746": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "ii" }, "r747": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "i" }, "r748": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "ii" }, "r749": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iii" }, "r750": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iv" }, "r751": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "v" }, "r752": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "vi" }, "r753": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r754": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r755": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r756": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r757": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r758": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r759": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r760": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r761": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r762": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r763": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r764": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r765": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r766": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r767": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r768": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r769": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r770": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r771": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r772": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r773": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r774": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r775": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r776": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r777": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r778": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r779": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r780": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r781": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r782": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r783": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r784": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r785": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r786": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r787": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Number": "229", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1" }, "r788": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "A", "Number": "229" }, "r789": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Number": "229" }, "r790": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "i", "Number": "229" }, "r791": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r792": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "7A", "Section": "B", "Subsection": "2" }, "r793": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2" }, "r794": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2" }, "r795": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2" }, "r796": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r797": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r798": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r799": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r800": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3" }, "r801": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8" }, "r802": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9" }, "r803": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r804": { "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(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r805": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r806": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r807": { "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" }, "r808": { "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" }, "r809": { "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" }, "r810": { "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" }, "r811": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r812": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(9)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r813": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r814": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A" }, "r815": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8" }, "r816": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r817": { "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" }, "r818": { "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" }, "r819": { "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)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r820": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r821": { "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" }, "r822": { "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" }, "r823": { "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" }, "r824": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r825": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r826": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r827": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r828": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r829": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r830": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r831": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r832": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r833": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r834": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2" }, "r835": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2" }, "r836": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481569/310-20-50-1" }, "r837": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r838": { "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" }, "r839": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r840": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482933/330-10-35-2" }, "r841": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1" }, "r842": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-20/tableOfContent" }, "r843": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r844": { "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" }, "r845": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r846": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r847": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r848": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r849": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r850": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r851": { "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" }, "r852": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1A" }, "r853": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2" }, "r854": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-30/tableOfContent" }, "r855": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r856": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r857": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r858": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r859": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r862": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r863": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r864": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r865": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/405-30/tableOfContent" }, "r866": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r868": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r869": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/450/tableOfContent" }, "r871": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-1" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4" }, "r873": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r874": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r875": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r876": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r878": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r881": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r885": { "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" }, "r886": { "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" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r889": { "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" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "805", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "15", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480123/805-50-15-3" }, "r900": { "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" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r902": { "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" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-3" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r909": { "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" }, "r910": { "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" }, "r911": { "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" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "912", "SubTopic": "730", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(13)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r922": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r923": { "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" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4G", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r942": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r944": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r945": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r948": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r953": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r955": { "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/2147478009/946-205-45-4" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r958": { "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/2147479134/946-220-S99-3" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" } } } ZIP 79 0000950170-24-125440-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000950170-24-125440-xbrl.zip M4$L#!!0 ( B";%F1XY>K754" "%H)P 1 9G1C:2TR,#(T,#DS,"YH M=&WLO>EV&\FQ+OK[[J>H(Q]O=Z_+I'(>J.X^BZW!YMIJ21;9Q]OWCU:.9+E! M@*X")'(__8TL !0X21P*0(&L7K9( C5D9D1\\45F9.1/_^?T>%!\CE5=CH8_ M_X5LX[\4<>A'H1P>_OR7W?V7>WM_^3^__,=/_PNAXM6;O7?%N_BEV/7C\G-\ M5=9^,*HG52Q^V/_MQV)O."B'L?CO7S^^+5Z-_.0X#L<%*H[&XY.=Y\^_?/FR M'5(YK$>#R1C>56_[T?'S J'9PU]6T>;/BU=V'(L=BBE'A"!"#[#:P62'LFW% MM?A_,=[!>.&VTC8L?_(]%O@O>/1S&P2">%6_*H1WZT@Z*_?E;MZ"9 M?KO8'0R*C_FVNO@8ZUA]CF%[^M"C,8P'C,FP_OG90M._L.U1=?B<&&.>G^9K MGDTOVCEUU2"4Y]?F/YLK*<;R^?3+"Y>.K[U43"\=+UY:7FC XM7L.8SC&+H6 MY]?#R/_QC?7KG^0O_RM_-+R].;GDMR,[+(L\3GEP]'PW<@^:KT MU]\6QM7S\=E)? X7HN'TRO-6U>5U;8(>D.?__=O;?7\4CRVZW/40+XU^'?WV MX>CS<_CB>5:(^863&AU:>W)^<;*U:UXP^^+"Q64]XI2H;XE@>L7\ANC#]#J.P[IT@XAB,SB-2=2(;N/S[HXKE >P_L[XPO,HP@PQ M,K\SC?W%\84/P!IMU5AB;B(V#'^5^QA!%R[<,._25[$_'U=V6*=1==RT-&N% M0%@OO!6ZC^J)NW%L\I<71_YT?'W7OO76W%>*B)P_I*[&5^4,'UY4B'%UHWS- M<_CVV2__4?QT%&V G\5/XW(\B+\0C/[^T_/I[_G3XSBV#<:A^.])^?GG9R]' M0Q#B&!V %)X5?OK7S\_&(-OG#7 \ST]]/GOL3VX4SHIZ?#:(/S\[MM5A.=PI M[&0\^E_E\/&L:$$LCX9 MV+-LB!&^_:D\W@E:=O83&5G:P-PSQ]+_BV?V:B0$R-=5$WJZE4281 M*94H4$ ,CF-"ED";G1""8R^9L6ZQI;L@]M"(?F /[]7"8FJ\/S\#:]])Y6D, M*-D!.*A?FA\WM/I-97W#$:;-AOXYK3$'F&,$<25@@)4-""MEPXP9%L%RP+"4\8K:DNE(-C)B 1F&D9%>*09=(20:!.CQADL MGA6383F]X?=/O^^_ FBIRYUA.0"#KR81;/WZIF-07*.M0 K3B+A,&$9<2/B3 M>Z99#"SQ!S1=<9/E\C)_!\\8\NEEB![$ZOC*ZMVKNHH9G1[H3)M67417J.'SV MRWO@R6> 1;?J3WZ59DDBZAP8% .$MMYBE!0,M\".X)0NZ\K[DX8[# _?1J!] M;TOKRD$&ERD8[H\! +,BO4_G%/G#J"[S +P^IR!ORWI\+YOXY5L$ZT_OQT>Q MFK<(='?6IBM#\?RBNZIBBG"=C_4O/V5^NE,W=!#:531\=2>SGI^?U> V!YD; M-I\=5;G96 M/ZZ.AUEZTS\#O.ST9%#Z9Q%"/'>N#^<2?PTD!?1@!.1BV"#) M:5D_^V418D;#_?'(_S%]UD_/KWW%+_.VG;?D^77=/FDXP?D@-,1]_$L3VC7, M]+R'LV_F?\_O>WY!##=(A2A%L%8H^ !XY#.21JF0Q0%X M:!.=(UJ32HLUO7 ML:[S'9DI3N5PZ8OV90#C7(TS_9E)@<#_SI]S_MWY:(6%2PUB^.LKIM_<2V L M&2$8\""F4R:7C6\"8),NJ: "M0%W36!W-*-=X.L92P%5;1GVAB_M23FV@R6+ MD]U>G.RB_3U(G)R*&*)%,@C@CEQQ!'3#(Z((\=Y0 A'%AHOS(X1X$'6%U[8: M@DNMEV^6:@UF*8EF"L(3^ 5(#?@T9"QU2"8:&+$\A1Q8;+0E D%;.8;X[',$<@$C<)C#M4P; MQ_6O9[_9?XVJEP-;7Y+1*XAL!Z.3& ZB/QJ.!J/#L^D*R)(E-ILP:T-B0#$T M(\A1 G0Q:8LLAU#4:0GQODO"1]M5B>W"$T*9UZ ^Q_WH)U43^KX^]8-)B.%- M-3K.IC49-_#X/LV9QH=8[1_9*OYZ=OT#+DKX-82^H[,8&SM\WTQG/$ZJXHS3 MQ$I$C;.(:R MAC*+M(LV -_TGG=6$3;(="])[$&FZUS4@5N4E(L0I .*6Z(" M$LP3)H+"3K!E2VQ]!,[GZ5@&7>8:(B2&*41(!EQ9$LI&Q:.DFSYOM/P(:4$T MM$67XG5(F'.DF)2($P>LC'"%I!&:8Q>55DN?B[BS7K;&@ +VU$<.E,>%9G8< M&:DDPH%$BWV2R<:NZN5*_.G'6(^KTH^7%C ^8/JF-5^:/,:><; IIA!WS"-K MO$68!U ++&62IJM*<-O9..\GQY,!7!N:M8=\716/\M,^QVF$NBE!BX''$689 MHL%P,%E@7\Z9A)3GFJL0!<25'<"KRWK-;Z_7LB6]-CQ8I35%!I08D%WDZ2Q- MX.G:"9T,PZ1SL\QU-=[)24YA,HB 68U2_Q;'1R.@BI\!B[ZJ^N*G,;ZSQXOK M!V]B-?P2CUX/#^TAJ'RS$CAJM-X.S]X._'>4_=;F]S$V-O4!Y'EVD!-RIBO< MP&,7O[D,J5^_>91X:J16E$:,D@6>QYF*0/NLSVNW6EB60J*=6X[J,MEK$SQE ME)X$@:0.P'><3TASZ5$ MF,TM4[+SDZD?D7=P M)00B)HT"YB2 '#NF!#(^R1B%8[*;9KU*G=G,B0R+@5$9#C&RYH &,41DG5$SA;$(+"'4-DE@;B2 6GE ZB*48:Q))WL7-22;6^V M(>1]M1^KSZ6/%X4R^_!19H)9)?,.L(B8CA#N&QJ1IEEB.(H@&67,=VY2^DYQ MYE_C,%9VL#L,N^&X');U..]"^1Q?GY[ \Y8MU/6X0!M("H+G1#+NP0PM1A9K M#G\R333VSJO.QIZ;LX+65B:*34P%;03"/F?32LV058&@%+36,HA@?6?7.P$X MH:OCLP\#Z#W86!;:27[&KV=?MY#,+SX8C0;UJSP1, R_C09A8W*%;$K!"BJ1 M#@PC;A5%-@F*$L9*XB#RBG77)+2!E'(-[L]A::G+>U%U)BQ!&H@39 *D5)I$ M2YDWO60WT@,<[!9BB,R!FM@-U008X6(K'-AX(;YP!8#!\>T@[B= M(@CP@+98L$,K.$3NUDL3C+%>=V[5Z4XT=#\.!N7P,'L^6_T1\S[HU3#0]83J MCC/BF&!(>F*!TW"'G%$.>:EUB$1Q26G7Y+G*>;+E\!0GDF3!,01L,GLS)I"A MUB ?!192DIQ#VK51__;&XY?NY.MW*U@H7(>C4D1'QR/RAN?J%1&@CQB,B+.1 M!N,"BYVD(%V8,UG/TJ[3+,:D P*&" &;IQ' +23D' %HBR1/0'=-8AU/J&H- M 0WF+!?<$4T1&\\]TC'GD^,4D_(RRN6G[CPFT;1)\0P0<6,T2B+7\B))(>N] M0<(9K:T+A'1OT_"FA5I-$$WU+XJ4/PD-KN34";-CF71L<6^1R#2RBM'24 M4\)]OYMX.7R]K9(9SELAO9)(,"H15V"<)D2'DD[,!N:%"_V,\8:*-E(C!<0# M6GN>]_H'"+(A,H 8P8'E&D&ZMR:W":)=4@@7E>8V!20C 2^IP$%J:R!P9M9; MJH+VI'->_A_/1:9,8B"DN?<[XSJ%36_S<2RH-\0'X M.16(NT20X?E/!AS &2H"Z5RUI0W@Y\LI/.*E88)3"*9XGNDS,61A>42#YKP+ BS+>L!ZQ2S'RBEL0N?F7S< X=L$.:VY MI,2AH)Q&G'F&#,8)D6!S]27,E.RLA#8@W6D]B_C>.B^((QLU8C.3/IU08XQKU EA0(#5.91J+Q)!N3(I+&61YNZ&_MT?A%X M+?),(7)%49 "W"'E# (>H)7,>$4\2Q&$VU5Y=H&D="!F#9A@2G5$/I>'X@1" M+6TIV*65D7B7:WQT;AU_:2*\_9LGKH[_GN17?XZ+:]HW7+!D?DL(PN<3_0]A M3P$#8=+>(.6 .$%\G)"C02,6J0$N90C?_)RJM=3)OEOF05LSPP$+8['0R,ID M@3JYI8A#R <@O0I MLLZ&+MUDN6MRJ;3"VWECX#F MSJJ$-I)?U7Z;-20$!8.I-D$BE6S*1-6P9P9T-7+JWQ;_%:=)@ MB,\G>""69#YTBFED\F^).,,))=RQSME:-TJNM1!Q&@C<;QUQ?KWT88:H/6>& MHQ2\0MR&B%P$@BH@V+2!)ZU\9PVQ>U5SUI ,&P(+G#J!()[@8+#!(NVQRTP' M>^$5,)W.+4)U-<)83H)"",)AK!(2,N1)NGQT1#(19*5P8M'J#E9-Z4YP/0Y!54B,E>$B.$PV(V34!7K8FO& M!JG&DJ9L$@_1<0PN$%"5IR!0%@M2Q$9%@A2JNXE]C["B]GKBDTAT@E@$(ZTX MQ"0HO" I(;UA6-C8V:SXQZD$:Z!6DB.SN(P4V0.GM1NK"I0\:*7 VPN8 /I?7Y(++['04 M^" 75!1)"K/I*0 KG1EM+1$N%T),%.2L5-[P$_*:?BX6Y:3&-'A.6'=KZ75L MIFP]%19R]!9\A."="0P8A$7>*"*0\#%&0Y)VJK,9P!VN&M4F5;".L& "(CY[ MB>1R@J)U2"673[D*4;O.26C3$NHQ!8MJ15B>2RR(1SCR7 (&U49ED M@^;+/\9HJ7BX]CJ(ZYCWB$Q9R1/RSN0:4 X"*@FA%4L*!^*;\Q^[Q]/6X4T2 MA>@_!8PD-SZ?5B#RT<,6Q4BB2SA&N_RCUC=C&B7QQ$(^[==8T^P@<#E).8#? M#1JTRE.6.CN7UK5IE Y 1)*41VTUHJ$IF:0@E#,:>'"TPAD3K5[^,;!+Q?TU M9^.LPT)E4 M2U1+B'D,L/28F(.O5.C>KKH-X-%= %\=+,TTPXB4\HYXDALB]==;6FMM(\DO7>1B#,3.2-']Z3O*?.(*JQ$ 9K35UW:<[$U64H;766 MIW_>IV9B;M&JQL6V\%6EX;+ G&A$62)[L 9,A7L(+,%/: M*I!*YR"P2SNIEE-L+@5BK8XX'T^M,WQ1I(D*""?'O666A.YFH#/@QZ( MLA$)\TE[)[M;J[/S\=V:1,JC9)'GI&"0*[ XD&C!&>9"@1MGG4T6ZA+C6L/D.7;8??LX)>9E@+"TV:*1,U%P1%HJ(.LF M:NZIICYU+FVH2_2H"V%.=)+E;$K&4S[2Q1)DFDSAQ(0U(BHC.V=T2XHZ;F7L M:SEUJ;4M=CA%9JCEB+E\YDC,TH9 %YED2:"12_"0G97VMPVV\9 '5;3U!/QG MME>RY"63UK(O"54X61&0E'D!2TM@ZS7%N\@FA;W.1$(*86U M CD214C@^?+V&!$I M89H%;#9=M*LO4K6&B(\ :@:N$@0+V3!MLDCSA"$ C(EZS"/MGHFVE'-S8,NC MB7T7O[P>QNKP;%,2V(D,BA+CD>2 K)Q*F<^H5DAX)GC 2I/ESV8LV?)6N-.J MQ:+P1$>>V]B3E_3R&%*(H0&G)K.9IAV$Q+7,^U+=))618.BRYG" M"0.AI+BI*F; ZW$#(=Z&RG'5-+_%?8S$2\X21 U1*0K!E\]'+B@,0DI.8P&Q M=_<6D[IR>NIZEN\I-B2HD/-J"-@1]WDA7VC$-%402 ?3P9I\]]JXN)K:!BTN M 5(2 -"B1RSDDXB)QN"D'$&210=\(I=^WO29Q]5NUFXK8 :BP+2*#BDB(*J2 M(M=HSLS1&T:YCI1W]X"+.YG,6W!!\6@T"'L0+H\^-P+=F)1I2HG0.#E$&2/Y MH$6'C-= ^3CQDU3IE9216$.U3)TC!MW- M_&EGIIQ*0;"3$0G,-.)8 (5FWL(+HDV,&F?PTBUD?0JI4MYA2\&[FKP41"PR M.B\/V22]HB%1W3G>L_RZBV_@<>/XMOPU&XRD93GWU*12V:!D#!^YSB5S.\PY 0G.] MH'RBBZ=<0LQ(2._#-]01,.D=4\D@3W/9'A6!GLEH@)Y)"Y*-D2]_Y]%=1VH] MVV"9230#$!+,-GO-,;+<$Z3!E6JE2-"J<]#4E8SA->FVYS41#ED4VS.$S@"5$60_**"B4[-WO7Y4""M[(XE$P$ MUJ8TR<=,>V1=SGG2$<>TZ0DV:SK8H#5>'8--$F(<#50K)VDPY+0D*%(J!98F M$+JIJ3/=.6BVO=@T1J -S"'12,L!";5$Y5!5*6R(2V[C,^=7MP%I38PP>1%5 MB(BD(//1;!R9Z#32QKDHJ=7);:JW6O7T0HNK/IP)'QC3" L%D16UP/^LDB@* M;!PW+&K2.9[>6<-:3UX\E]@GSST21CG$D]5 X9E!)#IAO?:Y#,I/?R6U]>5H")1GD+L;O'V.^5'[8_2^(NMXL*:ZJ:P"JX< MRZ=23$\\YT#,D?7@DBR0P\!IQ-)MZDK,&EQ2:Y:C=>= M(\H'W<5#%-8P_\FM3TQQAU@^/X$GG$NT.P4C99QG(3C=O3IP]\Z%6RW3;4U$ M+I?+YQ#V)]6<<914X3_!K[.ZSOPCW+J@@>- M\S$J0'!D0MQ1C30A#!EJB7 R&:&?-#1<9N=?SVE\$-V(+CAN.(RUCGG4 _PF M(TK!&,YI$KZ;RVY01E]*Q%%$( M>6LQYN"$DG.(F.B3-8J(Y4_7;H;/%EQ;KPA'PN2CY06-R"C0:Y.2"2QR+E)G M9Q%6N@'E7DQB)=70VK,:82FSG"#&%4-<^H@TI3GM6AO,'!;.=RYN:,D-[8\F MXZ.W]H_X?AB73\]I4SOF5J;>7$IU*Z:NB-(>H%!+#(Y+@[T[@2WR)/@D-&/4 M=-9Q=?YPM37,Q B=/(Y1(0E,'W$C#%AJ !#WRF-AO>Q@F+^F<*M-D#3<*>4B M4BFD7!84@ES,!(1;SF(E+77++[9^7RO:A2>$G?C ) M,;RI1L*O9]<_X%+MC..3P>@LQF;._OU)?M2C M3"L4QA-E94+:Y54QE15!2(DBMV"0E@DJNU!U?SEK',*QO >+(86] JI "7(D M$122XC9:SL&]]%:P:BM81_S@&<140"44SZ6U)/7(03B,E.+.Z'S<7?>*E'=T M;;C%%7L1 8-HH!#P\H1,W:.IT1"]PH(=K@<78O^1TH6 M<7(2F69+KO(4.VJH]+'5(@1"#I%,> M<9($.'#=?JA-UF HDPD0CU!P1CR*/)F7&$KPF_+)4]V] MM=Z-R)9M<8)(1N*]X!Y%GK<*Y+DA8[A 1%$I3!2:JLYA7Q=+SJQA2D>1%")1 M"=R6SLGH$#99[#@R!#/-B G$;CHI7]T6@=9 3U'A7#Z]SM%@44$@L(DXQ&%F(#L("XC5SE.'N,8ZNE/U> M3SZI8D(*,#:D\F.YIAAI+BF*@4?,G)!N^16/[NK."6X+?5A2G!F* K4A5Y\) MR&FO4##&$8J%H*RSZSU=\ E=0!S.690Y.3)/%G -8*,)L&:5J/#"6D^7?\K; M^KRGE#*DG ^*K<^KQ!8Y"=[31BTE%0JXJNFJ_G:\ 'F;4C*&&F\EDM92E--V M 66RBE+FG#-.$=Y9*;T=#0_'L3I^%=UU]:[CL!Q5[T;C^. ,J\=>8ULYI:@& M/TNU U>C\S%[ 0=DK!?48.(=[1PSZBK179*9>DQ<+DHO1"8#3(*$DC=(BJAD MB@EH4F?G7[HFH0XL7JM\N /Q'#'+ '4EX0"0GY@;2DG&3"@X0"/LI^(6?GLLTK 4&R@N4*#0)P8H)*! M@G\B!*(D'Y2.G97*II.4.[WWABGCXW)XW6-O M.T 7'O'\8NLO]/QY>;H#SQI-*A_KZ9]'T89&X^&&7_ZC*'Z"GT4]/AN <9]8 MH+'#0S0>G>S@;5$.7_P/*HB(YBWO0#WRGX[F14-YP7W@"F!Y;V MPHU.45W^#SQBQXTJ> V"3U[ )_,WY! G?,E<8?@D_&+8UL=PF.;][UHODOV MN!R<[1P %M3%N_BE^#@ZML/YA6XT'H^.X=IL$\@.RL/ASB"F<7Y'?6*'\]=\ M.2K'$<$G/NX $J OE3UY<>G=WWP=O.M+&<9'.ZDP>O7Q7[![L'K_=_]_?V]]^_F8]9B\^\KQ*;%_]C=_]O>N[\>O'^W5;S:?KE=T'QVZH)D MER!30CLLU#?O/_Y67">E.SP;>@((,QP-&^ K?0.W;SYY&CWE(2"-@T5Y-/#D.3&Y^,)!'+*6Q0C@9 &QV@5?U8, M;>8D(8+/&P$%F#'&;@PHP>COY_IT85A^N:1F8^L&<=[:F&U>Q[>U)G]>!/U9YZ>H__R& MV\@VIW>_R[!M:#*JQL^*-*J.[?CG9R5T!6(),+S1 MP-G!8#0&B;9@PS<[<:.X?/%]VP1M"O?6@AND3E?->NY 93K5VTL$Z+K^MJD4 M?_]]]^/!ZX]O_UE\?/WA_<>#XL/O'_=_WWUW4!R\+X#>' "'*0@KWG\LB/@A M_%B\?U,<_.UULC[2WM[/ 0&0H08:Q M@ 25@D?K,A5MR]=]:)KV>CJU<\'3[03X!!W#6X[R;2C8,W06;87B<(F#MQ]/ MQM-)-H:W;C%6&(84*YE02HGE]!V&-(,1P%P"1]#,1:[:&JLW90TZ_4\8@S?P M2;W$4?[RK'3WI6&WQV7_Y!S0Y-[O^ MRU8-D)1NBN02@"\ST2$E,4:YV :R',(Y(9S6EJ3 36O>K:DPVDS]=B*4X\L. MY6ZI)&V%=MGL)1U7N 8]YH'P(*E"8@\H8AQUU$(B3EHY'&Z >[A=?-(GGNR[0KW5!#C*?; M"/'MYN!;]OKF-OKV\)45S6FPUA*0#)G,L%YG'05EE)J#+MB/=C/"SK M;-+CO'.[&RLL;PY>%OOOW^Y^W"KVWKW<_HZ@.Z"3S%/VIF6GY\)*M5>OL^JU5TF^F[ MWW6KEWTC #)WBW^N4JG+S9KSND90,UK7D>C[>]AH;EZ^PE[CZ(5"GIL(4"8B M,HD*1#$%5(R1&?[@A>4I_.4DL@IBG::Z69.5]G(T&8ZKLY>C$*_&/W6^(N^G MR<]9ZLS>JSBP>TPFQK1/ FN38[$HFDZA;T[C8S3AL N,NUJEL( MYT96T>!A 6'?*"??%O^:5&4=RN8$FDPSRD7L;"ZK#NVP_)_F[Q][A%H/0G57 MG?:V/V[O;Q>S6J!5<1%:BG>C[6N59K.MNPL.(\;DHY0&218IXKENB%.YD(OP MFBG.0_"I'8>Q&T(5ZWKVXVTYC&2)SL)@BHMWQ6Q/7H:D@W@*$<_?OIRM+&9L MS.V&]FU]9_+GFPS8XX -09X)@[C,QZI@R5$B>>C M+\L,<'8G];@<=D,)[F^G241K58J(.<(0%RS!. N&B%$,&XXQX;95V32<['WU M 6)0X%]K#5&G8-L)"2JMA.D9YV-DG \<@LYBNE:>8(G T0,&:,^1IC(B@8V1 ME@'&"]\J;GP8 3 ,_K_RI)G86AXH7+3$/G9?^LKEMTWAAYGX,SD^J,F+!9=0(V[PKE8&\ MC8'@+ E*#"&,)RH?*N]\XM[@P]%HN(S4F'O+7"ND#)9K28SI"IQ]S6?Y2UV, MXR">9"D5PT9,6WG-8C#)SKFP8*Z@!2&N?5R6-!(;YL3:M85WHW&Q>Y)KP61V MTAW,*S9&'@_JYIM1!:#3 .96,T,%?]A9)&*'8?Y1:K8(%7F?%)AFRIE)P\,( M=#M/;14#6X^+JLE$7W$:Z4/REA\T;E_/SYLE<<4*AN-D4M63G,TU'A5P1;-: M1N@/[L<64W%T_WGD#,A1SM;M8R*>)*V?73P5P?L?\XT;D5Y]S3=!Z7MAG6M+D_$%W"6:;!,;U M0]>M)J_+\:!)EHS6'Q4^GXS^O>B_)KDS9K@[PKNA5IY(\&AV[*2]02&QEKE?H M'4,\022K!2?(.2*8#(R3AZ=YS C*&:&N0=#VIANG%6"+ID#G5O&_8;PQ)@6P MC.*S'4P>F@?;)BQOKH9@:EP@-!_7Z6+>19,0?* 1"2R29 /\I _5D!FX3[&] M/?5X<_!R;]DZ\*30(B4-FJ T\I0X0(O D0XX(4D)H9)[K+QN"RU>SSQ,L\7H M2L9"]C_W35:XD6) 5/3.UL'^>XHHQ6^V^B..B[=O7]YCL>_\J),NGLCK-&E_=>7=UP?K]YHS7W>B51^-XPY*346+BSPA]% MT!YHZA_ C6*3!YTC[H4M5C^0'XLC6Q>I'$"L;@>#V9Q%#N'_/2ES ]QNXNS M"^"9YS$\RUG3TXW)LTA^80)@;C0YNL]?YXW)18!O@3GG2Z'#/C8\FM"B*3Q3 M%S_ \\"\BGH"+*X^&N5]7O-=NN,C.[[<]B_V8BMS$Z67'=KJS_Q*N?WW&XD3MQPEH%971[=L'XJ&SVY9[D?;G+!OEI>\^Q.]8_;K>NL+M5 M:0?+R3EXF('T'JAU#^0-#91CB!\4 0_D&$4Z*89"D"0Q03"1#XXJY[MUS\TQ M6^/,(?4>J/= F^F! /1M,8"^Q,)Z#QXH+ZF%!I2K3+RO_;0 34/7?E$?@^N" MMU1SA@9&=PPC<+:5XPQX')#S/&Z'Q6$U^C(^FG^]#6%';-H68BJ'36V?)F/T M/_^D*9$O9C]N:FCSM7HQ^W'IICM>?G,7+MV6HY*+M][0N4OWE<.I9R;4(3J/ MNA9#K?9]X7US S9T"9=\MYK[-74U[E%N_AZKQ/=YC5S-:^XQ:/<9 8)7M]9] MJ]6<1:= U#:#5]PSKWS10F9/6GPXOKR5:$D%1A\P:?GV>H"]Q_QV9U+S'Y)) M\V#RL\H!6VK1VEMM*4J2:Z%57M?!$G%!@%)SP9' *J1D!>&VI:V(.0BN7H*" M'HZJLVOF\YN+&M7ULXO:G-K?O=$^'KPL](3-Y@Z[7Q[1@-VRL!O;Y^ 6NY2KO0G>;S M98>,-RS.MA U!FE85-HB[SV!"%!:I&7@*&CE%948_H?;B1KG@OIK(Z>74S%= M%SV.JTG;P>.B"??!8X_O_1#T0] /03\$=^5ZJ]W2LCGLFX6V(9VZ$L[R.D/^026?'$]ML-@JU 7N9YM&6XJA<%^L#]> MF\IUPX:3%L@F2RS$Q#@R5N5CN:Q"-I!OQT MB^L4RT@YO679J2=A>7?/!JV/XF P-\[B!S"Y)B=S>GK7U>(>-%1$XDKHS3FO,KLT&*"0FW<*2:>S3%2'-)40P\8N:$ M=,E>LRVR*5S1[#+?/[)5K-]/Q@US 55^5DR&Y?3QOW^JFV^? :#[\AAL^N=G M>^_>7#3XX>08A=$8S2YY]@NA:DM)M44TFQO@O*/M6^"MU1]ZLK:7PQ#.G5^U M6.O13^N'U,UN_R^QBL7HJQRV;S+7%27%+.O,X6N#FU!^GA:TRD'N843#48CS M>Z!=^>M9L_ZG0:K3'<1>I$$\1:&LIIPZ9_E/CH=WI; ME-.6S=8*IA_,^-;\AC*8G=J6+>"_DY+B:BGY?7.%U'SM+*Q//3 M-8[=C!%WM6 MS[+X%X5\<:(CBVA![!?$I^"[7DHG"_)93?66\AABWN^P4JWNR]VWWW[+U_=]?A M)@_=O7G[(7Z VEYF%BM:#;Q]WTC?M[OTS19'59[^^%,:55]L%3X-1J,_@"!\ M:LXI//YF^8Z4ON']0_2SHZ=W)A#-5#D\^E8]^OQR-'MY1QV)H+6G$'MA%0;8[W=5S3(%^'7_ZQ@G3+0+(^?KT_CET M%#_\/K23 ,\//SYM&*$]C#Q&&%E"WQ:7QRAOZA-_I[N+$S2S.V[*ZUXJUD!/ MFXK/>3_X)V<' ?Q4WT4X_@;)3#; Z"7H]S?G"KSVFT<(O3C<1N$_!IA?1JE3Z.3.$6Z=6+E G,;I2(G MW%3Q"*[+Q5W?CNH>/>^,GNRNZ'G':?X>/1\=6FST>"Q!/VZ#GM_*_ELU:C;) MU75.1FTRGHY& WAN/:^N^?K?DW)\U@/I78&4]S3T40-'#Z2=H*'>UD>?TF#T MI4,T%)I4O,E-ZE'SKJ@I>]3L4:(?CU90/3I GR>;\L#(#U>S43G MN]R0O+WO!OB\;B7F::^^J,>Y^K*.3>$K67I99@V99OF6=F/Y]MI^7ER[I9^. M@UT%JOQFA_:P 8M9J%H7K\K:3^HZ;QG*ATGL#NW@K"X;4O858S((3;0'?2*%H2:5S=$X/AYF5GW'.MFQNQKR M)NQV?EQ[?EO:;W7'3;][T\.-R8OB_<'?7G_Y\&\= . MIO0K-C7_5L&_WN:73HG7]*7=9EY+3SJ\<_IV#R5=M:]6H61WH[#$?JK*^H]/ MR?KQJ%H)CN3IV^+-]'T]A/00TD-(1S-0;H<@]--D."TE&JN<,FP'L?X4FYT, MG^KH)U6YDAHEOR\THMC/C31[_7,7\YHS)/'816OWNB M,X;:@U#G%[-O!T+L4XC)YNRR3Y.3T1" 9UB.JCG^E*N9H'XU:T+Q.S0!,"ICI[.+7[6"&?X*^1. X*0*["5\35%:2A M? K/)KU[,C>EA MI8>5'E8NPXK8)%@1GT;Y1*-/Y7!ZF@7@P2H Y7USC-+>UY?V4/(8H:0#Z[0; MFI@CNP$BMTC,D9_BZ5'IRM5L,GP]>U>W\6*YJ3M/XAJ R!B:0=1W71^ M4W-XXCTJ]:_R>*7O MG_W8G(!IRV%=I!N/2-@N=@>#A;^+T>STXJ:/B\6,H WC497I2C[;VT^J"KXI M^/7U^2CU/U@DINT5=CC46Y9'BGX8E#^>U*&]C&,< OZ:4FS/K\7GC;?7M,;OY\(O"@PAAQ,ML&F4JI\*I1\<1 MOJFA(>ZL.6AS,EUNSEP?QFKBH?EUDZ!*\0L7!V7\'+>:/\F+^'(#NK+']8Q_G'ELZ/KF@!J=\U'Q9&] MVJLOU]T?P>R/84BO]C,>K+DVON*+,U7WW^Z4E,ZF8,R\8X&L+?,UUM!K+X1VS4J7 VUS.:2NP;3P?9'49X!L!W MMO0YD$X580'3 $#^-8T"X.]F@_$,E, @\W,NXMX,10"WQ\47:,O4]<=P]&7ZC,EP^GM.W8-7388>XEQP#WF9 M>6N*O8TFE\=Y5.W,BV0\;)J?V^QM TO09/AF JV #5JLZ^WC$>91C,1EQ!?P?93F!$IMZK&AU#@\XN>9AOOF5N>"#K M4=.'08;6&9A^"ZK_\54L33]GFC+K^M2]Q.RWIHHV'(W!M1SG$TB@"UO3Q\\N MKF/CIL#5-#,2Q0=0U&)O;ZN8YW@6S^;VO;*$RA;L\J;A5]/%XXF)UM%[_&J:5\ V^R+I7#HT;AH9'UI.$]V2H:^YQ9[ 43;4A" MY@1')= !\/99%\&&9K WU?QIB8;,*[:*L]&DF/K?1FVK&;Y]%PN!:2Q :7[E M!8S;+C)2+^"=+RL_.E% MH"D:0C.#BD7P:"!C?#2JXQRAYZSWF];_E-WM'KB%$&:T?$$F#0K.R=MHRIT\Y9 M6<7"^F9A/UMX<3Y*&.QDTBCJ[%SZ7*CP.^ XP@W+GCAAE4O/C[_!@^%1MIZ M-&S> PTIFT!M>O779FY=O7T62\V]0^/U,A@-(M#.Z6A,+@S:@FVZ/#0VNY3L M*B&<&\=SUM#0F,P')HU6@Y[$TR.;5>=SQA (LG@??XPCU2;1_3,.N6Z+P M=O'ZU,>3<;Z^RKG^U92@VQ/@ZK[1K8']LI7U,HP:$,D!X$&+SN*#9ACYTB?[:@W(7\Y"$,TP) ;ET*]3)1R;=^@99< MQK)^E>GN*S&KT6RR(4LRI%^0N6E!9A& $2';$JL_GUM&4]:;X.7A\G0TFF6; M\CN'H:YRC6;OX/5O!=G^?[X>7'ZW51IDMHTBE\;1;&.IOC60FZE3RTYR>!B^ MW: 8Y+Z+=P+W#V&>+3?MVR>/ M+D60\OK5ZDX,QP^3JX= 3P=A&J)<].$-D#5.>N8QC"9"D M\C2&%]/W$8RW\9_G-T W!_:DCCMU/+%Y]68^5DV*UO39SRZG\ $_+:?+C#OS M^Z])YIV^3IIMS?^\Z-QGG9UZ]^X!7SL:EZTX3WZWD&,SOH_ M#JL11/-H9CNI^:_5C/!9NNPY/YQ'"A!Z-0AMJHUYMVFBWGG^1EV?QGCDOMCW=,R_[^*$Y%A]D:QK'-[/OS3&%Z M4Z;PK17JFE9O!LVZ,6\85&JVN(.;Q9UK][VWHT6=&+QUE-]['+WMS>AF,[JR M1-I;T4.K.E[/)CR,0?++8!-KF&)J4P-W]_=?7Y@'N8/:=65V;=G ]*@JHCZQ M K!/L;N]8C^![G8IHMYP'_AREM-JZ_KB]&'O"Q^W#3TQR'B*W>T5^PETM^5X M\-MGK>=CL:]M]_<=P^+"R[).7U]F'8^7MI[N%O/YEYRJ]-D.XO#[/O.>X[6! MCO2:1PY'W>KN106XJ9__NT69=@-L'J#X/Y6G(,;AF\HV&6C-NOV;3U0[$IVV M2%'*$^IHUO)$ M44^.;UI)\1X&L=GRY2/HM1O$K6(8QSTW?M3FU7N112^B-:>)&8P,$1AQ%RRR M)CEP$,P:;$,PUK1!B>?&]O'MR7GP=06XT_=>6RT=O?8]9BEVSIV M.>UT])@APFU 7&B/K*8!,6*E 3+K<5)M,. 58)<$XJO,$\>N?E9X-<1W;YBW M?8ZJQ5-9>J[[&"VJ]Q>+_L($BU6P!!#?,L25HD@K$9%2*EE+ K6"M<%UY_9U M!FZB)?] Q!;)*=M/VC]LM#;W6/68I=L^5D7+-.$"">$IXI8V<3E%1 61J&34 MRU9F=Y> 56P+,/&)0U4_A[L:*ONABB>V# M%'_V=<@-[?GM3=^^[Z;)CAGA/ M8=]I:]-C\CLZ!,\E44A)(A&75B(3P ,E2UP*S,B$21L<>6:XKT]/>SH3 1@A#E-9M4/050B7?PGJ)L]"/!BI7.E/=/+$%?M\\9],(_L%HG&O( M]Z3^Z<3.&\U#VB?D*5"I>40!6W ;W MD+.6(>>64DL;*X%I)T%B"/U%RBU+Y MQ*>"-EJ=>[!ZS-)M':RPX\(Q)A$FP2'NI$86,X^PQYY3S1AAM)6,C&607ZRW M!-9/'*V6/G'=;7+V (MX/SW.:'A8#**M8]%8'!HEE,]/Z8GK$["=WA9K/[F/OV/OU>Q\9'M.4; MMA3%3]PS;+1V]]CUF*7;/G9AJU4$Q.(8 X_-Z6).K^TV!QRK (F[@'ZL(1I2Z&$/$S,4K56_NEZ>P=.@"+IM+ M;C]IZ.IG:.^_[VULAX=E/EAG.A_;T]C';RZ]+UCT!81)(GD*B 'P(RX8( (A M!&%+1##6<^9:R2;X:FK3I3IP :]/\]GTY?#PKZ-1^%(.!FWY!*:>N$?8:!7O M >PQ2[?]$HXA\20,1H[Z .S48:1-<"@ICHF17/ADV]D7MS( $WR)NQ,V0L7[ MZ=G[&LE<%7L2^Z@-I/*!X9E0Q%R23B"D!=VZ 03\XHQJ*E@;=!8EO& M>;7%*7GB2+_1BMS#U&.6;OLE')S67(B(,.$4($<#[5240>AMJ:/),,=:F7=M M'::8Z.=8^SG6^YE"GO0?GQ7'<7PT"D4Y_!SK<5X#Z GJHS:8'ODO;H-P@0K! M$-4)4%PJABSX N0$C=QCKSE/;1#4J;']UMC:WKFIU:TMME'UU!W!1NMUCUJ/ M6;KM3ZT".<4T:L2P@;#:J8@T\%2D 'N$J)^/YMZ[RU< M306Q?J]67P[G_L)^LN5PI/6$1:R1#CXA[H&[.N[ 'T1,24A,VGBE',Z]]GM] MK7[S;C3TK>X!IEL"+S&;X-'4O]EHXM1C8X^-JSZK+2KE8J0H>F. )A."-(?? M(HY.46X-#J*5_61+Q4:EEUC6]]%@XTI+_Y*6:O^2+A?_;=[V93J$;C0(WRD6 MUO/W-BV1;M-LBF$TR7G3:_12JS\X]#8#\4@=EK%"2A#MJ19XHSU-_5ALYQ43^![<.S!\9[@R*TB4CH##=08 M@(X&9+T.P.8==4I30F0KA7];!4="V1962YP;?T3HV/(,^K4J=Y77=X9\MDG) MW^[M_KKW=N]@[_5^L?ON5;%_\/[E?_WM_=M7KS_N_Z5X_???]P[^^3T5[,S MM.EX8)#S-S\_H\^^W<]N@.@2?&[?W4?9W5ZQGT!W6Y[D>LH>W5^Q>TOW9Y:M)T=KU'@9Q7!R7>38HEW'U MLY3=P)CV4W63]XDQC)QF'O%$%3+*:"0%%2%Y+<75&ONY57ML1+0,/2&.9CP: ?S0C#D6/@X[4^9;2H98*7VH+ M(/>)HU=_S/G*6&\UB:&(TS- ^^2FQVU6O;>XD(L4B0W$"$0C!;*KM4;:YKI? M'"NCL$A8M$5VLY&]_3H/VZ[#H&S+R"5FT/:JW?/=7KH= J[ -(O"1$2<,XB+ MQ)&1V".O T\L!4O$E3( ]Z2Y2P4NQK/58Y9N^]GP4= 0"$.<)@K_.(=L$B9O_A>,LY 0]ACUFZK4.8 M8SAR3#0B@4)H3N WXQE!R4MMA3,B,M4&U5TAA+$M29YZ#E8_M;L:^CLMK^CO MOM^EY\%]/;&^GMB"(]***Q-#/E4B8<1MLLAJ(\"I*.82U^!Q8FNU%I>VKFBV MM%RB[WDT%<4VFH3UZ-BCXXK1D5%!K;<:*>T2XHP+Y'P"\I:D\B(P2VPK-'VY MZ*BW"%OBQ/2C0\1ZS-)MO_IX4D%PH,)" M1HJX%!(!/0;8^\\TFL[+@<'A:#:.MX MSES/MHIA'!>C=,YI3T95UJR>SSYJ2^J]PX7\/>92$L'G; R&N&,,:4,H8M+3 MI!PE0!9;F4N>6^';;(3GRYFMGU.A=9]]O,'ZW:/78Y9N^RD9RB?AJ40B80-( M1 (R6"?$A7*!R60"Y:W,]:X(O<@6H4\]I:P_??UA&1:@.:B?I>W7$?MUQ(?Y M%J"R25,1$1%19(_"D(D)(ZL$28)(\"%X&5D6K3L5MH7%$B=\'\U2XD93JQX@ M>X!<0Z)%I"XB:FDFW\PAHP)&5 ;@WD9[P,UE)%JT#I!\2Y.5'8VSP0"YTDSI M/M>B9^^]<^J=TWWW&WKN92X;AUG.D<;.(^-B1-Z&Z+"(7+ KSNF!>1HM>2-) MMFA_U'+/UWM(["&Q54A,@B1BB$0Z"HNX$0E9Y0-B*IA A$I*MW)PY1(@$6\) ML\1JRX\&$I_HP5P7APW5T:/R%!V5 0C_SIM/FDBG->; !1@HL1(!%-\&A)6R MF'+E('2]//97'H*YCT9;@12F8 XRSP02(>%/[G.EQ\ 2;]&$7XZ.C\OQ<S*GYX-QK'@O ?SY7@VA_] 6)/R?_WW7V4W>T5^PETMS]S M^KZ.&%H\Q>[VBOT$NMN7 MHER-T_Q0S6M1UME]%B>V*C[;P23F[1#G1Y@M=3:*!\6Q=0PY%1WB)"KDO$A( M1\M,I,$F>^5XA/M,T)]WM2$*'VSUOMH?VW$,_S?W]T.L]H]L%2]/5(T& SO_ M9C9EA1>GK/AW9JQNZ#/WW($.(TPQ1]Q2BYS0%*6@F.4Z>N5:V8JUGC[C;5 - M:M<(W@))Y_^O22&G32[L>8=>K$8Q8; -=0H@-5F*>+0@/>\L4H0S M*TC"4I)E*>9>74_N*+D\SYJEE_UU'8]0H8X4%'I=<(N MZ:"NF%M;.ME&KZ!'<4V*6#;-+VR=??M^/!G'8P=@R?!603'ES>SRJ^AGGY+F M4];GFSSJ/18;O73>_L*H]2(.\3SYCDT1&,HE$5)I'1F4*5S;- MW:]&_LH[_*2FMR03E"@74!+,@&!81(#;*4]7BCR+(#EM)7UZ08XKF=ORTKA MN44VY((!,$+(,*$1Q1Q38YTFV+:LGRWW2XNG.K.%G6!!I(1\(SNF0;^R8CI' MDE,$4VE:.D+HDNSN,0%T6WU4P7%NP<08SJ&G%[F A7%(",*Q3SP8'I;2I_>3 M<3VVPU .#Q\ZTTK5EJ)L2^CKJKFO0B'S#-9*-)!($7EB#KG \LRX)8 CQ"$F M-9"S%*P6="GHL40-#,D[;'% V(J\S5U+9&4BR!$;/??4:MRVQVY? \46YV*+ MT>NVS:P0$N=3K:"/HZ^]ZZ=>^[F,?B[CIGB!.2NE131H\'\J)*253BCRX(7$ MW"G?RM3K OH\8"+C*O+TQ>8V6)M[K'K,TEU"L3G"-&4$Q2 ]8)7D$'\ 76*6 M&)<\$?;J$:8/9$H]5G5W'4\U;*=LU[V=CIS&1GDK?HPMKWA MRZFMM57+6\HMPI9X;'JOV3W1[:7;(=P2TAM+,47-600\.HFT<@3%/"'HG&'^ MZD;3^Q#=9>,6V=+ZJ1\[VZ] K(CR>C\YG@QR2G Q:@[%\:-CN.LH#NORVI.I$?5K+(9G12%&.-M-46<6^!3%,OD.7)>65I]+Z5N>(%0VY. M@7BY:,9[0[#J^!9L^5TBB'MPD\A\? MG3WU:-FCY1K1,@B3D@L&*1H9H&6@R'AFD/ T8B,U@W];H?!K1DOSN#*,'H"6 M_=SVZHE^B*GTY;CG]?7#C$,Q4I^\ M3E&2*][N/K'!QSBVY3"&U[8:EL/#>@$+7DVAH&T'QYC8$OCI':79APT]&/=@ MO)%@[&+"DN* @G(02U"3"U!PC:*0+E!CK""M5!Q=/1A#X[<(>WKGI*TT*GG M\L.3.+^S>=N7Z1"ZT2!\YT#/^MYG%?112^\HGZBCO&$%@M"0=(P(Y^H9/)>& MM5X!2O&HJ08/)D0K4<;B\2*O&U-M:T4<;W&LGYS[>F)STSTR]LBXZH2A_Y^] M=VUN*SG2A/\*PCO>;4<@Y;I?I)V-D-7=#FUXI([N?F<_.K*JLD38%$ #H"SU MKW_K@)2:(J@;"( 'YV3,F WA>NH\^3R5F965%9SQ@1"$U*[Y\%9"5"@A6^6D MU29BH7VX_ =31J>FQA]PX74PRGC450:YIV4&V>=UAF_TY\]_/^EVLX&4_?M# MSV+JD>KH6A:7Z9P>ON,)+4[7ZW4;7I*4NP MBI0U6399VTN7O!LG5S^=EX--<%%.W2'7RC]K*:Y)[:5AT)-F42D^%OZOK+>OFIT*#]E]LE[]YV NO M\=9O?_;GOG;4W>#*[,TDG^.J&=(%OB*8+PJ]_TR[KN[EZ\OZ;1-XO'T,^DD] MI[=09DO:&-+C1L#+U_,G9;:Z.,=WC[M7GUQ@Z7IXWH@69U=7=AUH73WQC\O5 M>E;?O?_!S4>!YN7)Q6*UV57S>$GGN)Z]H69D;[OQM^]\_,'>WA[:J'Y7M5T" MHOO!]>L933!W&S!P_JYKASI?K+MX:=F>;DK5WO9JN=F;O%QWO7G69[2BR;-% M%QRNJ'2/-L'YIL;KQ]D+E>//GXA4:YJZL/EA#?$#.OVUR)L9G!L7)W>\!S_^ M^FSRR^(3G$%?X^?W23SD>5\I._?;P]\ @N_7<[PL[5=.=R.YU_K776$GA\V.N[=#\Z06E]?];YY<_9X4XI'XX_L/Y.Y@EHL5/5Y1 M\P$:*N_OU29(NOKN/]Q.<[^9K6:;F./=X_>?OR-_??5S)CR*[H\WI?IZL%=: M_>=/?$P^DF:'3WW[1^(CIX[R0SPB'M&A1_29-:GP[25F=XK>-L^_F 1\[S'= M(>/AH![+ 5* W[(JM*_!'7I1J-E"]\I__L']X?/#_*95_0=#?:\KC6=+HLGK M]N^SU:3%-\V-^JA][6[F\C5KX'VXD\P?YL_]^/-B-F?ZW-/&>C2I[UK4=D@F M[]-4*YV4UG=#;3-T(K[N7S\ODPTF0DQ93XQ?(:A#999\SG6?/$T"&8-LX99PW,-LX99PW/-PX:E\=NW/^P6 MEK:[\XE;&/O9,NEG>D/S2WJ\SS39(8?Z(*+SM06A^QKXL;0#'"U;-8]V M>*-EJ^;1LKLQ1%"'--IO#D&.T5'I=DSRU>V4>AJR_+1/VM?UEW$_YNMSYY=KMIM MH.4/;_/Y9;=IXNEJ1>W_RS1.17(H3($%+$YAZ/:'-(FF?<&=5J^F67B.65'(NVZQ:%?5!MX\^,#3T=E!;.]4=$_52X7A[: M,0@:<>S.BCDRQ4PJ.M&"=>%;V&Z*EX"1,I2D?)8^D*E;J629G=%5*B#O%1C* MMCL43@"EFH*P)B+V*)6LU#2PW]FS&MNO/>7HL^GFSQUQU--T\]6!1LLK,O#$ M->#5&UZ__$S".$B1;'(@O8U@M1*DQ.+5U=IY!3#H:;,+N;)MT MFIN>4G/8R2F'GGPNP?1GTI%B*K4;]_HE)S(8VS&J6]7!(88"T@4!Q@<%T18# M+@0G8]8UA*U,KC7.)5T)2NE<:F$TQ)H2R.:+UZ:-TLH>;1_08FK- 0]59@:P MN@T8VY-6-ZO("ILD"!D\&*-;\%<20O)(I3N\+)AZ6]VJRM+7(L"9F-MGHFUO MSPA$DE(51.A[Y+MI,Y7V@.=&#I@!'(8.!,A12)DD6X2E LZ+V-4@64!T+<(4 M 746-3DA;TL9D?;H3(6<8G/N5!(0G:B@JQ=%9@K%]&@'E!1Z&L3(=WIR_[(= M&/-LL=J<$[CD/F;<6(1'.Z#1LE7S:(B/MZI?%>=E7]DI.?>1E1EYF9&Q')V)!4K&U%/ V=FU[G&O2% B\R3$$JZRQ MN(_N9 <7,:6FWA]P[S ;.HO8@+$]:1&3Y#WJY(!$YU4E-!!12\A:B*B#((II M'[W'#BYBVDR=YA9C'#N.&,A1*)8/,8LL$:36L<6.3;:"5BV M!4#"A>-V]I MNTMGL8,KEM?3=K'C5BQN(':$;",W$.--R+P)^9ZMR&/0/F3;@GUOP(2J('IE M@9P6H:B4%&[M!]NE@=CA@_VI,[S5^*$]L,'F U@K62M%447*T+12FP0F.83D M5 6?2_/;=9;>AGWT"3NX5IJI/J2#SEK)6LE:.6ZMM*9YA")%B)&HZ9[WD%#H MYC**D+4R5I6MQK2[M ,[N%:&J?('7 @?N59RP,W"."YAI-HB9-VYCI4*&-1= M!R]K(+CF/A9$147MH^O7,5;7S2'/OAF*,G)SKR.D@J^:>^6/=\[Q/,7S%,]3 MNW:GK#DDF2/(6&7GP%M(76??VB:>Z+.3Q6\M1^[2*.SPI:QF:@S/4YSM8+%D ML3Q49MCF4GQST&,(J3GUS9]'Z0BBKTZ:)C_:BGWT'3N\4^^GTD462Q9+%DL6 MRP.)949EOWO6BV2U>T@RMC=%,9#MB#>RC* M>,PR8;6/,F'5XS+AS:_]^^KNI6;+GR3?7Y>+U6IRL5RTIR??G;=__(FGK0$7 MXY_TKI.O-?S?[_LG[L]W[V_-,5U],AJ3;5IE2('I6K%CR@'0:^N3EO4.5W^7 M)/*&T3]M"/WU,]BJW?/VZ,NU=I^>0JJD$>" M6-& 22) <$W0HO;))TNBE"T9VR6]NY.,?>'@7^T/F,YEPV;1&C"V[-E]4A(Q M^"2U48"HF[RY9"%01- VUBR2TQFW4A6[)'$/Z-F%J;=^2-IX?,^.8UU6Q--Q MX[*JV930)4B[DB9*$I+2!@*F:E0409F]I%?W[\;YJ9,C;V2UWS+:D1PE\?*" MEKB>S5]-Z.T%S5>TXN[.GQGF4'U^'NT 1\M6S:,=WFC9JGFT[&X,$=0AC9;; MNQTA>/F95H3+?#;!>6G!\ALZ7UR\;B]Q_FK 83[GKS[74P,]29^ D R8FA 0 MLP&%(@BCO95A*W^U2S7%>^(]G9?O?Z?=#U<9A'WMRIL:-ZCD>^],_13F4<9V MA#(F:HPD7 2R,H.)JD*@+BM?DK8E$:J\=;[$+M44QY&QJ$9^QC/+&&,[1AFK MI(RKTD(E%&"T#9"PMD>.@C4F&>/M/BH@CB%C78L$EC&.($<,Y"@T"Z/Q4;60 MD;#J%@V:!"%Z"]:[KI#!"QFWFH_M4@%Q#,VR4R\'59C_T#41G(;\Q"D3Y^== M!467A6R_^D_JZBEX!ADPK7@&^F?G'+D/%]N3UC#5O%FG;%,N9UH4+KV& M&"1!T=[;8D6L>:NUX2X)R(-KF)MJ-?*#UEC#&-LQ:IA&Y2.5"J4)$QB4";"D M"%5:IW.TP0<."/F /K0';.0>. P%R%(+EK,[:8 3G5&CB(YK[ ME:-L#E2L06>34O7[2#T>7+#B-(215ZYP^>,1\HY_I3DM\7R3=\32WC5;K;O- M7&_X7(-=N<4]%KG'8JH1O>JZ487N$$=2$9)MLTOV3:%R#B6K+<=YIY945_1M M\]#3C\B[;^_9QP-.1D/IL\A9 A9,%LS=!#.F:**B# I]$TP9"4(,3353=_Q8 M=A:W'?>=FE\=13"EG!IYP%(G5DQ63%;,<2NF$S*GXAU8WQWQ2-I!DBY!#*[F MHJV2M>RE-]9Q%#-.M>?3PCF+R_+(\KB7I2LE2RU.@<]-%(TS%F*,&J14QBA# MQ8NM_3\[M>$ZBCQJ.156LSSVJE9UW,?@+KZYZQ?/5SQ?\7SUJ?FJ>$719(BJ M^#;W! \I9@TDI$4;=:IZ+X<8?&C6=SU!K?;EP(NI\WQ,&:<\6"-9(P^DD9)J M*%(50)^:1J:F?,FE#$)B*&2=*"+N(TE\,(V,4V?YP#+62-9(ULA#51XH4;*. M&3"E",9[#P&;6UEL-LFJ*D+:TLA=TL*'TDC=_$ASP"[D(]=(#JQ9$,!#":)Q[#3VK5R83[E]C\??ND-NZW+Q M^GT^>#'G//"0J_)/>O?)21^&ELF;&%V"X$+STG5P;0[3&;0/6MJ0D-R69W^O M#/'S>5Z\IH[A^SX439II](/JB\#GW;):LEKV2"U+=L8VO[_)HV]J*:('+*(K M!_'1J6QS-&:ON>(#JJ6;*C^HS8"LEJR6K)8]4DNKE#$H$A1-KE,^!#12@HT* M@Z@%799[S1H?3BUUG!JA6"TY[.XOHBR-IR.-.IG:U%& =IW,)1DA!EN "B63 MDV@1]'[SQP>51C&L#MSWD,9#EPKODA[N3?[W4W?R>:MPE-?N> M?E=3Q/5"XPO:UP'PW.:1HF=%4%&:QI M7G3:2R/<^XOC5Z9C11B23'(NEO62];)'>NE$]!2# %<]@HG505*D072YV.8< M5J2MXW-VR<4>32\/V0EG#'K)L3"+(XOCM3AF35J' "EZ#<9K":$[IUK8X)-P MT;E0]Y&-/9HXQD'%W,?,QWYC_>X@\[%_Q=G\JORVS%87BU77EZ%.9O,WS72[ MP_#:PV:P[?V;BFY<4[L=EVDU*S-=/00EU9,A32F],WU.2PP7VY.6-1(F^&@3%&$*F$02 MT 8#P>M0L3JRN)=$*\O:$$V?96VXV)ZTK,ELM1390K76=_N>,F"V"#$6JZW3 MZ/)6 =8N^=#CR-KV_MZI" ?L=S!@Z^>@*'Y?XHJD MLA4:1.V6N+24$(D,:%DR*JV+,WHO^_P[[KU8S!4J@$_[TBJVP%\2R&I^)/+K:@'LH$XHY[I2 M%LVAB>:A/;^DDK7&@XG*=++6O+A,$D)..AG?)$MN'8*XTR[\8WA^4@UJ$SYG M-5FR3E&R3MK/\U12EC&!5SF"<4T0@R."8+RMH6AKBMW+WONC^GG*#6J]AVL^ MCYLS_;WE*E=VU%P]8+6+^OWLS>S0O.R>KG\OCN^= M6,%9P0>FX#Z(Y%67?,XI-35V!"D@08RRNAPI.[5ULO!N_0SZIN!:LX*S@K." MLX*?MH*KZI4UUG>-'+'SP05@Q^EVVS\%]^Z ?<19P3EEPG+- M$G\="9#GRBC1P0=@FUQ""5(U4@H M(2%B,A9%V/_ZP;/V?;/YY6S^ZN6'8Q[_LN'\U?M^[1C_P]OU$IMTSN:X?/=\ M3:]7+Q;="N5ZN3@_WRRJ7_54VGL/)3N5DI?4.>MT6B"SZIZ.ZA852XE-=1-U MJEM"UW;.UQ:'R%"M0%_$UIZ<^^?\^ZVZ;NH]=_9DU3TMD%EU3T=UI7<&JR_@ MM&T*ZGWS=7..H))RE'W*SNVE'OZ$5%>[J?"#VE/)^7F66);8AY)8\DDU:;3M M9G0]XU3-D$QQ$+U2DDAE1UL2>__<>K\E-DRC'E0S$Z[0/VZ%_D_+Q9O9JB-9 M,S1.BO,J,Z\R]W\F5"EF4E@A6&/ 2*-;X-"FMEIEDIAMT5VZ9E^)]3;#7>\N M^PO-J5W?WH[P.^!Y H-;,>:T#:LQJW$?U=B@;&)L"!QE#2;X $%UG5]M"4GG MDJS;:OJZ>\+]4&HL'=?OL!JS&K,:G[8:DRU&^I":;RR[(UR5AH!) I*KUF"4 M&N/^$O$'\XT/V:*6U9C3$BR]++U[[Q=01?-Y*8/,N8(AFR$JBJ!$R#(JWW1Y M+RUP#NP(^P/6YPU.>KF0_2$*V5_0>G*^6'&._G06MGBE^70FLII$(M>U-<\! MP6@= 9LT=[4]/JML3?9B'_GU1N/?%YL/4&JN;>2U8<[7G!3(K).GHY,^59?) M$-ALF^:%&B$V?[[Y\EE82R6)N'5.T"Z9[\/JI)M&?4,YBJ,P0;N^/5E,7L"X50]I&3/JA.:C?5O(F&@^P^(\JB>#JBJ+4K MSF>"Z#J!BZ( ^H2@O0]4JO".MLHF=LD6'U84XU1*WN-RB +L.TUL.T%\*@78 M7YW;O3IGLAEL^^@9S5>S-Q^:E7S7Y7S_]/A+UM474]KGW-/N'S MPQQJ*,*C'>!HV:IYM,,;+5LUCY;=C2&".J31'K-R1>ZC>!,VFI.D4Y2C:Q??NVSW*4S[K+)#5=F37@VQ#K/QM8(E%9H> M)]?DVQI0,5"DE$S!O(]2FH?6\*_M:S,V+>>:'19U%O6CN\Y1-K\Y"P72NMHD M-&=( A$\"EFJ5+74+=G=I3+GH67WLVKKU-C4]F@TXV0$*VK/%/6DW61IK$S& M)1#11S"U& A-I4'XKFRH$JJTEZ*AA];KKW.3V\T8FW+WICR)MZI^73G31R3B M3:O[8Z1ZI#I*EL5E.J<'G&"_CI'_<;"9]N[[P'/M_3OI&.-S*0H"N39OHC: M)CL0W<%-(F +<[9V+>RRK'#'-'NH";,[?LD>+=JY99FG.6MR=HG%FL6Z]V(M MO$4?109I6FAC/$H(6CBHH0AMBLI6;_7>V67]X)AB[:;Q>+UX6*Q9K%FL6:R/ M(=;5"B6+#N!5=TIXS1:"H2;;3@7K@O.V[.6PJ".*=;<[6!RPVPR+-><\6)E9 MF0^LS+Y6):5'*%;KJ_7@]FT&$OI2K96^^*TCJW=97SBF,L>I=4<[:6,0RKS? MK0%CW1V=E,4): M\#9[,*@($E4#6NID443ATM:&CEV*EG[ Y7PV?[7ZB9:_=*F-[Z]$XG;R;G%^ MCE=O^)#&$S?3>.IKLWAWC]8)C:[:#,7F ,8G!RC1@3;5"UW)H]G+0<"W1[L1 MQX.-53R2=]5H'36!>=*5SEP&P#,5SU0]GZD4:BK.NJ:^*H(15D',E4 W,4Y9 M>L2X=5#E+A5;_9BI4C;%4&B7*E(;+9$"M&W64:7D[*A:IPXRVH//5'>MK/%, MQ3,5SU0\4PUDIBHQIMCMBI>UR;9)8K,1)((0*5L;"'-2^RA7Z\=,9:2H41D# M)JK49JKJ 5TT8),C'Z3,2NSE .ECSU3JKNH\GJFX6H^G)9Z63G%:LJXZZ!]NEVNY]-N+I53+BQ>7K M1,N7]3KON$F[K5[^GI+X*#EWE;&XF8L3.U86=D462@!%VZ[;9@W14P"EA K" M9E+9''"L6X/<3D-^^TBE\E,=Q%1%+B_DPV-X\N#)XXB3AVSJTV8( E-*!B.: MED:?(N2(,BIG)>FZCP*X/DP>U05;HU2@O ]@0OL3L>O2G95K\X 5I>REV.^H MDX>,4Q_U-*B[>F[SY,&3!T\>/'D;JJTF<9XUR&5 M/'GPX3L\4_!,L8^9(D2MK$@%JDP>C X(0>H UBI1='.^@]_:$;I+F5@?9HI" MP6.+#L!FU4(&J1T$93.X&+%BRJ7@5AO5/8[U0&&&:F&&F=H[#V7CF>(KUY7: M?S&=T^;A(2G^U9/ K=_^[,]][:B[P979FTD^QU4SK8MFFS!?%'K_F79=WZ ZYF]=W[']Q\%&A>GEPL5K/-=R^I.PSK#343>]N-ORNA^V!M M;P^MP+_K_,Y5SSO#]>L933#GQ>OVR^_:L"?SQ;I]L G"I%W*K+WMU1+/)Q>X M7$\6=;(^HQ5-GBVZU<45E>[1AH#8A&?RXVR.\SQK;_]EW9[HSA1;/;II_X.U M\<&:A_Y(OAI/K_]VI#[[L"9^??&S^?ELWJYBW8SE,5ZN%T\^?J%1[NKIC09< MK8QC;6-[C.?_QG>K)W_X\P>UN/[F]P3?W, -F6\(Q VBR_9*3]C\L(;X 9W^ M6N3-4N<;%R=WO <__OIL\LOB')?3R?-Y?G1KYCG&;=@X>OF&$OY]]4'__KZH M?U]1/^[4)V3[=['N%/[9&:"+7^1_GK6OHN7J?_Z/H*1_ M,OGA7Y>S];L'P+L7]^.[RSE>EO9CY4\/?@N.ZDOR\!Y\@\H>QO[C8MDYD^U_ M2Z)-]=>\N0B3U^T-9ZM)\Q0Z8:*+)DPMBIUH,9THHO M_9?NISMWIEUI]RJT2&AQV2*:V5LJ3ZZ^60KQ2/SQ?;"A MORY#O%'1^&:VFJ79>=/2Q^_??4>MXO67FT?2Z3_>]*RN1W'E6OWY4Y\[RD?L M(ZF.\TO'^8AYI W$[X1-';BV-\FA[H0>%C'X6!X]PW>'4^D?V>-'&,?;*Q*// M+K0^(/+[[ _PTY(J+9?4V< B_W,W"_G,C?NPQM:/6\>D8=+#XY-E ?7\\&QB9[X MX'J4?OUR_/00]WF?T=)WL_ED?;:X7.&\K*83>INI&^.FY/Z++;Q/Z:8]B,2, M,?Z^VM'!-,>2F,8;^DO'=NQ_MZ=2.W/&5G^TJ^1#C[5UG^F-UD[VZ MK?OO)UN#329;$(0:3*P5(@H/E*LO5G1'^FP=LEZB4"$6![YB!:-,AH0R027M M?1:HIZQ^:\?8YR]^_+B3ZJ91"_Q&RT4'=E!2/3EG+CS\ M%/:I@?X'2]@W'YX@I515.TC9-SD2-D (5@,5EZM-4CJU=9393A)VPWV]ZJ#W MD8;]?[]\W[S_!D+[B+XI9:!9R5C)!J1DO.TO*R%9-.[J((!0\D#BF0@2J&#EK%(W#H1Y=X^V!WGGMBI,7:J ME64)8PD['7S9&3N0EDF7*45G $M-+9YT3NMLTZPCY18^>M,=INU4 MBR:3;\&E-RD&(P3Z>@1G3$R]4U/K'"L8*]CIX,N^V(&DK.J2JC$:O&[1I+%* M00BA0'8QIYQD4;25V]])RC@QQDK&2L9*=C E\UG%2JB@19!-E7R,+;XL"$VM MO(P8A"UJ*ZI,WJO0(E$54@$3T$(JHD#$;%44,B?ECA95:B>G(;!CQG)V0OB. M57,V,\-X:[< W#Q",-0BQQ (8 MM @JR&0*;47.QFAR@<"4(%OD3*EI8=7@J[+9(F;EQ=$B9Z>FQLMA:=A#-Q[= MWONQN>#N>/#Y^G$W\EWV@ES?A&[ F^^X^9UB>]+OWTZ1JR6YR6RUNNRV_5TN M9_-7FZ-6+V@Y6Y3.3B=O:-7M"6SO6R]G>?W^Q* )_AN7Y8O;;7G6Z=5XQY; MN@=CX,IU'!3?3F2O;[I78TE5E[SP@J03&)-?MDT*P(L5D M,$==MA);1MM[%55(N**R.0J$YBOLED!93 ?.+A93AOMDX&8Z#QM?IO.H MX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z\XZ^^^SH MD]:YE'($%+YK.T4)(DH+SI<2E!.IVKIU\IG068?V&9^R!N.H0E(E@"85CR^G7QM)19=PUX_A/.RO/Y,[R8K?%\L[UOL_;T[,;2 MT\_=";^K-M!?:/EFENEJ*^#/E!>OYIMO^6\\OZ1]'=TQ=3KR_C]61,:WK_BR M@S,JN)G.P\:7Z2@C+1.]!:!3#D,J1:#/A(-E$PTB5[.S@1 MT5-6ML4E) J8HA.$0@C2VFB\]K[B5N=)#DY.AS'70 MV<2^(\-],G SG8>-+]-Y5' SG8>-+]-Y5' SG8>-+]-Y5' SG8>-+]-Y5' S MG8>-+]-Y5' SG8>-+]-Y5' SG8>-+]-Y5' SG0==]W3RYY-[DXSK#O-UJ3O1 M5PN$D&,%&Q,Z70/FJF_754E3HD5AP96OZ6^W3V?:P]'D8>J'=J@O'TS.ZLCJ^-#J&+.SE(L 49T$8]%!5$&##LF) MH(H@O9>J4U;'HZDC]PX]0M'HR_49+3==0Y=T1O/5[ UQ$>G]:)::N='RPZ5V MXYRL%N>S,GF/T* GM"\/OR*&';30],0F6#98-EHW3,9J> MF 3+!LL&R\;I&$U/3()E@V6#9>-TC*8G)L&RP;+!LG$Z1M,3DV#98-E@V3@= MH^F)2;!LL&RP;)R.T?3$)%@V!B ;7'/TV9JCE$H2) A,"JK]J16B\ J\U:BU MT\;Y?+OFR%>R(B&"B-UG@NRZXTD%LHI,PDAG'=VN.=K4:#R[6:+Q>PG2"UJ_ MK+_BVWV7(LEPP$*DOHKT\4LY6:U9K=G)&XI^<%]@UHA^:P1[=)_UZ(+V.@:7 MP5-7%HX%(?D

/KO\>W:%[%N]2;GX"!>5_P7.<9YK@ M:K*HD__"93Z;:#F=**$,SX GM7>C=SFK$^^,[U.R4:*")&J;*6)MLTNU+?;7 MNFB-3CF=;L\NP..GM+!7ZCY>*&[SZD74F]L^P!Q_>,[^DK5U,; MF6WHCO- <8*A"B[HP=SI'_>;8X;[[DZH=_7<[6[W8[ MA8,%C 6,\64!^R!@.D0?O3!@=>Z67;*&J%P%;XPL0?@F3-L")G(UU#PUC]6# MJ>WMZ"1!;E*F2,=BH]N[Z[4=MBL[C59-E=4L82QAC.]8)4SHHC#Y $$JW?E3 M!J(3 :30*I)#:8/:BX3MR0?;5C(6,!8PQG>T B93L34( DW4?#!K%6"0 92T M@J*.0;AX6\",3UK6T.)'F]H?;'J'.;4_FDHQBH1+X0@^F)AZIZ;6.58P5C#& M=ZP*9J),V'45$T%*, X])%<)K$$?@Q91E:TH MBI(N0@ZFN6#H$6(- :)QP?M2R25S6\!:K"@1O8499AI S!&-+D%IFJN6V9NJ0-K=;MQ?:^]7*6NX>K MSO(G^&]<%CYB8.@\/.V(JT?[G1EN#K 97Z8SP\UT/A5\3SP4C-:DI-%"*-* MD5H#9EF@DDTEB.[XS:U0L,MQD?$*BK,9C#+M,[%*T#%[F74EH]*=H>#SC1/] M_<:'_FGC/E]YUS]_<)PW;WO:N&ZGBK:I$'$JXL"6!WK' E8YQI>= M%H:;Z=CX,IU'!3?3>=CX,IU'!3?3>=CX,IU'!3?3>=CX,IU' M!3?3>=CX,IT/7=3XC>VHN:BQ?4^W$+OI7KVHD[QX_7HQOZY8O+QH#^DM+?-L MM7GUZNG%1;=FRI6,0R51P,YVYDO%>F]IDS,%@!".J M U-\ 2Q.@S>(6:ML;=QJ6K7W2L;-BR^OO.4?KMWHW M^+*W,BJXF<[#QI?I/"JXF<[#QI?I/"JXF@:Y(B:3$:-LN#=7;ZV>7].54 MPCW:RW(N@>6-\>TKONRMC INIO.P\64Z'P=NKBD:$)@CB31\%LK%%"")4+O# MPCR@KAF$C-%9\MX'M]5/V.6D?8V056R1AJ<6:3B*X*U#C(K(R+M/JN!(XP3J M6;E)YPY-.CL+AH3-;KMZU@N:K[ S-IY/X3SLKS M^3.\F*WQ?+/S<[/V].S&TM//]*_+V:H-]!=:OIEENEIO_9GRXM5\\RV;I=<] MK;+*J0IV["NMK(B,;W_Q90=G5' SG8>-+].9:SJ9NQRH0ST!:TGYXL5]RD=.IO8=V2X M3P9NIO.P\64ZCPINIO.P\64ZCPINIO.P\64ZCPINIO.P\64ZCPINIO.P\64Z MCPINIO.P\64ZCPINIO.P\64ZCPINIO.@ZYZ^@LU;=_X3=^B[]S?GYO%Z_I;XO5ZNN+H%;MSK='7ZJ&4E-EY+#*H3Y&^E.@_HG+N7OH$(S3H&>W+P^]) MR->C"/\S]^RJ%E[H81M-3TR"98-E@V7C=(RF)R;!LL&RP;)Q.D;3$Y-@V6#9 M8-DX':/IB4FP;+!LL&R M%\L&U[>Q1K![]27WBE3SA:PT$)P38)1&0"DL9-+%IA1B,G4?-=?L7O6,.(?N MY[M+(?8)E%K_!<]QGFF"J\FB3O[OY9PF6DPG2BC#L]%);6KH741RZC,)R20H M>W"%'!@L$M#J"%JV)TK24A=]>R9I+WDE8P9GT+;9QSG :CW8K*TIP@>)6S/) MIB'\ZN7E>K7&>9G-7WTT;:PVK]Z<+YZ_^/'C":/.WE*!WVBYN.%'#VF[3N\L M>\"Q-N-[^LH52Z7@"2%63&!JEA!L<4!2!+1&U%C47I1KO.[21A>_+!MI5,LX"Q@#&^8Q4P5;VM@A)0 M]LT'(R\@QBP@"^TQ8@XV;O7VBHYWS-U$I,I?&LFUR@VW=41R:2!Q5-%-WJ*W(6[E]T+N8F=CP&OGP,B4(#;Y !=M,*+;9^L/5N:V M[>^9X;76/\+&#>ZH_^T,NEIEF\Q6JTLJDW*YG,U?3=9G-+F@Y6Q1.CN=O*'5 MNKW8WK=>SG+W<-59_@3_CDE*N.\&26B#I/8A( MP6055*YW5]L^WSC1WV]\Z)\V[O.5=_WS!\=Y\[:GG=O\U^7M(]EVJ6CS,DQ- MMR%[W)$B:QSCVU]\V649%=Q,YV'CRW0>%=Q,YV'CRW0>%=Q,YV'CRW0>%=Q, MYV'CRW0>%=Q,YV'CRW3F)M_,7>;N*. ^=.-IKE]LW].MN6[Z5"_J)"]>OU[, MKXL3+R_:0WI+RSQ;;5Z]>GIQT2V0BQ8W+[Z\\I9_N':CR[T+ M%M74^H'U,NB=];.Z,;[LK##<3&?&E^D\,KB9SL/&E^D\*KB9SL/&E^D\*KB9 MSL/&E^D\*KB9SL/&E^G,Y8K,7>;N*.#F=HM'*%?OOOLYFZ=:#FT_*/R]7Z=;N4U:^+IZ7,NFO \Y]P M5I[/G^'%;(WGFXU]F[6G9S>6GGZF?UW.5FV@O]#RS2S3U2; GRDO7LTWW_+? M>'Y)>SK93DZUC+S_CQ61\>TKONS@C INIO.P\64Z#D[N"$W)6"W0% MDO,23*@.,-06:& VBI)6RM/MX,0@)AT--I_>63 D6D"3- $YY="3;S&*X>#D M=!G#72N/4 ;Z@M:3\\6*VU .G4WL.S+<)P,WTWG8^#*=1P4WTWG8^#*=1P4W MTWG8^#*=1P4WTWG8^#*=1P4WTWG8^#*=1P4WTWG8^#*=1P4WTWG8^#*=1P4W MTWG0=4]?P>:M._^)._3=^YMS\_L/7E>EJBS1! TBD01C2$$HM4#4T9"O,9-U MM^NJ@E&6"B&X8G7[C#<0*&607LJT?C[/B]?TM\5J]?5%4*MV MY]NC+U5#V:FV RN'^ACI3X'Z)R[+.2E461Y/2QZ;DE51301?*H+!%)L\&@4" M9<9:DK5A:T_<+F6G+(_'DT?N'GJ$LM&7ZS-:;OJ&+NF,YJO9&YJ\PAEW#]V= M9JF9&RT_7&HWSLEJ<3XKD_<(#7I&^_+P>Q+R]2C"_\P]NZJ%%WK81M,3DV#9 M8-E@V3@=H^F)2;!LL&RP;)R.T?3$)%@V6#98-D[':'IB$BP;+!LL&Z=C-#TQ M"98-E@V6C=,QFIZ8!,L&RP;+QND834],@F5C +)QXKWH@HNE*E7!N"K 6)\A M&&D J[!:8[7!Z-M%05*E:!$M)%DR&.414'2/2JH:18Y"E]M%09L:BFN7]5=\NZ=^6DW$?1-?M7?6/.H3OZ[E**?0+%UG_!57 M+R_7JS7.RVS^ZJ-):+5Y]>;L\_S%CQ]//W7VE@K\1LO%#:_\.+//+0,YL?F' MX_NAZ>37[1/[#Q;,0PBFE!7;_UFPIC3!]*XYY=XX"$ED0SFBR'8O@KE>Y'^> M+<[;?5_]\*_+V?K=;FX[ZR;K)NLF^Y^%=%."4KF"R#!!%+!"=3#&G MZH13M^52N"*L]P0V"@^F%@LQ9@^4FS.*A"Y@W;M_N;W#7/FI5WIJ@V+!9,$< MHV"RH_F0*_(I*9>L!&&T:\HI-*#R%;*M.34=K49OM>G823GWY&AN"ZAFW63= M'*-NLJ-Y?+F,0A:AO8+2!!!,2!DBY=3D4E# 8G,H\;92$)NLFZR;KYD!T4X58K+)XLGB M.:P>QUX8RB4AJ.J:@^IC :0FSM9['41T-1/>%N=$*CIK+820FSAC*$W0=?MG MM"DA1BM=VJL_+-]XZVUN9'HX2@FEY363 M/5B;69N/GH/(.KB2*8%Q1%T.0D!4J8FAKM91*CK8K=RMMFT>[U#' MR[;-XQWJ>-FV>;Q#'2_;-H^7%VJ&#.RPQOM^L;;]%],Y;1X>LO[@J\WVUF]_ M]N>^=M3=X,KLS22?XVKUGW^XP%<$\T6A]Y]IU]6]?'U9O\%L7NCM8]!/ZCF] MA3);TF;9_W'CQN7K^9,R6UVE;?O?^YS0>!YN7)Q6(UVWSSDLYQ/7M#3]+B;3?Z]HV//]0&O#UT<GY9-;>]FJ)YY,+7*Z[1JOK,UK1 MY-FB(31?4>D>;=KNXKK]X\?9'.=YUM[^R[H]\;K]PNK13>L?K(4/UCP^[J/; M6'K]MZ/TV8MF+(_Q^6SWYPY\_:,7U-[^G]^8&;KA]0QYNT;PG;'Y80_R 3G\M\M]7D*7%>;EY M#^2.]^#'7Y]-?EF3[/CV[-.Z.Y#9_0Y-^5N)/O9VOVAK/5I,W#G3+<[IFO'S_PS3JJ)6SBK@]U MLE?>0??3G;/0KK1[%5J4L;B\;BGQY.J;I1"/Q!_?%PXW>,_Q8D6/5]0\Y*:T MU]6R-TIPW\Q6LS0[;[KZ^/V[[RBIO?YR\T@Z_<>;?LOU**XR3" M(7YIOR=*W6M/T!T.WT%3]M\08?#BTV<6G]P7%I^^Z=R^!T1^E_#K4_?NIR55 M6BZILX%%_N=N%O(UY];UX]8Q:9@T]R?-L\7KUXLY,X89PXSY.L;\VEROU>7R M'7.&.;-+7="I#Y0'=ZJ#8Q/EP?5\<&RB/+B>#XY-],0'UZ/TZY?CIX=O"7>_ M:.F[V7RR/EM5M,)O=M#Y(*)S*C=GGS9V=:031^+[ MW\@QD.$R>S[#GJ>OVURW9O8P>Y@]//

Y@]//?TUYR8/

GGN8/

F^0<=90)5B,=*M5J4K>2ALHZ#L$ M[&UB+'(![C:$*)9\4#INHU!9UM^[R>=/L+-EX2[6-EY7-):;HAS);TGRR^H8 M;R_R_5!Y U>/\^KFHA/GLEJFBYD_M'UL3NQL9@$-SE'2/Y8?;A+N^HY]HQG& M)8M6*$0L9;#_4B/+03)811TU4M"HMGH&!4PPI3HB'W,Y,((9TI8J9*R,Q#O/ M-:<7:>;-V/;]^[1S/S)$KYO-BW:610J(EG[>Y IB3:[5E==M MW[B)BD2PM1'1*'+#$Y. ,YA'RJ6DDW>\9)->3,HA*@@*%\%-8*L90&T%;*@$ M#\EQHETN'7^>FU;8^TMT?8:% WOZ6ZYV]7:[7'[!2YY@'D.BL MWCRB%PK.?\/.VB/N^:$$;>P$1MFTJ9G:TY)G"(+;V_ZPR6H!D$IFK.'(6#_: M.VKA@LKH2.[^XSCB =:^I :-L0H_>1;8?4<722)>X1XRG[DRU!1G">,Y>% M-2(J(].>4 O;9VII R I^A/0M(CW C0P%YAND_+Q_DN[;UQC(%=4TB1>*B(4 M;+3P$0$<1&1%R(H7"%0L) EVJY)F",)AK!(2,N2V%2!X33)PMU8X@?#6Q*K5 MEJ>Y;U]^'/3= J%_*W."#?Y_L-U]]LB\S2FY$Q_/;1\"'?EE6,Q.X:H'P7RQ MEG@7/0L/13(_-7DQ^B%BG-6[L!0Z[7(!#YHM0;4V-=PI2*G4SD!@@>G0@7)S MVHS;.&FRA =;TK/"9C;G4PCU^B+"O[L^CR/ !&U9J8ZR_.6C>IFP8PKX 0)=5'(8$ M TD+&%6V!XOUUD\!-U*;K338]RZ4$YM7."K;- M*WYD_P0"..Q $, 'V0B\:"S"33"8/B<)P&3 :NQF9Q,N1XW;WF<+;S!C!YUC M^:QE =,.+IR=M%G][Q;CT!Q:F#)P\F0MA+8,U/S;1F9!67"@6W]X1CCK^<-R M%&J+L-)M6<[0^45Y?U4+5W9!J2+;'AU%(/=Y!#:*7T"PM7U9_JPB3E:?%-O= MQ[TTV D(;))X1(IA#0H (+N+$B,F73!!@'J MQ0 *JEV#HQ\&3!&G$>''!9@ MM44POL#.US)M*0"7&E^_+M?G0UZ>]9=KBXOOTP!JAIX^5VI%IJ1"/]) M%',*/!?>(NUP1 0'2JWBE*>M3E[75BV65/)KGDV98E$K]DN5(/@QZA*OY^6+ M97V+I3@Z+T'6X%=95KJ*P#^G/P!D#!([JQ#S\:!]3#IX:-G2"9@.Y*<, M+OU2SL=Q'# ?KLN:F^OLK*@W@];6 5DL#=5LGH!>53Q H,/DHB=',69%Y:"Y M=' =:#/MD5O,^GA^D.6]7Z9QTA=="W32P2V?V7^R'$YQQ9?*NAMZW]+O/?BX M0;V"X11E)M?>G0ZFXZWQ:^=BU'HN?5 '/?7TQAO="D M"W'UKA?G^E3\3P&9+R\1>Y7&\0L:^ .6(M?87QQ-7H%J/AW;TY?YVW4P\BQ- MO!UFM,JLAE^7<+)Z7;D1Q4EX->WZMCQY%K-&?APWB[JOH_I?[CIT?XWZD'<1 MTGZ N=T/ >T*+#YI<<0XN"LHO$QCL9HF+ M6R4Q/&7-)5O&*TWR'$07^^.\VICMEPUSYTPI''=%482GAD*/P\V#%!C:HZQB MH9/XN9NW=J6H7NJIR I+43LF\V*=3\L+5]K4]PZV\SX[\.$UL\&/EL>\3CU@ M>,@]V!)$F\1315$510\IBF@518]4%%V>"T?(@<3J0C(XV,^Z;H[MB\=Y^^O5O#3WXR]]>OWO]'[_^[==WGW+."U&O/C:_ MO/WXYN\?/[Y]_ZYY_>X7^//Z]__W\>W'YOUOS6]OW[U^]^;MZ]^;-^_?_?+V MT^J:/W[]^/??/Y5+WG_X]8_7^8N/%S(P[T6TXWL7[,.E^<$S4IYW)M#I:3?+V=L;@]QXYN! MEP +[,VO/[_]],OKT=D'[^*\^3V?S\X//KOLP\?1,GJZ(HCE(Y?[ZSVH*L6\ M*/#Q]X./!\U_O'[]X> FKRKO<#&SW]E;7!QX#:9SFM.*CX%5RMSR<9=,7\-* M6%"8^DOP;EEFZVAGXQ:08Z#A M#:Q=?K_,*9S&>9O9L%ADZWZ=L-'A1JNQC(#E%(:1+P%M^.VR5AWXQ^BQE[N\&MAC0J!+JDP4+_+]YU$U2N^6T]@;\MKWYQ MH<7J/J!-+LSS\$YO1:C%9\@G%1 T)5$4CZF:@B=CY M609.T;8R@_\"J IZ6"R:Y>LIJ!U9A2$E%RGSYCB6;LE9.6U+[9'IP@'!PZV@ M<67!\>.+MQ_>O_AI2 >XF.N]X2:;SP A^^SO*DXQVP?[W\T;.\T,U/S-SOX$ ME!B:(93QG1X!%:[F"4OX=CG39Z+/?"6.6WI,-Y_'G MA^WM,PO[+!T^7O9X /'<7:I\!8L1QUDUG76+SR#UYLML@-,L$8ZRM6"'$&S. M SB"P8,&O-:5-J5[(8#%8+O,HLORSX/"45RX^;NS>-WPXCB)L\]E;F'A,[7F M-/KAJWP6"]3NI93.A@J\%&:78[\G'2I#AHM07J&9;>>7+F)FHC-"/BJT&L,& MM?YG=VH_P\]N5ES(]B@V/RY)=_G5FD]77-*5/J^Y(3S:?/V/+\B'%S]=.HJ5 M7ICU,WA!ML#62779ZACE85XRN \P]7AA<"^6'[[XJ:A.)? ^A.";LK9EY[OQ M8F5F+FEH\&]O+.E@#?8%2;+X1D"[BY1MP9*Z> A32^WX:#G3?DF!Q4'?G<"N M+8U'(,FCU.==\_/N[#Z\__9_E&A14FP\-QI'=VLQ4I%2K?H)K!5LX; R]Z#TH,7#1&)4ES0].'V<%FEM3+*2Q UO_6 M&WJ2H^SEP:\__?[Z8TF^!+N[[3;O6DWPG!U?L':Y^O-HC_)B JW%DZ(5G0TS MQ6*QP&8U]MBVXU4ZIH6/^R'+HJA0)2^KFXW#2=;LU!XPJ1D:QP,L MS&>+O$_ "8#+ &RC9MKF!R[K&)=Y908$BS1F%=S/L@Y7>'-@]^5&AG@,:M>T MS&\X3389GEV<#*=^O$PF7ID/_S][W]K<-I)L^5<0ONV[=@3$X4-/>^>#QMW3 MU[/=T]ZV[W3LIQM%H$AB# (<%"")\^LW,ZL**%"D)(JD!!#9,=,MDGC4(_-4 M5M;)3)B[&5C+_RI@9VTB*KUKQ%1HP3=Y)Y1>2F9"SW&6V,V"2P&V-T'S(^%[ MGT#2!*ZO(7[Z"AV<>=<3WL[XN 'EXY=!8[X$H8A.GWC1+;V&@ CTQ,.Q* MGW=59L+?BOF"'/:DIG]!NA5RJ[[B5\5">>_^]MM?OK[WKH.\Y_UWB3CX)7ZG MXV9C[9P 036[2J1ZI[>H@7=6A9&EH[?9AB$-5X>P(B!#$;49&@OZX!'%^29" M)<.-L 4J+),D,I!1_"+6[B7-KU;&I5-=(A:+F!8D&U*K>Q_5*1_--]5W$X;_ M/<[^M!,)9\\[A?\CEZ73[QJP/Z")19G[4GD(VJZ_SQRSIV\VOQA$AB<@K^X5 M^<-_+12M8QDF(BBD[P70=/3) MP/"#L0.?T *+0&,#8] 22BAR#,]$,M4K X),Z17-:30H>[^Q$-8O7:8EM#1G MDMB UOU$VYK2O*"E6B8ZD@(7,-.&")L*LI/0ZS*;IT)[U^Z_D+QLU =:YASV M(F4"4&Y@"C1D'N7F13Z2%R/]$#4#,P.L"_@R':-][;[-^'APT+%_@5Q0WA,] M,]HW S9(AF8%7%,Y];7#J1K.*=CX64+OR^34Q'DHLUZH((O&>$929&0M:!^, M]V-1.NJL\SVAB&B<"# ?IK(:45]#=C6,#\T/B82U5<\1L.=(Q+M_7&P<'!Y>=*"'ZOA& GD-GS(K(V!O9E .]3'7O(#">'!^#$ M392EB<[942DT;:3FEI- ;/FYWF&!>3N9:.6GC0H]5-Y%VBHO?[[^\4^?_O&C MR2X2346=U?3??_WER_7*AE'J=?6&XHC_5L#^$W:-0]_1I\31(R)/E\AI%+&" M3A.#1^\Q.J2M1C33,MKKX6Y+[_M,WQ [M2,?G8*T&?STER_T( QX8>(5H> KKK+W,S@Q!8PI8"]+ M 1LQ!:SM%+!&VC.[=7LA,*4A&"EH!(YE?HL1S+0P)F2*?L7C#[T:&=<1K8 F MXJGR$9KE5J^KA/ME*#A9P,Z";J]\ >] M@AO#>6P=/+ TP\:FH+V#WH^9U14NI &C>V4R,_L+ZWLT'E!T%\/ PQ8"G7JN MU4-' W2YMES(GD1?7KR8"9@6*>,-^XHH(2:U-_*]-S_!_@?6[#FL[FGH/.G- M?<;._1/YGG>M= RUP..MROM*/9;AO0Y3;R*T7B+;>[1)8$M&1^0FC(UN]01CV_390-5VK">._F"X5?VS3[3NYV M?(="LD!XHN"^ !, +*PE19P)L,GP+5+)^I& (_;6;Z^'W>S9/7/KV;"1(%4+-;V8O<.Z;[< 7 M& \BQWE_P?]H9P2= /]T)P/*ANO]ADNE=N/B,--V1Q\*A'(1ITOL'^*HWM+H M7^P1$(&?C&.C$I_$?)Q2;W\5N/W'O]9V;8)AFG2+%=JP($%%F1B>PO.3?(9. MB8I;F1K@0 ,)FJW,08<&>?2'Q)*2;5'[PW2..ZG .1 BGU$L$2OT(4PN@UF2 MHO<*I_V_TEO8%F4^8L2/,M#*.+SRS6G<=7$'C71/_FFY21/TPWB?Z+D_T7/- MSY,H)HV-\MH^\A/,(Z'VY]IIR#=:C@*,V*7S6HW^L9S";SHX&@=&\VPR%.2H MT(=5$:+>W"0)TPS.2EZC]"%1H1%$^6+Y+$EC2Q! KF!=O,D[',+ND.2**@'R(NX6P MP)$":$LZ;8[,VR82$(=(=[""H&%TY\$";58<2DAD46%1AB^;Y33*".N,4N Q MJ-LGL#ZVHW,$YW3*### MY=@UFK=[ZX$%.8WL/B 6T=Q=66I31N:HB VZ5QP8:">,^0:X-O .(HTR)'0B MJRK%"WH.\9!?AT7:Y%8Q $6X9D, GY2L/=VU^Y!CCOP@49ZY&&\@C01Z_&J, M "U*]T=L9:#(;AK#*$FDM]_;$=C$M)%)3S,GKUOJ[A1LKA"D[Q<:.,:Z]V84 M*O%7F%B3W)15^/^:R;" 5TN;D[J'63;9K3%?G-;4^E-.C(Y+36.5R\S17&MF MAG*.7ZYN 3?8A3-M<>AS;;EQ);\G&D2,MFP^C,*PHN#KRW"[B_MAU^T*"F48 M7,8J1Q\UMJQVU.)RPN^!!ZR<2-%8\N'*8X8R65[I9)>V#II-0LZ&:K'3OZ#9;''(P44"!>,#,4=^(,A*[_GGJ!+AQ(E_ K40M5YHE4HV*VY<;M'=BR@9,(QJ59H=IKV& XC8\G2^M.56MSC.062+D"#Q0E2>??OO'YQ^] MP95'9@0,3B;]$2P^J4F$&O"ODE,"(\MGY9IC"K7WTDA M8YV?[OYJ G"*#^L!?N8S,A1N,8 C^5]YB:!5?\G %.'F\]XRA$K5@V4(VS+R MFAAYHSFH3M9H>J7]I#\=DXK[24%'%DH M[?U96-]!W1=2YZ'4_#.:<(B;4QO(0C>DH=:]%>1!.K-VNLH5.PJ)C;\\O4U%B-)"I=6Y*=,Z16X\8Q %Z$"89K4T:AQ9XM)H6"D]0 M=<*+&3D//>QEF>4O(7/)Y,- 105U%F7'*]5\2?MG=2CG4"G=^UBUJ[UXU M[1RJ.*627>/5*7V5D7'>N>@T3Q,,*3,;DY4YJ5(>NK=8VYA>:,C0-S#I,!$; M1>AV!CTT%18TEI:..7S*^J6N'D=*,_Y7.P]D+!D!:P"=!V MOST(/T'A7]+Z!\.F-P?9W"5Z%S3W$+OQICG]8*^JX6F* 3 BL3\QMZ4S0N];!8%T0/G?O.04$5 M48T53C)S]!"IU0YC$16=GX6VV6]^-S0!/3I.ZK@U<;[;1(IO/I2X[]RW;'P3 MQEB+G*"4G@NP[H-"V;5/CR@ ^0E%<)@P';N+=,74S*)=Q&IG//N526YIT MM2.JMJ\\![?H?P7)NQ4YED]Y\^L?;]Y[7\KH%!C=7__PO@+:+LS':S3VIA*4 M-XYQ BAM+=QX_?7+F_=,L2J]E#9.Q+'())[&*H(Y=1^-E< C!Q>=S%$0Q824 MG")-C30YF^KV>::7>'W6@YK\KP+3FVO&$$SC8F5:E9E6O1Z79'83C(]7X"/- MD:[>^$N!$2VP;;F)PD+'=)5N+[=L-VZSZ- H76&XPD9]41C'ALBK"!N-QA2M M8QJ(9*FE&X%= 8Y9)#RGU:Z,O M<<6\.M0LO6G.L^^=^^D3PH6@X()R-R+H *Z**$?Z4HY;F-P$5#AE/2B>ROA M=6F>RMNE%2P ^W]UH^,[A$[:2ND<^YB@@0HXU%V144E/*)U,,!K6S-41]#YR M,N*T"#57S[?9#$[$-$G)):?/"JDPE'6[U?(.E/PR?8E.&&#/EC&IPHJU/'-B M]>]YI4HNB,M3,^GFZGXUZ-RO8EDQ*D62I'@PJH*N>8?V$! Y+UAXI1L3B :J6HP M4-JF!NC#&Z';4PF2)AC*7*89\=/P3"<4N2!1T8TT[!SMX=;R;@P($^3C9O'P M*]\0I9W#G'?HWX8&GMB=H6Y^Z^%P][!ZQU^'QW8Z]IP\=]_E1C!8K\-R3OQ) M'?7U'1.PF3FJN5&U6R.6(D1=-]E:E.,XK1@:OB8#XX&^4D5&NK"P$.S7SR&< M[^U.M\I=8=;Y*AF&<[6E\L+^-]8@M >]UL<55Z;%J?MG//HN%_/<<:N;1R7.:O^QBVX/ (!8+%)XSMQ0(KZ! M$F3"^[4@SQWB*-7"H/(F-MP5&_876QGE1UL9Q3>'H91T1!?S_@>:)R47S/?^ M3H68KJGL! CV5V$)M-:+L;P+[P8 (1-)R\MBLM![.#F_=E:>=G^(( M%S]/1[^^ICUG6V*8=>E\Q>/\$J]<:(KCW6Y%C/ER=9$W-5EBD MYJ+/S@'7=8BV!;)8M,GAMCC2KKX)[/=@U3G!;"_: J&(#6@JI69!SV(595LC MG+5>%W9F$*DQ)DPUB:>[2-W-W:BC*AL%\7SE/MX M$SOGGF=31BE]])"5]I-50.BE>4]DR5"4+R+3Q:?,?MTXU>&5F*H;T"&V60"=0/Z2@*1YK=2>%<>\ M,MF:RR B7"_A[0MI(]@UY18=.2=R'N6&.T$+-UI*DG)N(X*4^Z[RU)C474XI ME=9CH71NN-1& HP>Y6\BFA5D2*#5I3,K8=3.=J+TLRKEF;-)&;=B?&RU5EE2$W@0F,R,O,@"2K"K<5\"6&3ED3 M'!E/91CJ"L'&-YIEBN,HS$1!^Z/Z_M)6.Z84IO24/U$V.DJR0WBA#\U XDW MB*')H,%K:Y=69YU14@>4&7H1#HIQDCD,0R@N'R^]16\<":[=0= KYA'[E-%.8=!0[[Z[U7:_M_*%;^) M$MI68-F=V;.V0HE- J"J,"_8NQD=>)B'Y[#O,!H!1"*3,TS9@UD>4M7(:-.C MTTT4U39DNAB+7>):W."TY$M'481[3BH ;))R&HN MI0 -LP5VO.?ZB!?335! 'A&-?4-1TWM*?81KB704F6>N!-C W!R4QG:\+,^. M=9EHL_>NIQLGKE;)IM,L8==G:6QZ MI8M1WQLG&Z!<145N''"7(@A[M]7!HZSGY)NFEIC\MV2?(]GO_L:@A=%0 56:= $>6[G#J<9?,#7!BLFY#X>WZ9>\/FH89U#(\OEEZU&IG0 MNF69!*ER>^IR=R:-0[CNG*1GHMQUJPJJD&'>8 (7+&]KL_V;.;%DF@)Y@Y$K MM>0GBL+]RG045="'3M92)J:]0?LW=G.[@-FKZ[/9AE&*&6JN7-J2 M,K$6>*$$!:FFY9<@8;$M^A;"9EQDC=PC=T>#;5@+>KR=+ LK6>YOT(K17GBD MO][?EI&]9G,<6:''!]75#!]@GE5R;X@29LS[.D%Q37VH]7J$KIWU[5I1ERIE M^VHK(L,I2NQ1>)FGP3?Q^_:XWE]A-#I#5=*9HCL?#%/,\;( $Q<_E[D/G6ST M&'@SS6?6=62J3)KZSU44D"U2Y)M$@S:]FC:EW3RAM=-;G=Y_K:8[F?:=M'5F MKP3 <8+,S/O1F&LJS%KQ,35BW9()"O;,>"F^TYPD!QBV9(Z1K?5?T;8QG-6W> M7%U\Q\0O$A& ;AGTWU:I1!UOK!%&O:Y:R335AVB3B8LB$>J2DN<7EA?H%E35 M(^HH4DLZM0Z9T-RXI0/!4IG1\3..0AO3YP2R5^_4>&7@3T,1F35+B?D*VZ:AI">8%;^$(0U16NDPXVJ9!5\W5Y9T;GRB"<&8I&D. MUI!.EHJ\MK*HDTE5X%-73"_HH,GXR,JD5RFY1BQ^ZC"+BF)IS$0;5:+9%O0F M_4V2W@B;(E"O#&0EVGRJ902H]KC4(@#J17^='+GWD7C-FL+>\XKU9J)QK489 M 5;*!(!Z[_"HXSU[UYN+VW]0O>GZ!@@$/:M2=)CJ9)I/7J;4,Z8/&?]U6H?V M<.D:9S5MLJ46M?&R.8<758Z,E]K7:02LEKX<$9."U_4-JO+3U9/^U1CK99 5 M[$=@,(KYQ\KIK1OC7FZ9B6Y:L"D [SB]D^JCDX8EEIOE])J%-3'S*E?:Z1<8HJA+?_0Y.9TB$'4:CW,]DGRSC >T5^E3U$I12(6@K5Y>/3= MP=.>.L>Z.M7'KS]_^4U3IVM9H?Q:WOWJE6F5QC,- J%L;D103-!"98R40$NG M4S.LK!.FJYQIU*NMBK@E(F>,-I8Q=XYQZ]C=4*6UM3;YN)?UZQ#JU_>698FY ME9TFP!1]4YY"Z=H%2(^SGJHJ?8.S06-SQ_&*E%E?\*P6#QO9LFDNL-R?+=H3 M1M9D!2'/,!\)V3%5"+B]&'-SZ61(^G 1-S6UAVF3@(X8M5WA1$+ M@N_F6);V=XG2IDO98%X*7V\I+#,JD]/";)7+A<#LO9&7 E924)*:*?!39W\W M@E$/CUY9M59*BY@J%=HI2)OH6ZR'9^-(R@"FLL9,K?KVO>6N*N<>E@NH+&/B M0HG["JHFE$B1K31_5'-LV"#.6D)?\C78Q\%N0YO9.EROLM]UK-V&@+R5XN=U M#7-RSE(62-=Q^2YZ7T_&7:&('@5C(J=9! )&(3:N&\-&C=:]Q.\B\U151E.X8=94)C5^'#V=^MC'>'JH&+OV5L/;X'7D4"U%2]?LL'F;;)%W M;R(-?MC*AN4NR<3Q^C:RQ;4=].O-9Z72("+(HXVEB1O!W/B5A>-*9NFQ69], MV9P]80S"_4!)YF0P)^/%.1GGS,EH.R=C;X8$7=[,L(2U 0C>B?=MAD6M?DVQ M3A** @@JS@Y2> OVD! M2!K=R?"C[M.@W^_UW]H; B0)+)3\H-"D@'7%3D=&0T?/?H/OAP:4FG@3J4B[ MWS[8^\U%<%58BB.][G38&PS?NDIB!E1KR9\VW#;HG3[GKF?<\IQ[&GO+H'?V M0L/&\].@^?G??\JS524U:]8E@-U8!-^G% 1Y8J!S0O]\!),VU$OD![U0XA?K M ?6^?M_(C+(1&:#6^+T.NM]C./7F-?V;70!;PES^_ M&9R^>;B?I5UCC?<%U8.,0L\NPDV8]N>8!9NCV7"%UM4H/7E_A7Z>O#PPCEHC M^Z-&C.2>I(QAB6%I!U@Z9U1:W2GW5U(;,_(\5T>.K;.L-0]IS8BUIEWK]>-2 M^O*+W#YE\AUQB4P$!U)#J9QX5([M%,=*Q M?<"*LXWB?*G5FL_JR4Q8C5B-6(UX_6'%8<7A]:=ADO7 AI5.^>_O6 ,8@DFP MUQTK#,]KL#V>((&/) /[L$_O\LLS6PX-1&N%^) ])\I%$Q8<[FX;N\N"S=T] MRNZR8'-WV>XXUFD]JNYNOR%Y\ CM_M[#C>&B)ZYM^",[%)<]3 ]QG]I_("BL M*1N8+SKNYS&!>\K8' >XK'EDDC:KN_7IWM3/'_8XI\U EAW$_,(_'0S:/.?[ MD^963'7'-+ICL[N+(H]ZK=;CIV'WVZ.;\HXI-"_16VOV\,(?7CS*R6WRI'<, MQ3NFTAV;W1TT^?*J]RA+N,DSO<,:O>=C5/9:;*HC2*ELV6OQ7*UZ+KGY.!!V M*V),.S%XZ%^L%&@YD+B49)AC%IAFB ,#!@/&X0#CO'=U['C!SA<&#@:./0/' M:*]NFX8B!UL:#!@,&/L!C$&_=W'L>/&B+J1=B"]G^W AG;70A?2-BEP_,42$ M'4D-ZF['UN*=D-8?C,YYKELSUZS)QSR[.VERO]=O\U2SZX4UFC7:=9OT_;/3 M2Y[KULPU:_(QSRZOS4W@NW0E;:9[G!W6;"Y MNT?971;L#G27,PIP1@$^4F5GSV[.GH%_<<5NV_;,-6OR,<_N3II\WFMUN#$? MJ;)<:[(2Q#_^)B?T%O/->LR3R[KY/EY[37:MIB#\E./ZCFM)9L!@P#AD!H']I69L*%ZPSX6!@X%CS\!QZH^NV-)@P&# 8,!X MVM'-Z1Y/;AJ*%YQ!H.DN))U!(*A3^=FAQ*C-J+T!M?W3T^&QXS;;>8P8C!C[ M0HQA[^B3V+)+B9&#D6/_Q40&YT>?SY9M#48,1HS](,;E)>>_;@HM:;@/6M*P MR;0D>MNM'K]Q&H<;)^/G+%7*6V0I?.V]B^'#>W8QM8@)V+$E>@< ?G?JC_H= M8'WN4W^;,>FLTJS2&U1ZG_Z;QFKT6U9I5NDVS>Y.U3Y&%_O;)_%4LR+S[+Y2 M^'-G"ZGOF1_3E:25ORUD)O(HF7KR;B$3)16GK7RHG\V ",X5Q=UEP>:9[G!W M6;"YNT?971;L#G27$T*\R.[F=ZFDR(*9)Y+0"^6-C-/%''[BT]86.078_?-D M]X]_>KZ_*JP\U2U93'AV&SF[N\5"=N&(]>BFG!6:%7K#RGPU;/7)3,>FFA7Y MF&=W!T4^[XW:/-'-.6!EE\6F')9QC,>QZ+& MWZ7>#C+_HH6Z1B#Z=.S49ZV MFQS>L:EF13[FV=U%D4>]5OL=V5_!"LT*[6YS_-&PU75T.C;5K,C'/+N[K,S] MSJ[,S+%X$8?%SS*1F8C)82%"N"I2.5+*;SAM(B"&.=.OT!.Q48N#N*' /^O[Y1?_8H9M-/48,1HQ](<;9'OG,#04,=BLQ&0[,>]]+).>P;9/V,% ^.6"5P\[;,\^LQ<<\NSMH<;\W;/-$,V6$]9GU MN>:2Z'? RE_NB"VI%L?ICO@MG\F,?1$,DIT! MR:M6>VP[-L^LQ<<\NSOY(J[:/-'LBV!]9GVN':7N+\:UL?K,K@C6YS;-[FZN MB"X<%C S8G\B4P5M% E\2Y$_(I?0ZV*LHC 2V9)=$AR)QY%XZP%W>/R1NVQE M,7 P<.P=./98EKC5P,'A*(P1 MBM+$FZ09.RC8U\R^YJ<<;Y]RX3.VKA@X&#BVYL4P<+"OA9&#D6-[?PWS8MCD M8.!@X-@Z:(JIN,R+:1POYN\R]^)4L9MI3\HX[ U1&\.T&,?R-<'[:@Y)7LP.-%D,'!;,'6 0@[H+J (&R, M'(P]=#7:7^&AEF,)0TD'H(2-D?URET?#.'S M*SM]5EKW4&OTI?BJ#U$.K0@VCM+O\D8FA;1#U<@V>LY$UN;+]=>=]LY&H[7S:D&P:@#^D-Y4)UL>67EID7J8GS8L2+[]- MH2V9%'/E_>=_7 X'@X_>ERP-BR O+Q-)Z'V5V4T42/M=[]Y%D?) VZ,;&>K4 M3OE,>DJ JJ<3]$:+S,LS$7R7F:>6*I?P.GQL ,.2SJ%S\&K2\, 'P$]$0M9!!-H@#?DR@14"UP>HG;%$#E M^A%!,W*I\OH=."F8_"K(H@6VV[20%I%%%BG; M1KQKGH8RIH?-H=LPPR()]!RI8K%(<6S,6M'TL]^L'@ @)7(=#GN#X26^[PYU!QMGU 'T M\^[CFS]MN&_0.QT^XZYGW#+H]5_J5=RGW?K4?Z%7O52'SH:'Z- #9W:7VU.] MURZ%][7]T>V:-9[6V&B7>S(Q*UO_P)NU;0[8]M6Y0Y^O@2S@+W]^,SA]\W _ MMZ(%O-JT[_,T]MLLDQ+6^R2?*; %0HEFV +LH3%84:.^_SQY>0I=H DCN2\OL/]Q"PM%!BCZE'W6WO&Z"!X-V2X6ZT=VW^\>BQ#6B<- M(-::A[3FT3I'K#6L-:PUM<-E[]-,)%/)FL-[4-:3S7KREO5D+UM-KDSZ8+8# M/$EBSOES#]I??;I?@L+5>G+%A7\Z:'5JIX[E_&&-9HU^>-*'%_[PHM5UV%FE M6:59I6L/$ [)$X\VT/>Q+,&ITW<&)>3YB*V M(<&,UOM1O\:D%.'L1 >![D'?'QRLBGR#DHOPII !A 'D$"ZEOG]V>BCCCP&$ M 80!Y+@!Y-VP[Y\.AL>/(.QGZB9N<#+$O<+%^>%\3>T#BP>]36N3(1XRN5ZM M5SNFUG/#X.BIH0S23&#*M \%-#^+HT3N(PO?2L:\UTA*N,]QVVTPOLVD!P.= M2:$H#^%B)9V@3@$HX?\/Y\#Q,&N$[PE%^0-%!K_GZ9/O'/G>+=RZR"(8)VB^ M%\*KX7Y1M2V=>)?#MY0J$1XJYFF1Y/CEKW^8-L-SX1&8;_ FRI?>##Z,I4P\ M$0(2* D/C:!A00[7C9EDXF2 M.=X%LQ,EU6!=?_WRC $2,+B8BQ!;/Y9Y3HV(@C(UH6G0/+KS @KZ5,\>UM4L M@JT3[A<#A96,DVT?M_V"@EI)Q_EBH% !@E89F]3T7?1^!1N&5V^M1C[W=:1] M[R)X=)S>PO<;TH>:0=@&*J!]@\OUV 6P$P$^&?!RD"&/YO@V^,M!*+PTNI\< M-(QNO" 62OWYS4),Y4F2AM).)P@0_FSDY]\DO' MQ3SY&$9J 4#X 7_]N!!A"(UP3N8B+33V* L^&D&UKZ,;3V"(/RY2%=&3,T!6 M &7IYBTLS;"[0]M:6T2:[T%S[IOX+]^WE\&(8;W ")\F103,+T+6DN-B1YAPNU) M1A-.TV#6MZ5?;D)N19:))(=O,CF7841VGS:2P:3'C-JQ:<4[)6*1T2/':5(H M^D,F$OH%?U%2[CP-OIMLVV@>R$31X][WO"\K#Z-TW?41, G(X>'YS-.+IA>+ M,:8]QUO(QKF5<:R-#WR(R/,L&A3GJ?,+_GUUDF8NE M=R-@ULB$!0F.TA Z>*+_HCF+7!43DXFTVU5,3 ^V;:4:1NPJ*]%F]3<76$6I ME*K<\<+&TO>F,IU")V?H(=/?E-GTYS*?I:$/5O 4E#X*E'V954?[&<69-(&T M!7N=I;$G)[ ]R)6100&:)3!7/">T?\GD[_WJGR-,!,_)[3FY_:MGD3ZBA&F= M22S(R>TYN3TGM^?D]@T<(TZD^B)PQ\GM.4TW:PTGMV>M8:TYM-9P@[*> M<'+[E]IJT83N^BP*>7O?T%L#=7?3F[_?YDAK/; M3? ^]=F'KD>(GKBKFXG>DA3_4Y/#M#[^<$$F0SFQ\'V8XIV#8W] M47]_91(;.^G[5.1F3#KK-NOV(Q4,_='%_AP[QVQX-V.J6:-9HQ]9K2_\\\M6 MQTBR#^7X%+EC,+U32=#A16]_3-[FZN_KDVF.WZVQA1<#L_"CQHBI9(I-.Q6/ M0?;I+HUAKP,VTEMV:;!*MVEV=TKWU!NT>::?J-%'-^4'3BS9Z?'@,>B@H[7<#;UW9V*[H_46)Z! M",&[W.*05)JN]67/=YOZWXK,U#35+5SOY=A. F@.A)?(*=7/]7 O^?:>6 A/ M5]J%"] T?;O5.T9=JU39'(GY0WHS$5:S6Y.>[>3$4?6BK&8:@8@$!#^ZM+H5 MP1C^&RL/]!8+7 I=A!%O"E)8I;P 5BH!+;!5F^&A5/K1PU]G4H2L[M7DE9KW M[,D;>3'<)*NI0X@V&.N6%=4U:Y<>H'%ZBQ5#"[7UG/GP<%H YM$=RH5YC04L M4^6TK-)54=THVX<1Y$;7[OY=*BFR8&8*V\*DI%1?NNM5AC>-BR?OL,RU M5+: =[U^=U4R6\X7<;H$?*A*9F\JEVV?2>_*,P$O*[]R2H&C4,L$QDO*3*'] M <(\-\*_OJU.)6R\'W8'40)/\^U%=(-,9B(!Q\Z#"-LFXBK'MN" MW=ASHVW!#-$-^H;]21-\Z:* I@B\'I]>::$BW'Q*L\W2I=))#F @JU9QN6,N M!\Q]JO6)2QQSB>,'; \N+[4/!RB7..82QUSBF$L<-W",#GS@PW GN<0Q%VME MK7FNUG")8]8:UIJMM(9+'/,>E/6$2QR_U%:32QQO'M G'(]UG"6X+2.ZH7F7 M.%_;8)SSPY5S*Q! M\,&)3KH)&IPL=K\)4T:]_64G;#E8K(_XYQBP>S%@&UFL)6WVE:+"1)YGT;C0 M)%D3>*"Y]R5K/DV\6(P=GF[5F8HYG$Z\'_J]H0>C%$=I8H(,]),68IFE<6SX MO2M7VF@ !8.2$<587Y;)()TF, DP7D6&[=BBCU54@FE!EDZD4IJI;&,8W.8, MRN:LQ A09 !%%! '.TJ@NQ1=H7K>X^QOBMQ:'P,&S9+> #1@NU"M^U-_WAMM M&^WEH7A&226>>*O3S(W2JH<,7OK,6,9(E8$NPIL4B1Y4&!5\AA/RX0S4*IT[ MC&Z\(!9*_?G- MIZDJ2AM(H'JHX_&TW_-\',W8>3T<=)+.].=# *O!#)U\4\ M^1A&:A&+Y0?\]>-"A"CMCJL_TNIM_=_PT4"*?1W=> *]_:@C@.#)-O;&99J6 M&']W:"#?XFQ@#QAWWWYX^;Z]#)H/Z]GA0<;,OU$@9^5)B6E]E,11 LW(168" M >H_@,#HKTE^]7&)F$#G/HCX5BR5H2.[HFR%DT:0)-,1[A4A;8@L/MDX/X@D MEK/3Y:BMKQ*6-%C($,6A#]\E+FM=#]E:.RBO'*\%SS>!4%6+\-.X4 82M76 M8%BG59HD,G;#K^(E-.3AGE5Q6;B&PP*:!A$UXC;*9W4+:2)-I67JK?X%AA=6/0L!8J4(-@J8EA3QP:QC3DAL =AX9QD MK#8>&L=:PUG!H M6-.$J0M[4-83#@WCT+"7#@U[[ R.*9;'0+%D7O9!N)9#_W2/E: ;R[7DN [& M#\:/ ^#'N3]ZW.O&^,'XP?C!^+'NS&?D7PTNCQ] .#*LF[#!D6%[18OS8:_/ M8,&185M%ACW"VFU<6!@6>8D447ZQ;="1,,H]K.EMHL!&O=,J"FPNH@0>Y_"= M+95XE8"L%C*()E$ 8Q)&-U%8B-@+8*+2.;Q4!$%:8%T9$PHF13!#(G24AK5( MLVH U\>:K;[4EHJIZ,K8"9ZX)*UL3V#8X8&!;S_N%WFO8 MY,30?I1]KH<.?K:BE$F<%7RQE<.>MYX5;ZGB#P>Q0;LNM@YB;^ MVJ::)JB>]SGW1*Q2VVB"NUA.1>P[E7[T0^[%DOC0""PTA"$BM.[9MBUTR3(" M0=T\+-CUKT)D.58OPALB- 438:H,I1-8(O"!96A,!.]VX96B34PE-*>L$%<% MXC )[E.]3QSZP:$?3+OAT \._6BA C4(EIH8UL"A'TPS; C<<>@'D]A9:SCT M@[6&M89#/YHF3%W8@[*><.@'AWZ\=.C'DP['F$AU#$0JYE\>B+]]<<5U@9B_ MS?C!^/$<_!@,_-,!%P9B &$ 80!Y%J7[U#\?="""C - N@D;' "R7[3H]Q@L M. !DNP"0Z1.8P@V* A%>DB:9#(J,8A=T.(<)_*@"+:!?U>/QT=BF6^E-BAB? M.T]!XC$"HAZ/ ,.\$%'HC45,C-YB 8\"((!!$6ZEF*^F@L_U%#I%2?$IFD.4 M7&?H>KZTO&21Y&7HQN;(C4'OK&Q]6:-&T3/Q(43-WF^.7HF/B6IY?NV7^DQ KCO]&Q$I]Q29,JQT(,Z5QZ[\PTO_>] M1.8K0]5B>OKHXGFTYQ>C"?=/3U^,R\V=VHVA?MJO_FDN]?QY;/7^Z97S#S/7 M6W(:VAG6 #/7F;G.S'5FKC=PC)@EQ9>#Q/"[9H,^)QP_ M.VV&8#".,(Z\4 C,:'C\,/)B5@CO5YH %?)?170C8IGD3N)FO,4F>X9;BRS;GBQ]JLG.29I["@8" MBP2().]YJVU:^]*MN,U$?Q>+19;>17.1(\FY7CX WI! U_7W3ID#>.5"!DC> MCI=.PVPCMF6'^PX'W^3;QL'&A-LY/!K_,G47*-MU.I]'.='@,=FVG91/^HJ_ MBH#(N[XGXA0:H9GR51V$4(YA!)4J-*O=T.)9AZ M<0S4"V9I'88J?G9^_ P,YHHS>C!Z' ]1B-&#T8/1@]&C^>@Q[O+_O&C!RTJ#"[^;,;VWS2U=Q].1A\GL;P[":,,.>%I M@K378IY\#".UB,7R _[Z<2'"$%[M.%DC/:#6\P@?S23:U]&-)S Z'Q>IBNC) ME/ \NI$NQZ_4J[M#*\\67MD]2-5]S'[YOKV,_@RO:M ",F;^C0(Y*WW4IO51 M$D<)-",7F:%@UW\ @=%?D_QJ1[680.<^B/A6+)4A@KJB;(631I DTQ'N%2%M MB"P^V2 ZB"26L[/_. 6Z_'4#%3:-P^]4&H'J)_RF$1=@WCOQ_@YBY_VJP?RG M36#^R:E#\(0;1BNXW.8 AT;SYAM+@'\F9_[8XAH:.]C-F9\&<8>/Z)B\,W02 M#FFX-W2T0'-$P[%$-!S1J'8&E-"Y];J)T74'BT#T/7D7 M@'7I5+[DJ$1FP&\I4M=S4,U<,=*Q?<"*LXWB?%E7;YC5B-6(U8C7'U8<5AQ> M?QHJ6=O',1Y@Q]J^.,;?M8A]V*=WN34\WR<#43/(JZ^QX'!WV]A=%FSN[E%V MEP6;N\MVQ[%.ZU%U]^")5=R &GKBHC[U/X#$3I-V9HU&;,=<=4NF.SNX,F7USU'J4@ M-7FF=Z@EU>HI[YA"\QJ]M69?]OVKX46;)[UC*-XQE>[8[.ZR1E_V]I<7J+'@ M_6"]QSV=H[+;8OW8?Y79310\>K3/;HNG)=!Y.KOY.!!V*V9,2S'8[Y\/7D)< M.+%C)PPN!HPC!XQAO[>_S5=#\8*=+PP<#!S[!HZA?WGQ:#!UVZU&#$:, M?2'&'OU##<6+%_4A[4)].=N'#^FLA3ZD;VDNXJ<&B; GJ4'=[=A:O$MYCU-_ M<-;J\_*.S35K\C'/[@Z:3+EFVSS5['MAC6:-KFGTR+_L[^^,AB>;59EGEQ?G MQGLK.', /.=3JG(G205G$'BPG\U "([DX^ZR8/-,=[B[+-CIW/I#R\NCSU0 MIV-+,@,& \;A OM.>_MSC#84+]CGPL#!P+'_' *G>\S/W%#H8%.#$8,18T^( M,>!T19Q#X+5]2#J'0%#G\K-'B5&;47OMF)T._:O!T>=^83N/$8,18T\%9 M[_S8 8-]2HP?30P;8&(P8CQIX08\@^I:;PDH;[X"4-F\Q+ MHK?=ZO$;IW&X<3)^SE*EO$66PM?>NQ@^O&<74XNH@!U;HG< X'>7_L59JTO M/0U>]ZF_S9AT5FE6Z?4JO5?_36,U^BVK-*MTFV9WI])BYX,SGNK63#4K\C'/ M[BZ*W-E2ZGNFQW0E:>5O"YF)/$JFGKQ;R$1)Q6DK'^IG,Q"":8[ MW%T6;.[N47:7!;L#W>6$$"^RN_E=*BFR8.:))/1">2/C=#&'G_BPM45. ?;^ M/)F+[Y^>.R)E_,6@U9Z)C4\V* M?,RSNXLB]UK-DVC. 2N[+#;EL(QC/(Y%CP6\];O$PUGV5[1(QQA,GSK7Y_[E MJ-7[G(Y--2OR,<_N+JF;NELLN=53S@K-"KT^;M:_O&QUU%;'IIH5^9AG=Q=% M9G\%4RP.Z:_X628R$S'Y*T0(5T4J1T;Y#2=-Y+0DG)9DP_GNE3^ZV%]1LX8F M)NG8*LV(P8AQN'.GY48.!@XMHTT/O?/S[@2!R,&(P8CQM,0XY2]2DUA*W$ECG(R?L%"'),L MG5M74YJPBZE-#,&.K=&[Y.T?7?FG_6&;)YMK<;!.LTZ[.CT8G/7V1R1LK$IS M,0[6Z5;-[H[K=+_=>=QXG6:=9IVNZ?1%=VMF'9PQ\QQ71G-\%9L&\S,*NE2Y MI;[X7B(Y]$)3+6:-;H-LWN3DOT50<< MC:S0K-!MFMW=EN@.' ;NRR6Q)=WB.%T2/XLHT6R),%*+5&&$SL2+DANI<%9H5>D-TVR5/=&LFFM7XF&=W!S7N[S%PI%W+,A,GGB4PO^4S MF7E1$J1SZ;TS[(GW3)]HF^8P1#Y]Z])J3V[')IK5^)AG=R=+IP,GK.R 8'UN MT^SN>+3)5@@HD1G#6(LP9M";@7YYR@D*TL M!@X&CFVW7GLDM[8:.#A&A9&#D6.;4/W1T2$4 MIYL]4&,Y23-I23&YN.-*.JWRW+*/_NGVV[G?O^B FY[-,];I-LWN3KD'^F?= MS9_6ZEEGG6:=WK!.7_I7HU9'Z/ ZS3K-.KV2YK0#C#[&]K MUVKD8.!@X&#@V,;D8"HN\V(:QXOYN\R].%7L9MJ3,@Y[0]3&,"W&L7Q-\'Z: M,OYP,!1?/Q#MQ_'1N3^ZV%^9G@<'K?E@SE9@!Z#DE>S 8T600?]\C^>#+0<0 M=D!U 4'8&#F0,7+E#P:'BK=H'98PE'0 2M@8V3=7Z5"Y)5J''P][IN"_ CI" M?SZA_8,A?'YZ%\ZM,VF_;I^5]CW4'GTIONI#E$,K@HWC]+N\D4DA[6 ULHV> M,Y4X8S1WZ]QXHLA3*[C8TBB9HCSAY2>Q6*9%#D^^D^%'_99!O]_KO[4W0'=C ML5#R@Y(+D8E]5(?.AH?HT ,G M$9?;$UC70N!];7_4"+4+PIJ5YW)/"V=EP1S8!-WFV&!?G3OTJ0'( O[RYS># MTS:.^_SQQ>BY7X9"JO$]Q?18AK7G4C\U:PUK#6E,[,?,^S40RE:PYO 5E/=FL)V]93_:RU>2" MBP^&<(=%P,45CR_3P3YY*:T_,1Y>^/TK+K38GKEFE6:5?J1$?-^_&NZ/!<(J MS2K-*OW*O*ZSD7\YZD 6JGUR/MG>9IQNC *?[S-(I+GJN[80,B>1>Y;,?)79 M310\ZN1B1.0L#!W-PG#A]\\/%;O;F#0,'5MD&3 8, [G[1SZEQ>/TGD8,1@Q M&#$8,71X_YE_>;"8W,9 !D?D,G8P=NS=Z7/5._KMRVAR1Q9PW. M$;=IZ+^EN8B]K![DR\ZDW=2O,?D3.!7+0:![=.H/SCJ0B86WB@P@#" ' )!! M?^1?]CN06)(1A!&$$>0PNT?__/10%9$:A"#L>V(H>5WOT]$BR,7!_$_MPX\' M/5!KL\&YGI[3WMEH]/8!=\^6">)JO?IGH?)HLGS&U-\+F:.GAC)(,Y%':?*A M@.9G<93(;?*R/1(3M<:9U,IQVVTPOLVD!P.=2:&D%R7>HCXX5/DSAVN2A]/E M>)A@PO>$\H)TOA 9_)ZG3[UQY'NW<.""^&VT75LG3B78S>>I0$ M17IBGA9)CE_^^H=I,3P7'B&"/+J)\J4W@P]C*1-/A( #2L)#(VA7D,-UXZ47 MP)"GH@8[DLG$R5SO OF)DJJH;K^^F7[ MX1$PLJJ(J?%CF>?4A@@3_,'CP[(]\^C."R@Z5#UW4'MM%^P7 P1#461 6 <( MJCXX+P4(%1AH?8'+)EDZ]]Y%[U=PX7P#+H!*1Z#[!A@;WD7WVC X?VL1X=D]-H^&9^M6R03D0\H, MVPK3@ZVWS5;I)+^%-]A)4:NZ'D8W7A +I?[\9B&F\B1)0VGG&*0*?S9"]6^2 MZ+L/)Z./DUC>G811!@. *A;@J"0?PT@M !L_X*\?%R(,H1'.\5VD)=\%' M([WV=73C"73[XR)5$3TY [ %G)9NSL/2+KL[M/&U19CZ'M3IOLW_\GU[&> 8 M]6NF*%>$=*&R.*3CPKT LYVX^9)[C?O7/$>8\YCS.G,?YU3.F'E%RH,XDT>(\SIS' M^0!"UB!4:F*.8L[C_$IPQSD#.8\S9Z1EK>$\SJPUK#4OK369\S@?4UXYSA"YM9B/3OWS$>=Q;L]Y;8C(B=*./%': MI3^\.%2@>V,2I75LD67 8, X9![GTSU6K6/$:((\,&(P8APPC_.I/QPIW M]LXP4#!0[)8T9]0[>LN"DS8WW&>DDS8']?A:1NW]J&%CTIUQYL2#0/CIT+\: M[,]+W]C$9[P_9 !A #D @%R=^X/+!WND>LAHB?NZG:BAS35[_3D$+V?'TSGQF!^''P_)FF[ M:'SI7YQ='/^D"LS7/.+AO6:-;H&K'GW!]=<$@5V]V- MZF['<'H7!1X.SCBFZD78-,?OU]C"C>$M9(8:(Z:2.3;M5#P&V:>#[%EO?\=1 MC<78M^S38)5NT^SNXLKH/9J9MG,P09@>F D6CFASX'I<15UCL2N;%,*4Q MX$T,"Q9.5*&>(2QF(9U'=PAZ9LFR@*A?6A5PK>/8BFCY9E6=IFE8WGK]]0OA MWZV,8RWX-^^]:(ZK*:R$2:YPR4:)T_6Q=:OL4-#W4L%<@ZR9;&5:.B)(@+>B2^(*"JZ?3:G"R'32JS-_V@RP_ _]Q"8?2E M^*K'Z@/_+I4463"CR0EQ*M,%R@07!.:"N=RG6I^X"# 7 7[ $N(*3/OP$'(1 M8"X"?$"78P-0J8D%;KD(\*L?B##:22X"S.5,66N>JS5(LYG=A"N^:E_>CHX_@1%S+AD M_&#\. !^G/D7@PYD0V3\8/Q@_#A$^.K 'U[L+V]/8P&$,X%T$S8XG>I^@]V' M>XR-;3E8K ^)?[4HJ?,Z?;51<5+9!B^1)^\6,E'PS%>)G!)YGD7C0K-D#7]< M1S65].8T\6(QIG9K\G+5%!M]/QC ; M(0T' %NE9$-JABK((L6]2>)Q2)+[V"( M9N\A94<4!#0^F@BBO 8C'K]K<)^[DO+6>]LR\ A#^4Y2BIYQCN= M1FX4;STH\,[G!0A&JHQP$-ZD2'00 PP)/D)/#='XG5%BGOQ*A7B0/".NT(WO M$N,1FA,'QOQ\YK)WO4_,SV=^/I,CF)_/_/SVZ4^#4*F)W'/FYS,7K"%HQ_Q\ M9AJSUC _G[6&M8;Y^4T3IBYL05E/F)_/_/R7YN<_> #"+)X@=)=S M_W*TO_HYC:6[,+F6\8/QXP#X<>5?7NZOW"WC1S,$@O&#\>.%Z+8CO[_'>MF- M!1 FYW<3-IBN&"P:28Z>;L,'6Y],$,J-3+,51I$].-ME,^0ZA]$DRB P0BCFR@L M1.P%,$/I'-XI DI$KBS]7HI@9A*<][P_I"=BE5(R^RUX]N<5SQXF&9Y'Q/8Y M7%%61<'R*B:?O(T?,#.R^@R;[]U<+3!^8"JK%.H];ZT'T#3H,;;]L+\]V]X5 M@*NMJ?;-X6:#,'A!#-+RYS<+&)N3) VEO1PT%W\V[?LWH<;=AY/1QTDL[TYT M/GZ8'&12%_/D8QBI12R6'_#7CPL18F2)X[B/=*.L-QL^&H2PKZ,;3V#,/NJ: M"?!D6YS I8V6D'UW:%S>PM._AYFY;PZ\?-]>1@9']50@(&/FWRB0L_+ MD U4ZD3E(C.L_OH/(##Z:Y)???@A)M"Y#R*^%4MEN,6N*%OAI!$DR72$>T5( M&R*+3[:U#R*)Y>QT/-#F9YG RA/3*B-"N"I2>492P2$O'!["?:KUB4->..2% M^48<\L(A+^W3GP:A4A/#.3CDA>F5#4$[#GEA\CYK#8>\L-:PUG#(2].$J0M; M4-83#GGAD)>7#GEYTE$$$\B.@4#&O-.#,,D&5_[HXM&]<_NI9$Q<9P!A #D M@(P&?O^L XFB&4 80!A #L%E'PS\\PMFLW/HRY'B!H>^[#?TY:+7@2I8'/JR MU]"7Z49'49%1Q(>X%5FH M<$!@J!(=N:!#8[#]56NQI1Z PR4< L1?)79311([WJ:24EE#^AF4;U?9/D2 MQR:46"]B#%]-BHRJ:^ 6^]C[[WF=H MCS?PQ#B]D:;4QE,[E!98P",L]%=P =P8D"Q<%U,03=U'E =Y)X."1,'IL7*K M<$Q2[(/WKP*:!3V!]^JIU+4SL%5XE1@KB?4\X&=WOJ($@18?7YLYT_+M:GT\ M7^YZWN?UD_[\68:GJ2+.19*#4$NW@(GPDC2!ST5&G=/A6"9N:^B$,VU5YH1Z M@#$+.<53X6UROHC3I90/3F,IB"1%V&JM<7K\ZI5;W,BK8>_RF4T]I?;F0;BF4$X^:6?ADOO1\&;J48O"B64Q$[%SBE9'2)FJ(,6;,A7Z+ *+F)E/:. M"DF>C5;Y+$N+J58G;(P>OS2&3L!$$(*JGK?9#__T]J^TB MT/RRY(J)K.-:*T\, ?F,EJ-493$?WTMDOC)$+8[^&%T\+ZK@Q5CX_=/3%PN5 MX$[M%@!RVJ_^:6YDQ_."0?JG5\X_'!C2$K9!9U@Y'!C"@2$<&,*!(_8/:PT'AK#6L-9P8$@S-8=MLB/5$PX,X<"00P>&/'9 PAQD(@R#B=C]&#T8/1X%KW[L@.Q9!P)TDW,X$B0 MO4+%Z;!WR6!AP.(M1X(\R1/DY6DN8J2#+Q99>A?-18X,X'O\ZA\&3HF1Y_"_ M-<,87KU ROT-O$0'#%0A&DB@CQ02T3'00^8FML!4.\%K@W0^CW*BX!.M.TVH M#9_T%7\5 9%:X;EQ"LW3+/VJYDDHQ[D7*55HHKDGYBE(_K^)&-_S?BNRU0?A M&$5(IRZ2 D,7X'77T-RX[!AR\,UP1@DT3GI29(F^DACB0LT\^:\BNH$AQEHJ M&.QR;Z!']8'N[TBTOS_0S-:N9\D1&/Z2I7,/JY.D2A"S/4IN8!Y)MN#G(D%I M1#\ZB8XJQBH*(Y$MF=7-!&CNU&JGF-7-K.ZF'15VYDB=6=W,ZF96-[.ZFS=& MS"!B5G>3(*U[]@]K#;.Z66M8:YC5W4S-89OL2/6$6=UM8W6_'C5@EXS_>SK+ M8$+%,1 JF(1U$&;%J=^_/#M^9@63.!D_&#\.@!^75QW@93%Z,'HP>AP /4;^ MX/*"\8.W*D<%%LS]WBM&G)WVN&2(=;TUBOI]7F?&OBKY^P^)7L309-TNF:.7R/=^A,_%8GT, WUL#\<])R[ M(DQUC=SM(D%6-;Q$9%Z(*:73AN\YCD>3"]WZ6*0RA\/*9R+U%EMY$ M(?0ODXF\);ZMU,V !Q4ZJSFFN8[3@#*$Z]=$DM+@(W/ZO^$C,H!RZ)CJ>5@+ M08D84W#7$[H[#4Z"N$#6$$P0,KK3PC2#?H79"695L_ 5BQ1'.(+WYREF?I>8 MZMLF9Z=645IR?!6QW$&]RA3SQ0)O6F&%#TX=NKU-.OXC/-C6(X!AUN,&OU<- M%\$LDC>49!XT&WV#,, P.'-*KP[/@PE/DTVC(&*5VKY3=O(L_:<,7.?PAP?:Y/W8QYX'@C\7H:0&5TGB%R#MP=*#7@6VG>;7,F^Z MTZD8$0P+WD6 M%#F020"(?Y-X&[F%J8O24)$JRG\5V :3E+WT]:*N@J8].TI URG F0G+SE#Q M@/J$E_W#0@"GO<%JP,)5E:N_'N!!"DSI[)UR")&>A"PDH2RK4ZS,1L_[BJ4B MRDG$=Z_B5BDYU).9N'&Z(W1D"S7YP@EFT8)D)_4IG;;J=W\D.;"BMKS\DH(. MDF)P^$0#2/E'&6EPE)WB\ D.GVC:F7QGN"L$3S1LCINIQ^$23 M(*U[]@]K#8=/L-:PUG#X1#,UAVVR(]43#I]H6_A$^Y+B;W=-9[,71.:,'HP>C!Z/',]#C=,3E>7B;@AWLZ@YT+HQLOB(52?WZS$%-YDJ2AM/= N_!GTZQ_ M4V#(W8>3T<=)+.].PBC3!&6DB1;SY".2L6.Q_("_?EP@'SZ9.J['2+?,^N/@ MHPD!L:^C&T]D$GY)OAD- M:ZH',F;^C0(Y*SVWIO51$D<)-",7F:$LUW\ @=%?D_QJ]ZV80.<^B/A6+)5A M1[JB;(631I DTQ'N%2%MB"R^*E!4L].Y2#$,#XI3A7$K#WO(RTB9K>M30',5 MAF!@4(>:B:P,V4DD?+F@X*%D:EL1)4&182V.\=*[CA MI,%WW\04HI[BLSY_^8VB/:F4#L:*^E25AZ+!X%8JTT.!=#8 BQ"(ZNG 8*5S MF2E=KD?H>!V,BIMB2"A DZ?7+6@^U=Z9Q.FMN;WJ0*3@'0M)DVLK]<08C8IO M7V1IJ$,,?8H3RT10QO=YL+K.E4_QA52O*#:Q:NN:2%V@X+4\D\D4@]QT -LT MPW-'+1*J!*N7GWROV[+_AQ'SDQ";*CP;#\ MAUB,"[Z^_O:KCK<5@E-#9-\Z- M;VR$:P(_*E1?F)80JY&%7LW,T!"$8=4*@[5=*+XPA-UU/)\$4=5S#3.=(;%Y3(=O0^SAFI.H?("U#^)YL7< M"P#+< ['46CD#@.B,>80S64M7CYJLI(4]0X/1JW5S?W%",#O!8CEV>E9_YUX M_V[PWL>8=5$H'9R]]@U4E@\:#"+K1O57THJ5\,82E^>5QA @C?H$!#(H"(_' M!;P! _Q#V-ABT;U[ >1K&WPYZ+\+WK\;O7]W_=XOAS/"[! B!I28PK-QK/2^ M 9L]N(078ZV^$#-4P,OT#%+,/5H7<(D[O[Z78N*,'.P82GXQN++83BD/IF+# MM-G)J8;,F4C?P@*,$$Z]SND@PY[WTV2B0^M!@I;>:%"^+!.$+2:31VV V?Y>D#HS6-J@DS+%%Z. M4US/'0$#?P+C;:;"&==2VP87SM@&N%QA:ZL1Q)4HB&02+-_086K_I6T^[7<=1*V&!8<$GA=: M=:;U=JXWTXC_L)/+:5W\A(YI&F\2R<^P.<]@P2NS;4@2%)#L##J1*6ED04%? M\%OZ=3,MD%H,3Z,7)&=Y/?WK#,[_JM;Q#0UC?!E>,<<#1'*;5'_;D MV-:_I+#(88-^)!]IBG;Z=:[79K29_?OB:0>-K "48VF+>JZ50V>14\LY[ ^] M-W_]]NGS&YB]"74,5DC*_C&6T .Y5GIJ4K-N(45 DY1,!,5TG&+:DC4856$L MXIU,-B.6;SM#R[Q)'./=9E&.M]5TQ^J+-C.-YJ\10QC1!T&$!@2>,P$S;Q

Z+6LFFIA MJ=>WU0K[5291BO]!U$44NDECRC&T6B[WW9N5;]ZO5M#5.RB]KHTEB$TF%[% M)X/8L$VB#=3FG<4 8/7-URI!#J@+X/':#4:UK:AV&SMN,&@15#!]E&]F#')" MN@*P"#@A9;Y^ =!UB3$3#4QY7I@54.=L3S._]*BZ3I$?!F=N!ANL;WRBWZ,G M1YG) 7"9PWVX-:6^UVHAWXH,$#^G 5D463##-#>#BU[UZ =V.H2N,)\R"R(E M'5NRW^L/*FCL>9^,/6APG P0H1,LP1!BV>D@-R62,XO3Y2 ]FEFG&PH)J^8# M'@-1>J8*3' TAO8ZJT>0%G%H,9Q &#<&W^OYR,RJ2L^)QB:+6IF,K%:#&CX[ M#G?:*]S2)EF9QY8K2.5$,\)ES.?5VS>K,^REWOP$#0?^MX0 .J2"8P]3*LF;@^[HL"=)!IL*[Z8F:E3"/GD_V=F/QF!/5HDMX% M$B[^P(.#B08UH$TTWM'H=?#!/8PH?=-P# +[]<"ICJ9XCJ$ MXC>'V^8:U0\">G9R"DCW2%I*<'+ZX1<4/C M**DGLKMRW H6&O>=@R>[@46Y$-Z4VAGH=E)GT2<#<+V4 FY#>H;C3"(3Z^E+ M&/8*;4(9-FBGQ$0J)E*].)%JQ$0J)E*U8?'[M3+# -H2VK6 [%"R8EP'XI*Q MDX!UK%9.3M"O^BY")PH9*&:7('#'C(\$H4*+VO4,.!Z#C2X"XQ=X%\&3X:DQ M2:)VY2]RO'-]2N=[N8Y+RD.]VER5C-KZ,BGE./RBJ1[P7GAQA F>J1.X,W)? M"&:I$NA>@CU&+A?*KLIZ6POWH1^:QL[N-I7,;NAHT^R?8"=G?*SDF88U.$,R M248YP=$6J!UNSL \)G-$G[&^BV[<8=GMP'SE,);R4(]E3$<+9E+U"3UY96!<>^PRA6(+J[EK4B,>G+4?J(D*"DS;'N>V-,/6V.>.-H3GGJ\]1' M=A">=E0VK._BPO]2K@5JSZI,WG&:6T>)L!%X#(0V*BR!4VG2E OJ&\F7GGWM MLIN(FS33W@ D.SU*H;@GN6.;RES["=""#J*%=AO0:\EII0D(BCP78/=/<%\( MUV3Z8-;(<:J<7AT_K?/I],6OU:; $H:(??0:*MLTUO(D1>BDQ5(G%Y\A+8O MKQRG&DL+%R \_*":$;Y9S>K?DN16:N+\8%UJYF#6I.S_J.ST7.2 M9S\G-_HS;AGUSH>C?O7/"R6U/J;N-2A-[1%E9.I,YK)SSES&N;,Y=_;+:C+G MSN8\C0U!.\Z=S5F 66LX=_;+&P(OE]GT]3+C[)#SY._H/D2'1V&*:U;.8\X6 M]-S4+Z\N B^1-*SUZ7[>#2[]?O_R^&?]47.]=;/.RLW*_8ARGY[[H\O]9?-J M[*RO5>[M[:$'/2-=M(=<:L [8QR]7WOJPW92BY2J8^EU=]"$JU&?)[HU$\UJ M?,RSNYLA-&SS3+^H%<1>H0>LH'7$%K9]6J1*#)I/KC3!T]R::68E/N;9W46) M3_W!J&.:S(Z?YTJ+SFV"/&EY%U!-28\2A>J_%7+>R2)"BB_]@4'O-Y@#+&"1_=J@"/(W! MBR8[M-P ,!BN]9/WN.'BABZ=V;@O\]C^ R%E3;$%?Y0!C!(%8++1=V@8;TPQ M-:Z[>"!,/_>O+O=WEMCRNFI,QF(H82AY+I0,_KZE#8]// M" ]3HYI?=)VC6JY23.N+N4J*S"1%@.]5FB12%ZB9Z(30E& AEE-3M@9SD$JE M=.:?B=39%TQV$:P0IZ3(@IFI+7,CXW1!28;PLTVTDE+6OW69'#!S241%)Q:4 MTQ@SI=0[/+CLG=_K,(U,N-60CC#)LDHWCY7.D;EII,JNK.E$/5LNY:+O>%Z> MZ_HK MJHJ"Y=&<$NY,RH)A-@.76LT*K&2>ZUQ9F%@GF&&V2\H@[LW%/].JXMC#F97/ ML 23SKNI3-T.7$9\3 ;\4IF5_7I9-U/AX@9&F$I%; =DH\U =N%DKR[SX\!( M;98"&'$C!4^8RB?,H<8HZEC97U\7MIP0USBAZF$ZSQBMDAU7:RSGMSH]5C6) MI+0RQZ,S)X\TJ?@/9R-GVD5>U?XPA7)&E-F\5DY-K$NS3BFORI<3FL28-POU M?"5;-B;G0TG 4DBK*^9#"^1]5#>YY\SS3)8[RN)WBYJ]@B(FM;[)L V7C77" M;IUPS'ZXK^U;@UP[DFX=U.#\_$!DP,OK2<<+E3S'UJ4,ZDZ*2:GK"U19*Y4I MB7;I)J:OURS ?.K%!'/7T?LQF61B".T_/WL+7 ML S"VWK>ER+#C(QE>:]])>UDG0)M/YP0*D_K7U?2I2>Y5H6U(ZOZ\^QZ4AA<6FE&CE4 MK.^^TIK2,U<;=986TVKN5RYUYKZ>T!:7Y?1VT_P_==;7K/ VO2PVJZY'?:< M#^K/)DTP>N5[*IWDM[INXV,JMBI^G*Y]+YDL]J 9'4K77L\0Q.G:6YBNO6E+ MTT%-_K\^$!##)G\++ C*. _K(JRNNF#*0X7M8-VV+MA0H#?/J5BGUE<^]XUA MH;T5.IPJL G\?Q@Y-:XJV]DU18:N&5K>J^V/^2).EU*6E?;HF;JEZ4+7E'_9 M3?F.LW_P9-A5/4K4?S+LJ0KE+AI[\$9W7*G1W;=2*]3WR$2A? RP"S7U(K3I M;?43"W/+K.8A_XO(P)Y=*O@C^>Y]^>43;2I1ZTDBZ :=/%]A4G 2$?VM3D^$0R_BI/*/E'G;DM#-=*5P*JEHOC:J]A*L54&UMTZH21:W*:3O<:;MHP*8) M_Y1%=$[OUO[Z MN9P&97_PH-IOI?L#%RJJ;\!$**/M^.G_%^R72*]\ISL?]?'W]Q;J5E%LOT'J8I!UZHRBJF.OU1Q=^$#JN!C4K MH],=W.C.M<<9B\@H92M-Q)&N5D&GOU2=)%)88QL]574WS/J;/%UFHBQJ@G^O MZZI?GLR4#;*%+Z@"''K@5P[ZM'.^5XD95>,@C:>2[J;DI;U\#CMSTVJR!+" MAC$I8!9$AJ9#\%UFMFJ%,F?7F3853*& ),2:O'BP1[41=2G=LO8/%A&^B4(L MD@&MPWG3!5S**J\*B]TE9?EU,E/-N%.A[R %3?JWKE-C^N_;R:2+L3X"/M.4 MK=<0!O.AS%0K^/UDGMY8'UXZAL[!VZJ#*[_V=A@N+)$2 WJJLO)03+:.,Z%4 M4=4,,Q("(CSYC@LSHUCJPUR,C<(#D"B;6YE0RIE@IRLD";4G.5Y=W[,EYN1E7>+CQ(3RR'L^;.U.>* MI6P'Q$C \C]XID3NHU+DX"&S"$L_$T"BF&:1M'4]W?HIIF@**!$L+J$9CCH3 MXIZ:WE85AU"T\4PK3>C\JBI1%$194,Q1,H-Z3]VG"5.+B!S,NIIB#]"\5LU% MNZM-/1>GB$O5U["@@[--]7&ZC?+?4JTE=SGAL"FO8^I9ZE&5I+=CF=]*4^EU M!:9K$Z+KMYLY6P.9 #U2P7^%=I975Y2%A_QR;A'GJOI3)7%>UU.QE7_TH@"& MCEOIRG;$GD@2YMFU']>"0M$AK\225U2ZTQH+("DDI02:=-8.W7%TA116]\[! M2M)#4Y?(OH:\.5+7J<4]9*;KMEN+0Z!>('B8G42U'/[G?UP.!QJ-4\8*;>"4MLB+6-Y5W099FH!< MKA(D=#UIYV#*Z2W52R6))K&@EL%/L')8&P(KFB8HXF0KEUC0H/JF'8.@)ZMM M>;BAU5:K#E8<=]4JE'B\B=-NQ4@#AY8ML$=[M!_(4+?CI>\N5EI_M<(8S7!A M042A/N^,26YQ"'JMN:@2V-54Y9H MV]EA$=XLDY,_O_D/8Y3_C[YD\.+^[ZS!^95O H@8XG ,6YGD%5EZ8Q# MWWOSM9B#,"S)/^JNY??AB@B.VY;;?CJOL370<%#)^5O-0'*V#MW&A6\54Y3& MI7*1N,X)*MGI?.>H7VU;B=]GH:&=:J,VK!'\M,,!=@I9Y?[PL4KI#!8$D-A0 M(@^1"!1:)2+\0+ICO4N;W Z@$,@_UE0BY">6M71+DV^\K'Y%;4F1>F2<(;J/ M]I[2?Y*GN"5W+D+;(#<<"LS:@J^T),H$=A:?M(VX8E8[15B1IY5F6/,Q1]O: MJ7V;9VFL[1H$%O W[.GPW? _4X_6DEQ1 MY&[0M1#'UN!?*=AL3\F,]5[M4^X06Z4L94*ML+,R.47W&GF4-?[5=OS,ZF*256O3:HZ8U(5 MDZK:Z#G8%(76[6W">O>!UA=?._L"YO@KYMX'&1I=[ MWK?4G,\__A0=KDL!KWA,0 ^F1*QS"?NZT!PWB.^T;=8AR'0R9K9M&P_(RTTG MG7^;O3]MI"ED%';>\!*_W$.:%OT+=@(VEM=&:H*()ND\"O#XJSR^UUM557D- MS,Y0E,/QOY2[15R(I$C5Q!7AT: MNCGL,6+-5-'I!> J"G*U.T=S1 W$OI7A,JSIH4H4-17*HPTNK1!5X^P^GU1=$LECH MLW<\!C6J8/EA6J.S[Y)L"TMC<_-/6$D"%=DZHV^1 MLO%?ZV;,UVPS6T5V+BA$7Z-I)1=^J656M2RH&MVJ'MB:PY*7V0W]88AHW8:8 M9^Y^+(NOF5N>DF/H'*+PGJ99>QH^2VT33*P[6@B]=7KFU8X68&"@V2#>(**B M!BNTY MM!2*9$ ERL$HMG=P_R#".\8+,FLBT)B+G$-;YB-Q7Z0/&J[^&&D>T M=Z7M*1&&=!!JC-$@%M&S:@9GJ#I]FBM%K$TC&%K M)!E4=1J=EH=4[K#6[?!54W_3*&_8@ZR\O'P)$E&S&VVZ$:V;1@,LM?*HT1#$ M[H_D+6[-]' Z!#)+237'E]1"0TF63CH/-"WO':L:2>#![)]7>4]&B83:\ M="0-PSVN6-!YM44H98'$XY9.]:HH"%'?O#PH<^;DL4SBHL^;W5TSF-N*M("T MT3 GT';^NF(05YE;2LDGGT:=Y1$]<'*[TBA][%X]'QN B3):LUZ^C#G]%4,^ M3O3&T W\Z+9N/M.\IOB9_Z'!_!]W,)MI;JO'IIY-[D:8W'R,T!K1Q2G([YS")''9RM#\3*N<"LY@DF?+LK^L]6WS M'&B.'(6.)B;3@8[6*\E=99#?O10.YA3#!HA.<7FW%K3+XM%<*/FA&[/Z]%7S M)WL(\4UF\P_>ZT7??*M1U* Q&,JK8]14W1HRL2F?\) D69916NXBH&,]R5*J MGDE6)#)#W7 1S!-M0GU-Y*\10)(D9>+)8*L#QMFTC$$VUY3I(8G&JXF.:,1B M\T'D:^=LH"B+F$Q&F)+WE Y55($Q61$:N;4-I=$3VEVA(UN7<*9H MK#*H$]X&G2D6:6G#IJ6!O$( Q-&MNJIT7]&6_;:NH5XHY5P/ ]VI!W+-J.#I M#NC'B3LL%&3J# T>%-9'46]XUUY4P8%92G7JPT%?'P3T-B&17T_"1G%*?GTP M*#(;L\/ -@#!QT@7OE3+#M$(M>_=.5AB_A_S_UZ=_W?._+^V\_\Z;V[\(T5Q MP'/)#Z]G.8H"4) XW3SU]^T[$> M]&0Z+%U]ABK&BGS-N7L3K-UQ-(]RD\O;+'BQ)MB(9,T*KA=(6J[\^L\WY>#B M8^U21VXSX6E'#+ZF6KTQY>J*0]AY1AD @$XO],?5.^3KM=(<9).SR_BG*=C> M'-W;]!NU;.>V":%ET'BI^C]3WD[]F4IY\-GEV3WX'Z^VU]R@6*,84YD6T+FSH!*/= MRX3 Q&XSAC^9TS#MRTAB5O#RS 1^IFQ,WS)*+;3T_BVS%%Y&%CSE+E2VVDM0W!X5Q^R>>:N+T)2Q?2;Y$8ORO86@]7^C"4BX>KJ53LV4?GO5]&%/WZ0N!1#OXK8S=6[LQU^5TM$-! MPU97ELJ'CG1,V9FUCB4]N?54:>4"X?J_K.U"Q]O&%42AK#HPTCF:L+&1==9L MY;^ES#Z)JC^,RF#@Z;B38\]Z?AYI19DBJ&[_;O=>?X6(H OJ.)Q-PZ?L>=%O5U0MT6;J'U](X9$S6""1A4N256&W\R8W)*"NA99"4!=V(Z5KQ%B'7M4$ M7FO&NNWCMJ_=J&. 6W3Z7\I\;3'1/.!,USF,UEJ. 9TE?Z1Y.<$W_O_V MOK6KC21)^W._OZ(.T][%^TJR;@B$9_8,>"(R.D;GBWAPGH+9BB)W'+[9($F[ MC<.#=NOPJ-?MMSN'W]1N M]]*$;RY1KE[<:C;?S#UU0^EL EN!9S3^ MRA9A.$.N+[CSBZ8=GFK8V)J@%XMF0,E%"I\W??MRQ?]YCJ>(9M9W'TMHLG%2 M;[$T;Q?F.LN!5- 6IK9D-Y$6^NNYJYV%$>(,BY_E\8LX"Q8Z%KI'"=U9%H@U M95Y9\_S[A(;^4L&K:)6IR-H.9VU62 MU(0#<@W]%Z25A9"%-C.8@2+(E'Z MY(N'Q?@]5@_J4VL6D:FP*:7D!@F110;*?PP0L1.>(/ MZU3=;?VF'@9>^V)SJH:%V0MUDO&R)[I1YJL,9I:?3&2(=7IIY[PHF$@5%\AW M3U.:WLOV&*IV)ZU63Q="8=4(&);EYC&_/*9RG E<'-.6@K+3N40A9X(L;KEZDUI;W)$6@CU/;:W&F=EB3/[RPS6>MIC/B$C=G['RS"M" M%1P$33;"A=&AA50/D^(9TKD .E1HEK-A?4M/P33?U58\"!/ MO#U&0_"0](I@!O_!T'0@VOTS/LL@N$73.")5UNC<8$TE?2FTW MI9?6K^K#_%0/1@+7Q$J:Z-QZ55NMD1B82_V9@>Z\"GZR:[6"A5_-N]K>5.-S M]-NJZ5\$?IW.G_Z4)FM_4TS#^=>/)S4KC;#Z4C<9 MI2RD^5:*$ -4$4J_%8U1*^[OG7VYWGM;>0MA^DXO+&GZQ04LZ6=J4XUKFEWW MY1JU-1T#15$X8%5]"GC6-RRKJ2%=K6S-_+OP,2G=IAYXW%AOEW:))5V]/Y ^ MW*R:6[W%D#OZXOH :JJ72XN+-*R-3DZ@W^!'!WLE@#3E<6_XV\U;!,J%L=EU MT#G9QFG#)\,%J_!SNE;O!AY_.G;ET#J[DW9"I\1>8IL"8+7]O=.SR[VW>?NC M3[/R05>1(ZWN3/@\SV%L2&[M$9G\]$(-K^-Z"8T(+X_R]145KRQX MFMH/52TG^=;WV8!\365:L^)+-U;8>SIQ&V,M*%6A*<%2>Q%!IQ_3G0AXKJEB M4'2-B.M-N=;#XU\8?BT]^+MXJ/(,-^DN'<*&;!WH(P^%+[R9:KJHX?Z&R_*S M$R Y>&P#(>5RM5C$J: &_%& WRI&'6#GT!3"&:ON,:JQINYV8X:E5IJ@)73Z MN.GP%*81)O6JS,H63A'4G3J?L$C4'4=!2F3NH')LJ"JSA2W5[L'E N)]8YL?XZB?4C3JSO:&(])D6S!-U%%-#+@2/"U8$)X.5U M4 JPT3NFLYC?IRBE1O.-N0%/51+32!Y'DHQJBNP*B0ST[#U\/PP@90\,2JD3 M@X[-_?HBN,HI@J+:O4:_>_ F3SH]746[=RON:S6.GG#3$V[I-KJ]3C/[[RG/ MX.GQ]'9V>G]^%X?S$JZU\!&HL8&P?R VU7?JVD8-Z;\\IE*I?OQBN>5:5 XW M$L&TPM,Z5NG=95IWB68_>GTGXR?T=>P\=502V>QLQ4JNBH9:ZK%6FELY1-"QYEF+C)1MLBPU]TE-AZ5FM^SUPUSZ^D9NG3RY3T#5 M((F$C_VRY9TM<88JL4]HAA06@.>!O%T[_VYL%5]$Z;59Z=T/B6#]QUX#"]"3 M!,@D6%F$6(18A-@&L0"Q +$-VF*NNF<;2UG]Q7VL#4LPM%?L8Y>DQ9>-!C%N?>./7KHSZ>IZ7SC_2#[9IND1U6S?/7 M-=)TJ9"_Y+0)Y?($,5@9F6D=U#H'_?)3_<&8TLY1G86;A9N%FX6;A7MWR?PL MX>[5^G-]QTI)]74*-_O@VT%3EF26Y"?'+UX@#[^]\8N51PGK4J^L'+F^3OC< MSJC$1\=3MT--;")NSM/=Q>DR8_-T2SE=9FR>+OL=925KJ:;[XKG5?+N/ WC@ M4W*M^=+J ]/B0S^S^1+=1=>\D_GRV*:!' ?:H8C ^F96]O!/N_M@E1,3>FL( MS6)<9NH^0XSQL*56FXF].\1F42XS=9\ARJU>CPG-7O063)=EELWO6N,3]^9. M.3ZQ_,0T?4C!O@I&O"V<5L#JM-025E5UNO]PZY5M)C3#1EF>69ZK[A[M-+%9 ME,M,W>=$)YI'3&AVI[=@NBRS;'X9/;'9Z,3)0^?HX>DG)H*A Q>L9$LM=ZQD MF=B[06P6Y3)3ET6Y0L1F42XS=5F4.63!=)DHN7E75I:W.@R>#,J&WAM LQF6F+HMQ10C- M8EQFZK(8[C=Y1/__?RM7+%J#7.(2+IH%ZT7$H/1&[-W)U M4T+!9\&66[ZKJ\K;;=Y)[0ZI69#+3%T6Y,J0F@6YS-1EW#D'15AN66[+3FQ& M:;Q"6.0B\.NPAK'K2\N3(^%90YF5BFQ#>&3 X9%RRSDK=2;V;A";1;G,U&51 MKA"Q693+3-UGB'*?SR%A1WH;ILLBRR++>)'-E:](F*#P;7WBR#9%1&R.B)1; MP*NJR'D;M6O$9E$N,W59E"M$;!;E,E/W.0U&:\VCBNVPV)>N.BE9:G>/U P8 M>86XR&4\EN'VQ40* >][5:MQR#PG-7GJCC_3*)8.A86S/SU MY.2+)2:P:C&?JC(_X0'PB0S54!L'T]B* L]UK&5DN%>\]'/T3-J--C[+"9*! M)].';9RI5BW5KVMXYC'KM/.:>[_5KK4.'SQZ=M6JJCAOL[,F[DL?M[7\ MM\YHZ'8P#VLJUE2[HJEZAP]FWEA3L:9B3<6::I.:JE\[;/9846U 4?%.C[42 M:Z45_E.SUFRR__0LM;0LZO>3Z*>E1%L,_VU'I.\%E%LI%3<0'G_YRUY[[_YY M;H<:>36R\G1W?+K,V#S=4DZ7&9NGRWY'6HEN=F@HMYY25S>=?;E^BU#/ZLC9A73*E6<+C,V M3[>4TV7&YNFRWU%6LI9JNGR0,D,_MT*U,):$L22;QI*42K,SO(3A)0_"2YH, M+V'H)YMK-M>[:*YWW EFV\RV^1[;_' #T"K;YM=K[SD?P-B%6 6'.%\NQ%DJ M:\NSK8B_7I6I\W3+/%W6USS;*OH<)1'?ZDR7&X&N!R3Z.UTCG;J N8F1!.F9 M3 )?H4,C*TCB*!:^X_HCQH:RB>#9[K[F9!O)TRWO=%E?\VRKZ'.41'RK,UUN M"O!H#5 %RTFH?UCI'S5J[7_Y^H*PYV$2S MB2Z3B=YQQY?M,=OC>7OO:K5 M;#::;\P-P*&>F$;R.))3$8I8FE4@?E;/WIN/!-VXD3MP/3>>'9O[EX1XU.LZ M^*H[7 \6V,WA)6QA.7#)$[/ M+O&:DV0$@[7:S7:W89W[%JX>WE&S;J4E1J&$%\:!E4R'(0S&$KY3>&T$TZW# M\P>!GT3PUGV40'SGC?1F-2L>2VMO[IJ]MS48PC0(:6#!T(*%L,&"2A&2,.KJ:F8'OB%J.]UC0,4.X#/[("X )ZDP\4L.+;P)I)$48U&NQ# M;Q*^GPC/F]WS%+@:"0%+AXN;3 -??TY@;>1DZ@4S7(V&]74L([FP).9U\FXJ M_0CIM^I-DK C0%_KTHZ# 5S5JN'D>S5!+**\!"!S)!R1D:!!$L'O4<1"\5)"8;-0W+,\UQ)QB;XM4T9' MZ]%1W.PD4EF1* X3.T[(%;#'J-6985^,81UFV'N6Y[*@E16S@G;V$@>]3M"H MMR$^+1@.4<6"TRE1/"KC;$]C2%5VAV;V"L-V[>WK]VK;WCGN#OG84(8..9-T/'&GN@7'A MSWI8_R*,P]UQO?,>_-.[N@-^*>TY<#.>3/SWCAM-8>-_C+^F?&SFW3APU<@, MG ,^ZOF;U]&-=?"-WT^#B/8FQT0SV&+D]^5I-.ENBR+.+T&>[4Q K&&FG7Y! M^H#']/\C0XY3&Z1'[_H>.%OU* :Y58&AX@_ ,.IKXE]EHL00)G?'0JX$4X,:7.CD8#VT>-=K_[\R'!5N.H_82[GG!+ MIW%P^&#\<3VO>K4Y=1N]3MGFQ'1Z_*L>V%B\RI$%/P7U7I<#O95([Y?<.;T( MU*/5?0#I7#C.,(@,NQFKN4TEA,,(7>:M:>Q MRSW+^)-8CYV0']9*K)6>H95ZK)3F5@ZS=JQYUB(C99LL2\U]4M-AJ=DM>_TP MEVYETN+1/+GO^E8\#I)(^ ["%.YLB3-472\PNYH=D>:(^&$@S^ZLXD8J5:NG M]+)S]3Z(W#.W:^+'._TZMU M#M=7DKFU5.#IBS) M+,DOTYJU;&=+K%K+*PE_VZZ')6EPVR2RZMR^^9&!Y'+Y=3S=4DZ7&9NG6\KI M,F/S=-GO*"M92S7=%\^MTCPJ?FS$%].(C=HI[0^D+^$":L7Q%IMY!!-IQ>). M/@@'X#C0%DVW8CW)G\'_[?X1$WIG",UB7&;J/D.,_^U/1^U6FXF].\1F42XS M=9_3J_[P@ G-7O063)=EELTO'VNYV?C$.8J#C&+3?[UF^3)F+5IJP:JJ%FVU M=AHM6C%"LQB7F;KL#%6(V"S*9:;N:$QH]J++1,J=E]E*FE_&2KQ" M+.)D@F?1_2L]F\21@]ARHRC)G=CCSL4K6,F66NY8R3*Q=X/8+,IEINYS$%"= M'A-Z9PC-8EQFZK)%YG %RVVEY/:@TZX6H1DV\0JABH]XDK;MJE %AR*J(%=5 M5:!';:[@V!U"LQB7F;J\?ZD0L5F4RTS=YVQI^ES!P5[T-DR799;-+Z,FM@LU MX?JQ\$?NP..>$B47KZKJTFZ3ZSAVA] LQF6F+HMQ10C-8EQFZCY+C/M,:/:@ MMV"Z++,LLPR*V%PDXCH.[!_U@8@D=I"=("B"HA*L1$LM6Y55HK5V=Z?/-:D8 MJ5F0RTQ=%N3*D)H%N48#]Z&Z;+4LM2R\"(388C_BI&U"S(9:8N M5_-9190XYM"(_8'!XIMYQ7 M5:GW^+R%W:$S2W&9J<8\?]I^W8;HLLRRSW!QD@\U! M)$Q0^+8^RW6;(B$.1T+*+>!5U>25#&_O-+%9E,M,71;E"A&;1;G,U'W.@="U MYN%.5\AQ5(2EEJ6V_*1FH,@KQ$4NX[$,MR\F(CDF4F[AKJH>YXW4KA&;1;G, MU&51KA"Q693+3-UGB'*GUNY6+.O,OG352L_K46N>?280M5[%0YJ\G)U\L,8%5B_G,VOD)#X!/9*B&VCB8QA:UJ[66 MD>%>\=+/T3-I-]KX+"=(!IY,'[9QIEJU5+^N<94>X)K'K-/.:^[]#NCNH^93 M5U7IM&9G3=R7/FYK^8_;/;*F8DVU&4W5!4WUH)?)FHHU%6LJUE2;U%3M;JW9 M/V1-Q1UW62VQ6MHFM73P<)LY5DL_VTKX)^%/2XFV&/_;CE#?"RBW4BIN(#S^ M\I>]]M[]\]P.-?)J9.7I[OATF;%YNJ6<+C,V3Y?]CK*2M53373/68*9TZY/XRN)(9F5">Q6+9%9Q MNLS8/-U23I<9FZ?+?D=9R5JJZ:XY@UJVG<[WC3C#;9K;-]]GF-MOF;>CY.1_ MV(58!8E:GS=,L\7=;7/-LJ^APE$=_J3)?+U=8#$OV= MKI%.7<#3IEG>ZK*]Y MME7T.4HBOM69+O<)95SH5J@6!IHPT&330)-2:?8284]>C0&J #EIM7NU=J=; MZS]\2O;. T]8<[")9A-=)A.]XXXOVV.VQ_/VN-6N'?:[M8->^8&@3X]/P+]B MX$GZ<("WSW?N_=BEOZAP_=6O+.] MQ)%6/);62+B^-0R#";J_GK1C-_ C*QA:> ?,'FZB/T-AQXGP+#$)$C^.+!&" MK/@C=2L^*!(@Q?"L=K/=PON#)(2/-S**)_@,^ 6&G_CP+-+* CM?1("T_H)?#-3*$RT&08_-H/P@G,)S 'P4XC& J0O;28B,&OBR'L-@\)M0(O\#JX;2#A-72<-0PD!!).!V7\F< M=>O&8VOLALC-PO)A$J=GEWC-23*"P:)<=1O6.8@1K![>4;-N05I&H807QH&5 M3$$4X='"=PJOC6"Z=7C^(/"3"-ZZ;^3\1GJS&HGNWMPU>V]K,(1I$-+ 0.!@ M(>PQC-#SK($$,73IC2B&>HPXN)J:@NV)6TRA6-,P0'M*Z@2X@-[D P6L^#:P M9E*$48T&^]";A.^#XO%F]SP%KLZIJV0:^/IS FLC)U,OF.%J-*ROI&+FE\2\ M3MY-I1\A_5:]21(@"^AK7=IQ,("K6C62&2X8UK M2^S\YP9.U+" 49R 5-N-"U2.EPX)U.% XJN,SJ/1&)U75TK/#B8X8-)[H"]# M ?/'>4;6, @->5@?OI0^M%D?WA9]((LH M+YE38"1HD(#3(J.7=A*6$&]GI&3]G+#OO*2@[-IJ7$O$^_JV3'D=#4A',;23 M2&5(HCA,P.$F;\ >HV)GGGU5GI7,L]EJ7!9TL^)7T-&XB71(K]Z&^+1@.$1% M"ZXG;"K)>0%MCRZ0GWSO?_T@$>-^QP$W&=S#N^(5G/CMN9*^AKB(WEP?'OF)1S[^> M_69U&K_\X]O)Q=?SKR=?S__[S#JY^&C!%Y_-YX_GUZ>?+Z^_79U=6RV;B)GE3F F M,3UE"(_V;1?\2!@"[8J-"14.*&-XG3:>.)KL8CW,:0@;,^5]8H08QG()S\S/ M@::6P!S="*^&GV!]2!FAGJ(P&1 @F)!V]#$;8QQ.?.C00QNNOW"1.%)ZN%U- M8$63"5WC!2,72&A'H+R$'^%66*E$-;C\=G$,;(]>KAM%,,=L-JZ/WD*V\8,' MT2YUFH1(F(+C\$B=N$&67"'C3^713\(-K1M8%K,+LU*QH#$]?1O -W"RT+Z953,^FKP4#&BG@O;Z5+3FF-AQ;S 2%T7HIXYDW0\< M:2X'-L.?]?C^12Q^=USOO!]Z\J[NN*&*2&(*+)GX[\%>3STQ.\9?4Z?"L''C MP%6#,@AJ^*C9V;R.;JQ+WWEO=/0Q^7+@"^2S86D"]VZ+0!XOX;EM)^9G#3/M M-@M>.?"8_G]DR'&Z/=6C=WT/'( ZB&NHT['%'X!AU-?$OVKW*H8PN6/AW8I9 MI%.F>58N[LB0,W/,/<>D6\*+&]U#9-2IF,T#GVHL'.O7HT;'@AL]O04E6X2& M9=XH8< ?_$A'I4MN1(2.Z#\#V/3.6 M(P=QOKX;@_WPE&LYA=T3YA0ZS9I.]_R.B811XHD0W$[<5<>8KJ7A#82'4:1( M[8]OP#,-DFC.DKMQHIQ/\IWEG8VYHJ$$WJ:$"ER28)15IUQKX)1C8!6F>J., M7>A*> 4-&EUPRDM$ 3P>9T7O+>9LP4Z2'<1Q"R\"JQD$/\!,DT,+ YC@8QOI017WAT.94CYLN73&@C*UOBT%Q XP(B,L8B,R*JI84) \Z*GXTP@-:2R:2,U"7PY,QNU8>([FL,5 MWB"W4\--5^8Y1M).0&9=W [B'HIV4Z-$P,8K1LD8S)34-JX;U@AS@#YQ$VZY M$) P F' >_%SZB9C7,/5FTB<%$[%UQ%*$<9NZ-0I_IK;FZF'Z1U8E.ZO<">6#/Y)Z? ^0U< M+Q]-$,5C:NKI**P8><$YY<(NU8Y8G!8#2< $Y&NDD2:.5V1+D5H'T(?$:PXJ M,LS[(M<'X#>16P Z_-;'RY%5S[ZI\2D(T:#7EV2]&!!4^5.-6T42Y>B>$GF2H0%>PQA3' M(TF&%8/YA&3):FA*PA=,86AA3>]/BF&5+/'4H*1Z9QR,*C M*VXT)Y/ P?WX%_1YK2L@UW.V=&L>7L7W>+^3,VB,+DJ9B5>DW\'MR1 QYB'9 M[MMQD/^*Q,:1GHO 3+#&8,M ':A0-8BA!J.FNAKEE&(UH43/LV8R:'"GC4\+ MQ2VBR4#9@J'56S?%/ZA&S&-K%#&9*F6/F>T(L;3"(&O:T\%[*8VH$B ZDYCWNI-(Q9]PA&:E M<"W"(!F-#0'3 M^=3A65^N+D_//B+^ILH.SIGR-+4K^-&-;$\A4TXU;Y%F^)+R5K4=#H7C\86J MAZBEN0I"#[JV.RW #D_'KAQ:9W?23BA*>CD$@P&*W.S:U.^?4FVL?Z^E[K\" M04JR6O U-[FV4Y&*3M/J4P+6/M@>!T)REX9[JL$MS>MCJBW#O:EBL&V#AS] M*0'2J6W_=1;-/M-A->O$)COZUCZ5]N1_VGNKHXHT6IR<^E/O.LEZF3"X M&UG_2&"Q)&9LKB3N<1O6![,[4?FDE"5K#R[CBB4DU)2!D8KXL2M&6.ETN5>' M2EU?52'I_;:( F6L102/)PRV3AM@G$6Q1%JW P8=/!$]&+4J"1GSD!8C+4, M*^U1 !-8J_B4=;=KQX3J[IL-) MY-#H\B%3#9'E&'-L0-$M\U+<$;D1UE_].[PZ,8%:G*GV.V@"VEG)%@ &"OOM M9)(HN*UQCA/?5:E-[?SFI2MS39_(!N1[4E(#7#1X"U5387+PEB8/'.C K%4M M62A'(M0$U:3*..9Q7E!Y]=X':8M$Q1Q5JFRL\J>>.W%5("'2H7=?>94H7JK< M+7,V%0\J;W>F]TT8TZ),F"-CW-4@:V%6FW(5#>O$BX*:"9.:L#7F#63!;!4U M).8%$MK=&>:>VT.E$%#BU%09J$T","7Z\L(!+L (S"";>@[SF3K.&'L-U8/P ML8Y$?+FJ4068E L\UJ;Z[L68*\9<;0ISU6+,U:YC MKK;2#JT[/INIY'-C?O3.Q;I$\Y/Y!%?&_%3;E']%TVW*7/,F384>'VO"E5MM MZWI:1T7GR*LM6I$\06<']>1NKG$*O\^VX_ICA6MOF$BC.;C MGFNB=\I.0OL5] BU?ZB9\JE;:'10,9\ K*:SYFK'IO8CPH7-C6]VNQ\"V#^H M( IZ74'XE,S93L=)V5%E1_75'=4V.ZKE=51_9HH][$86JO6= M&JZH])/$,6Q3_JG5^.7SV5^W*.UT\EDEGLX^GE_\=67FJ1KNX*?YM#KAI@IA MN)O NU$QZ139X0D7(\V>N(T2-Z:X(Z+SW9&)0V9=?W(\64L["SX$IN3MP:;X MX=S'HGV;@*8*?7[ZX8LIJ?"#.$5X "F'PWQACDZW.#J7('Q3'!2+']+71;O6 M^01W@-8UICI@NK"5V'<;LE'3L=DP?FMY5+! 5OP_Z,IQ*SR"^>F90GLUFM]YJ'AP=]-KU Y4V^[<_';7;S?>]]H%U MDHZ>OFR]5QFY)4_H=0[[G7J_\(3+T 42 O_V._W%1QG\1]:0+XM!%]^MYC[_ M4%SV[)K(#% 5EJRZ*NVD@M!EC3J"7= ?6#\BQ<0 7>>@1/\=S,#5"O^_P13E MNG"E*ZU:P[2I2V%\SP@4OR!;A+')_%WK-HB=9@MWF+[0W ,7FY_:G?82[%-V M'7WKQZZ33*945J>P->A>W #U\2N]\133J>>J%);>'9F#4KEJ;1NVQ*.\+;=26%$HQ0E04N4AN3<*H. ]%M MA#7.*G[@FU_;C:.NJ;&AY&!2RR@=?P4891U;DQSV=$0Q&DA3R MO5R8/F..K'MOL_R*J@BT@EOIY#*B*Z2!2B=5N\-0/]H);OU;W*=C(G!^[L B M^;FKG#X626K&LA&U)Q51TKX@Z=#RG*9YAQ;MX U&LPX;^.]0%WKJMA%S3%+# M2JRL%:2F9K%VBE*:M]+S=&?;QW%F+1_)4'KS40MHFN7FF$V]=D8_!3X^+OL- M%Q77#)/"*D"HGAM3!U\E?B9#7%.&&#E21 I5B<$Z-QK#R$:!2=NEH$Q8+J-L M*YZ,_38E/ %U^=1,A$#%*'67:KI9J^E[);)&L%@HX#JF&4)@A;@2V5R?U)P=+TC2]HO*$J;/)&5.H6JHIQ6)B8E6 MIYU"!L&-7' E\@M7%#8#MAV3TD*OQ>B;P0S7N&']%H02@]JUA:<"CXY7T6,Y M=96$N5C2B@XZK4F02]KGK77>W*::9P*K@^;1M;4U-ZJCXNH"V0%YBD0> MS3XJ>@(&W<>=BB;M@L$'W\#W>EW?[NP4\ MF%1RI%1:)H;@:\H;Q%[K&AZ4WU'B.D*Y5*DC2AV^TA[.-LFWZ40P$0[EP. 1 M(;:@-\.<5W=*_%:BP;2:,;4 IJ_\8@L#!*#C&@Z(8X.!I[>L:=D0M2Y$'\V@ M]I0:AV^!'V+YV/G75!FVEE!XG$*L_PV<)E(>!M%B^MZ2=H7+P$Y32<1\P8'& M^B2^]NJUEB1Z#,5-$-)\P@25:*2P/%0LJ;5/AN+2J!R1LQ4(Y]%]QX$")G\3 M9E;A5MD;H^LP=4.Z(AJ[4_V(<$%]#.0,W&O0/B)6'=:H]QO5[6M4X/TFK*:Q M\Y3?Q!K.J:MKL4B/#C,U:L9)=21:*YG]1\$.ZK(1<'9\9 0_W2/%L^QII[HJ MVN"CL&>E=D^I=3&F:\.1S&VEB.-2C]X@ 9&A/%?0D2,N5D=%!;TH6/$L.>^P=PNEOLUOETQ;[3*;=M#0J+[PBP^ZX+:+8I('S2^"7? M87,+QF5].CG]>GFUGF!P;T>]E,5*-Y&KEJ8J61WE&U*#'W)@E,+1"B:%@\Q5 M.T78\D".]"XX(#NRO BJMEP19:V;AEYPB]HT4Z#*ZXQRQ6!JJ,HZY@PF(;J% M*A/3A^0$>#Y#!M,&TQ+I^ MZFEDIUT%APGL?*A'P5 7"^IJ-OP./(1X3*@I$%<4"FL/2UNM3UI@37B.?+@3 M.BDC1>M_\:A SP9ZX3MFFYZ70K0;W\Y\#^-<"V^)>\V+)O,(V>AD1[+ MGJ^WR%2&I]NE* AXLK#9R&$B4#/6 M,>QE)G4-DMX^>E,$0LS)^5+, ^6VWY-$UZFX]!A#AI2N MG)?]3!91K8"]V)PRZ#8.#]JMPZ->M]_N''8/VP=O\DWF?T@YA8%YZ7+H?#VM MRCW+@%;SJ-WNI68SE[A/3W=[,_?4+8$V7A&;Y_8R>;66BD[:3V!S62M\%$3K 61DQ=!U42XAI-G$>%BJC0P-?Q8#KB)G9)FV;P?*KC1?08YDW@ M U8GC[!7BT@3/GKW 4MONBB35D^?%_CYZ[(>$FF7:7"PJ;V';JJ4J FJ#2FJ MFCQ@4;]&76FVK6JNRO3E6E8K;Y\ DFHPJN<7$B#KB6U:P.2W#*9#"=5R8*)M M28\2]4X?;1\:YUZU*:KD"9V-9YVQIJBV+P!W6FJPUUZ0UO2]SI/C#Y$.T M"$,&4NSTK -=K1X6(X9$N \[N>AR!U_ GL=.N0HF"LB'F-61_HT; M!LKJ*V#,'?PB!45B3!OHA4[:A?,"$Q]V !@SHLR,B!1\H9!35BG/0@Y W8W8 M1%UVGWD<*GJE'':5UTH==OV@@G%/TQKI-[[$XGZ,"YE,%09>*"&KZZ"7-I>L MZ8A\%B5+>P.9PTQS!]LLCZ*QG\Y^^@O[Z5G3,+-MUQVZ0,!!MK M:;E>)J@%5<\+>(&O^V; $W3 )6N(0")U%G[+.>*P@6$&\ MK() ( 0!FA,%10'.B;#&4:R%TV M/5V/JC[069^IIY.UNM2N"OZ@CPPA- H;;Y;-5Y/-+-L'O#WV85PCQ;V.B!'U MY-X(>[;!P-J"%9?31*$5A6@9Q,O6 F<:^1Z^!Y XHA M"'.["I9CEN,73S'2<09C=YJ=G#R9$*0YL)_5]WI-THO@"#RN5,,6YT>H1%L4 MSW=UC=N<2]V[E'C3WOG\<:KX5/4XE1#$'G+YDUE-:E$W"9-[J&PVG&@'9W4RU'1 ME_1.MD!I%0,'<^=4FVU"&GU3$<+L MU+ TM3XTJN,6\1$P4H$;AYAH'YD(@AC1G@!+9 16'7ZB[)\ #T-KC]/+_S[_ M6&_U+5@/6B&+P.!. <-6B+S L\)DJJL/)$2/R30[=ZRY0ZP)A%R(Q7IB@)X6 M'D@E1G*EIJE8[<<)UA)$=N@.$+^BSCY!&ER 8K?:^-<7T #6>4TCZ'(5!I&N MM]G[;.#6>P8S5[BGG=8/+,#[[GN8:ODDIFY,F#R-=-G+JC,*""%"C "S$VA$ M-?A$MWBQ23W7[+]^S;XIX*AAA/(2' Z,:+9::9.NK(Z(ZEK43@A+;W4)LNH] M#&Q@ JK&83+N2&2/I9/@(_#ZB^!&%> ]*ZC(]/"=2E0S2ONW<-^X7[64#4[8@"-2$6"?E^X M=&," M5)EB#5W(G8TBA6<4)I-5&3UW= 3M<(?9"T$&1]CC3+F1B_W(:*CV.$#@,8Y8 M17_I\-84 [=DEN1!ZRX="'55IXD4FMM>B,@1?_P[O 'H.TDFUL#5IT2:;LHX M4]//%\>\_$617FY=(5BHEYEKKDW@Z]QI)VA]0/\+M?U>\%5O7<_+#A=19L@< ML&5: N/!'!E@6>:"\_1<;61S#\T?NZ61PBO6L&&=#Q4$W/7N64>:U'U+:%Z3 MGM38.LPZ*DI?$T+-%CMF#*F[>-H#O3!Z-\K#[=$<1X7VB%Q5LV55->WOB0^, M V3"?OK?(^')Z#OR1CS[KJ-46U1ITV[\\NWB:HOJ;,[^>G[]]>SJ[*-U??+Y M[-JZ_&2=_>/;^=?_1:3_MZOSK^=G=$B)]>WZ#'_4?9I>^7B095"<#6VNON6X MS;I&;D,->$8,ESL?H-H.T$7@RVUT/\O/G:IMUQ?EP3 7+IP;4*E&X.?8)2RT MOB38(B1B3?5('F& -@.T7QV@W66 ]HX"M/GPQVW9"W:^.W(HL*3N>S(-?-C_ M^6X0FFV@NU6'0'8:OWP\^W3R[?/7+=H-7EO?OEQ>P-;OXOSR*K<#K+J/D.][ MQJ&@;17_[G>8A?P>B:&,9]]S!]5MD=AW&[_\=GYQ9EUOD=2??#K[^K_6Q_/K MT\^7U_>=_\3]X#M! +_G<)9;).@'C5_2PPNV2-97G*/ 8*-'K>6+ M@8WVQ=OMKRH\?\S1O51GHXX5P]3W)[C#.JK_/7\:VHHCD.G25K/^CYHU2&*= M/E;=SA]$KN19LM]H]@[7J(3H\FTQ3I?^DES_+19WJHR$ZU.7L(&K$K#4/#,: M2QGK%C.8QX7AQXE&>2O\9Q 6&NF?ZR_3)OR(9L=8HLD*FPMJBMR$9(^!L!Y, M5[7M55LOB[9>JE0*3[%%Y(J/_5(+KT/@3=I/GYX(_QN-,!TSQ&O M] @JPX2(.":BJ9SZ0 I]TB VPA6$"]'8C%;K#6$0A(^G![A#:RIFA(O%/#_A ME_ \:I6'#Z8:,-SJ+-SD.N!WU'^XOH*"T&LG0H.&;Z2U?_#6FL$P=(T"-0C1 M0S"88]5%KC#LE#U!!0EX4!@1;B*@R@;/E3YJL!RT&.N 53@GW/5<=R)^- _2P#\4 G\19/*;G-6K%2+W'#BPM*CP$]4NFA4%K(Q1N*KU[V0B'5>5_,D[&=INI Y00-DPW^2:COW: MQ ,H4A13+0_.,>>I9"(B')RMIGV@!#S7$'$%G4R_:2/'U!@(N (X9+_5?(1> M.5' *Z6_#&L6N2E=!'H#M1N#T>57@"J@425Z!( 6$8AS$BFNSRD!JL+U4CN MJ>V=!L011MT@"--"$F._A.JEF0,V&O F02(7!X>(-W3@J-R]L![3LI/PEK:SVEW/#T89@3)KBL_*?&*SJX8ZO"97#@V-.]Q6FB?]KM6UM;AOO]WOD"JZ2CL"6=?UOUO[&(4\?-]N]QMP6>K< MPA9M"A[>VU5]]:JGGQ"\PC*Z33)JETM&C_;%4@%M'5JGGZXL):%XT=N?BM#I MW%$QG738[93+8A@ ?48L'39%Q\O2 S_Q8IB5>W?L!_X%^ BP<:(,R:?O M3J\M6E( 4Q^VA_7NL-6LBX.NK'>; A;J2P[_LG7[O"C'H M]+NB[LC>0;TKFX?UP: CZ[+7[HE#>6@[1]T]RQ<3&*&TG>.KQ).MYN"@=1*& M)TZ !W-]\L1H3QV.%(,.N@,)<>^D X/W(KEBJ&+0;W9D>U"WART8H.@WZWV[ M=5 _:CD'A[WNL'?0[C]WJ$"&)XSV]=E%J(&EXE18KR6?-X6QKJEB+3R2*GPA M#N[U[8$X$DV@;@=(W!ZVZT>'4@ OMP^<8=ONR,%@G1S\-9SX\9,8^ @&VA_* M@[ISU!G4NUV[4S\Z.#RJVT?RH&\?=D6[>[!F!G[<8%^?+S#C0)MIQ]IZ'A;6 M'BZIA6M:;U&C!@JXX%9I1"[3GD6QUCT8;OV!2VM[6'(MQ9(CR\QA'& KEUC3 M7&9L- -[6Q1PP8#P,/"\X!8MMF$;RFSI=@[J6. T M9J4 +,8;FD3R.5.@^#7-1&U+U[#U\/PP@M46Y-O3F?GT17.44HT3]-WD3 MH>>H;,2[%;=T?OZ6HZ.'[OGSNSBKA!EM\V,+3]RD.>Y]:3.,63F.+#DPM&-""=5&/*]@6]=76N45Y?;VR6E]I MG*5^7HFG?4$]1PH^1>PL<-%/\HSUIR']U^QLT5;@)[RJYZ_ 9N:]3L;X2'V\ M"'>Q;&W6J,2>H+1@[999Q!T6V%5DZ#1:/\F:N#8;V/0\8X[_\1]/F&)N..0@ MO/2<<\ZQL,8A!AK'<3R-CM^]N[V];432;HR"FW26FUVJUFZ^"@W7OGQRW\O7]T>-?"_5*GWFJ,X\GJY1T. M[W$&'#R2G0)@Q]0.3^4+5U4G_72#,OCBT]=3ZQH/?JGA;XW]U#O7%M0"EC6X MOROJYX+HB'^/K%.%K3#=^O((=O6,["3I, _&MW\3, MZE#TK*71GVDG6\?"9EZN7SBH.)=($ZS,-J/,VKLEZ:S@7D3!M3>JX#[,Z+RL MQZFR-JLR5F5+55EGMV2:5=FC5%E.CS7[!\W6(8@D_-EI'[P;QK9;1Q%M=CHM M4&/?.Z^EQN99?M$#RV[NMM2:^Q^@LT&FD-1'%0 MW6E>G2UZ:=T5&T[S0<%!4#%2'9S18=?UUM-4V,DT=#VKW6MYO=74U]G=+8:J9D3+$53%?L.J87_2L"/ROJGFV.A MYS:AI$[^5_B^]0'4F!,OT7?(RZ^R+:41M]7&M,MZ;D?T',?8=F'::]%S_:-6 MJ[<)/6?.^+ ^RQ@8V*BXDV0$,[1:O<"+3>JYN6&SIML% M3==I5=6CVZU9&T6GM52G]7I:*MLVZEC9E[0H_RP]H/)2U8IA*W>L\*8:\^NS M4TO5)'3$O_WIZ+#=?M_J[HNW[UH'3OXS'0FGRXJPU5'V !V?ZS3;IF#\6H0# MXR5:TOKH^Y81VV76ZWWNMN0_M7TLX,_8-"^.G!!=1'6G1"! 87J3OM1Q,)" M,) UD+9((OVF6(Q4X26V*' <'4]-[\^&9-[56$8(U@"OIP&N3__&&J RL\Z+ MX%=Q%_C!9 :;!_B5$AK7]EA.A/4[YD#.C 1_=OT?V#\NU1X1R^PF9;9;2XFD)[3P+U;:/_8LWM=L>=+G]@/'W9_O)=#O/:.7 M0/^Y^KK8C:>)37>6B*>Y2BV3OFZYB/:WT\E^4"E592%460!B'5 -_:1_P.RV M-J!255;B_ &(S<:,74'S]WJ-7F_]/96?:A*M.6O(C0*Y4>"K-PKL<:/ 76\4 M^((L2?W_(OB&CLR*OK=[O7Z_NX9>-:N3)KG9=)ZX:-?G?[TX^?KMZFQ5?[:R M,44EVPSF,UVXR]:=^=7!5B;=E8&&4\"PSGFU^IUN3=]H ,G66$26@Z42%$-W M\NT)S5E9,&]LY^U;V--P(,?"&ZK#.>F@-1GJ"_ \-9G@.9/T/-"*XR"$^3HK M#PPJ(U/NZ ;_H/GS._R'[[EGR]5L'#YWT_7X#-G3F:M5%/]'L]=:&[;M^,Q> M-##_*FG2;>>"EYW:.COS42W-Y>>3JYIU?G'ZZ-PKL\AVL\@+:@HF?65)7SHC M\8QXXT=P^HZSLQA;;57N]P0N>[UN"U^5 M6+T\)W6=8XV:=3IVY7 1;W/DN)4G^O]^"MR^$>NJN%*]VO9,]XYG M(_5JRZ-2:B15]\QVW' PD\A,NI%DFF1*2G_ZQ<&#!-]D$@1(61L[;I4$'. M('">O_-O__ME2] 3#B,O\/_TW>O__3=MX?3V__3^GI^CBZOH6W>)G-%O&WA.^\*(E":)]B-&[AZ_OT7^=W=^@A^4&;QUT M$2SW6^S'Z!1MXGCWX\>/S\_/']R5YTG@OAYB!WX/;IP M8HQ^_/+IR^]//W\^_?SE\=.__/CI\X]?_OCA]]__\(?_[].G'S]]4KH%NT/H MK3K=\CZ 7'=OW,2'X@*X\W_&7GD/0@QSU!%W[RP]H1@BZAVX1NL<1#I^P M^X$3?8G<'R/.1.R$:QS?.EL<[9PE_M-W"BNK>$DY<4+&!0S[Z8?OZ>HY<1QZ MBWV,KX)P>X%7SI[$?_IN[_]][Q!OY6&7+C#!L#*9!LJ?Z8[XT8]N')[&AQV. M,H.^+$+R(0C7'^F?/\*?8>0OIY^^/_W^L^Q))^:UF2EOC9?N:;1?)!W8"!%> M?E@'3Q_%'UDGI4-EXTQ#NHZ9:3Q_SV;^Y=.GSQ__Z^L-/R>R,?'\W\HYI>V_ M_PA_7C@13E8'>^63H'_(3H+^T8VS;075/WSD?U2;>C5SH"GOH].UX^R* M#<4?LKP6%E$L^>/,=O_5ENP7_#Q]!M40K?R4=,X@C^5;LLQ<_KN+V0 MEPO\T'X?DBOI2%[53YWS*W[3CN?,37'<,2AY;-B_HU;?7=E3I>%;Z/(=]/P& MOO^X=,AR3UBST\\?RN^;*'?P"[V4"3B^'\3L#_ K^.01>UH<-QG'TS7?VKA>#* D;>E3/AKW]#'N;$$8@ MA O:2"6.!'7$R:-WR0#OW[:[=KM3S>H&4VDE>MAOMTYXF*^N]C']Y3V]MN@$ M_37[ZYUS@&V(Y@OBK?G;>H%CQR/1%WX$M%%K.!9?V">?*H6GB(\'AX4/B8(5 MXH.B9%3>",EQD3(P>B>&IHK=VXG1=4'<.2%MM\&Q1[D]_K:H(--P1KX_\NK( MC/;^[2K1=#"2OT;SU7FPI7I"6EAN/Q^Y;'(QT-KI3,> @& M?#L@ QR0ASA8_K8)B(O#Z/+O>RK!7=#)+[WXZ(/2@F+#@?G#40=&'?=WB(\, MCPT;^^UV&>1V<:+-%0F>>]PJ10H-A^./Q]TF=!S$!GH["$=(K!#N8R M7YWM(\_'4?0Y+XE6M*K9T!]^^,/OBQ*F0@?V;B$HO>U6R]U*=($';^U[]/YS MJ+J_7 9[JJ'[ZSOZB2P]7-R^MMT:]O/[PGXJBD*4DD9.0AOM!/&W+6ZYQ?QY M^XKC3>!>^T\XBN&JR^]H1:N&#?Q]80/%8[IEA)"74'K;KI;;-8NW=V&P#IUM M?HN4OS1LRQ\*VS)[_(I$Y[>=:+L3_-*)[O$2>T_.@N!;7/ANRALU[,\?B_LC MR* PH7."?/SVV;3=++BS_#@(Z8[IZ M>ZQZ& I_:]B2?RULB>CXMA,M/Y"[$.\X/!\'X)%;19%.([RGTMM MVX:=^J&P4X(:\_P$0 \M.4'D,(IO6]CE8^(V]=)O2?RI?H/^\*G"3/^V#:V_ MI&"'P_@ ;E$J[>Y O"UYH6[B0>SX:PA"X;<8 MW0BZ+S\%@?OL$5+0;YN:-^QAT4Z1$A27'ML^MJ-K0?5M+UM;F!9QB4$)?MFP M+T5[ W1[6_CV"E&XQ^[ERPZ,J%%./+CQG(5'Z$QQ09YHW[%A XOV!D$:2=KL MDV+4D2"/%/IO6]W6+ECPS!1,@,46#9M7M$J4^6'>MJB+-'CMT[;XT7FI$ G5 MOS=L3]$HP3LCUOMM6[ILRWFPW7K,[@F7W7G 3-?87WH5VU37OF';BL8*A1B[ M#3/DWO:QRPT(L>(NA!?0MT6)DFQLU;!G16L&HW-ZYG#?9$KI;;M:;M<])N#+ MO7.HHO08.G3YEBR&K" H5C=LV+2B84.00HP64HF];5O+;:.*%<3KW.'P8>.$ MN+!;A;_7;](?B\8-2H&'!%$:B!%YVYS6SN%%A/^^I^Q?@OF[(-87_MZP.473 M1DH!<1)O>Z/5<2__>YS_/NG=L*]%/X$0\U8=WO9 MW_=>Q.92OEG%!@W[5!+8D9)XVR M$1Y56U7=M&'3VD=[O.U@O["/\JTK;=.P M9\TA(&][I3,"H7SG6O1HV,>BI:4I&N%M7WN$):C;6->@8=>*IA:12?BV-WIB M%:H^M[K&]7OV+T7+2TW$ 53#@B$P.3A@IE-]V M5X\OL6)7Z]HV[&;1C,/]BHN"7_%M#WMZJLHWK[Q1PZX5C3I%G]7;?AVEE92F MFP;*I:WF ].+0L/9*!JYJK)PWTZ" M1I4M2S7L>-% IB3XOFWRP!XBP"YV]P3/5Z5_KMKY'J3JC\._%FUO ME1ZF4R2'A(3M9P[]%Y:= U_-43[WAA!7MCL>_6&B6.69\+@(&\.V0 M]0JH2/=?^7W% >K0L^%P%,V8A>"+[*'PTC^_;;G6N(QT&^M:59P(?80;#DS1 M@MH8Y9$]0,U!(6^G2N.IZB(6'TVGX+)M0R?'(.1RXHO^VL6<1ZK8#U3>>A:#;5AE?_=EKZQ:>ITD&Q0>5+ MT8-6PUDI0[6JCF[+"A>[TI9OAT778>DF370G47\T?N@6^/AF:3,4$ID\&OEF ME>IK+VH-A^2X,,K,0^3E.[P=&RV,WOWN ME2IJ#8>E:$?M?*\DOW6D]?[MR!P#2=?E]FALW[#M10LI4'R[!"P$Y&=<).VZ M5'M@!A^RX5R5Y1?SP'^L!OYGK6-$"?PO.&LZ90V\G=*A3FG'0 0-1!M.6FE2 M=)>3]F:,M7G7_>*$H>-3/1JZ.D3CE59%N>$\%8V[O6ZN9S$+@"YATW@[5KT! M*CM'5;?MVW TBG9>%=CR36C2O.,U6):=3\"QM!I.1-&:6XN9^79$S!V11"$^ MWU U%D?7_ET8 !21?!?NZ=J%3SDA>D#ZM4?ICY^*UM^FHZ2HWF(.$"XG9H'D M-)" RTZZGQ >[=/5^3^8I>Q=Z2RH\7'MG3#U'MT>Y( M'$^WX;RT0@S(&C24&; $U0Z3I4,RK_N[#*WA-^P,M]R Q. MER]+LG>Q>Q4&V\SQ$!M"R7$SQ;%G3O.P#4>R:,]M/)+J!%$Z0R2GB%9TCOF# M*X\K4!=FG+=#JP_BO9.2U*5OP_$I@S?(09TY1T^O+ITQ\8 M"3<^A9\_O$3N_ZOTC.ET__1=Y&UW!'_W4=/,Z,]4R:$+=DK7SMF3^,AY5M(9 M>M8!! WWGW2&S#!S9D.<;O%V@<-C)UQ&8Y#9;BC1<+E?X--DD8Z<3B,"2"??9J1?C;9&!J+@%M+=R?9Y^_L"G M7$ZI?LIROL<^@@_TZL=@ICT/?!=L*6 HIKT\%]3N,X= 1NG#!N,X^N8[>_KT M8#?+(QW%.Y74&1]]: [+K::7G/"V['>G:8I;C>G0;1=# M^Y"6WI+2-,XCWXL:6I-X*0T]E.:_CCX)>^T_B/ZCF+L=^Z4AM;\Q=8QC\ T= M/GZZPUMK:C)CD="*Y;DO\,I;>O$ $EO[L8Y;':8_1GCY81T\?<1+EZ_%M>]Z M3YX+P9ESGQS*U<]"5V 1?F"\,CXKZ R[D;F I2-PBNLW3Q=]HZN@ YRWT[+H M&]#4M7H,_&S;6_)XVL8>E9:0JZW?A4[TK*J?FA@^EO0XA"D]B]!_#%.KT9Q6 MV);GMI2,WO>MH=J1KE^.C8^$XKT',44Z?[F##=MN?]>-IVN6\,3>VW M "W)FUJ#HT(QVZY #^*F^#<6,M1VS0Q/R-BWUBG*I?4G=@35XSA>.=&".5#W MT>G:<7:^"]8^.CA V#K9%';O8<="(W&TTQO*]IN@V.JBY(AW,[U ^BU MST00B$"O7I>*'S-(:UISBU$/4TT327.2>8E!Y7,7>;RNO[E[L8W]HP-;'0G: MM9KTM8S8LWX<8^$8A16CIZ7"KN/[6.>V%4WS'M,I['%'S3'7:PPN=SU>="M[ MP!V[';<@V\FR6[>WQW9<]L,.+UE+0B8M@9W$"Z7YZ%R^ SANK5AO,B[/CJ:9 MTKZVK*_'6UC'9D759RD=ASVPK\%O+!:]#G=7(PE+UKD.+%3UM&7O.MZF-4Z- M5/Y7MV*:ISLNKF7)<;T\9ZF:NR< [89^UM?^51 N<5?>ZON;DWCH\QTQHV]7 M!BJ[6M7/NW/12,2.KMZ5D;K>8]""N_+3GI8%C;@=,RVZ6M:.NV]*"S+CT)2[ M?S_MJ8U.'SWBUCN&L#%IPJ&#SE?E1NON4D0':G9UI 6^%H [J-V XBB'TX_?SG] M_$?&=!FU(:;[&,0.T3OG(LE!)H[#"&N>>(%D_<0)-+VA/XG6,$3E[+_G,X"& M"74OA@X)F>RH&")]7>PJL&_)P,$RTY3^VXF#$DBIEA' \)LTZE+\XJ])E"F= M&[ZF/R;?#9OQG[ZK:?C1UJ2O_64(EL,+S/][[1O= M/EQNZ%CE" =T1BS>/IG)G7,H8: /I1%M%).0YCL6T^ZOSYV=1^\1)::H<;LJ M"6AA4H8JN]CC_-$?4K;H/_[*P\WI$QUB^N0$$1W]_WB[\\#-;UA#8\UGC.5O M8/RI>;YTQ^@17GGQ+(Y#;T'? M]8HC7][0VHF>KU9JZ'UJ.Y'B_B']E5 ,(/XRC!Q2<<3[4-2\*4GJ -6/<>AM MKSR?SLO+R*',Q7QXI _7&27]6]F6'4/&Z-<+L4[A+@A%^AQ]V,[AN@P/M9]Q M?2_=WS-(LA%\?=B]"L(;*KR0!QQ364*-4L]\Q_4]K'TQ(OPXFBVB.'2653=] MH9FU"4.XC.=ZH(6&10\)9LX3@8]R=B@VELT>:Z00K4-86RBXD5+E_7#A;!VJ ML3\$^_4F_MDA^RKNF_O9VWOL>T'(W\(,Y&U^ POM-'__U]L=_0CFJYD;[-28 M/_6++[31/(?2?*:R8]W4VMYV%J)R^=/)W80/._JZ5JH[S3WMLL5O^HM]"'%? M])D-7/;MW-.;(?26#,V)MIH].Z'[4TB_N#I&.].RQSI[Y>;[F,K2/B0,5K%5 M:&=/9 2-Y3;PETZTX5'60HRK$@@KVUM\PY?$B2(6;\CB=BL?\7P[NP?EK 6 MD::7TH>Z=+&FA^9G['O M!N$%W@61%^?7O*R%O<6C[QG&B>E!Q*Y5*$(M.UECIL8%DYKBFYCK2,3>79#X M$-B+ME_&[*6C=!%)=*-L=0T*T)I@\T5>N$S[&-/MBFG]XMB<)8V0[Z MKW0KZ#_^*CQY\_ !AT_>$L]>O/P'7]G,VMFY@O(N^,9[8N:,3-3 V>&K\[<@ M/([P3SH",W,[EWCI9O[ZC11&S-$.L21IK[*;[-@[V\>;&^0W/?7Q#EJ4'JJ:A MM>45$7"9_,[<4F::6)QH)MRC7E6J:#PB>P.8B-H+5.W[:S[6]SCV0CQ;KT/F M)1?:,X1<; 7 7-D9;]'+Z(/V"+YV0$N7X,\5$D9Y.VNGYC$("!6860395[KY M]<]456M[KZ\22WP1[!?Q:D^*3G7Z4_"$0Z_R^NE,QK9'@P/D^]Q M><,1JA7?(DQ/_HVWJGKT6G6U&/+!DRX/]8[BQN9&'<+G&+Y#0A\$_/(?^)"; M:W4[JX:\1V&;H_+[$FJ>KO$9=D"@O_)>A.^=:FCW]&&N,?!U(#*F**)<_$^# M;[D# 7NO*#?0G 7^/L*1S%!A:NB2_Z/JW6SN:-7**"1!-3RAQIQ8UEJ_K$L? M(GK2J?;PY$%UT"B-G$LEC5);=.N^([!U7FYW)#A@+,QH%7X+PJ;!G+8@6ZU] M[Q]4G68F@0Y649UCC>B>$2KQ!5YA^B7)3 ^9Z)%%H6N\OZ=RH1 0Z?M^AE=!!A[O\H4>A2!TJ1P0'IB1&40MT.0# M0J>VEBS6GJQA1C1J;0-/J/P\RNUL^1::3^(O0?C;"H"B9'YNQ3?=T%CSK!0I M5B@77)@5B8O@C.750&5H?5FH9!]*1@]!]HZO. _H;#ZM 3DUZN4U;M]"!M3>AYKVUN[#BL08=I[,#H0L.EB6F+LLON76RPK M9EWM=6K9WYXU81N$L?HD:9KE4U=]TZ5M+8ML5#!2<@AN&L($ZON, MBI4Z@TMU>XLN;\=WG=#-N>(%P(6L<5[I[V[5V5[HMC03)Q@?]5IC=?NQY0KP M2U$!+.V8'U#27[=TSP]#)#R^3%2B#^Y7Q]^O'(B_+!?SVG0;N:O\E]"C"OQJ MU<]3GE*Q:/XONK?3K-9:KT:KKA;-;TSOA@@,)_P-*U]\0]980S>K!W/)2L"7 M6N[KH[!:=M:>(4OE57!?W@)@-#> "-^E/# S]ZDRZ[U];YM9-]*?=(OC^N^E MO*WN):>W)_WZ @(QEV$AH[V\C<7E U\==J7X2J_(_7;/PD4O\,I;5N;^M>@X M-G&+1T]TD[)$'WMW#O-X28=UO6!5WM9^D NDX'HA2*FU.U#=WAH+7QVR@T7T MECB7CWV#8_KE0APGPYV@KQ7_IL\"WZT228ZE9HU]Z85EY@UA767>Z"Q2*#]W M[#8#]+8VQRK5]G3GG%;1J/!].8L!*E6+Z]N/Y3. MFE,Y;P+'EVKG1;/.VMS;GK\&XA4$[F"]QEK6TJ*;R7'34+R"+:U6N&_7UZ;& MR$,PJ A.[Z4K$CPW76&U78P*;PQA#8<[2.^$C)** (/29MK#AM-,4PG?71XB M7-+.GOA(%3$7,)*IG,>0'MG+4YGEW;K;V"(4NH4C# MB C9K]124G9*&'O8D M H B2'#JY^&]M][$MWMX#.>K]"2<.X2 ;".]+:)AU3;TI3JBD/ $G:FR7'$[ M"-MR$KJSXR#]CC@B!IN-6W88RYI9--MF0,=J!;?RMO:?6G[M@)(=^ Q.HAH= MI+Z/C7!C\1_0IC_G)EW?=@PY+V6A*FF9 !8KT9B$?R0U[8C.$J6G!F0BWV9\ MAH\F$TZ+CE:18)7"R0""5O"91&!I2K20-HU74$WWNYG'KYPE/R>("] M4C4D_T&WOPJT#:0[[!BJW47;ZM-9U6IL'DRA*AT5**9]4>,M'6@=.MOJJ[?0 MQM!3/:.[Z,).7A$G#WY:_+O]R+FLR;V\RRV5C&8)<4.[@(> M&'D))7XBP.BX\2J3PK21M^D_2?V(U:X1I8WN2_O@.S77=?K7<8;B*KX'*E;@ M<.E%E4 )1Q":'@ZS"@%Q[7,.J]9#ZQC6ENIG)_08QA7]VFNMLR4-;9IKL!,N M-Z 6XR=, J:\M8F&;=/3J+.!0U9EDA4K(T6JVPX@X,>R[M=L'>(&DT!M>\M6 M^\2X57NZR]N:36V&BZ-TC?-_U;S;":S,51 F08/S1100'"UQA5^XN9/N69+E M&?URB7.(SAR_W$1;T]#:*?P)^Q"23"^W-_72+1_SJ$&6 M 'USDIR_Z#^[<] M=R6*N5:'=QU'2_.9RM3F>:32PVH5G61S>H>V-T*;;2,U^=U1.>:$W*[\#,OMPE$6PCMY(T*9: M .+5=!@'>$('G;6YWZ"6\5*)L[J=O>7EUTPD[QF'-+IJ:GJ,P(D/ 61-J6ME M;6TCY9?"\]4STJ:G?GU!O?U*4(,KF]F+M:2TYRO%.E/C4RUOJ_NFX \ZY.P M,"6O0UIZ590VM.R0."H?9-Q)(*G;M:9V3L=8CO:4-)\N*47RDY.:)\L.6&5; MFQD"^3/2<+3J>HPAT:%M!F81]2RLW8;6[2I@"8J_GUDL?NM8X[. M#N4$:L2M(4>TF4&K6G"Z0>LW]AR%(BX!0.G'H^ 1MM#$*SIJAT1]\MS//]S1 MQQ-OO67]U=VFASTY@EX,5?("_&F,0URA;E;A!<3H5'C*-1*V M_ +]% 2NBE3U$)#JRFJ5'48240\S;!4;SQJ.XB9K_2@-$QAZ3N\]NBAGGGM' MK_OR B*Y)A;1I.JW> 0[6XW-6^5:JNXP3M2NKTX,]KA#*\?9,91TNV63HE%M M Z :>AA]5R^\$"\IJW."2JF]KSUBU6M%C.%]=OBPW(.Y!3LG<'T)Y&6(DS5N9N LA MO$. 0$L\@K+MK&UO669.K#@M5)&Z'A;9%#6W2V.VZMI;!NVN\I=9KF&;A8.M*Z13UM)BZNRS\#1"*F<8^/3' MI6J ;1?KT)F,#7"A<_KC/'P,GO.*4UU+LP81I6AEDII1G0M6TWK,F-&UENOV M_2W[V!I"HW.-; 9UL\]PODHRM\'R5U>-K[:+246KLYYE\_JGIW3IE457EC;1 M#[;GXB+^JS#S\B)42KIPJ:.K(PDS''28J;6KNC)1N]C&HC>9+E*,[XBSK$[B M;FAL[^-*/"WSE1J:+ R=[&(J@"Q$C?4R>E(=PK6V/SFT^LR6/M0 MP^31>3G#/M6CXBBI0WF'Z2/ 0OQ\5T:FBOCU"K;[4!P;<@M3_:G8S?[2L8!B MKN^@@,3Y>)S2)J-<7 VH.#5T+-OI;WA::I)DW63%:.IE/5\>()Q;W7TU'6S& MX6>,0HJ!NZ&V5U,_S=_V+T'X6VK6+ONT\P!2>@5Q_Y"6P9S5/0)M28P@P;&0F2M.?L?LQI9D#'TW(O/C\/G+XM&+ M"PID:1/=GISERT- G/"&U&!?%AM9C18$2)BL?VL6G],=/=!SRZ28FJC YKZC M"HNKC9VIZ6 =WZA8LZ$9_[6NVP");6"-H<('O=I9>?807P5[WZW,.6[J8@^M M*PC<9X\0K@AF(PS$GVH%L_;]QQFODR^/1R7*8X)URLC8#P1K&814WMHFB)$$ MXF6"QB8@+@ZC5LZ(=GTMJC\".!!>"V&#BW#X5(.75=G!L'A^Y45+AW#)[HK^ M+C_C^K;C1$ZM#"NMZS,">5;>K.U%UV(/ZYG"J3]C1DCPS'PO@:(CM;J\CB1F M4X\L+\12%P78T,G>@2S68JD5.:O;V],(RFJF2=LEB^=._I@42JM*O#R.EM7= M\US/"0\\*YV]EPV5=\K;VX3#+ZL"S'-+-)03KB.DNZQ$U,NBZ,&PRSB@A\].#92@E'$% M'/ ##A?#1F2.NDJ!I#LERX&Q= KM$P]KNPR)TLL2M6&]C@'KK>UL.\7F.!3N MEIWM6;GVD>=#V&*P78B+#";)W!I@4^'56AHN^XY$[.VDK$0.<;0@+-4]SJ5M MM2/,0()C"N5::NC*M[$GVC'A_\I9,@--K6!:VM1HD%7Z7M,+WH6/K PIHO;= M/YJ,Q5!"CDHFGK?D/S)RI4K0;NXWQCRO:K2YADZC"/6$&U(!C6D1^9GO,9Y[ MM%Y)K6AMURE2A,.O1TENZ*3Y8:A([$^NGFM_%81;=@R:59?CB8VH3D(.U*Y: M[FWH9R-[1"DW_:4I?R33=@RA48"\T-5IT+K[R&,VZK3D+A0,>Q;XT)>^>T$% ME!JO0K;=V(Q.XGY2;47=C$UE!*R+9EPRCF3@=.OWIWU_W78T..>%*H5"<05) M,2S&MG;H:/<&R-Q*MT&,&[VAM9W&%HS, \;2/'1N8882DG7>D2.)315PF,K4 M^VHL72VT[2U-DMP9/09I_MN=X]'[42),P$07^>_T'G/##1:P2_P,*)&M=6_C MX,..#"1U_NS3"V'C[2ISX[OWMW>7I,ZH\\"/Z(L:BJT!CS!VY[X"95=UA72B MH1NR@#CPZB=(!"'++A>))J!J M2SPUF&4*@-I Y1\X,?4E&XZAI#MBQ#D\U1ZI; /M3O>D0AI3)F=[JHR%X.8L M=[]7MM:MMF20%?*OB*CY5_<,=2-@,X!L@]UIWMYYP5J6;R3^/8 &&0!Y=VSI)0_=X(UA"Z<\&OT-T$]#+@Q[%Q-.59FVT M7Z3N%*T[T;K96IIZV4TK;'HL>S4%Z+:0R5F5J*+33;>4DNXWS$&-,JK7M M0IOQ6I6 M7S1ZR%M,^J&7/E:2)IIC1EKUM GQOF8^W"=D[T\HF MFI'O.J&;"QA0,HDK?<.-'>U95W*!HQ<0Y?V70,3UWSJV91T5"!X:NTA4R;L:6AE$"6=$M# M*2.@&UN97V7TO?1XG"W(YJ6::$5+S?/YYCM,H%.&;9E*H;CS.=XDCD M_'QGHY?$X?[W40YJ7@JE;6'9HE")CM$5 Z$AF?R:NQ#D=3/UOQDLU[ MU)^>9MZH#.(L)<+EPXX47(E5K<829)O89VX:BC$T]]-MS,'ATF$9+0Q" X++ M^,,3T7^S2.M[+RH/9VK7T] ]*LXE!^*$1[,ZO;:RZ3A-@]]\E\Z4.5#HU[B$ M'/2ZC+CC:(TL8>L>.P0$CC1Q@=XRNR J%*8XFLS((D4[!8..PUNL1,;5A$K7 M]1@;&]'90?U+=Z[*"%@7TZZ"$'MKG]]Z2SY=PLZ1_"P:1+06!*PQ^8B7&S\@ MP?K0+OZENOU81 616"/1]>B7?T1:3K&W477F'J\9A)X?5\1JE#:S]Z5 ?CQ= MR.H0-;7%"((,*P(EX0BLN:7N[%"H;\B@ -J%TO:E/QHS;9,66MW>K(USB\,U MP%"&P7.\$:DYU6;.TM8CD^! 8?Q+X/GQS_0?5#=L"J/L2F4TZ4HM8,G&E '^ M"P:'(W9G )*\QK=[>/S$%Q_-]W$$3AC(HG4B;UG!5#<:(W'.*IN@)J?7G\I. M)$;P,%1\14U6APX$[,7@IHE>_*!5YH6UZ6%3VEMB[$8 32/+K[,BQ7*JU7)> M0S^+4?^+.#4"-GQ1%8WM.<"4.+?Y*F^*KO*(U7<:P460P)&5RV\ IGY-[^@G MSZ7:0@*G7JR)3=_?NX#N$4/.8QG.HK+RV8$5V /N)1G:EN<_EP_?3O0<[<3M M94J4E[;F7JM\8E]5(D4G&M:#YNF&W#+8?Q>WSYAJV=F>EEF/,5]KMFC7UW;A M!P4&K%UN3',_>X]:\D:Q5U8!0$O+B*00:R)#00FE! MGZ]N BH7 UH8?_;:;?E1I$;PH)X'A'(2\,].M83PZV99\6?5.-SN =0VD"W_ MBESCL<4E<6"2M-)*Q\BD8G?=$,+)Y9.U=_#+F'ZDG="V>E"S M+7C"DL/3TUP_K:;#"!ZK[,*+1[7=\U/3U3YT8VLK0UV/$8&D=4:S'NH52=5> M*&94CB53TU"WJ!%OQ3-:*D.D?QT9($"*@E27]%]EK>Q#TF:R!Z^Q5'N[9!N- M+Y:S26EIT5'[!ZG4W3NG-QBX4SP7BJK2.WH?5AN,.W/&R_D$6'7@()!K_2RSZ!3?ZLO7],;E?V%^EJ5VIOI MO[D57R*W0!;C)55'*P4CPY.P;5>M*H/;"&/8KK?F[T"4AYW[7S&@P$#$,19U M$\J.?5WST<01-06O5#6WJ#(!%$$0'CJH3-4][(N7\U52#N\N:%7TME77L05- M-<:K-76S=^#NYK4>K/3O]N.!N'6@QJY8UM)VV9'$I-&R[$A)>XOY+7$,$6)< M;FS(.R]I:E2(?-A@0IIB,#.-C$Z/[NBU"Q#@LO)Z@\!;U=YRRGF3?37;R.@* MB\_E'N\@RL=?PTNRSU\5C[F#5?P,T!=4""5!@[\=:P4@*Y)?"IM.A:4KJ9+I;+YF,3TQ@"*NBZ&[DE9 MH#9-H;VBORF[(JM:CL2H5U;*F".+0K6'T'()M,< MY%R:O43<2#5KYQ]#8%N5!7=+P@8XWG018>@[_+^IK+LP0<98N<\<$LS MZ]4_CP%ZJ5Y3&KXX2W'N1LIBPH;B(&U[F M\K;VG^7;2A3'3).QY XG. ]UWMCZ/O;7'%ZH:(-=".ZJ$D,K&MLSYS%' 7U4 M$ZL+N \@KMD''QG/8HBO,-39)4Q!A,EG&E=9_#10UGRIT<$]S&X@]C IB =% M[+46'>S9 \.UXPLA!Q# ^*YCH"_IL)?!(B@W"F=&) 3HW*3JJ&'MJ%7_8;2 M('>;P*]VGA::C"W&DGO:RQ/7Z?NXPEXU7&WE.W0.6%[:OXK6AMU;A!=\ )#TJU]J9=:^AD M-7O72U+ZP1U-#POVEQG\N$8AL0L->Y T$$^PIQO09& H:6C7**_$F->&>;?L M9-_1EP4_:T!JJ.]D,;N:&<2QFT(7\>226G-Z4R_-(N&-1P^!"Y ^\!SP*+"O M5#3?[KX*].%..0JHY_H]H(0\P_),6=RD]BZV[:M1-ON]B'$1M# M!!(YZ])@]JJF%N.]8H>^U:X4IAH*LI4VMF>+$.FJCP%[$D+-75EMIZ̽-BXG,7=8V7IM#49LI/+CR3W9/) M(UT+S]&R\SCA7O,5G)Z#RDB9;E1&D)?64Z=LE\&F91"+BI*"I P RI4@S&UZ M&+TGA?!6780J\_QR(K4/*G8+KU24+8X56(?@[*J.ZDPEE3=:0H)'6*H4=H8I!)?GJG4 MY'GJ3]AFND=9!3AQB8E_TNWCOIKJQ(\N1"RC&B1>OQOQK-:64:[O,WJ%YI:^ MLX_/F#SAKX$?;RJ#3(\E9_=KYFHE8#0U0P(7VHY-\!"KW$W*D)U&QDPG)K2' M@-&=CJ+*^/?R-B/0U9,0&^$!:>41:MU=]R*+$*: >P7W>!;-?@H8FA55CL/\ M==JNSQANDQ;HXB,IS]BJH%N#[-*-AMFDH#R8=#560LM.VOT>3P%Y@N.; 6=@ ME2M$^>^S( R#9VCB[.B?"_6VCZ=C[=0!Q'PT7^7@N [ML"A;=C:J(!? B2%E MGT7, ?+;QML]!OQLEW4@8!L\$78F2<%IRE*H^GZ/(65/6&XJDU15 M)8FRB0EL;+8G7$-5@O400XWDLTA4^VZ16:,,9NP>NFC; ,40(N"!K#4YI:T& M0IY4ABF32LN:C:V&T@4XG;';I!X<2T6_OJ!@[_\#EI97A)VOSJ@*!B[Q"O6@ ML=MX0I"8@JP Y;2-/"KTL_?&>'29 ;K#CXN8PXWFF':=K4L.Z1-_B^-&=)OJ M+J,W@/(\I'DL:^*H?O?H^EHM9X#(!\YM/_P0HJ?3W.X><.02DS2KV.M,9 MVX-5>&,:S'.=R=B[-;'O!2& E3SB<'L;Q)6'M*RE6;BIK4.(1+VMM"1F6XW" M/>#B53661+M0O59$+&9>+#I _52UMJ>E9.RW-9@^)0UM(IZ669\; N'K^E@7 M;F21F_1YB%I+.?5]+5ZO+$*P'M KTT9WQ9+](L$,%QJ)A+B%:[Q4K\7.WR+VUG4;S/ MOKQT'9/:FM(I6RGEM^BJ^_-G$B?WX5Q1Z0VO'?* XY@P4^AL6YIOV-QI5.#\ MJC0P@HUFE!7QG=6=K6H@LH")GXP&PVM0Z<0D-[AT7QHUT$^T6\VI.B7:WJ\+3K M7,8<$$(O6T)_\M=_^@[[I]\>OLOP2R_H8!]6FES2P%?IVOTK620/4Q@0S%>' M+L[S\_,'MD"P-E\^??K^(_SY8XS#"-\ U>_^/:&&?@5ZB!'\___M8SKR.'D@ M-J=?-.H5-[\U0S]PAGSZ%,?8%=LBZ:$P(3@IIK*[)$FC=Y+X>^3Y*&'R?G F M><7//137B*B,().JU7QJ7OP$)&4Q+_$R]/FZY(@1"E9H)P9%CN\B+(>E"\'' MA17!S'2('+DP.SX%UL/AH;G1*U@BDET=-%\A.1RBXZ%D0"1'I#_(XX+$H*]@ M'5R1"&B_F]H+D0V%DK$05R;9"B@PK2>(CGZ"'H'>=)>C_FGHL!)#+4'J M=YBY+FT3W5%YU2'_Q]L!LF^?5X%318+L">*$$:6,@/0T&")6>>'&# VP"[S M5WUUXCT+C0&DAPQ6="_IF(^ ?!@";?D8<#X/,,H$F2-9OAAU),C#&\L&0# " MDD-,D,OY71GCEMY65)Q8>?$LCD-OL8_[RI>4(.(4D4IR_$R0=/X[ M/G]G4O//G3##?"1!H:N5"*MXV& K_YSMX%S&%6W\+;)LC1U_XJ"+=."9Y)G\U/AD-B/)0,B)01I\XRZ<0M MXJ.A7V$\Q 8BH1 >(H2JB? MH(BUF1"#I"UO$^(IKY!8XTT)%X/8GR0"I,\I%+1^'/N<26:Z$?I5$AK>W94 MTL_#,C0N!:;^[%!L+)L]]M"T4JIP]W&ZB,\"2?KTLSFPI:'%!I-]F> M"@ PH\&7#^3,-%WL<.%LG36.'H+]>A.S). ^IU=00Q$CAYZ WN08$IO,!'*% M\ F2W'':)^AG$^SQ<')NTV$Q7?U,<$",VVY&/W%2G#/ZE9,:5D*&/(QE/%_- MW(#%=O9\H#@YN D<07 P25?+]*4S@4][OD*2T*AGK1[SXHK#S[.';^C+I\]_ M//W\_0G",J05_<7Q]W E?SZA?_WR_:!,7N D8'B^DLD71[U$F5LWI0K;)>D. M_:)HYHB\)F9R5X#*%#V)"T%Z<"\S$STV 7'I:>'R!C,A8UA!D@ P-2TJ?Y MNFQ,%&\PVK&!F4[%A%07A*#(3X:XL,)B0\.1;(* MO#4;] 2Q80=?BWQR9%<^^:X^Q$X8BP-PAM>>#YCU:,%MUNB=YPMCQV 6:,W\ M7/HRY.62QWU-D96,N>8$*90&=Y% C C (#G1AF?Y"%^$CO C+-P:2?31^+DI MB3/B832"*N)DT3M!^+VA&")MG)$V3 UOA5H2)XH8H@1#V.HGC>2(C7[VI&+B M1IQ!F4OK&""HF[[AYD#UE)%%ZM!(&9N9S91V8GS^X!H-4X>$?GK:MI"5_4@[ M<*S#HVU+_OH4!=$7MSK<^.4D"M(C7C6 M)#/AB_%/.*<]&EKI.NR82$L "X9KFPOUY48 RO@I AYE/E08_3FZGFBE_8X=0-^[X'8##O ;?-*(!$B]H'\U# M= #J2Z]L+TZ/'4M!\2$E*"8G""A.APM2SL#@^D62SUW MUG;*X;3[^[,SF-X9O1$^/O7?W,X1;QP?93I-?#&(KG4P=CK88W6/=R(],V// MYW;/?A;'E#2(.+$ Q>'>B@GQ5FK?>DV<980TA7+>Y?(P:,AE:LIC@N^=$\8' MY:OL:^*2\C2CBQ3"1DQ77/X,]O'FQOD-SWU\0Y8:8HB ( **B))$-S?G9J)R MM#!"7@$/>>G?/"_RJ[D+,<#2,O#T?K(^HX-B(#3F29/L?!_-S#=35.Y81Y:R MW)(4$PY"*A>X',+/8$:6'J9R"E?"ER!G/A8%@A0'L,31K7DP]LH/P9#8*!'R M;"S5Z1['7HAGZW7(1$3AGE\I98_ZR6- '3F2O(@R .%LR3=M4-%L( Y)AKF$ MLI##@#D3)W(@YG)/9TLF!PO3*RVNUL,ZPVC![%-JABQ/CT% H@M 0?7=K_0" MT:#; TE0!$P),YI8(.GLHQ,$]-@SRR@:XZ4=I!X ^#YAJ)W09Y]D4;P(404N M7%-M)PX0=D*()XN*T8139UWL;PG7YJV!N7:^4LP%_FG'BE?+85ZM$X2CV-LR0]Z>#8$('6.*?(IS6.O%.T&-IND MG,-T("1&0FRHA/5,$Q/+4 (,FL,$U0$M(;-B?<1B_9G<2U4V'U+:/1\%262C MD^*#DA0?='!(BN%6(;E>R^%1$\;%, ;!+$0\V%G@4\DB$G431$%R_H_C]5,6 M B8HFPC9%#8Y%>RE)S">8D55P]LX@&CB,9X(;VHJD6I=E"[N$Y%S:"B12!=7 M15=%Q+F*U*S2B7!#FK=G:(LW56CILW.7>.)2>'2E9%M/MP4?0W'W9:#0TRH) MP^9(#,4LR?.9TD\A\"F?]Q/GL^C,:+VOPP,/)('LE]L="0X8BTC8BFPSPNK2 M,-R%M! X#P'J'_)>EC^6AL2=2'>QR_, N P XY^@V985!3 $S504@$2@@:Q5 M+R8J:SCRH-M^X7(RE"%)S45"[A!2X,1Y;E\N0"[$I9*KS(,E9\(*9*E&P!#K M42\0-RW%T&L@D5<4U!3*+OV O0A*B.!(7GI:S$45V"S39U)L MSA$S(,4#.YAX?9XP=M7+R ME8 2H&U)?"I,$)Y?P&5X%(>;M6+;!Y0N]U(+0]7PG/+#T M(7 50/120.@0:\E+/\L[PSY>L+'!A 0WJY'"W]BL-TY_N%WD7%!8A2KE!5&WMVD"Y-."Z7SDF=*M&=3.T'9J22WTY!! MZ( $(N6PX\//[S$W.W.; F@HW(([< PZ>RU^"<+?Z%HN\0Q0G4%\Z2=/)O20 M)&A HM3+2>[!L\>1XIP3UG7N4J.G#H=/#!?E:@]U!&7=P-YU"+*>R%",PYS' M*S82=. ]>%OVC^_/-(KXS<<:K&C_/F_D""'.+TQSUV]8M*)CWG&)#]9,P:W MV9/C$?"97J7G^VX?PG?5]QE+2*,KQ0"')/7)L"75[%?"3L8DDO $M^I2\K0; MF">I#Q31E!CZCN:\;)'+O.55G[QDG.ER1S*,9"'1L$*[ N5ZT"R(J.5#E)MUM<)?O05V+ N*Y+$4D M2JI\37852-D"R-RKRO,Q>*SL-@AC[Q\B3$B4+?77+#ZHG[E+I0PLNG@1\\!% MM 3J4^(L!!NJ MM5T2!.LA/SHG+%9I:2@$3P]#RL?-"$QBUJ1A!\R8\A^=%Z7NYDU/#+[4N*Y6 M\S1:.Z*,K3X1S54LF0E3?H"21$[HYC"\6,:10T2$=<^PY!0;.T);Q\7F<40T M12'5!)'!7@V0?\$R:AC9B>0PPU>04FF^XGP9BUEN],<0E'K:CIL MD#P'DJ#)FM[E]?VXW#A;4HTS\GK7ARH6BE?,HDXZB"GI>S"FDP^PNI"AS&E3 MAQG6J\D__DC@(#&K8QALOSK^?N5 "8H.MNW2%R.Y7<)T!&ZXV"IC3(;'.MC. M5\4AR3 7(84T MKHZX29R[O@)9.U.SAX:+!2*GE">69N.(0:;*8/FU:X7%,CRX&P%5<3@_#C@AFQ,FLG%",U!W0_"3 M6+7*D.U.4$+^!(D!AD]^80%M *_IA+]A17;5 $K/:3,7U592-YA%I9NGTD='?6;LGL>@+H8ZF6 L5FD+R'X3&;9 .\+5@2^NOA M4![4EAGVP]96V 1A##!/MX$O8V8%OI.\]6;NDW-$#DN^X (,A* 6+/(#_U2. M=2K!I)* !X8"NPP_Z[:,W21F10PS46ZSEH+,#GN2Y47%#@^/ MA)L@=]SB^%CY1G&Q&/&C:)FU.(0*K1-T"R"5 PLM_+11=8S*7U GBYX A_0Z M4XP6O?LEL5'/G&0F?3Z-2>?OZ?R*#ZY8[$K_&=6Z]ML]*P%%-0IOZ?7Z M:"5UE+CGWBD#(#'">T->T@%X52-7%,9<3FYZ#'$GSD/LA''7+3S#:\^'%NC, M(6:>F&&XO_3=KKS3+I-FG'3BUY*/C^,*ZS!'3XJ!Q#52X9NT ;R';Q$@L":!+R(M^IAR6(J61D?A^.K[B,.NF@-"&(#!4I]? M%8O@JDB&F""S)9_Z*V>5I%S""$@.@18'].X;9_F] I _&YQG2(L60CD4XA.H MP5'_ EA2TF=O-*/ MSDN?VU/5D/G+D1D,99!5F"48'F$ZJ"&KU]!+46$"$Y)%9BD@RV/B[)*>FSZ\ M<+6(KWVJ>3*S\LVQB0C9R!)(6$MH&DU#T,0.L<\)O0WIFQ0?[B@!4&X@)W4' MLZ!GH\_U(^FR:Q9+HB?(QX-K[EI9RKY[KX&EHBU=4J?Z!M!G_%VF_#$GH7$S MNGZ64P-Z&X;-VLYU:PRT"]9)*L/HRY'3W-@R+)#<@5R3 D MH?GG;)8M03'6(;FP2#H?SK;W?]*H_1,!NEIY[DL$G,TO">H&@#C M2A]6L&_KB-4##7=U4HYBO@(YZ0KDPIXR5Z9:!Q.^&%4# M?4>,QOI'0PJ,!1Z M5@+E-E?.A2,J!@,R&)RM@5/?M'%$*IFAQ$8_^T(13Y-<)&9^/_9)%4$9)&\).XFQE/NKK/'6V)+(4X4 MS5WGOK37R[!ZO ?)5>6.<.(6!&D_ -HF$_<-D]KUZ/G@715\:KE)-@ M5) F!#TP*3&"]!%@8\/?TM$1'Q[,B E6ANQAH10QTTR@' O7]*0ENV=,$7=Q M0V*A#!4D*>$I,TD2);^LJC!G.QT(W0S/-;O$J)[I1\01%7;9-/I!M2;DTJC/ ML3- )CSWW+-AE(&QM()O18-F'_2+"?]_#*PW)G(^T3X_G M.:6&&#D$] 9^HI7-4E+ J=Z8YI/U=:OE$L&]3&TCHU#(R95>;I6_?%F2O8M= M7NLV>9:*+X#V1[#"G(_DC&2AV\Q3*5\""!43CZ2%U]'64I8\G$>M8O&U-?VT M0@)G%&W[WQ\I(1,WAZ:YYVL0&N6A'5I_GQ C$2Z.G!AAL*BL1E%_H%_)E=? M43'I0>%KD>0V3)J[-+\AMV>_BR;)E;SRFZI?#'OCQ5LZ[CITMKWD\=GC5R3H M&*H;VW/>^7O:X/S!ZC*C8[LP_A5QUKU"\B0A!)1&.V5BJ]V4(@P\"?'+%/C?8G9\_AP02$&,J+*GP8XEB2-! M'4GR)Z!-?I@HBXDIQ4<5[ %W$V6N@,):M85\![=LD&$QLL\7NU1ETW"[G)_= M(86@F8W2P029^/QS9\LT'PV/LKB#E:!_4?/8(7HY:M$N?GD<.[V4"ORR%7.D7>P+6 M6!/X,;VFG$=5&W+"7/L\^(X&T9-2,:0M'SU?,IVIYE5Z2FAX@U!-848E)3FZ M?,'ATHNPVRLG4E:O!^52R2E'^QTK#\.'@+_R7P=\[!->W=MNE4HMBR&E8:6( MC%J:1JTD X'!I<5F('3N1&9V0[T9/I<( D_OS%@12^OJ*',_.Z1-Q+S9M/E* M\A6^]OED^Q4O865.>=1*>IIV(N#\=2^$OK,DEE&43S5VC'YV0@\<>_=4!NF5 M?"4)(:!D+-GJ'D?8H0<-(H_P$R8!"W?05N9-DF?F'#<=P&30K&[^2 EK"FUC M]=X@0Q82\^:KK\[?@C !:NAS"!/DA:'/7^+GC65BS6P=8DW15(PN2C)V$LJ& M1">-7)'7QE")8SY.GCKD2.*#5_[)Q3_WAZO-1T%/@@%2/O?!OWZXNN[A7==@ M<8:C%,7>DFK\7[$#T5]#9O;VG#FIG;296Y=A?T7T\[L*PJ15/%A#6SIQIZ5>:RQ*4B9 CY3#>/RBU1O8$38XJTW;-A M'8N\]@PK=.\M]LP$V _"E=%#*L'1,T"R'Z'@B1U!9EP:.2JULQC :KC M%6P<:;UG@\.12X\[U36^^5 G[)PXWA8*Y8@?W+_M.1"5F%+/ @C)@$R[XD,B M/A2B@R8_)L,._6@978EB"D&Z'JO">CAUZV&KIH+!=4J3$?JNDME"#$:6B.A8 MF4%ED0L<+4-OQY/X'IW06ZTBAD#EK;PE$R[ZE>Y)J(-W->;TT3(SP,3X(Z6L M"=+H?,JLY83*"A;-[%X#^I9$*Q;0TJ">\?AU38AC$IRTI$JI?>BQ(9@7Q[H6 MB2R!B!8#<_55Y V8PB:["V*Z"YY#KO;Q/L2Z5=F$/.+T49EN.SD.R6MF+F_# MM,IDNQ3)NQ#C%_ _,24E\XWWLL-LP#'&0KA(1N;8A?A4#BCQ,PW<7\86(?7J MU:>0LAR8P@4'*Z1,1D&T&!Z>0U2%9F&!:CA7'SM#0E56ILE$9ADR,6AD+>/= ME*R)*D(\I!-YC/)T>")M=LH .,P28S<"- \]0;K9PI",.$?G4 -QDPA= Y^7 M;@:SCO;7QR IXRU;!"JA;1"!I!^H?AY[Q%1D7=_Y-V&H&(I0%=)^)/4,JA;I MJ/N7O,U.HFN%$,4 :>(L?OC'"3$FOQM!,=6,@"]S4%CW"4 KU+G14'XJ)8B6 ME.(DYD\*4P=BQJI/T3<=#'S"A)=4:X(XR^A(CK+1#&* NDQ]/MH$.\[:9L_0./X*--I$BP37=P:@33D=NKS((KGJWM>J:V_B\!P]3 M9)B1+#11L-V%> /H!D\XS=R_Q3$XY5[ZAPME!LBBIC/W,'?-O9@,'-+-4V57/0.L P&#[49@CURQ&Z:P_F]\GPOQC=T-NXU_:+\-8!T< E.8V& M_7;K0++"BJKU!+<9#[,R7)1+I(,ST12):]X6^IX_+(7I0GD'9V,9'2!"3-"RGBH MD4%F,?>PL]LM#J FI0&+&T?M4'QR\WT<@2O8\WMARJIH((FG,4AI3XFO8E2K MX"[C>#Q!RA 6 E?UA^:I1L;B&!D0/-B[3':]='6" MV% \%M-LY>PKQPM_=L@>*SGE=P'QE@?^OUJD:1@$L5&R<'O7?A2'^T'K40_. M)RFPJ(QP@CAU]*OXKP'Y.0W%I%N HSB34](E)+PTS4E2-96&VIN+$DDMX:&8 MR\3B^HW8)70Q1MKP-!5F,IAYDB,KJ5G9P"DJ%=$H?ZGOS$<05.7AY*)&V&FT$XEM/+%6@1/?G,"1,3.\I9_.; MTPD/G1M\_(R),MF[L4^VD,!L8-+RB^U9V^SL4$Z@3XFOBA)G9LIDY?))A-]^ MYKL]*H0H D(^;<202# $5VI1>^ !A7B)A1;R%'A++"(F9V2W<>@EC?$4V23E M^V8RF%5"_-*WU&'%>AE FKYXY!1"F#Z=CBC0R\8P%AZOG5G5X2)84M&1I\<1 MZ;9SP[YUP9/G?O[ASO%=O/66&M5Y1OGT\P](TIX0'Z2"A411-^7ATLM67CBQ MR5YB+:024E\9=HQS+#%,LVA=\[;GHR>OV)C9U V;D8^8-S%W)FHLPC<]"X8W M.=EOAJ\8#@4!+ZGP'A^8@<59@@1_X<2.AMAA3A MKSC>!"X =G*@C8A?Y!I@A[>,,@/F%*0GQ1'),,.)(H6J#9-[SN(]1D6Z/K1V3JA\W5/ M")A^M8 KO@0YSARPAB9: ),]CTR$4H'<2H7TIX.1XV&,%[9L_+V@B1A1)JE/AA-0Q,7!( M3U(=K>\6V*KJUF/!*VNZ&0FB2A.%(0"BPCC/\K NO"?/I8]2- \OH.Y+9]S3 MTE!R&)E'2.SI3/PH()[+KHIHOX@\UW.&*_5F80E*X]"5M#2^$I7NC"1K+9D( MA)-DIF(L<-WXFJF5'OX9#PT9Y+R8L;W\% 0NX-4]X/ )P@T? M(9XS$7C"UL M,??#PI?H9R.;+VX M\ADFT[,^55(-B# T:=B>$?-0AK0R20Y(?O*,$E5^#U>[ZEZO.:'+CGWJ9 M_GEB$$_WG*JV=+_///:2F)?G? W# ^?AG*4@BH3QA*Z MAFL&:^1,-5XIG&TEW>FP0EKLS_!?1Q1AG!78DCIV7YT8,A0/@R#$B:H]:3 B M&SM)#D7S!?'6CA&=V\ B))<)C'2""H)M,MP)X"DM8!T\%Q!.^."FD>1FKNO! MTCM$=^&ME#):&B_)K)H_A4'4RV#?%([.!C DAVCG,PN]DH4\/4'KT . MH&Z>2(=M&Q8Z,\4S$Y<; T?Y,^YG:%7()M<:+^NTP<-9*'5S1%X3,WG 67M, MW7A_WWOTU=,)Y);0G,3,26[2QG.\=3&2.U16&$J2^%8K^J#/5Y#$OD M57&3K^!EA:L$#(V=]/ZN,S.E28Z;K;0N&IGB!5[$*:XTLS7WRIFCY!2<:F&] M'OP>UL"%],DH-5YN G]]^HC#+O <\[6>^+$07A N\SXR ]B=,"T@QOLXN&* M9:=H/3/7I6VB<_KC/'P,GGM%)PFT'D&3*F[PKR!$0'<"K!![7+!,!IQ 64.4'I ,9<&O3&V&_W+(RM MJMR;AJU*!T%EE=]N#-C_!V-42B#S\^N*BC_&-I-'[/>LVB["_LV5:9>Q#/,5 MLXQ+2%,()>J9!<3HT<]L1;\O,)(#101UFB?!4FD>&C#D2=!7QM"4>)'*GHQ> M =0+QE*"8WL^)$O-L0"O,V:C?\A&&4/3X:=;P,;P^A=]>);>5P;K(F!I@,Z M!1[:'C9#FGO/+*]R?=T8DA8=](DR''%+&?W%':;Z$ROTY;NRG**HN-Y'J5&'A2K:2 Y\ M(JM/PB^3P=E2)=4 M^":-9-B]V(/9D0L++)+H%C^SO_2L&)D6?=4)V-S;_,]L+_-=\RS,Q(D M/?@:M+\?>!,Q'DH&-)/LR])N+W"T##TV@9N><9DRL5>D\RJ4C<1C)LR)-&(J M(_04X#-(*D)&)RGUZ3 B-R@E:$/IR,<$*TE[_6M3E60>&BCVKITE4N!&*HEJ M+J*-0#3V^OT2A+^EN6Y]]DM0DCZZ$<^:9"=\/OH)YV0,DQ._]]:;>+[Z%O'O M@>J&62")>Z[AP<2N@I!*Q^S/O?0)-N1IL#K=1^+39YHA!]>1M_4!A>G(:$5% M+I]*YJS-P 68S"P(4==BOCJEX_&+ ]$1!:I(,B92!D5T5*:EW+R:M7;@2\U+C(:E.5D*&4)7/3N8?K\9DR-.6[S^_T:]C=C:[C/;:P8)6]\ M>#!C>A7Y0U!BD=7^_,4!'U]\2![=?G!BN9.M9"L]BX&XK\0ADV>U C[N7*31 M>SZ2Y57EP(!-@,.GZ>\R*6YO@==4BC,'$0?"T ->,F2ZSU\6CU[<,Y@)" !W MG[^\6[Q'DO28IT^LS)Q# RQ?'@+BA#=DV3]>AA)#C!JBY,R4^NP]?S+=J>>A M&(RRH-8NH\]P#NMD%I_3.^5 WTIFG^]5ID'BFA2189P8R6&D'\!,S89!>%9M MY*:Q7 ;EK*8.8:L]/4L*$XJ8VPFO0DGYP59K<,D!S*:\ *0[WT/S65:]K7^5 MAO%4HNL5T%M5B\Y0."\SG=P&_I*[UQ276W]!A9ME4N)(H6[LY=3-(!D!;[P2 M!/VP(7;]";M703A;TD\\Q%?!WG>/RBK*5X: :T.09S8V,0!*1Y@2=^JM^'JX M*@@SH<*:(UA;#=ESII.)*W)LD.R?,C(T ): MK_B[31B76IA]&5]_L_9R#,T*"9Z8_ MP),?T7^<;H,G"8$5+.A6XQ@C3PX_ 3[+P"Q>+9=%HTU"&R7$$^>(!2.-;E93 MRTP]HV8M,?JX),W,F8AWN?*BI4.X _6*_JZG'SZ)@>%T94O ^^H\.>FI"?%$&FW5^;< MWU*[U*,#*.[N=:+6+F/OR80,J8\G4F0GT=+-:P5%Y(M$$+H*E"@ZC;JT69U"+\>D M/:.#O[?[142_&I"%GD1H?2\/:$H/,8)F2M"\> "D M!V&&/*:P31EH!",V&0Y(R>0-E>.YQ3$X,%E:AXO=L\.W"(KR@!DE O_)C.L2 M@-^BPQH.OM(5E>P6B4\?*JZ/5!=.(1GF;Z44+C#\PO 7@.H.?,5BN3 ["V-TZ%/0S[V ML,#6II>A1,-]R*R ,BH2PW(<;-/US TN2B[V9=R+(^^/KX&/#U^=\#<<7^U] M5V]@K @/3$H#;F$PM&6CH14=;F+2#O@+>2.]]'MYO*. %4V!2+0)*"B X M_%>KDP>2GSY*B9JK1JT@.4$IUB>/';_06ZTBIHQZ*V^IH6I "A?%:N>R85#, MQT'+S$#39)>4CM?<:&J;[EY%EU++U0GH3;JJ9/LK&?3 MF'4^D/]%/^-HEP2E,GY3.?'"?%A0:25/!BV0:H+[Y%J0(?7)"&D\ MO0V#X 5>X9">.*$O)_^1(/6]O)92"5@ M>")_0"GMH7E30%GS>6>WN/O[JPCZ=D!G-?-C'417+S_%"!X5.;5CR;C=_1RS!IS>?P5V=:-Q(4L2U5++Q_:"X 2O]%<*J$*6.<0-+\ MCD-BV:D5VI?IJM*AS)2@$)X03Z37'AK7H_N%FY5KTB;Q-D3UGR)@?G^T#5%N M21JQ!O<>Z.6'J*P(JJBL#,"@&CC/#OV*XTW@\N@8)M(G8OZUOPK"+?L2!DFC M%MFI? )(F8&B:2AS>!UK(;:^(^^F@U*,+4?.BB.69^W+I(D[YW!4H=R,FL*)HG>2_'O0,9.T##&$(=%!/ZMJ9K/D:<=I M38X9TFG+ALP5O?1CP QP7=HF$O^Y\7S\I5>P-B.*!+D3^0,"PNCQ.9@$0\0N M+R7U@:BX.@S.Q/ M_SU5/L4VJD!C,OW#*)9%.WCP;F%Z_9#OI\AQ=_SW"7,I5:\NJ.^#QF*JX )W MTA9U0<^>EJHF E;@$G*\*9'IODU7.8SZ5IQZF92N@9,?PVB'%OA+D24#F@:UH:+U8'YC5S[C&= MA;>D(C5/"GUV0O>H]/.2LDQ1H?X4Q'PP:QRKERRS"EEPM)R&:.G 1&P53M:\ M- 4)/I+!+RX7:.DMC;B_DT&'P+JP0(G2-3FQ6VA>\]IDY/[RRM)\1(BS2-:# M-V>C&H(TF/FQYWID#W&QHB ,?4YY3@EV>8[+=K?GE]I\=>F$X'J/* ]L^K,M M6+EZ09+02X/.@0HN\HOB)PF+*?#D%S9%^@^?"G@$H&?HL>(M7^4"B=.CCHW2 MP=%E9FV4\9D/1

(SV+PI7+_MA?&^<=@YKHLZM@A /1[[8NBMFQ" MB_S+>X]YE#)=X?#)6V+^B2B5/GM7>9G=79^+3TZ\R0+S&,T =V&-.8Q(8LUE M4$<00*I,PI#9?73+6"&@+I61_]G6A!1/U=F1IVKHI2MWW,V??;JM&V]'UV,) M0NNZU[E(R,'%+.A-EK$&A^P)2KF],\:M@G "0-:>R_#5X7P#4AMVY_XC/7&1 ML^P;V7,G;;!+$3]O2"P;DC\IC:GX+B%5BNC$D^M-AU<-$BDV MFRH3)#M_DY;/K@5$9BNZXIJJHOSP*I@2F]>U-(H#8YHKD)*@(0C[Y!GV\1T>(C8([',E.J?GO.F' 5*ZTWEUY+")M*+R@=PM.?? ZZYHV M)Q7L&+V?F>#[@5<]]KF1D M\&D3#-E^%QV,PW#9A\!^3?@Y9TX46[0& +\&KOG&$. MT'LY;9;5N^4XO@>^=9CNY]J.LSUDTP.&4ID-[PDXJNH9/,$I0N5C(J2 M89$<]Y4L1TX%'NVR0/#88^A 1N7#8;L(2"_D.4X(<4JCG3(Q.5L%!Q[RY 2R M]8$IKPY)*P?WD\5Y#) ?^*>R$#%)M>*IL:8>*4D4'.6#ELT:BAEIR^-D4<*/ M('RB%(\>].H3UA(A;R:A:>>%>MA:$Y:DC48.JP2LG9=4S,YG<;V&%:DIK--A M:5[#2N3L=BW/A'D$E9^=T&/2 %5I>F!U23((Z!@"T"_&M_4W=D>9\#9LJ"!L M;S[RCGI!;3(,%!%!4K"/A1GL"UU,I ? KMC,O,7GS+O3&7U. Z]Q3YFGW4< MH#O'A+.ALH30V:$GG.!-X*\%"LEC!H/$!*3@%0[]9[RY]-?.&KO<$1"$$*[B M^(<;LOR*MPL<]OGNQ0A(#('D&$@,@FYNSM&O?)PI\DK^.=C,R92C8#<#?*&( M*SVT'N7A+4GI2 D;,N!KY*P 3V))4=7'$FFQ3\/CX=#7IY"W,=\)(*!K'X*Q MZ-T.ST9T%Q!OV5^(LA#M:(!-L9L-H8OH5T[=&,K(A7-XTO(.7LS^^V=SCT"O M:9/)S3@/&B]F/C X,&0'L"^21>S.]O$F" &5LA\NK,A!QU$(M!C(Q$#,)!>QQE6(" M1_:<+IA^CJT:ZFZA]68W&E<.U M[H=-:A:26SLS8JZQ!X!:;6%OX0H9_#S^% 3NLT>Z MAP*H44*"AB%CQ=%35FL!"1ICG6N)0X";T:%VY2+Q#4"T'6LY;CY2GX#"!0:Q M;^SS)V:/2WKC7&YW)#A@F;Q9;AB9$2JF.;(VFBQ6P!,]>8U!@D'52Y%J.><*@8NA_V+CL9*307.G0%BO)#)"@D(AM(\A4 MT,UFF?!M,E=!,S^DPXX-GZ'F@(6B)W(J(V)0OTL$> T>;0^3C$9@2/WNR8)8 M>?/S_A:!%O,VM5(UQ/6V+JOEM MZ$L!$@<$<-3A\F6Y ;G\UMGVPP 2]) DB(#BV#D@-B:OX PP3>5;6]QW/-- M3RH,W"LJ!,\9!ZWOF1D8&. 03[^!]#4#$@#4HDQQKF?K$#-%\!SFBL,=G'I8 M<0W%416*@V[BH!R1"F;,E662: 32/]4_>CI( Z,U6+JS82:TC55)L192O$E M+@>>.<^D(+N-\Q!C3(Y[%[-978P:8N3,!,+TG7XF+S:=_*CG3":ZUOE,J^&7 MNS$>':+1>]W\-?'H [\ (G2'7A!+AC!ZMH\\'T?1A7/H=7\J)-%"T$0N)3H% M1L@KX*$01&68%T7JW6_W3-U1ZVLFU35SI3LKO[%^R!S*+)"K3./5<5^&>JOP MWK[$:PO;*QB)!$_8&X:W@ M,Q("WKWD"^)I&.7A3>QJ3IZ&N@6YQ+L$*-^0 4L//R6)HH8BS;7,G]1OQ?"B MR6Y'F+?>(1!-=$6"YVM_%81;'AU_9 1&5MI*AT"N%RU)$%$-E]>(A "F%1T3 M>>F@/TZ4:5+"+XO0 OI(&8)1$9!UILPI,7T+G=#-06]> MX&@9>KN^)9P2Q$TWI3<]CN2!$X11 4_TPAQW^;*.%[P>93]E01 Q7-!2$ROJ M2UM6(YUU4H@=W M[S$=5EO9.#-8-GHFK\8P36?:XHAP&L8TJUL<@_#/ZGNYV#T[?(L@_8Y72:4O MT&P9>T^]/U4Z"E>B=F(9.6&$N$U5=X]72@4G7Z\ 04$1#!F")#H S0FP0;(8[/#H#N\(R)&)7>F4KID21M#<-'!*CEQGR2OC(G3 +_&3 T*^C:(_= MBWT(-7YY@!LK:'V+G]F?.G]!N9*0E 9+M0)[GPI7^,[S1>GLP7/$A^$S8^44 M1>TX0R>F:H(/PE=B5X)=XM01)R_TF!.N.0-,!7[F+09C-=70KCR"PW,GQNL@ M[(5:+#0T1@])@B.?/[$P]3PH$D-6CD4.!A>G+Q)[OI9T[92\4"P8Y@MSBZX- M(W$-PZS81CD(XTQA6L!\I@,90?QLS.'IZ1%I + ;W!G2K9Z1AEWN5_!*V?VQ M5;W2_+E/L=R5ODO@^&-A# ;X>KNC'^9\Q42!AQTYOKHQ(Y0BPS%:(Y]Z[BM. M6>#B:P0T!X]A):"P[#A#SZ%09 ; 03[XY>'LDHV.,1 MNCA]%_2!N,E29EL7Q+$)*^ 3"*APZG :<*$^&H&01 MT)T"+\0>&ZT26[[Y$%_%D%*H)+.D33F$:+_\8!@2>=L="\7P (4%1X.[3X;E ML^1LOEXN2:>Y3 M*7@71$Y[@.;2(PWTT"H,MA"0R.C!S>HEXP**_-Y?TALW()[+\EVB_2+R7,\9 MWMPRV%*4!2:QL1 ?#*6CG2 Y'F)K]0Z&?(\"'\E13<4M#;T8*MC[/_.I('T/ MQ."V[E+\[GZ^B:KZ=<; RK7PI'[0'&Y\40TW#K4(&6RDC#0W\AEK8G2TI0>' M H?/[9:EBCH]J@E7%M,Q5/R\JD;0V4']RS$,9NL[*5Q.EZ6R/:,7!)V4H=V2 M?I&K(,3>VN>*UI)S2=B')A^Z7OB%*;GI,I3S))T@,0228R!E$/7-'IKE1[S< M^ $)U@>-&.=J]DPZ@ 702N/OG#'!5QF9:QY MIF2CP:CB@;@KS2.B4\'ATV1YJC*8"_J#!\VF01+W>.V!.]B/^Z)PBU")E.#@ M*-PZ." V)I^\5B%](.@AZ%G(A9&!B&1*![TC)AZ=/C-7+0!LYC#C$4^8J'/E M),Q51:JHHI7J+%0,3=L(G6;V[(1NGQ*(F=)BBLZDSD%5G"(("2]5KF FIFHF MYC/7M,1,0/0[0ZI/$M@FPX:\VPHI>$8"&I14KRT.UW0&] MZCC=PAAQ?1T"A MI(LX820H3X0A8I.7>BLGA./\)?#\^&?Z#\ .Z!F05F7DY"$X;"0DAS*8K,\D M927D1UN.66!+!-?%D8HO,W%>B,J&0LY88MHO&)!KL#NC:IJSQK=[4#7%PQ[- M]W$$< +TRZ3LK<,ZI4 "Z7)FYTQ$XF*LE\A:KE"9-AE,/Q7:*%C8/E<_9^\!!?]@'. M]G0^(;BI^X54IFEJ,I4+.0GI"7%%,@P]<(;$734SQM!=&"PQ=J.K,-C*=$"( MH$S8["=F2/(\=D/-,9P<8V4IA9-FB)1MD9H2JA[-H;D#3/4TC:+GJ\@ VM6D M#&,/G(K0HE$W%P.CEAI0P0D]9(+--148 MGSQW[Y#+ER79@_18L*&"#>0NH"<,QU[(>I[Q MO1V>'1BV&DE QM2W]+YUD^ MO"Y3;%+_N\H.BYXI=RB=UPE*&"PSSW+[2Y9+)-D\ 9LNXY1OJ*3)^L"?($RA M;_[:-7J@.QNNOI,O'!D!P- MO9/CO3>D6 ZZ"*0'_Y-F/ M(3O_E 7H4+]'+ E.5!8GI@BS$Z ;*W; RN_3. MN0T@4\7%:<%=76FBO)!OJ!3R]8<'7!Z&,Y)C"JXO25XI56PT\_LG>E9"]FS, MW*WG,Y\SE,,388?]XW?$ (Q9)S.$L6"707@D1?:RU&7DIC$V[_$3]O=P4.$R M8&B&0:^B\]DX1T8N9@*5BC;:6 5HAL,1<_;H"/VQ-@P6H[EOA\PBQS5!.C#.G2VK,1(-%\0 M;\W3O_OC\ !97KHD0@IA4QNLFA>EGCY?T?]Z_IH]>[WPR*7B'PB*: DDI\50 MWEX*A%.3AB2-SJ?'6;%PH&(1=LOW;O O3:9/I,]IW^02]6%>&4'U&:2 MG!*%F1L#0;$5<(:L?N%L^?>]Q]'4^_EMN?/+X["&*RH\_?F_(%5F^1N]]9UT MD!-#B>]#\2S%_AH01S8&Y5,99= K)14<$+7$REK[WRV#YJLQYE8H?5VCP" M8Q4];#".,_5Y0(J&B;V6YK?"R'1!ZDHV9$GD=CIBC#2Y)[C=1#$N0J MV'$D2B8;*N&&@S]-PD (-P*H;5ID?D$028I6HG*R6RNT8ETNJ=RYECJP*?_/ M-55DM_C1>='F9N84F8O#BK.Y6.=22U$X"_4[]7$BMH83H0]H'/]?]MZM.7+< M6!?]*Q4^^V&MB)[Q=-MC>\XZZZ%T&\M;K=*6U#-Q]GZ8H$A4%3TLLLR+I/*O MWT@ O ,@> 6*5,1:GNXN $0F@$0B+U^&[DL2$UD9!Y W/2&P:>[@C>+-EIDU M!WE'@0H.9RJD8YI/A5YIF+00Z'_S! M>61?(GL.I9\Y/_IRLZ0,R9V^%J=Z+!:JFVZVEU@QANP.UWG 1QT_,I)PH##< MPF=(-"[]T.K%=?#JNC9Y,2;A)%&Z8Y/M+8[BFL)E,.47"9X,BH9)7RE2NMFN MTK&G \8>EC3.SIT!5?+=^<*&G\ =R=XA@R?:9"-KR[49EC:O2I:NC!O8ZDKJGE M,D?=\QY13]I-$#[OW9#B+MXRZ/!>)XI4=(4Z@ [UV,5[!(4<(*P=/)9CPY./ M3JRG1F<,'\(-X %U]C17+G.3:"^:;9IL-N5_*%ION%D.^.\TW^?ZG>8J/.*W M_O5VBSI;W>&SGYJM/)_(X[1J^BE;?"2),MF\5^G$5S#S%9WZLA>BF(>4#@\I M*'9J7"-_0/F,)HH1AU"E2Y))89.TNLL$:Y4'%/9T\Z21XB10*1V?9K:E7YC* MU_-LA>YV&VW\KRB$573<"$24W1-3APT+:.Z'?."L=M"YD.35J/E:I.;AO*BI MW!>:J!*!P'4]4^7,_?L B]3/G[]? :J=1U C\6&*=*#:#>'5KE/Q_YX+&>SL M\+#YIDL,\;&@C8/P-&#P!!M15^P$N;_FV:WD/ 0VU&V*_I1%L$42P MG2,Q-0<0?DIG@Z_2T2=<,0%RSC!^H>1PL/!6E*'GG!M]J=@0HP%-YA/*I,C# MIE0)"G"YT-/6Q9TCRO/)9R0KS-.Q3' M@$1(++E-^ASF[_&G/KJ<-!/9/AI@-X[C-[3^?$\5&[ M=? A<[>N363'8 X+"(@N#SV9^V(@HCR]]&3"EN96#/ <63\]73\_F3W?]$9@ M60&C/RSR7<.NFT=T!&@R?P>/GJ27KL1V3IJJG(V\HD.?"TF>5FJ(V>XF"*$P M!(T!.'KM:W*4S5IL.!K4L(I@0+.G[YWIO"LVT@GGGUE%@FV,OXFNT"OR@H&J MG5U:1S=FU5;3#TSV)AV,HM2XDQ)0&'#*"F?\2-C<'CB(;>>!&^<["4K9F"1Z M9>KX8;]%T^J$=A[ N<%+< <5L!^[%'PDD#F/..Q5C#8I!4OGY*7".\7S,?K MUR%0GK+A5G0\O>;[WBA'7/O]E,;$ 6DJU[.DXXY8MP34M"MV/U)$?@#DO\'_ MTB]PF U90ODGHYX!(9XN&OCAIB1\<,#X60@76KVF,8G_XX?O?_CAA\^Y,_+3 MZO,/G_ _P?_7(VW_:^4'/DJ!,:R(X"6@8TPNZM6??OBT^O+#ES\3V7^%;/:O MG\F__ND$8&>"EUCTW'C^FZ,"&Y@%8-];6-QF1!LRB*NNC*9/U$R?;2# M(5)C43XH1(QGHYXQG7SHXIE2F9H,R(<8WF0-91_ A7(&K*=E $01@$^/QLXR MC+]^2AL=:JK*"$/1D"\5'6Z5$7(]#2&\JB*W .9K>0_)BP=I?!3U;: Z,% ? MX&%SME15# O%PBEG3)7')2BM!,,^L:+?R( .QWQ37 ("3(BLR\#I)19@G!4, MM(*13)VQ-^5D\R2MX8N9:BC].6P%T\MS)""UE$U8L#2%!"9E$O+""&O/"]Y M9MP$(0TC@!@;=I-!K'X865[?H@R/A4H3V0=)7@Z+7"!Q2BFV_W^DGQTMTF=* M7M1!DC]X4BF21?AA[ZUPA]7:_[#)5Y#SGP#^A=((ZEI:U^A)0T7DJ2'\^9=E MU*G18]D'(< KSSTK\S"]&?P>];_MC)[LM/;L(:9<=2M\@L23"31J)['C7RTH M,A"?LJ*YO=&>V,"K=.2\'N^$0$K#D>:90E6V/<"X$>V1 X#8O0*S"QLN'7-% M!OVT^CG$M]-$)N>!""MLP8P: #J?[NCWFG]="'#79/14#))[Z[ZB+,P9,G*A MSI$/&!.T3F1\0R.P20P43+;4N"]4'!EQ%>*19D@L6^;LRX7H;YK*7?[ZIY45 MK]@$5CES*IVFR2+%,W,146:)&8;5A0+T 7R_]H.!I)98"BN0E],;-[IN4'*\ ME))L3&I)2DECPYX/097GEB["LF28<&?YS$A_&?A1X+D./9Z^\X#[IC,M9 %F MZ7M]HU>*W_ZT*GV=5H8M?+^<*IA/8:*8WKO MKR'?> / ,%#QEJ1P2:(8>\[ MK/W8=5PO@9L_1XNBU:>10Y%"#L1)J)LDP+E1%'*<6H>7AT3+=G[B)$\!UBQ#!FC\S*E-M! 8M5I34 !4 MKB^7>8\Z!KZ417D:NT-RD^G*5DHC8G;FMT8)QA6>15N4-&_90[*"?#E&&IM,AY1O;>#[Q@ M=Z)%O?OG'F=#K_*Q)TO7'9@N3T(2*X(^-F7$7W#G8GF(GVFG1Y#W-'[HJ^N[ MA^1PYQ[:I[V7C,?IV"N"EL70]S^M#G1\?-P.(V?Q#TV=5R6,C,L@]C^MV-"K MN[,CK.+IT4I@)B%!-H,=,D1[++$S#RW$S-T$(7)W/I5I]NDYM/P(/T.I+XC\ MS:.>(>>?"<7[NT?Q9OMLO?=Y:I 9K4I3*J.I$2LR3&R5SFQ5F!JY<0J36^6S M(]$^<&7C&4[T=C&$O<6(#<8[.^5=7."5E7UJ?#^C$9SQIMQSHPJKKU:$E_DA M#/Z)[)C4.3^M=R&B3M%NUV=%7M$OK-@G:"WUTRK_R#1WZ0ATLDTP6_J*QY\1 M>61$1I1(:V(B'Y%[>$GPK.";+*+&VO6R-I:&3)'K\9CG0(?'(^'AK$BH1;%, M2TI>"2*V7!\YJ2NU_X$I)K!>H:UKCZ^3#4-$MJGH8+EW>3+L)1H $#T'Q!X4 M(B%24;],\@=F-HLT%EP=GE0>; 7["J29L.^L*M!,G\K83%-!68Q&OM>5\K%( MCL+XMXO "IW-]@K/PHZ#,+K<6VYXL/S^PH:,#-LX&YNZ!MD'SH]&H,\Y MBXQT9O1PDT=J]+&1)DD8U#M=2!X?/AS_!DD<"2D]])5@@!# M[/DMZ"-9OOSPY<UW9*O?%K)7"7X*G]!)&;I$P5@PY\;/62)^5\WVY[Q MH7T2W(I.X,'B1*?)C+L,?'C(T;HT8D M>3QJ8*!/:88\_DO6GG6PP> M#'P2L#( %#09C(:_&#]QKS[GR;A^?3AZP0EA81Z^NC;BISVLLY@;P!FP@YT/ MR)/"6\>#LB?>FV"ECZJCYHY)?7;/^KPC=6X=. M!0NJF#M9D $>;RXT>GSR)BK((,C.&L"16$[4^FZZ1*U!2?*:J)E,X\^#;*+G M( 7S0/F, MH @,+0N._]7&\UDE$8V6SD/'K6PFHZ.LF< VC\NQ;#(D9JH4?P4_PYQ6Z:16 M+Z?5?WRC?/S/HE$XF]N$>7.R6+8T,HV^E:J795_ C.:XM3S\;-8,*:4OT'R# M$E=LHS,)X[9C.Z"@Z6V[7" )-GV:"K=-35 M_Z'CCE]I3-%G=H\?\<]OR'M%7P,_WO=$Z@+2'%HM&5*AYT)D'P_AQA\]@)#< M'=2S?(^5D?Z@Y?0R2IWS^9A3)B#TIJ=VN4X36S'(Y#WY.FBRG[ #U>_J?T)Q M[+&X[8/EH.FOO8&H&\!RF"J0U C$)J#70-B1"QT-8EP&Z*%\RG77N,#]82@8 M' - H[QDT!,0Q:SQ\/8%H"C0A'SGW*CI=/C&K7" KZPH&J:P]$]_^FF5CS=- MKD_?^7OG._6*(W!B$NI!;QGD-8,I& ?89,): &.1YHFIRD$>)H0VH;N18>L' M%"DL0>MH_7. ;PP2KO%NCT^%R$0*-;Q)X@A4M)[5%>GHJV+ 8@IFO"I\XKP(](R@ MC247OP;>*XA!$O]\8]E$CI'Z&E^M=PC+O0C",'B#)M81_QR?>KE@=[N06$C M^Y.B:YX]A5YJ$F:?2J/)TX^Q@B4K]KU5]L%5^L6S9T$MO=PX5J1"^L**W&BS MS8,*:3#A@+&AY LTU[E0#@'D]3%T?=L]>C05VB[63SA/LKT*Q?GPNK(HGMV8 M/C<<]]5UP+7GQGM2H@,S.=J[Q^> "MY>/B_R%?KJ2+\SF;>K%!\B"!TJ5!Q( M*_B2*/".YNSG4ETBR!H(6/U?@A@\NEHX"G[K!SF(T-B MIQQ)RTIDU:$OI^!,00?KC7W-M"X"^ S5EBCF,YSH__'#]S_\\,-G,(I2].M/ MJ[_]^,,G_&_P_QD@=A+O@Q#R&_YK]?G+7S_]]C+_1M2ZJ:%V>Y+FM=(T?@4>/A? @@!>46%?"\HNP ^ M>L'/!>R]WIEGI2D4<\Z(E"S^G1I]XKV%+ZQ2IRG3]P6C>I)H6<3 =S?KC$::@-7U@L4^1 M&RO[V"K_VJ=5>:,SJ]G=!&6.!?GD^;5Z<$IV"_ MK#D:)N70IP-+T[<+7\B*%RR!-6P'-:;?%SY)7N.:*C?T>S.R^K'Y8UQ4NV.* M.KO#$%C"AYPA><5Z8D"J(456!B\=HK&B75\[5[&(G5TJ8ORT0)$U"G=)Z;#C1!&+XR">2HHH%1HBVB>^8 M3I^7W>20&$2&(9;D4;V<5VB+PA#R8+.Y=RY'0T=*+%;__K=1E&TV5ZXG@>(E_TR*LGP M!)>!C@^>1T2^ &2_L&^<&XW>O,FK1_YH)5,(>4^< SEF34\3+,7361T(H ZF M,!V6U%CTCGMK]10C-#VP?VW2CDHN/Q=:UH?!" M.1@+/UR&]@U%^<>*Z'9']KGSI#4UB15H*Z 5IL-/ E-8M27G%MU[%'>-P2]H M=YGA."R8BK$2=U;TE(OUG#T]59M^T8IO;:%XE]"6/UDF@BI81)^]633W'2=* M9QZ++K:F[4 OIJ_A4,C^3)@". P5ZF4W"J-KJ[71@T)/E;C1J3H<+:P@ M\7RCWWPP6#[08';+8P[QIP)\0"?D.\&X5W@[YY1> "O4&O! M5;;.YHE>Q^SDTLKG9T!**?$Z )\,'FD5D8'Q?^P$Q)4/(Y\!,>EKB##$% MO%*>.OETL#SO(HE<'_6+!6,)DV2\53J@X?/W-$R=![[@H*WKNS%6EE]1+3EY MJ&))^6>^(]_AY"=/5 ?I"KW$P\6=PFCE&-/I+ L#45+RD^ A1W?XEU)-^R*I M5Y)(S9^\QYWW1 CI@GS? 6H=5B4K,T?E3 M(^INIBKK8X4A26X$LB?PE(Y"5QVB)'\V31D3/AQ%58,BA#-1R@K#$Z#PR>R' MK-94?Y'!!C)ZOEYIJM,@ESTE+Y$=ND=:*)BX3"&"#1Y[H.GWRUHNC(T/!_7' MVFQT\I89U\D\-&T>AZS4S9P.O'H^.[(JCG.%51N]]-3U=@MEK])J ,_6^R-^ MPJ=E'RB ._Y'>D]&N=-T("]S;+VS%)]/$* $13JMW>BR8RJBTZ=@^KE":-X* MOK@J?_(3^>&2L:-8;.>!LF9LOL"%QJDRDAE$ARW.0N)@MU[P%M&(M6UF#9ZP M],KX)+-- $4_).52+E-/3LMEX8Z:V7<%S=CGAA**3"31#>H9WEY>#]ZT.OJ^VI MA $#(2$>C+^*L@^<%VV>*EDKZW!FI%5UO2G/9@7T+\2* 7[2F*KAXDT3@==H==)@J>'HL*K$4 'U!(U_&"=P,8[9+PP M&S(S&$^D ]$$2]B^$B'/ \*JB;]ZG*,?DZ.R'8M+R]F<1'X[=.4BU5_Z(#% M\A@PY$3;:A!R/"DE9T%"R?=5P)&$T(#X1"&&44@0P"!X\"68(%?\:1^$Q !. M0J7[HK^0T;XC\58TLMR> ,ND/PE>TQC*'K2Z(_LB0D M!KY]CV*U51;UUDIL'D^[=APLPZ('?#-:WO]VCY>!4UI.>4O]&_:)!H"32.JO M5IP0W!8H?QS=X$8I)'IM@ZIUTT\>WBCX!&W=>!W'H?N2Q-SCQFUEQ&G:;+?L MJGW:(Q3GV(U9#E_^3]<42!"B.<+(\GC'J\=P^M?RFV\E>&XDXAMK,0?F5[:\ M DQPI0)(;:4[C&&(H('X"FI6= &$&]_MER#ZPY-8XDB[Z%]/N;^C+G*DS8TX MK2R0*HNGX!W!:ALC)@Z60]=QK?"T"2D8R%>"!4(#=1!ZLB#Q@MB.+T[UQFFS M9Y'R-N3X1C ,!&0.TG>ZL@[6#D5/0;+;QP32GL>%QDY&D$9SJ^C-3D(KN M: M;:1?G$".JQUOMFLG(&&'-0%2;:!_REU0CF0%(T^ D@F_$9?XE6W^,K$;R6^N^R7Y#O!.$5 M.@:1&T>U^ZO\LQD\Y\#O1-RGHUH/(XB28%-S$F]Y1+8;P0BB\]QPOUC^#\!+NY"I-';IK7R?> _[>.G#NK.;61JQ= MO1*QE!')/<#U88GPK\E^J2 M37T,$/Y!$N_OK-_1QD=WGEW?C^)61JS*0X@ &XS@]_-6H/B[(1,F]\VOY#3' M)\F[D=_2""+J5A8PW"FJ@\J=]9^.1Q2[().$+36T-"5.X M1'#./0#/>_^?Z,0/3*@T,F(-4EA*L*OFZ7,7R(+GS8W[SD)&\/L5X"U$EEGU M$8P@FA-N5XFTDX4RJ/[L)$1G*9!'%DV3(-"PVMJB&K-$@C(]#8AN>HJH?E- M;?5O)3PO%Z0)*/^Y+KQ^"5[QW>T>ZG%O31T,VF(0WIF:.EP_P5HP4X>Q.G*! MMD&88_*AZ/H=;ZT@=+#:$IZ(=P$42C"2!*2D8$JM>)N.\CGMUD[PP*?'CV/G MK/RL?T/_&H2_8U[;B&';G7CR1=Y2/Q&%%P%[N-&' >8VUAA)S,!- DD^:6)/ M+<2YQS#:MUSYYN+MNGH+_6OV]_=GO'E^1Z'@/J[\KG_"ZU?+]> )<9/S\B$) M82?4#XNLL1$BOQ[60*NUJ3G5U'L;02S6'VR$''+=4(.W@ "!8U2MLQ&DK@]! M&+O_9N_@#+J4/("YYB%)>R,(*H%P,@DM#.X0-M:N E^"3XQWM]9^-(+KUU8( M6!'1 PI3:XMK"@_H$.EIQ%$9NX$9H63)E8*&QM!BB#QATI74KX[=,I9\1!#XA8@.!J",K_!T59(@L 5;>QPC"F$L'.7R/CR2:4:VG?G&3 M@9W=!WYJPV(>]W3+K9U7/H2)J]M;L8F,"$P'86@Q/QL^6$#8U8K\(]1G87J(0AVF-5,"LX!H<3+\QF^VR] M<^5NNR&,(!L".F]]R QN!-T4-#6"C!1*\L&S2 1CAB"(%XZ?O; M3 U95PD"7,*;(.&^X]J.803AZI)/I@*U'\4(X@M>Y@1EL9HPTPT)R!-;(82-#7COI<_KRMOZ+K#\]'U]U? R;^QJQ(J1 )MR MA06N;ZW>S(SIAY:3Q[?6;)'BMX=21R-(S"+Z\",!2[P;*,PIDXRR]MIU28+A MB<(C9*E#RADO8(771K](*.;7,W<3+Y:_WLB(3;3&+T[']1*H=DO@C\G5R >^ M4.UC!&$M8CE,C-S@P$N!QZ&XCVJ;3-["^;+;.Q;<)'=[>/[Q.XW#?; M?"]=6IX'NEOJ0V,-N:O7Q;(RR$QK M>YG3QHB5JL!9BI58;D,C2,CT "KWP%81^ 3B1P#C).V@/8:JE!K _@,FBL]% M4J0-S5B5/*^-%SR%#\$57+G((=$ZIY@C8G$(QP6]J!!EEWUX)]%'Z9E+I9P2!^9GG:^>T6C=R:&[-X9C$ M++BW*B(4)U"ZR"X *H- MM&L?:[PK'%((V[-V58VC]*,16T;@$I"#131V,H,TXGBK/7?$&KJT@_ZS\)3X MUXX;!?ZWF+#[[X$'V/. 2'2CIIZZ"?J\N68"U-1TC6OD1E;C'\0V!XJV%>S M DP/ 8UAOGZ/P1F,U>T[EY_^.M381C#J'L6YUUO@IU',8/XKF41BHA MSXEELN7(3]@!,M^L4*7X"]B M^2&VZ-=;&3%Y2+'&S?=@L4"OR O( [DQBEVAFW9_%X55+*5@\V.GA T-D)H0 MAI<6=5WO0B0SW<@:&['9*L9-\6'A-M2^H1Y!1-5Y7_E)_Z;)P,QN@C"+\]V\ M1+AO9"->X$1C#P.(\NP+W-:S3M&%Y7.\ N)61NS]GY$/R0E88*Z=@^N[8-@" MRXXDEZ:AB_XU8>'#)%\+JM]6TQ"%C8Q8D=1_%Z3/ N427_P>1A"5O6KP2?[F M0T3WI6>Y!U*1A_[!^6="O>]LVH(@SDX#Z=^2I7*'SUCGVFZCRU)1L]H&;>YB MQ,H*'-!I_!0+$ -AP:KT=/)GJPRG?Y4? OP>C_$#G<("*9&K!6( M&JXV@__=B E*5(X[6?B_2C_MP:TT8X94J&!?C']B%@Y-U*+ MZM4-DL@[46= %MR9!7Q&35*\UVCZF?%L':S0^IH0X%%11#"OD1%;CYKB0 N0 M!)K7&FD7[%>!3:"<_E=BA5A@>Z='=,1GNRK3!%[Q;B' (T5/"-:ER_]0:"G2DCH/: 1+!(NFBB?8HKL1Y%Y8'KPKGO8( MQ7>L;J7H%2IJ:T8D(K?,5?J#$;PNUQL3*'O$Y'OE I28[T2;\ KBW'A1',.- M:@1SZ)7UN\X O&$YAM?+O1G!;ND/,VAABK'ZNXU'8V@ABI("57ZT83*2G9O=J MAV'TGY.\&*A2J*"\N?;;_\H-D1T'G )^]5^-V'H2R\?/H2!]L:F/_DU5\.ZF M52O!X_1W5+[!F]KJ)^3.Q3J4X\8R=ZBTH1&;['J[Q?M^L[U^M_>@!4.BW<8? M_,$WPF?T[X#,R0TQ3ZP$10J64]L%LL9&[(1*->ZF5YZDN2'D.&@KEH87ISSP MXDY>9J_]./JW9IK/N'GQW%UJ%[?Q.ED[3NRDI+$1:TE9S77MDE^,F&09BUY8 MYY#3S(CIWZ,WYB>'K/LP\/$?[:)I7B'JI^T8VLW-)>2]2_S'3?@LI)F MVE7:8GGV+*],D&HK;FK$]E,H5"'V8RAW-H)4:GN3Y4N46Q@QZ32L:K/-(#K MR"LLU"QKK_]ZE#Y5VSULC5B=*X3WN^W6@I]YO^OG/D6RKR'8,[\!F*=+J!)U MIVN[_L82K$J82?<,'PNDUL"(4_$08O[%Z,&S; $ B+RE$43D'L'-MIBZP SK M1*#6H'\B>3&S?D,:P1:%Q#4Y?*IR=R/(_>9C^1WL?*@Y]VR]7R ?/TKC*"N: M_H#P[41B=7TGC5!G^2X\\GL,9P0[!#!AQ+Z"'R'DES:EO5WX]>D+_Z;>! C2*?>G3N*!)#!8DC-2@U=S" K!Z]0$*GBUD804S7<%3PE MLGJO#9WTBXI?@_#WW#]2DQ3EG_5/E]0VV6R_192C^'XI^T(?Z;T44U0M+)+) MSYRZ1=W&T6YQ2B,7(=V[:F8J_F;$F2D"G%'#"JGY"T%$_.M5VL$(DL@E\HB. MS.3M$ ]3[(8\O%'A!:78WPR"L\3N&D0".RIMDL/5QM!^RECNVNGSEY=G-_9J M)ZWZNWZY>&._/P6>%=YY(A#M6@LCMA?STE9\L^OX$N^0$SX/1'/C[2FECD:0 MR(MG%0>\B5L;08RX_%8#'KVDC_[3 [L([&58+\,WS]K&&RI$-T'B.WP\B(;V M1JP41*V^N9Y'G^#E4![VDUAQ5>YL!*FMJD)CY5O\H%(?PQ#"6>"F2@0AMZD1 M9!2* !#]:!]X#@JC9D>74D%>8M;2"(6O(IA(46OMJE'ZR+AQ(]OR MJ+IZ@_^M1(>TH1'K(852YRV)M(,1).5:=BJB%97R6G,CR*G[L=:>%[P1%UU0 M>!@VB[YN(QG!!&$Q/6$$K[R'$41QZNF)]6%A8R-(X=;H38W+)/LC^S$KS,M- M4^\TD!$L@ 5R'=<*3Q0SA%S$LE**W,9&D'*/8@(!!%8H!VHJ?XL@8I,FN$&2 M"> _4$@;B5+2?A3]#Z#\,GC"EUL(HA'+CF<4'ER_YML52]R^8QFQ"[X&/CK1 M9*(;_*)3,48T=#&"+ :K25&Q+08.+7Y>M!K83Z$!D<'%Z8 MB(3Y$K\4F)9H-3S9E=-N!".(?MH'80R7 @2T@U8G5!EX#?6?0)H:GB.LUVV$ ME09&<)T^=FXLFYBUQ%HWKYWV,,)QA!5#%D&F1Q 6*,OU+"YD:04Y/"DA<[OZD1 M9!2!O.L!1T+GE;"'_GM(@,22";5;?QN$![*1&MYMG4 M2;NYO90ZQOYSAW6]+U5SN["A$:M3.#D I-/*R:/:UPA"U>)[A(:$%MVU;\W4 MP4/G=.T[5UA]$GF!2HV,6"F!F8Z)NZ*9KH61C]/;"&)319#J]5&:L*!V!2IW MUG\;DO-3JW/-'ON@_H:5P''U7D:L8UWZW0@SRI]L%RL>1- 7Y@SB_5H_R( MJ!$,,0@_NBT*,=[""WGL;QK!6+[FOWGSLML( MP_4V1N$0H8JE@8Q@0>948[H52QR5^M_*38T@XV?+]2%@:.-3:5"*N>%">+7K MJ5]L8*4W\%XA\:OD"%B_6JX'=I&L=,)%$(;!&\T0PXW*)69Z#J7]A0MX"G@^ M3Z?#2U!*C:O]:,2VY)>;EMVO_1W6S!VJ M2P0$^,KR3Y(D,J5N1JQ>U48EEX/BUD80D\.I%)^8%,R Y.C &PMK>;#G))6? M.@RC?ZM>6:=7\8XL_:I_LH5JM.1]OT[PNS@$7SLG0$345#\997R;ZF7)JCD+ MK]I6O8TX7Q7;X#??C:/'IV_BG$9I!T-(XI>(D1F+F_H805C=:5L)KT0(@6%5^QI!:)IRQ'TCL]^,F&C.U>O#T0M.*#7G\J]22"RRK32X M-@VSHJ9?&N^NEI(U\,<,8V4:9 &>J.@NP'(&[]+,=9JG:2DRJ_5P1K CE3\M M;&(-78P@B^+D2.,Y2BV,F'0F(<47?J6)$=/^%H&HB&+W@&]M[ENTW,*(2?.! M.Q30P94Z&D%B48V2J9#55MH-GBFN35IFX]XZ"+%OBFV,X'H]S?<>21'GI!VT M1[OG46#K78A(7/HE3!>%1]@QP'81F*YB1R-6+7-CI:]%KG6FVDC_"WGM'??6 M4XR0)S!,5!L8P6WQTT :TJW03?^*@#L>RR:P7Z7Y4%?6J>[L%K0S8GT*E0B* M&0'XSQ[BI 8(UT4@[@89VPA&D5L("'F1Z&RU1D9,O0W2T/,>2_ ^,0#9(/K/ MIW!#I?JID]6XXE@4E?L:L<85U K)%N4UU*Y[?+7>W4-RX)>"*?UH!+>;,@2X M!ZBACQ&$E<]W!;-6JBCQ.AA!4MDW( GFXC8T@H2GY(BO3) ^4-$EVM]XP5LA M.4H:C:W6U0@R'T+W0*()I'4OBDV,F/835/RT0J<2V5+ />"'(#3U,H*X:G3V M%01V\Z'P!4V-((-()Q"WMX=C&+S2I&OQ-I,TUVXRH7EWU^_$7>:RXH=N4%H2 M63LSUB._#!ON2B.F6ZJSPGWJ%!L8,65U4"@>/>J]]:OY3'3B>]NED?'P!*F_ MPOG-]$__FV_11S!RF ;"$)EK% A;&K'AI*E076K<5'H:(GAO7 ^%EU@#V07A MB2]S2TV,6!L)NK(B.E6[$8P@6OB$E]?9:NBD7V HQQ4W+&WOP?2S JMGEIUB M,3\=/;>.BE1O8LKFY-:EN)/58&KLI']%(/O.(MEW!/ (PCOI;1OAOY-\C$6U'%Z&T%LJD?>!"%R=SX5E#:=N4>V6'IR9%IHG6FUG J6B$)C><2U&L (DOE/ M-+PN1>P.R6YMT]\(@@MY+?R#)C6SJ/5G3A^2R.(*(9L;K959P#7.2KM8011 M^9'/L"?Y"B.4'KG%XOW5=? C)BL^4E,BX2I_"/"R$3!5 L9 @/5(;TR%+=!E'",84"R7 MXN%V 3V919,-E4RVX.>B#5SAXASJ*_H]K\J>?-X1ZC:"$3L&J_Z[T#K0"I6; M%\_=68VP(TU]]*]F\4&3:E>;+?XOP!6"(*N[T)MZ&+%:J0*^QE!(*>0IFRY),V-(*==[1I#J]6P2J"IE0 *%7*PL\2M M]$]^'1^8UE#7F[*?C-@P?-B2'#].!FO"-1CW&,\(AF1E%L6RK=3"B$F+$1!D M[[[F7OI/4JD@\"66N. K5)H;LBF9,)9 MV=LD[V$$4<#B-,HX!8O/DOLW6QJV6O#K\LAL.X8AX1B0J4+]U_P8C/QW_:>) MY*-9+GLU/>]9?9N;('S>NR$-<[P%T"%\,=7.5IO.1FQ*F'#3C5O^A^+=RW5, MX+]3MT\*I 5YU-?;+>)KDM/.P BF,V63EJCRB=8,GK/+)(KQ$R&4 ]DJ==5_ MC)ZMT-UNHXW_%0%F%T3I(U8RJ79J)&V-6*]:Z3!9Q)6@K1&$0&R)'P?A2?7) M*FQN!#F9.KW99L5\'P)JV)(_7IO[&4&@("Y('IK9T,<(PFX?-F*W:?:C$5/- MK%#4@",R(W.:&3%]YFS)K$\J=<;JC8T@Y0[%,41 4O57AJI1;V>((ORT1YXG M#4T)!:)6QL!"E"FYTB M-$.;_D80#&$H^"(X0) KQ ^*4AMY[8P@H(*A*)5*'^/)BP>>%AI5)+B,U#IK%Q>7 MX!L/D749.'7\CL)O1JR)6MJ=81EW:5!AI>8!5!%Z@WV!-4OZ%(1'.3L!8$<- M*X@;?<8Q8O5*H0PR98';T @2LIO_GH\#7/S=B F+L)*$,0#2#D:0E/$8;LAH MCQP(D>1JSOR61A!!W3WX $@EP%']RF-',IOD$.9&B05S+046K,M:[V M'U:_K,33=1&1;>3^+ "X5& ZFUL;L=:;<&?Y3$>#(AB!YSH6J_R ==@(4*EI MN$-F[L]< -)'U2 #:]= [@+\ 'G8![[ !U_]W8@UE8)U\O$V\/V\1:X -;K/ M>$8P9.W'K@-0UUCXL%)5^/S1'$OD4(?PX9BD&[+JA[R39:(/-;89C'(]IR\=/NTCJZ,1];3=#4"#+ H(,7Q0I/3Q;!F($-+%U%>0\CB(*X.3?#(($( M!KR/D&^7@#_EFFN+ 8P@^1E"4A*\)E)32[V5$9,GYI!"NH@X_T*MAQ%$"9 D M93@STAY&$,5\#LC)\=UHVIG87='01;^>>N?B;>0 $!ITN 58$'.,A@)'VG #^X=OZ9T, ._ [>;/'+ M@KMM1_F2_GWQU8IB%.*']#_Q6XQ4GCEE%2$Y^UVUCW["'I%[>$G"B,R*1XA"=;R^172Y*VU/W13EUM>BH;&08A<<]5V1FR]>C S$>.9 M"B+&/U+K:021K:H\O@5<)T2[(8P@.\]M[?GB5LB>'>(+1C"MA-,/\/Q\?'^% MYMJE+=-%!>4GBS\:PODLRTU\B]<:&3'UZ\/1"TX([_SPU;61 *#7PV]2MO\? M,^0M:A@D4!92<\O G]"O??XC>(G6=ISC"EQ[R&[ @FK5T8B=P8<)?\!/@7BB)\HPFU@!-]SE2Z+Z6+>K6:7GVI? ]:&A=H%U'&E5:R,(8%_4>N@_5X_H-?!> MX5B4D&E(-:BOUCN8M2Z", S>H(EUQ#_'I]I9ZS*($5L8"K!$FVT%C_&D )^L MUE.[[: &R0^0(R0.%!!$]^[Q.:"[M*X:=^ANQ)J6GKF"UW\AI#!-0:E!Y@XQ MGA$,*0@@81!3M8TA$^^-O"TU P\YOA$,*[_HL'BB#SW%U$WUWD806RA#D27+ M-:7^<,]WAW&,8$!CZ4)1Y4),,?)@K1A!93V.^1[$<^4O8W@B"5+T-?3P51A!:C^)+K:J" MJUC:P0R22&D5Q-.,O_GX)\#5QO]^M+P+RP,UF4MFVT&,(%VUB*_,PMEV#",( M?T*^&X0 K?2,PL-]$/,W+Z>9(3;:IX/E>1<,'IUOE"TU,8/K!5>,@[9BA!N% M %*5$8P@NES$5GJ#"YH:04;9["T"*ZNW,F+R N.]+/E#TL$(D@HF':+'YO=- MI*9+23L:02(+794@&A8;Z']Q089S6KN"O:12%'2X/NK/K:8.1JR""J8(_D=Z M4*+\.<5;L*YC&<$(.!V_7)K[Z5\;JF=3O]P-UE71SO*>4!Q[Q&R]/M33D!M[&+%J=YQ:,KE9 M]P8A?@)JA^[ZU[ &+BQ.9A W-6+5JCBO)5S=F M54L\JD?_?'W,:L0C\O? +^>%8@ 6#W]F':P1C61,%GA5^C]4T3/27/__P MTY]^^&-LO0=^<#C]D9#_B/\G2U9._POIX\3Z<.MO@_!0AK>%2)O__D-U#G\H MK026 0@_[9T_<%8N*"\:R5T+,DUD'Z(M)2+"5) EBY#]_2YX_:.#7$(%_.$[ M^,/W[Y'S_Q",T^"U7M*(L(]AH)9^YVVG$29%.?B(=BY\UX\A.XDS-VZS2:=X M25)9/;#%O/]/=!+.L=INHDDR29QC7%_[SE4!.K&XSJ*FD_(3*LV%E_BSNR 4 M<[/<:MH%EQ9[J*\[O_FD4R;@TA9Y=>(%M2KW>&W*@N:33IEKW*W-M-QJT@E> M'U"X@V=0&+S%^TK%F-I$^:VGG?![CJ9!$]K$LZTWG7;Q.45XZFM?;#31]#)< M$CPB9V*EGR>>$ETGL73GMYMXDH**#)QI5EMJF6A:&U1EJL6V$TT6'U(PQ#R= M#B^!QYE@^?>))K7&+'$(6SQKQYE4^?>))L7@54Z?O[R06'?.O&I-)IY:6@E5 MH.ARFTVNF)7AB;E:&6LRL7YC!^$QH(@R)+OW$AZ)X:E8TH&CYLAZ34I 0P&W MVM1%[2>=]-IQ\#,V8O_!SUCT63AA7EO-D_W28K)?M$P6BH]LPN?@S6^::J&E MCHF2P[,)B4.G$!PDFFVUN8XI/P11;'G_VSU*102W\50O=TY9FN)KO?CS1%,2 MX=07IE5K,NW;7"%ML_Y"EW6:6._\7XD5XL>W=RKC(G*TSFK+J5] @1'WFNH MVI0SU:)!=!##]-$"F\5W]M[ULG=NH>03S^19#AVKFAZ#T$'A?__ASS]]_\,? M5D>LZX,V]M]_P+=($N$)!4>:+PB_L0R .\H*X53)//$21HBT/ ^VU,R=C"\_ M_K!4OH@MK"EK/B^5-5R+;LJ5+\OFBLB,G++G3\MFC\ADG;+GS\MF3\4\GG+E MQV5S16"33[GSEX5SA^, 2%GSUV6SINQP2)GRMZ4RI>SF2-FQ6,U7X&)A?/G+ M8C5?H5^M2 MEBQ6O^5["5.V+%RQ+7HF4Y8L7*%M\(BF7%JLAMO@=DWYLUB55^+A9;SYZV+5 M7HE#.>7-8A5?H?\ZYTHH @S4_>=I#0HBY3!Y0( "_%_X&*9:^6AP"U);ZTPO"$95H)Y[I" MBEI?;:2EZ'8N4EP:20=M1,CSPZM[B]_8A!7 ^X1>W!!*UX@! MDU7 6!5(*6X7G82$"5:M:G> F I!>VTD",!=Z[7=*J0T]].GG@@J;E0UD6HS M0];@$4!+-]MO$05W4N)_M8\V4K)"9O?"F9>::)LH@Z]74)!X+?5M%!:%Q,$*Y1'F*#ZP MTBXZ-5 K[Y^A\HF*(4,Y5;SJVNDC3TU;C.*L@FEOBZ3* X.^?$]R>E2ZFK" MNZ[YZ:91I>.7&!,I=(+6&N]?=43)VKVLT%7S Z=!O3;C"%>O7/FD1:UU/FJ2 M0^*!G56E"+OXJ=-J%!/D$M=@U-'.I(^@AF.N_R@K'PV33L4CBBW71\ZU%?I0 M;*BPOZ_0UK5=$1$*';411;?J5Q3O X=3HJA"B:BU099490NJYMN!W;!*C[=: M6\UWL/3RU>Q1Y6H",LQS15<6<[?.TPTM%K[+!&[T@+BF(_[*_F_'FRZQY MT^Y^Y/K9E\:G]C>CQ,V_".:U8Q9[4!XIL2 F*4AY MI6 ,QK(_S9IE[6Y'M6B/I3&NCTEU)&X%L>69Q*UV_!$&M2QB9W6])!7>BO-F M7/,=J19NM"!FJ5@,N;?BGVS^UDU\2T?7CK/=-.]&E$E(W"MM,VUW-QTT8J+<(_K3;5A*I_9=9 MGSX%UPX_]G 4[IBVB50#1')LE?$WB]G *@^$IWL4N[;EG2G*RFP3_LMA<7BI M-B&9L$/<'P\H)$A3 M(4.QM"',7,6B?X\@O=?^<[4$I4K9-1Q-Q&4=**$-;! MA)SZEGM-I:<)9"GN,ED/<\B0[B]1:W.F+RX/J-3%C,1V-D4R.P$5XO9FZ$Q= MS2BJE],B8F^'86)=/"TB$&M(YJ5"<1&N^SZ1(8T7_2(<.@-P4'AHYVTM'8QS ME1,[=RO70%SCH0O/V[;3E742?6T4(]!YH.MFOT:;;P8*T@H?'5MM'YWJUM*V$S'1(D_F\XAN@H.ENN+9\MIJQ'0 M"$(8LE/9)L$C;J]1 D4(ZPV Z7"%18@7 MD(AM-C^AK)'UT8G4!X?Q*Z*U- 2FXF(;?3@RS(.?OA ;]HVPN3$$7%B1:RO. MGK;5:#R-L-K+[LL&QO/;:IXZA!(5;YRGP!-;KH4=].+Y-$3=T4JS^-_AO8&N M$/UODW3M/["13+D)0N3N?!H999](;1,\67BJ^0[YFT??CLX_$QKGT@ U-]+' MM#'O5P0YM\A9O^+K=<>**6VVM<=]P_YI/8SQ!,ND?:I/O<,F')^TS=- MNM!2)SHSPF=V@;;X%4';$3B3ZW"(^ HBF!C-U0)2U M]-PJ<6O8+VIF(YXLV^47^+837^.BUMJFCS=GXU52;J,S6J[ZTFUX(,MZ&.; MO:NZY\H)0U5_V"("R$1N0 YKVGG>9LV])B<=<*_!/S9K_B@ZV,J9565GUB+X MT^@4*Q]#J?MIU@Q3WY)! =B\@C::7% MR9QTL^96:Q6NX@F<-7.:53C9<5P$:_HH<9EG=A&<&O$F%#N'%\%9M;NPY&D> M)2'0-'285C=@HX=[63F4TJTD8>PB\B1;;2Q.K,%"\'I;;:6B+VH1B(-J_!'' M3RPK0U3*I/8Q&LO*$96?P(9XC^G20HUGU1#1)(R=?_M@Y[AQ*(S//WW<(>) ME?1U-(RI\"?*)!_M(*7Z_-A4"8A)F3/LV_$\=] 0CH64GQ\/J(: II11'\\# MF7DMY=)"<&6D7&IO6DNY-\'KP6BPCSIR,L/A_@#]F'+2=?AJP:1K#?5-VO(0 MVS_WU@'_L>#[YJ)-M.BH+Z3Y82--<9 T>BUD=S:DDV M&^FNX;2@[PL+V M^DA0S$4U*-NT )PG/;/U=GJ5 XJ*>)6$F'OTG4G@.1\1F-;LF,F6]9L5.L3- M*=,?6H_5E72LJ;K?I1HJH0G^I8S ]YF[#.)VIBT#W=L#K4/38-J(%Q23E!XA M>1^]Z_B(CDEH[ZV(QW_9FLD[ZEN?YHIP\K52[F_:^2.BB_RV(8_VZ/H=A;8; M"?$>VH^C$=BL7"Q+NH2"QJ:M%STI RR8;*"!+ZPB,/%-$-ZAG>4]H3CV:/;4 MH:HN*W::=);MIVCHUEG;^+5!87X[W:ZE_J:12*10=PKKW0?>8[>'(W[AL^PY62-R0LR<5 MU6O9"(:3V>H9(1W"[(T-"*7G$=G!SB>CR#;! MZ)_] !L9!MU40(%2UW-TL_WVY?,9VEE_^_+EK-SXDC*^@R9S'JF,C:TP-BK6 M0=FC6@INRUV68_#*,XE!*J[/>EQTS<&XB 1AJ7-57#=MF= <*L[0Q=/$MFP" ;U0LA8"&NZG+[&^))%Y)LK7W\-@2J+8%:+_=80 M![.(RL7J>TL]R&81C.NO50C"0!:1V*^\[4110(O@T@!WIWR3+1D 036XZ0, M02E>Z@/9H$L(UC@X!;/B&B;Y/!G:*NXPY=^2=?YND8PIYY;\!)@N-#+E M]L=#0HA)->AKX16%+\$Y,DC*XAPK/&!R(^/7B6'^.7 M$F@.1TY6=8*#J2,-N5>P]=-XO>ZYNMBE'B\S$ M)]]+'-A63%;C=>"(^#XCF9&0!T]&WW8]5!)WS\$P=\(HG]*;/'51?8J+MC6_ ML6GB]\;U+;PH_<6O;""-T'JYZR*U@.)+,0]L%DG=QGX&*:)P\?GX0ZXP45C> MQYS+D1@A"O#_JG=BK=_0>"BY'?TF"+$<#_&?5%!15/II8_\5P@]+VZ6WK.^L M#T$8N_^6R319#^V[B#EN58 1I%T,.MD/(3I:KI,Z75G) \HBRO/0 :WJ^*78V8T>V0%)K[F>0&"4" M+A<$[<0FM[,^F.OM%D&,TO4[?G+Z._1HQ6CC@^"#_X<-]8KW&3$MIFD>\ -Q MR1;_H=!2P(DQOF3:[<(Q&?6V.0TM>LEGX=XFOO3G/7/U8MGXO'=#Y\'"TB2O MU%27MZWZZ[-)%%3)S39[2TK1K61=3-MIG-=Q[^>U22(V]6CPS63J_?2A>?<1 M;/QR3=3R1XJ5YB*4BE4!?R:>A,[]DQ:A ]$DWBVE5L,#/[ZZ$54S4W/(:?,2 M!1Z*;(2?@UQ;;V,G@PXE?=B53Q@\VYD=@FG<;YT$>XUSJ/F;]2FQ* M3F:O@0TZ)JE%Y!'A\RS$$VSN]['ETY:__45W(: V]8OYSY^VPQBTH=,JQ'82 MAB0\JZ.@YP^ATU;A)';\JQ6&EA^?LJ+*(@,%K[%IJU0-="+5R#M9)@H##*PH M,1Y"M%( 11'QG0]B_ZOE)UO+CI.07W-%I9L^8-+M]L+RP.C_M$?XQ87%N!O# MB<[LD/D_L;T#8CX4"XP^(VIT =$K3%C56. &DO?2"S<+4@M?1Y7*Z_PU$[8W M(\*V?61EI52U0LCBH+APYI:M[A[FV)Q",&@TO,D9!)(0Q J76O-Z$?"$W4,@ M2R"K+6(*%W*Z6T8@YJG-'8, %[%;QXP3K&6(<,+J%L'D[F%Y9=SEQCBW17!S M:(6I%%HW*+2GN;)T&$UI'.&Q+/S9?NJ65*M8!"-'4K?J4:H+D0Q=M2RU\-FY M(R=/I4Y)PWJ7?.[;ZE32N.*%'/FA%2JUB.9!L9S-9>Y@-BGER.E10+(#O M, M8NM ^I-47"P";7P@_4D]Z'T17.VJ176.P5\$5Z?2KE2S 99]A?4P7\DQEN>] MB8?6MOB)#X-6+C!W:[95 T9)K5A$E8AA](0V.1JCL-4X/;:CHM N8V01.W0J M[4">QK((5@^C$;1)HUF$,!@K%*CJTEX(M+*B3C!U5M HBV#:5NYPKPD3AQ:Q M:\>^O533H1;![%'>8&I)6,LJPS2%"!Z'IX86]IU*R1TBK6S093'7!C&T,*FE MJBVK]-@4(N.WOXS#52,AO*<2&>V3\@9=@N4("%GJW[)J[RG*"N7'R"*X-Y4\ M$*5R+H+)XWIYBHFD@U:1-%>(3O(^5LJ"_6#XH&*B5Y;N(HJ!3A=4VI HO(PJ MHI-M?'$B\[ 523]D3)O;>,(RIP-6+"+?C)#]_2YX_2.R'?K96S_"7 N?0PN< M$6NXW':H!#X[??6AXB1INK_MY%G^^"^_K3WOUG? K)187E:_G@[(DON%S0:& MQ7BV#E9H?4T\W'3'GXJXG=XSUL3)3.GATYC&8GT_@;#74+GKRHUL+XBP1G>% M(CMTC]2;?Y%$KH^BZ+.^\]$)$R/<63X+2<@KD-'^(45N1$$=N;S?\:K>.&)RT5T&,B,2W;0S5&\5;NP=KH, M9:U"Y2DY8*%ZVFR?W)WO;ET;0!NH?Q"*Y>(EL+'*K9"-5Y,M"#C#?F7%>YU7@M<4R^A^!Z\>_X+]@2IL.<=M1 M# .%C/(U;3K=+08PXX1W7.!FIQV?:0LY^NOX\! &N] ZG-=Q9Y,F*631YL5S M=V2F3>>[L=O 3^HZ>XL/Z<*O9IPQ5:YFS^DB?6.Y MX9*@IMD*^NBKL,&FA6^ ^\#'DW%0/L.FZT^QLQG'4FG12ED;BJQ9R"57 +TZ MNP.;12X7Q%!3\7EQ#XUHT;5)-1U1:1+@@,*&8ZG:6]L1;9A@TW%5[F[&T6VYF,5C MK,ZH61_I_#0S#*04].B2AFJ6RQ*>QQ%GE'!1G%*RFEZ8ZB,,7O^I^.F(NQRB M4]QA #/.<8<5*V2(M6+8K$]SY8(NE[L]C\-+Y]QP/BN-M-VV=PAO+Y1%YM!I M-=VQ#9W,.)'\92A>H$VTS_J@%:_-.D+[V;U/A5#]S9;8AGXZRS+QIZ;^=FTU MA!G'5GDA*VD/+5BUD'-]BT?T=RZD11,5XIY@V_T13AM34*5+ MV2+5;@QMYUYIFDTGO^4@9IS]3HM< A%LR;J%2((K]!*?V7F'*2L?;$%CC=7? M7EIE7O;\:%RU^<4MBP.D=F?2 KMN("AMUY'<=LXBUB*\0]=%;BKDZJ.;9" MTL6,XZBP.%P@Q<4?1RB2Z&;!T>"A=OT=\NVI%>#>^UI"B/*!;3>&MB.L-,VF M0]UR$#..>:=%+F&CM63=K$5!155^J=>@/2 M4$@DW)D=Y6LK] ';)9U^D[5-U%Q?:F]E1HV9O,+V9AS+I@4I9>B*:5_(X7M* M7B+TKP0/? W)(F?V9*_.ON'P"9OK,WI79M1HY!:V-^/P-2U(&3E82/MB#I\* MDDWZW_,ZFK, M&%X2Y6IG>C_-H):J74>VE5.<5V? VJ:2M Z6O\WS1T,RE9\CX:HZ@LW[%"IU(@1$J* MO(\^4C)_1]$CLDFQ4&^)ZH1/""0#R=>JRTBZ<1$ L1T_"F&*:H*RN9\VDN[1 M6^$5%.*W<()97C@O:A2V'D;C&MJ>%47D24_L^\(UJ[8;^#5XYV(QA5\4#1R6 MMQUX3C=!^(:E#8D8>#KBAZ=T5I+6 \_K$LH@?/[I 0M#='!M!8XU]!AX?M]\ M*\'+ R4:8A2ZAPQ1NE!N2V'278;1=I!NL.[WB^4EZ"NRP&*6*[=J(D.]_\"+ MA:4Q*09,T;I?W2")O--M%"7(X2"!*RQ;OP$'INX?P4NTM@NVRFL/V8K[3[FO M&1;M=DC/J@;#Z0S77GS[XU=)^NXQ" M]D-P3M6TO(C*]>T8JFBB7D0![W:<$UO %U$>MB.SZM;V08N1BA#&SX=1G6SZ MRR@BVG+'-?H(%E(,M!7;6O@AABWQR=CWBL*7X)P9V.#EF+ VY]FPK,&;DK+L MXP71S]>2,?+C0='&GY.Q[>/9T,-)E''QXPDA974'.P]CAIP8=$. 2.G.UH6D(CXB,'#A(6]]K*S;2(,8$<0: M_1J$OV]A2O@V<%_%>)8-C0>.@,HWTQ-Z12'>1>"K?$;A 6^I*G*+]*CV'LX M/-K&-XVU^D42NCZ+H,CB\L$7%2TP\-07*&J[M MEH/HJPI^3643A"@E:.[ MP/(!UI'IA?Y.O<)WGQ&UUS3/)[7VO. -;F6L!=)82 M:PGV]AS5#*'38 M!.428GV9.VOA\1APBF.?HZPXLQ+9>!ZP(Y5N<5'KT>S,Y?K5]&C@@U(HU=7& MS-QZ-&W+4JG;O=G2]I,7]Z2XI%)%1+90-:#S)TK8-6C)=:QKH.98"@KR2G9Z^O MEI>;XC &1)MVWKPYW%S7C3/K2Z$_<[MOSC&N"A%BA]XL'LL#RY( C.,<'Q4" M4O#.^4?@^O$O^"^8[B8O4-M13 .+;RR;U]1MX+M1\#U>;FSS[=A],#/4W(Y; M5 $]9REWPP"<[+LM%_*:X%=2/\>+X:.>.E=?OSX"$T!,*7UT;\0&3(/+5 M9CF.# ((XF,0WODL-TI9L1_Z>V8(HN%KL(^X0@LQF%^XH-L@R,:OUJOWVTOP1OL!@L3 M.,U)FDC>M@SV"!\R0["VJ9_=>;,M0U?NQ,GA]NVL%>9*C.P5BNS0/5*>I*FK M:\=Q*9F%9\45BBW7,\(*SYTT.2J\1[BDM2GURY_QI];OKJC6=1/SS MVYK"?>E!Y;?5.G6L)%KAJ2#]&BY>?ONATU42_]IQH\#_%A,WW]\#SP'M]-:W MQ1=2!9\G5I+#6AVYC=*CR4*6'QG*_>"$IRN05?BGX.VI_(B^!Z!Z]D9^$ MNT*ML[[,GX7! K8+7K81N&"F,8$'W1_"(L&0U$KZ\QS"M&52[J]F[+ MXW^D3Z9%&*?4WUNEVD7Y@V:N>ZSI@93"B;9XFRQC0\E-00UR:TQ6F;"KE-Y+ M)3"DMB)NJ9M,+*P$#[RY;['&QV&)1PK7P%P9ULG"E.=;-S]U9WTD6[RDRR75 MU%ZL8_#.P!)^@R.=-SXC%KHII8\H@;@'1;&!UF#2C18I.)'Q.S MQH_H>C>T,_DLE(5"229X6TR'MF$VFY0V)6/6/&L)56)FU H*&1-$,X"SA"E. M(E>/I*%>#\\>ORWP)J+)$U 8%F^HO)BBS+W3T%,?X%G@[_"Y.%RAEV:_MZ"Q MOC5!/I8-!.];[C6NM9LT>J*>:X.0-&2BH<6\]X4]XDEBE:AL3W%'& MQ">)&!L?L*J^"ZV#A+'5-A/']42IB!7$'E5;Z)J>)+RHVL:40)9S"\(T-0JJ M:9. ELT]8-5?)YW65]=W#PG_Y-=_GYYCHO.>_:9-$#G_3&@VJGA1):U-.3X? M86R3DD"KDMQ8-O$!2.46MZFVB>.W0."]XG=>>5K2[2/OH[N*D:2J<#5@7]Q! MXSN/219>_H>@D3&O-\F9Y3;55$Z7#SX@>O4(;JI>PQDBIR3KQ6FH;])6M!=- M$WZ:5K&RWN6*5>EWC;8).\%+",>MP391;3?P*_0>Q?B%N77C=1R'[DL2B_+: M^ WUW29O5N@T"+5R&WUKS0Q!NC:,7+(G+_Y;AP]/GUKT(=E?89> M&B^(\-Z]<)T'_$T^SRM-!M\ENGA5%FRT#?MR$C^YN']\G<#*@]GN* M:W!I>1YR+DZL7<0:"K73GJ.:Q8[K=Q3:;H3(:,='GJIO]70#?@];=V!!X+7Z^8U^3C>./0CS^Z$5 OV2[CGV-R'G+CD$IX2J+ MC7VTL?UKX*/35RO\'<4WB>]$Z_@2[^435A-Y[Q[57F9$GHNCH6KA^DWA1[,. M*5>+6"KQK!X>-&L.J<<:Y0FXM=B?A>1[M$N[%83SS#LABQL:E&?=UD)SYLH- MQ?">A2?6"D)QTOU2"8>9O1RNQ=AD!Z?(H_FS013!QY$C]<"?N9X5Y8B[CRSJ MCRSJM@R314(5>=40>#1W-C4'*Y6?7^6HH%D+;GDH5*GJ-#?^:.Y;1Q9U)>/. MW"704$%>J6[0]):=*Q^;8\6*NXPO[^?.&S6K&0U%0DRBR4,HQ\ ],X@PW$K-TD$:)?TS9^OW\+['.R**S MW7,*I[$:9CIK?(TI0HU+93;%D;$IGX<]E^9Q6G@X*_;=9>R[YO/8-69Y.JB7 M!9S;AO#IE-=+OE,KZLP8V\](ADA.;C6DG?'DQWD?2:F [V?(&H.!Y[:I1%D* MC#=_6?#FJ@57C,&3,]LOK7)(&+_^NM ]I. <'8-#Y[.CI$D[C#5_6_KFX7!P M6:R1^P[Z)DXQ7O[TPIR7DAA@;QW=B0Y)7R::&V^?XI9"D#YPEAW&*C MJ::KI0Q;LM&K72)3**$P MY=%"'HE2'BGD+:;L6K+NKY@ZF;+J0[572,U,/=43*/$:H/QS%'^^F7A&J/V9 M09SXF/"51,I&K7TL5#R\4YS+((HC*6IBBQ$^D FG(-QP9/IGR]TGUCUZN_91 MN.-CHDH:ZL,RX2X[E(_\1^#Z\2_X+UA@-*&CMAU%'V!&PWX7EG3O,,!HZ#FW M4!L*?P],!NN7X!7,4@/8%I MQ+30:K_S^I]S 0P1IEO=KL<'=..UFQ)2BCNKAAY#H]X$6!6":G:K*$ARM4]1.(P7L4;[97[JOK8%4PVH18^122/.# 0R^?9]F0=L?JO6[@ M?<#CBGB3TOKBN3OR$A"*S>;V^F#)7>N%9 [ -,5<.]7R"E*ST M;7;OW/G9_HW#<=Z*WABSSB;_R HVXE+ILI'GFO+7X1JI/,+GRIE^XJZ#)6#6 M";=# O+-/#2E^_7*?_Y_<$U5*9'R;^;Q/=WYIV2#6D9F6Z^K8@B[US*RE7KL M5;[!;1EY.-W9)D=[F'E448_=)C5A+B/!H)=([&@]G2[=0&N838["/*/0FBR- M:Q/RW@N%Y*Z+4[UQVDP:>S/D)SX*%?<@01EXO$I+<\>A_< UP'..Y[?:1G_A M7KIC 68A\(G-6[(_I'TT1U)DLY%N"W[;H:N)H!C+46%-=GX;C3NA6BL#$C\; MHJT:.IDE\FKZ@XK9WI*W25QMI^.JQ$7*([2!%%8+$-5&U2?5^ M9I$4TF-,Y5(;FLH=%U"D5BM"_7#:>SN0A_GZ.C^J]+3(TY$IOG7W7$V]G#N? MI%IUGOU54W5G'9VA_++^*+-1/74JCPR^'!_BGI@]?Y7>/3SPR=H;9&$'>"0M M1'[+S#X@1GD[MGU3CL$Y$PLNZM"2[VJQ;/,%S!YJ@U;M F,PSNC]J/# M&%$T\^5=Q\S]"I^Z'E<):#9_P3-1UX1GAD%Y&1B=1AP?(/5@@HCKQYR3L,/KL* M(L^M?_UN(T!-O' ]W'\GF&-S-VVF['1-U[ZSB?H&S-ZZ/[PB\2?(IKCTO>(.+ ]\D%/"/@FDU+9+Z4-H)+\D_M5W( M[6*& J%T$^39D"*QO @;23M>-5P8L\Y5G%B/=@!"/EX&'IQQ 58!75)=IMN#GHH!3PX@=[$/: MF#8 !35/0(5=@WYB<),FONM]:X?P[?'J1O"M6]_V$@?>A065G6_75.RK#["/ MH,TCG@Y-D_8>0A?_^]'R+BP/%&K!"K8?9VC(N3 XHC ^06W1&&\;<+\=2:!' M%+L'4-!O\ 2%H;MMN@^.F1GM@5O4[[6V\9=#_&Y)?(=HDMQ XX8N0V=0O6)M M%Y;R)K]1'Y(07'/5"Z"Y_30>&K;+P.)54@1:>&Z$0^@,JJ=2!/.5F%?RIZTP M]4'>9^#%R,X(H#J!Z$/Y0>)Q7MI^A&/&"A(+(&D+OVM7M@QR:^BP7W1[JF86 M7*57XJQ]!?(W9@I")WG@S34P5^E=6]A(O,?F7'FC]%@MF0W;GM.Y*[ZX,H)#,'?FCO':+WA65=_2L[ZBT!:'?WFRTWWB\!>'5LF] J?G#TX*S?_+CD<()-[ MN\;L?26YW,][ :=0=)X1@O.)]#'0C];'>0DV!SO&>\^AQXSGP*RU&3H*H+;2 M?-H9FC-D4801R -.@$#'H?1MI\+TKH+D)=XF7IV(7[%$Q#K 5KB36HXR?*B$ M'WGT%F/Y&8)PB%JSI9[CWWXT1!^8-C]B4+/[D0+&Q%88FZ1AM)'<&OB%'L=+16^/:K^\\ Y^& M$F@6/M<^GH>:GX=*HK67&F\Z<9#>CN_?.FI,YV$,)[@7F;]].5NAKLB<#]6_ M+P^+)^KC=="=C_BLC?(B,%2E $Q0'PM%E\ ^Y+I$X=_/4EU(YW\J:$]R94'6 M0U^&7#HIK!*[$5Z].(UUP;2E6/%&IO#FMO,PW-Y"!&$XZ96'P9G MLXXB%$?Y-2MK=9;W+B.(&5E3NBA!*77R>[C-" /[J'[!O,.Z(3H&D^3/)VE]F&J"X=[J?,F5.]'A:A'0_'L/I]M@@[54<&-MRDBW!:#\,Z=FLM M(D&ESVD5:!Z+\%8/P;>2CC2&5]JDW+X^#*NK=EE)H/UO!9VZ">]D$8/Z/P<.OCDXBB^ )94%CN+K#\#"_HE0.&V+;W M6/.^#_S*Q],/KYWF>3?W/FNAU'J)YX[X,@@?%;;<=$]-K0+^#ED1BK)L,?)7 MQMNS%.54I\[JYM[!1V!SBO&K93TT.I&YD^+BF:OUT4;*'<)GD^ZS*Q39H7MD M6T>*L=S42Y^A]H@@CQ4+7Y@;/'U%AMIZ0XUK *>\08>I-#( ]KS,0H<*>34@ M!DJ/RHA7U=OK6(KTQFW8[IZ'&.H$1OM3M/58.KM K\@(*\T-O M-2GG57KJ/<22)3" \T^(%!S#[/MJA;\C.'\J;&_LIHV@GY$/!B<\L[5S@%"G MF((8J%"EUM<,K5I!;2H'Z$C5D[F_0115FI(QCJ,V+,(=R%<]^*"RLOM^[GNJ MC=:C.Y0MJU/HY*BOH@] MU^%\UH_E!!'2Y[2[FA\CBXB):DNT(,>1IU$7AK5M\NNB1BS Z3L7> M3$M=A*EH4JY297@1=I(I^4HU[D4D&$W*5J+A+B+_:"JV5EX/BZAP,Q5O1TIC M,LUP/RH[Q8^A05.=S(76Z9UYA5>>M.5HYD?'W/=?M G MDV@C:LZYHX4JBS4J2U"+O 9GZ7 2EN2\:\@.4.BH$11%,+>?0W&UCX9.YA%S M<8**XY*T&I6>YI$%4Y,FV:CT-"!S0CQ-I>R)ANYZ0^#W@>?<'HYA\$IKS$F# ML&4]S-M^C5G&3?UT5CY*#@G!ZKE"^-JQ798.?O00*V:!%?,P=O]-_EU(B8#R MP8;7QJ!L"M+M6FUEWA85H]I*NV@CY!G9>S_P@MU);07$[?61$ 1>=(5U: AE MPZ),+O%$K?7=2L$V?L,/AT*(ISP;2-C>C">.NM9:*6LL50L7X1%JH4XJ\:ZH MKLT]UZ&M%FB2DQT/LT)ZW%VMM>BDBB8?:F)X4=4]K0HDSJ=S41SR;W8\GAP M'GU2<>O-];PL-;':["R/)]03B]&=^PKPV&5Z+DY?K7\&X:5G19'$\=AF!&U' M5C+)?(KWUD'NC&P[RK#D1F%<(!7_+2<3_^6W1SP?/D!2]==)I_45\^R0'(03 M*_^N4:83#00YN?K[Z.[V#=[.IEXF[O?:LTE]D]_IC_:0S$X6[]'8;?JCRA&I MY=_T@;"QFPY?>K4[3K58:[LQ#(C@N,77\%:\2]3B.)0&F5;\6N]R\5OZW<1C M7;#.%JVP[0^Z:" 3B19[_1LZ&4C,MPAM$^_.W8K.CU)7,QY1'=3EXG.JM1HZ M5X>-0&$%7G&4QD7XZCL^4&=M.R%<]F_=Z=*SN;+LVRJK\(Y_ (LE[XWEA<<$?;PUJY0>8> MQ3'"WEM.<,*H5\)=+91H4&;.>Q,6G^L+P1R5._SFXXO_)W_;# 3I403^I5E$45K5[LD)CIZ'T28/"FZ4>HR(Z_/). M'Y[(#T^D@@S_^SN^)^S?42@6V]4F)NH(&=A\*>D#8078^=Q>5Y".9OP;XL.I MU8&?'16RK&RR7!>:._>D.E0I;:LMF^?.N0\/XF E7+HKCZ4=VJ"++8*9']ZT M;-H#4Y&N]<_=[#"4=.ZO@B_!L]C_E D5J[MNS/^.Z;?!)/$T&NTFR MO*CLPL?:]RMFPUFZ2A9D>4JGV4"%_@G>!"%R=SZ%2K9/Y(GGD0WT,[XM[L39 M'RT&T$YD PF_?3%$S/96ZW."Q] PCT19>(JM,#;I5A^,:RIG81%ZTF *_X%7.)]XH; MWU@VP58GP>0L6/,B",/@#9I81_QSK:Y7]W&T762/B,1./F#)>Y(&6' :#KP M#YY]@26)9YVB"\O_7>R6XC?4Z(LO[D^9PX_7THB5+]K?+T[%7R0A$2T&T.>G MW0=A_(S" ["^ 9.=W]:Z*)MU':8:92X]2M6DN&ZS4S5?50YE=$TBB^\_UT;7[^75K27 M%P;FMQUX2>[PC.$[]^!6YZ;6QZAS ]S2:^V9J;_,12:\QCY]Q^TK^'"U'9'+N@47P2/SJ+?*'+\WF?NP4 M],_N[_!%^ T5]2N!.C'W(*J>[QLEZ\@BJ@DH;C.>K)L[=$$+&28P02VBM(+B M#A)R;+%F MA_P$53V-DH:#.]X*]@/XH.5Q)\-M-_!LM[""(25'L-5TT$TE/J'_WT[1R= V^ MEC-KD_I K..K9+,V%P_$.;$".6LK:'_NJ>JPL[9R#+ ;7@MC&,I>4?@2+(N1;5XJC.5_G9OC:7 QRGOT,.;][8-YXH@6 MY><68^9/'S*T63F2\._SL*\:[J5^'FX&8S*>Y^%(&,IZ=!'X>$NF^Y:".=HJ M9B19Q[F<;A4>31+O=AY'//E/7X\'E\2&-) M@CB$@%JAPV>W8&T:.AFVXQHOEL9NAJX.^RO>1[=1A/=;I]6J#6(HL9V(XT-G MF4 .EM@$Q;H365EG4XD+$7IWHYA$0=DA&">N$/UO-WHEXQG*@F[;]<^&Q+LI M:"!]#*2#ZJRSM.PU;:X%X><-LAYTCG<-!M%'_#^_ M%2'9,P^D,:Z-WH^IC*C+P >9 P#'=XU%&F5]-):A9--B^_T"^6A;0ZAJ:JU_ M^@6NRN!(Q>V')2$*X\+T\=_RJ5>*T)>F6?YM^BEQ\1*KOTXZ+89!)9Q8^7?] M^U 9PE'60QL9U]LM@J(8N=A^Q*KD([+Q@Q3?>O0.CF\0OK\L#R)V$CR'4ZFQ M@-PA1M;&EF]^B">Z\]U_(P=/ADF]B-;[4;09MAO#-%*SA7A ^/XFV@^!LRXTHAF/**5KOMR?1[!I3ISBZ+RK0S,JMR#D6.+^T0O)2X3^E> 97K_B_VFJ:B)HK2_XHCXA M>64387M#@M4 W";;@8WAGBI=#2'LE*4ER:R(\CY#QWA&$8JB@WC;BUJ-.@_N M_A6W^S!E3F7*;%P]<9&Q6AO3"G4I5VNK]QF8G3?V^Q->+>9GO9$VAEY8 MGN7;Z&F/4'P'7P#53WR#"IL;18!T.T@ZS-[5TX*O M^VM'"6O(\I6I:4!'Y; MXY20VA-)41&YT^]8A@J_AE76P=BAZ"I+=/B;(W@*2FON9=BNUKQ7 M0=&3-!Y[9%8KLT"4FG\V6?3>-]+>%")D*O<:< MYR-ZQ1QQNDU7VEG?W7Q$ .B1;\&+P!=F@'';:IOZ5\L[@HG"M5'E;J(%=:(4 M?'KM.T])B.(3S%=T(W0=S0PS;H,=KA1.*K9YS=UQU<96)DD&J9JB%@ *#1U MY>"(7"O47'?41_" 8&\(ZC'6K5QSY4DK2UG&'X[9:M921=7\593",DO3K)GU M$:.C;FRL@5N)36BSWC/*'DZ):KB47:5LY"M5MVDVHRUB@RG8WA2J#L]=7VSE MU&ZZ]!90D[E)ORY;3><:Z::N7_,MN8L(F>R@$TB-QXM@6JLK3V#.7C2CQ&5? M19:XN0JI[EM*ZIU81/1MZ]TEU;;F7O:U_0Y3\3+-&H6B]483FGO'8-.,-I?< M-;B(TK#*>XR?8#@H<\YV9S7X96==&J3SK:C X44S3KK3.KO19UV(6#V9YRDY M'*SPA+FT!YD6W?J597C$LPI?]50=_D@O48SLE..MG@="=0,8L*D@P$.!_YX1 MZ.\ F^^W/QEYZ70.JEDD)NV@K*N!5PYC:C(/O'(D]BE 52[)&M67GUA C6(T M$ -3:JTR\Q0']N\O>+.4JK3.*--[C_?/18T^6/(=*0]X<>3K\ K";X# )^O,"_96Z*4ORMN"JD9D$O?6 M ?]1-7=3H:,^:+^'C33A(_]=:^:;Z[CX>5A@9 - K^]/A*RHEB-!S42G519 MROYPXVMC47X)D..>39TY:\!S&I&)OQ0FWO1Z[CFHOOW259QCM0%Y4(BVW!,( M'?KFD'U*7T%#LI/E "KE-AIKUF"Q](B.";AM,6_7OD-O/^1,?//=.'I\^B95;>1]S'A-#O=@R#RN*HKYK,,BV^OS);S 7&&> M>YQMH^)=\K4J<'/V#!M:S:_&Q E68^Y\'>9M4&+F<"LU=^8/>P6-^\)91#3M MJ%*F\H":>[SM2)N[U=-N#+>(@;#YW*=Y*Y'0Z9V82QS#B+94WAW>O[($T7-@S/DMS17#(,J%.38*8"RRGJ81H;4 M!BWO\^%?,\&_-LP9JUW?%>X,_15]7C4Z1^3P26 R7N1N4^NLC3B:DPLV-3GT M9;V=3F\'PDK1'NLJ5^@5><$1SA7C9)//H[&G/G\7\O!P.SRWKU;X.X(@0A6: M&KMI(^AGY$,Q)BB3[!QRIN^HBA&2!B'JM!AZ,IGWG%O/>%/>)+*9]4VIM68:3*D-7;3;;)HD -R MPT53YTE+Z3S#0=QL;WW'?76=!$^+7]R+WT[O5']UXSW9*B!T]N[Q.;CVL6 Y M"8]JVQ&,.#?*90)-FG2#4;+6T(A)E^XPN2.DL9L!J6=73+T0N,9A[^:NQRP6Q[P@R0D$4TD$(&5K[XXU:6"[^!_Q>3Q/Z_F$35VXL;MTHM3 M\9?VI=MX TPJTPMO\IH:15YS N5*<$OU&FY2PJ_PEK3Q4,(:=I4&0U=\1:'_ MAO;7_L[:(6=SA #;((0=;_DG>1E8M9Y#UX6SHKT J:?^^V*S$1OVW$6 /XWE M&]M9T>7>CN??$OR:LY_U9LC3",YZY'C?!;?!.$6 MN?@&%RU,GR'GG=_92UC!)T2>IT?T"M8ZKJ!0ZSCP;+_YUB$(8^)A"-'1]@F8=W83!H:")NK44>(4.@\^NH!A3=";!I#CM!I[++\AW M@O *'8,(;^K/O&E4F^A3@FP[2+"\QS(>5HJ5DL+"/2\@(5*-%'H:1E8K2@PH M#Z-FWM$:C\*R][(W&Y!3$O+49=TE;3N;MKEM7E\09 MF7&6'[5EK!EQL>LF-E>*=OI29, Y[%KY2C6M\UQ7<"@K=GH]-FEH<^9C1P]O MRKJJ37W.K&JIR*O:^Q<1+M=&Q^=X'Q;!H_.\D!:"9C* K&SR!VT4 VW0R0_=R'B^"K()HHX*FCUIR]:-6G5BX@J MR/3G+S)U;:(F\5@%]?[R13TCZM7VT06">:SF>#^AE#4XIU=)KJQ<3FO&6X]$ M5 6K,5,G_$G!IT[,B0FOZVH M^@[!E/5_;XN>,F9U*JK%)PT'#>UL"]4* MBF'!3+T@KN'D2VAWSCF)W%CRF'.$0@/%U1R1"9=)0;D4_"0M:(;04"):Y[#_ M7QBE*DD^A]G8+15^%:4X8.3 1_2*_(S2 *,DM_>C@%E"6TI^0;GJB'!:PQ?C MKDT'M)B\/XL2<#3^(7J,I;S/A%,+JKB<%JSRSJ\U"G>#>4NA5#ZE6 ZO!@>I@+ MRU[WS\M/H1_F[;S1XUZ[?5VS]P3]*V/9*$<>@7HQ$1[3 MM6D>6NM0_V*+!>PCRL=/<=JKL":"L#;-ASC:TI-X?X/>4Q;BK#0A2H AT%C3 MR+ +]U7Z_].7_F=]N=8;KA&EJLYIL3P(*2\ M8N8], Q ^.K)IB%"YS[_D_;[^4,@XIBQD)0*%)+UYA-"OXI.^U,9,IB'/%& M.4)O-FQ#+JL8X$BM&+2>7V2SK_-5T]!+DO7F%X_)WG1-7EA<>1607WE2KKTP M1,'5J8!+"D 9:YS[UJ_^22,_9?6T>2N.D&=$?.8EVJ(KY+&R5'?X P7W$3UB M4)(R/4=Q#@UX"928+X"]BM@60T'N:/!2]O?[Z'\H'7EM#E8Q3-8*R' D+'EU M^T&9!2?HF1(850\K<=+MGG/>NR9>JN(#MQ\'3+@$X,06+8T$LA#:?H2#[5^^;4=O2V-O99"V9 M._&B=Z#:+5ERF,(G>/&\9.)/; 6LB[UV%T\GM<>O)11&TW MV*62Q2C>H*KO(W;,72IMC*( FEPC\ !>_-$E<">69U;'I7?AR4)"3V%)BA:5 M+GV_:&,W%$?1I]@WQN[/%J$,5.I+YRR9L[5))]$!?^ETF=RGJV^^=+&T5'E4 MFV2164PNG3XZQZTX-_-LOKQ4LB[7\^O"S](9#<$=/_F%Y_/IM/JV/_Z3=4V< MX7R5VFTNN5??/"UA+YP+9Q%Q9\>&?'7_FR^FY#-U_YM)M$HNV)?:A6]>83$T M .BK^YSKW>?@47M.@2&^_%]ZL[AI9<6@V+1/UD]N0I;M^!LNO;?;@LJO/M#P M4S2'FU'I.*4KFZ&(YMEI?@#8XPIU:?9W*>,6OHRKX58K1 M=4S?%7&Z1704#CQ^\2^>)GE?.8)V% 8?>1>B[Y&7!3BU69JOG%[O')#5^WD M4#JOG(LRJ[T-9#$I[8BB#.G2I7M@MB><%^>,^&28JZ<\LJJ>Z:LD0?0_*D@^ MU#@->M.BZ<#/) XRG]XB7Q$YTJNCI&2($,S&1%E7^F(.B;3 F!S6O2G_DPIO M+PLM[H;U ;'+6;2EUS0FW'7[6 YO,RV67BS]'6MB2G=D&!_X-3Z?GW3KJL98 M+';%&453ZJH)\]6J9BH$'&IQ>1TGZ7I3'#\:PHMA+4_]6QP'36GX&M=7 >'\ MA0/L"(7B1N4/ZG3KJ>_V*01+F+"<+; M*&]J[Y\:@>)T3?F_\CB;5? K59Z8*"ZQ'4&H,SX&K;UPKZ.FAG\&OP8\PA?0 M.OH5A2&C>10\>N0WU%">9%<[^0"+2'#!JRDSWH0!<[!/U@#:ZLZXU$[CWPAK M<$KB#98)M2:$O6FBB!(RI'MR%>QQA)G\9%T_U#M9-PK.M<_TN@=@RLTNY^I) M-R"M3;L,/\OG4I"1*AR2N4O!+9<E M1T[!N@)_VK6O5&*3[;CC'T9;Y%05(#W/E@:8+WK,=&T<_!2U?4IVF MIG+IE5$C"M>4(\@77K%IL:^<;;"IH-\:6I]=)T=#Y1USE!1&'MAV_:R69PTR MVCOZ9N)G[^BG:D=H3@9A[)AXKT!&W(#UA_3AECCX'*> TO?7KOTE][0Y3H/I M_&]-@LWEP'*0[T_P@-_>$>Z#G(\B=H9-'YJ><@ MPI^A$6$*__816,'YV.3^KMG01^IG]OG;%4G.1FC M"\=8#A.7]*02QH)W8=V=NOTT_N>RU$RKUY<0 R&HO1V@ZSC4Y7XI_"4*3_N, M99IO!BBC3-#T3CCE/IQ=I8'5H$7!3<8J5^=7RG]X888Z199Y*2KN"%/I%8/? M-7$[[S=V!<[H)F6?^5FX#'(X:,N0\_9$ZZ![F37D5T& \ZO7LX>#^^C:.^#4 M"Y5;2#W&[CJ^H$-&_!VKXM:GOVK-U /MK8_O9_LL9)=-F5%*O5;&XZ'M/RZZ M^+,U-PXD93UD64[W\/=8+%Z4TG,>!:7I2+F$$F!HZY7OE D63/6BB0^L_%/Y M%.YB\H"V7OB*TC3/95KMNUEMAH,6G>7P*0)EG95/;UD)5J6?FH^'AB*70N,Q M[ ^?F,?N]P=Z!2GN):^'L)?0*8.:>![/)/81"KB[\J:XLJXW]$]*"A8[VZ6; MX2"0[/"$?O G8WBA'@L-M7PSCL2M.]BB7ER&]"=OL43A;>!0=A(1L>@DKP2C M5:^B@"HDF AXTE"]5KT!.)J#KA'*5\!F;#;']VZQ[!>4'S^H"%[/\7E!?KS- M/7 J)IC]LU\%!::I8"C!P&CH5XD!EU*\3)'N>S9=1]S8=-^* ZL=BZ#Q5Q83 M&.2"[$?C]KQECE!"5%E@6E)<3)D!I5NTG5LO;1 M*I>=[2R-@;GL?&?3D)O/D.\WGA0+/0"*;R:1HI- M) MP*B=XZ**9J$)&"UTN0"D6>@(3I==H##+'\#IJV813 #J2W!2),C_7]OX^'OD M!WDUB?LH8/6H,DK$=12>)BD(T?Q('@/F!W7H%_W'/U=AV/BP,-=$"C9UAJ"W M]XCWF/%*4N*IR.&L>X05;*RC<^WU$%( ,>:5D1YH?_[YPU.&"DS@FY0XA/, M)[O>7&4)W;U)4HOU^V@3DST7WS?,,APE'"[_=D2).W-",FYGCAUT0E M37305I/UZ.S-=+/Z5)U1=!VPMX)L2+MGF5'JI_/5&NK']IA*:HD_"& MOF5B+F*]C-+G0HU<;0GBWY7+3R7\)=9,^'P%9Q*2-J9'_U5/C96COXXS5JCQ MX)'TQ&@FV+)2L$4G6E^/*C[M3DK(&\/&7AY* *J$]$6]>A=+X=U'P?YJL+FL M-XUS2G%(BV$_UQ%M?\4ZS*1$3@S[B0LXR7+EL^@VP$D^7%O2#_I*LIVG?EGM>2I-YO?L[NJ%S]E[B/W2#27!SWP\!)67%0[%05%W M^P7Y"!]1L(X:DDFO_1J\P[DDO '7^,J*HKI5.YU38&@SZ,98"^_GD EA8!$> MJ154/**^,SM.G$^!R+P$/@U;\%4V@5"LT0\VBEY1'X)@$R!&63',&L; MY'3:.42(1+%S-_CH-=OOJ4"D2XZW$=Y@WZ,X^3[;">S@B*DPP&B6:*2OGDP. M]F1Z04?Z=R2M<3MDI#6T'N)H2^7\_@:]Z_W5$F![:X(B*FN>XA2I?;E]N$4# M./H=91%21FUH!DP=#18>=MXK_82X3X,8!H(+#$S4EXRPZ9YJEUOB[16$[<(L M'%J4E.)5$M'5A; U/46$4Q<&_A3!!8NX%H4+-59,QRQ,4Q;*@N[31:?U2)7L M?2864OWG=MN(7773N)I6XZM3#?/LG;C08O6.^/\XUT;!<^A%TL-WUD_9ZTVX M/X3Q"35KN2C5)3G\\KM%=BQ5SV!NX)DD_(#CO,J+E$]7 0U%LG]%,2[;]I"@ M *=WGL^=!TH1*02UV +K&(='5F*B-2U-)RS5&'OAR]4)(F>=-LS7B3SN4_;5 M\*Y!1;'D0E P$Q]A-K)S1+[Z.Q1D3-SVC2QU2>6^Z46BAYSU.I>-4/;W3EMJ M*W:. !#(I FY1.6F5X/T>X31Y>?VN44Y4 M8RQ:W/V,U9NADEQC<>_"36Q;?4+I,XDW.%VEE$[O62K+@1<#3CR;7V+R&U,D M\WHSHFET(";^?J,D?+/F#2O^C,B1EVB\RU*Z(F6$@ZBYUCEOFAJ?,$XHM:YP M\$PW@7BB'9#)*1HEE(=3?$2E(_S&.PDK0,A YRS]T,9^O5EGI+%RHED.&6[9 MHJ+W*'G=*EUX:T=RB&7I*L-[_P>-5T35[P=I<^94SNT6L]$X4XQ2BY M]L(0!5>G BXI *5ZRYEOA46.LD8PWZW5PVJV/P\A@O9=4SORJI"/0B;2+9\? M)OTT.X,!]@S!FPWRTZK,U9OW\>*EB)4\BYB6R:_4],=<\TSJ6XS,3CSV=1,O MSS/E!KK^WI;R B6T3S^1!VI1QLD__H(3H5 T'&EMP>Y8^!-Z8,%F]W2:T193 MY85GHGU/T"8+'_!&%C=C--1FZ$\4>(0>/W&0^6FQ@T^-0TH>#J0;.#5WM;\D M(+D4S!IYO\5Q\ .'(:M!C D/]Y*W$Y4 6YM\636814E%K+%-\0F%^H&F@S8:7! 76J=^]B#='\)4EO ]%V)',TZ^<=J-H(X53%7JQ0 MSHWS:,(^Z.*P0(TBSU.)U%RQ%*R13V MY4AU"9D 3 ?7=KBKHZCJS%OMZ%E'D5S:O*4) MYG68%9)0GVO#G7:'G(!"8;NSJ M7!C(J$]U&'1C0^; &4RG^>&)1I#),;$&N&"YY#]#80AE8M8]O\!?92TZLY$&V/]@RY?LL,'=O-# M_.8G$27FXUUN"B*KP=6WEX@+<(G@EBP!))R59L3454IBJI2PIG6YM]9TDB;# MK&V>W%;$[CNL.9]$8WA"Z7IS@X\XH$I9LB94L9*B/.&+IUZ^T/-9C[&B[>>: MJ>#B!1,"7G1QQ0K7]Q!ON1XL%9MZ>'L5D['WSD/&[F+R/:*7^> Z]/">=3HN M_E(E&=Y^L/A%1(DKX=]Q[W*W%,O@:T?+AC9$GX<4 .=M-,-+ VC:7'Q&TD+I!@.W4><:YRCBTYQ3 ZZ*D,.N7:POM:2[?+R( M%=_I( =D+W7D+$>9);WEXREC9 R '-@[N["=PK0 .?IU9OX26RL@QX+.2Y % MTZ.6]-&?P2%*FXWK@:-GB9Z1AB G?=MU:4R8_FQ15'=O\4S:-CX \%M7\UH3 MD9;=F.W5J0]<@BD=VU-^ @"AG.W3:5ZEMHN+?N#4CK->=5R!JZP+8[,O01Z( ME',L*R401TRDJ_A#.<:RZ[F:C9(MQ+!3E\M':9K[".2PV,O?(SJ";6TQ/_>K'L'BI8A.]M.]-ZFE_H"FAYP:E3EOG2_043=!H M?]6J'EG!W.Q8TNK]D+W.<$X8M0""3,-)N6GH-X5QW6P^FB\'] MSW6']30TZ5P@77=3CSZG9BC'!LT[Y/MQ1H^0%^0C?&0GSQ."F?AX'8>A]QZS MJ@Q'U*PINXJ"ISCR)8\;:I9C MWS*QA>W1H_HCH1+]5^2GK]GA$)Y66X+R^<@-_B;#%DT5??1^C1'V8!*^53G_+"Q#;CL?;2$7D)%JJ#T6E&+/ZM MGE4>Q_-,KSL^/GCAE1&G+C- O$"@=!=92A-)UG>X0 MR0NIL8A?J0=9/6;BQ:CV",O28Z(/U1M)1'DE_ S;K.B0(4FX;SRWIS87;$A% MD$"4KL(P_L&9,FZLHTQW'O,J9UVZ<]QFQ1FWTUT"'7=7C+SB578AH]L5:!II M,RSE%Z\R;U)QA7 $=5D3MS-P=Z0KFSHK4'LY;&P$T4T--.I&_EWE7:[5D6*H M)(%,FQ$E#::V*S9I*UD$R!0TZ>DUTW$_\,H/V44,A ]E1P%DTEEDP#,,,XZ[ MY6?=TH/,0X[[\6-*9$Q[/> M9V5%M9'3\?3XV<^.V@3K>,+\W#MTG"78R9BI!^11J?.:[?G?#_UF4"; = M)/6 J$#,)]AH4-);N&XM2\TH *%,:ZH.4]Z,MGR6 >]%8QB<[J,9>#RMEQ,F>CU&9\5G!4@H< T-JDV=?7&Q:HJPZU MZ\/9DU*[F/ N,#HZ"P"M39I%,U/U84?/ZQMZ.P[C0Z/:C9+R)B/ME7C6+ $ MRK^B,,Q+ >=]=.C?3T/X0(V^;@0K4KQ8H/9\=H8?(^3P'09SW2)^Q@41J#V0JC'!\Z6]# M!IQR$8Y5([6]U22YKU\Z[MH;<\8(-%;'J3"8$8P48,=]E"-88V:.6!#YP1RA M5\P=][0.IHBA9N^D%;=TL3>]ZT\HK0]9$8!M^ZXT+D!GXC48",#**YVEF:57 M,]QF(H1X7M^(/!Y>,P@>,E'@IQ'"8W&+'( MA$>Z[]7B009M3SF*-^D/CZ#&'57M)I#".VM$-U=ZQ79TG5;IN EL''ET.BEH MHA@Y& 8HJD:$:6I,CE!'Y6Z8CSQN.!]&F-W-KJ=&U&H2&3*5SI$__2M&S] H M4]T=-T:/$\G3W0(NE7QJCNJIJ(X;L"<^V >TL'*/)&K.4%QC'#?ICR6([%+D M>#K42'(H+EE.^C;NH]2+MI@%WO/0 %;3,PJ^Q7'P X=A%;G>!;/MW;ACY$$/ M^,@2E]M3T_DWC(8"\'#<1P47B.=JYN

HDU9!5+<77*T]Y"+U%U\QKR!HAH MUE/LM]4V1U7XEL^%[DP.!DV9S!>6_"0TLG6?+EL5E=)NGXE;^/6?6V.4X@Q% M0:UTO>#M3N.6T8V"R/-NLQD89S9OXH+.L^G)TKQ27J#G"&1C.,W6;AYUO57M%709\:HO MK]*75\EM-\M7V[WS^@TQPCYGQ-]Y":I:0L@[F"GA/V$GLR^74V=3-!3Q?I"& M; ^H!TW,\G__H-O*_PT1.9=W02"*U!?$Q!_+^6[&5?)FV3\/%ZW*MSGK)CA' MO?IR&WRY#1;KSZ0^AD$3YZL]S9<_8>;*'],(<9UJ IE,7Y9W:+M/K$HZ3H^I MMMIHM14R_1;<@Y+CTDFK[ UZ3T':7MG$[J.$WDA,BA#)H"T:#IH34IE)19"3 M=VX_QN&1[NJ\0<*=Y^.0,BKWVQ=^S*N8D/@' _$.]'%Z$EV\1[W'8AUJ[GQ\ M]DAZ4MHT!8!3]V0/_2LJJ$+OE%QYT6]RTX88$ 0)F^K]U:GY1&'.&_ "^T76 MV4[4%)H2P\*9NI+/9=!N3]]^J:BV-%3B( 2UN+V%\EQ3HU\UQF*YKC1%9+W) M9Z6ITR4 !2%B!YY2T#A?(3<%@/98A6J'Y>J7,VJT,J,WGRQ*UUF:T.M 0!E= MQD9#7[.,4E=U5JRNH=B9OL]EH)"78IYN"]5.[S@B1%ZH3PTZ\) _X7QFF MU#N]L"M4S@%%@/4#WN/NW,S&@-HGU_&>SHE=5.X0>J87;OHW;RN[V@QY@TTG M7MY3CM[_$:%L4I0@EGOIQ.#.NN$T-^VV,5MPJX5LF36PJAF@?\8EVG'BR+63 MNJ&T^&X+&7%C6Z'"BM,N^&]^389,%S-OH?*^+.P%T;W>.4(#51;:N41P/J_, MY/+;WB/*NZ;C5-!8,MK5Z40W5=#X&XF%X;9"F0B](#$Q-5$<$1M&#",W'K2Z M*@GE"V1/Y#0ZYWAK!63:3*UY28YAQY.JSKR2&)F ()-H:BX121K'$\P&2!") MFHRF>T1ODYN#$/\-BA"C+'ISD.6/(,DBMP Z%-+S0O_WSV:V)6O(]N9] MH 1D>$\UO^LX8NWP4.2?>HO4RZ%4C;%F0!9-2Q7P(X>WCT+!^56-A>D@%K&\DZS29T3F< M6L 2?IWBS=;(\CTB=*+;"/\;!70RQ5Y+\IA<.D>2MV#-_Y008-@[H*%:+<0S MHF=8FI<6+X_JE>^3K#XZS1 W>J.S_CRCH[7?Q5MX@(&V,IFVI1U#BNY!")D0 MQM=EK::R4'T: &7OYJ_>]!E*ERW>A7W 5IY$GX!L)9N#: .U#<>-:%.1QTQ# M<=>84-N(&&(UL3!0X\(SB8/,3W_ARGV6/3/465<2* A35^=MB"%GZ%84)+LY2250R1M K M+_0B'[WN$$H?V!>8!BD_,:3@H!!0LH-BP"4@85&R+NPQ&$#?=;I#I/#.EZH: M5;"5J6SJ,5!4)'57>2&LO:27.$D:M\$;;^]M4?(:9]M=RD.N)&CHQT$[CX9G M;=O='Y,?JW:DT#*]UB0G__7[H=:3Q*)%#F=7,C[%D3]".*J&34W<.$G7FYIN M0L)V82:>PYM'\&:3K*-'Q*K510%.RJ >T714X!//[ 8E/L&'O+Q7\5U>J@AO ML"]J;V8Z:LYYOJ CI4@P;KK*P?;.Y@/K_A[6+'@51S+WJ1C6VM0?O?! F 3W M4>>XS7,JDC*V;14%KQE!Z8G-5W;(C7V;LWYA8ZMHI^>[RN[HKN/,T!K9"C:7 M6_[%3U<(Y0NF4@ M4V,^YE"J&8['E0]G$!/O&&2B3,\G4O.LXW4KSN0-M4<2,FVF9Y$%,M46K.,Q MZHHN\>8Z7KMC%"E&>X<=RLNI4W)>T]C_[=VCZW =[UFJ:GZWA)B-\[KS"+KJ M3;5NGW1UJD&>O1/OJ/3#(T%ON7L-(=GZ M%!.TVFX)VE(%D'^9;BH_F88G6@PT%Y% MF.>U,KBN?FZQ>\Q8QLZYFVF44? <>I&VZ_TLGP+0-X'SWG=Z8B4OK]\U;5]4 M8ZQ&FN, >^34V$R:;$(QO#44:@Z13[L- W?'27>![Z,0$7;A;XYDAK*ISW;5 MI^P1CK'9"SH4+:0#*@SR$RVXR0C54O/\^OQ4DQ%DR"OR-[2=71*>!6R MYW?Q0W#>>P1D4L/@TXX @>QXML>;@ZYJD'VR[FUO\27P@OPS_-?F#T694=LN MFMO](8Q/"+TB)2>!$YZ^9^BL G#?3H&3FR)GR M6Y8KS;-RFUP2&)3S48V AH;2B: >8\_^G',,"L0,I>Z&:SC8&G)Y*";3RM6U M(OIP-KTSB![A.ZIXW* C"N,#XY:"DCH?C7:D/9F)0OJZ+9W;HT=^0RPVPP0G M[3!K"'U#$:L<3&>V"O94JTA2>B_!1V2"E=E89TW3,ZD38COUI$?PA=DZ9E!/ M^M7R)86HP10QU,B_9.UDCAFZ6?"!65SKLPMN_T&JFKOMGK!B_*'7T&%I>+%L/9G2K;P%R LD-AAP]O\6V4 M4M:5C-5 _Z*9U_$8GHI\>Q-##UWT0L6%?(-0V5/R^+W>XGN)3F5SWK=HHC?4-79IZ^25H'O $S= :1 MZ ?:W49;;XN"]8%%5,6$'05>=%)WA3$;.75E=2_9E=>9A>P2/IPFH&3$RXUSA+=P_>;V@=(>6ZB@$GGLTZ2Y.4%3^)MM?> M :>L[28]>_^.PFZJAQ9\ZFO7*?(4%Z[ZJ=T,HCPRJA^')E;G[F*R03B5-L<^ MZY53,RJ;B\SB_X*.B"0]/ 8,G'BVWR-O'Y.4^S8(.G@X*&IFB68H!YX\L]K' MZ,A,*LD=B?>-HQWWLLH,!DP^NX:FP5JB>J%D4@*XB>?R#Q0%,;E!ASBA:O_/ MHFET0>SIJ;X?9_1.$F"TB%(ZS2 3XT(EUOGJFJ-!^6.LI VW MJJ-8GV4?/??\9X+@TFA"3>8 M@QQ_ DT.47S#'%3X,V J]"(KYB# 7V 28%#$QBPW7.#^8EG,AY/IF$^L.6*2 M4)6.ZRBUHK.BM_L AQES@;\BNN"\&6*NT:" B4IVHF9ID29_PT!10%^79[N6 M+[1=$FP@&K<>B:B^5M&CQPC=D)ZI7@\@)?1,7,S2-R?YB+UP+^'LM7E*VF'6 M$*K*83 ]>KJ)'Z!*I]FQB\"(^/9K&T_'_',U5KMV6$_ M#R<4[X:2<3@DT]#UVEY3ZP7B&-=ICE1'7=U#)4N3A(IS"30US,*BYC^Q6O<5 M+?T=(:DHBA,H32\F"'1..3G1R0R9PB,\#%->PR:DMGJ'.!KI<,X1)5&>G+0" MLN7?JJP'OL!<#,-]<:@/>"JK\_2D2#T3?/12]!QZ/I>.RFTA M 5Z4X1Z]7V-RG25IO$=$9/Z4 "TZR7R96[.0\K\S;*?2J&M=IMNZ'M:JIGR: A35\M):7PUE#XAT@IJXYD=; ,N+_0CA+/:OJ5H#:_K7=.$6/5U>V%5&6O.J M^73AD_D#[[.]=&+MYU^%/[\*?RZ_:R3Z8OT,RG&IOIX*8:U.7=D\6C!],3R( MDUXQ\QX8B D/5$T Q#JX4PVV:\%2S%@(^BGK8TYDIV,$?:,$U=M$VY#+:CTX M4FL]K><76??V?+T[]))DO?G%8YI1NB8O>+M+GS(V*7HZ5(ZN:R\,47!U*N"2 M E#&&N>^U:K,>2L$R3,B/CWBO2VZ0A[+:KO#'ZQ=,Q4T5+5B0ETAC0:\9.H* MHXR\*,@MZ%[*_GX?_0_].,]>85EZL@*>AB-A\>KM!Z4P3A"]5?NH>EBQ4K?F MY7GOFGBIB@_,L@M4!U)T/9&.8JU MD5>_2LP6N[\<1=W(E=[NH-QSHSF*NL3;5HK[CL?+4227<(Q=2B%EK8[0\S*5 MO-)B(] X&G"*+K1#<0(Z00)C+4#I]FI1P4"/=I\D,C=:DQ(BO<$1S%697>-0 M=R0!ZZN,^F)Y51/E1RQ<[G593E,Y99N(RXQ9H"EP<05O%TR0F].^V_%&.THI MW8VF[*'H!8]069%K"$',:Q[#CI;IG MD'>RD#O(E(+!:GTKJ^.5SV?@+FD )612V3\^1=$]D O*VZ?86U5C'J@(@V'^7V_*%__SMIZ^[)ZKHH! MUN+BU^D.D?[$)!C(H(;F74BKK%\>'&FUTD])K>!TXXVCK+ ML J<96U('$%2+D?SOKYTU1X0U9:XN6"]^9X@/J+IL@&-GYF<:41TMGD4.GIC MA"I#%J=E^SMZW+-%1I'?%+(.X:WGW1+XU&R9Y BB6IE;RI\7Y"/,&Z@]H;0K MA:!C:2QJ288"Q0D*'4^YM'TF,>79],2BOUAW+[9]#VR//C6$[1^ HVBJ <65"=F.W<<@7R%3J&6OG*&A-':4Q.+FU$,WGZ MYGT@F=X*'4.Y)+V/4B_:,@-8#D/7K6H _"V.@Q^89:?7_GC0:)I)F+I._+.' M@_NH:.WN#);:35ATQRT:!E/)RR6/V-(#'5FSO\IRGG5.:.(&C'#/-'E'?F9.T^J6A:;Z@4=@9[,]Z5 MFLH=P5+.KOF*/Z)T%P=,,4CR:W0S[@$T9F;<^\(ZC$0H*'O/-+CY!FVPCU-G M$%:8M^H31*"V_G$87@N5%6PATZTGF#^T/#FU5ZP-8['\NVP7]&J^]P MEKT6 MN'Z$LQ9!VJOU9GAAEGN Q<,@(*2?.XAIJO>DVDF]<.TY,_^1$ ^SL?;$H\1- M)):38F![L0]J5Y 0!_48""7PE=S4!;,Z8:FW1CIWV0@@+"3TR!BPD6B<]2TM M]KPH-[9PB$U$9'X5&182>(O:DMRRZ: MVI$6]283 [I$@3(8:@TQS5X!L!^&&K]E2L:@MX Y_,X.#+?10%!@TA9.7P9M ML6F3WE8MQ,1@H%V6ZMNFY0S5@^WG&70R"19/-*B[G/.;7/+*K/?DM-[<92PA M^@6Q5++RGE>DYB3K]Q!O\[(<1=OS/T!(/GA E-Y(J(,E(78)75QV7^8^9D2.F)XZKW$8B#"$&8\NE$D*T54ONBL8+BSDRV?YZPIR M/3F4\&8HZ2FA"N2N4(0V6(@@3(X8**95UJ,[RCAX&^5&&/_4J%E.)0+_5X%8 M\&N6FSIZ(9O0^<%(WK\BOC$HTH\>^0TUP)W!4R/L7^@Q%F6HE"%=\V[E3F"6 M%/I?X.02JS=^BT*.H+:P]!>;-U^0%^)_H^";AR,VE75T@Y-#G#0R+*"GRQA) M@6_T)"!>2*7 *MCC"+.2*RF5EUU1 !W9Q56&YN18^L;-CFX*'K<%7)5263[(:9>_E^SNPO@'+%<_2Y.A$Z/Z(^.?X.KT M/6$]-"IE?D6/O:.T3I&;GEH)SG?TLA[Y6IRK$+J\+U#99(0IM YY_R0TR,6* M,0W>XI5/A1)!TIP?=RC"R-%)N M95!U8\=*I;/N [>;#?*%5KDA>]'MK68H7L1EYYWQL9PI9TCL(Q3PDY]+FC7' M+2D;SP2NTV&LK.$Z@JA(#'P'.U01(UP*M[G+4,3:\I;W?=05I8).#[#B1LB9CA#U/'%3&V%R M%FOIS7VE^3^_3C0=B^5/Z&9M0*^CL^;E3-3 >;S8/.O6FVI/MB^RT$L*GD>" M]6;3[,1S35" 4[8_ZZSDZJ?"!L4,RZ09H02]4M\X"O&&<'P,ZP]V%Y.J1,/Z M/:&?3GS$.ZN.*^OG"!%F"$3Z$W2)?AZE1L?Y_?FRZ4*'!9F?%OT[3]U J[]< MY/9IMBQEE9EB*CE9Q12VB1Z]*-MX/LM0)O55$[R1\,SCIO!N^/05XHB[G\'; M,,Z];N<5-+6Y$I=]#>CKO/T"9C4MP-\"IB9&J6NTS%#_]=FH4%0!*K>,L!I0 M39[__FSDX52H1W?(\!=IQ<'9X/UC(;&/WQEE#21FA M(D1&-0($LTG"3+3,)AX' B5-Q(A^'RG'VTO4,(Q7$.)G.-A>VLT2@7G9?BJS4SA^IK[[%@J&@[YRK"#E M6'VZQ$&9'UUVOHJ )]YH1@[N_E8S&68]=T_@J!;+/2F\1;59XVF6J,[J43;% MGX''6";@]$,!(=;R_AIBU!P#"!4S%ZXACD8O X2\V$%KB*QP,"#D>N[6@5NO M' <(I0&.TR&+:/1&0&3H.4<-D>V. X22RLTY9"G%KX"&J-!W.4KL-%X K_) MW?=%V/SRU=^A(&-F%^'CHNL+A!($];R2?I_/*HZ40F&40S$]^07QCD+/'G$J M']JDM6F[NJZ0-HY@:[:R;\0+!#SL3 +JT#4MX>E)6%G"ZK&K,(Q_, O274QJ M8Y$[.$^REO3K#=7F->EW .3SY8J MT*7 M5>"2P0[L?5%P#-0Z:8?)6R7)![UJ\-XU5+<&[\#4M=%[;S;$:7%\SM6HH_BPHN\ M.J.S&J/'6L/SE['*P>0HKI@"*#[6F3;L,@923[D-;'_R O90(] ? %EF%<;H M4N@68C:WT]823 4%2*0-Z-1>W6#^0:D9DQMTB!,L+OP'4KR=CRHKH]O0FD>W MD86.NGA8]Y8&_7)Z'M*\EX4SY5#&\'9IM<_KT7<3HJ!7/QF#\2N5WNGI.@[9 M%B8.%3(9RPKV[YT=B%F_WS^:=//IC0"R M[$,6^MREG6KJQ6&AFG$.,C$/2$1X?^G%@!//IB]>^Q/IP=@-]#*1+6I1 NYZ MPEO%)Z_L5"&G]8;_L]@N@.X=?%J,&X7G5JOM?0[ER"5#B=?K+B;I&R+[/EX# M;Q#+;)$>,IV=43^WWZ)+-UT]')6$KU* MWT.\Y9."9 UY8 UQ4)M5JOR%P?TB>A7#O=> )4!V$9^%=OL4-=/,S[GR$^7N<0#D_ MP,[&F+_RY"#X?8?8:\ AW#IZSL&Z_"_(EL"QUT"P)U(KM$0$ N@-*ZQI) MHF*D\+P[M3.WNZ%HKWP_VV?SUD.7T?I5ZTQ2QXE_LV*'?2N;,8LA\X#"LC7A<, MD*1F<6\I/2V/+**WAXQ(:"E&N"6M)T6]P>[")G P);,9"3H[6S,((C(J^:P= M!A$A*;L-15'V(LA2MT@ +QRR22<\M)%;W$IB-1L"2#3W\]QE,5D%9"LPP1TY MS%="C65#EVJ6Y.%X>^%UZ"4)WF!* <@#-<,,KXB%D_9_]XI$^8_ M_Y_?T_G]U3L<<+2)V4_%#U$4I_P-_#?V$PH1,P3^!PY*24YOKDG"?GM$^W=6 M'S/R]I1T_=]SD@8I^8G]+?EK$+,XNGMZG+_1?__N/Y+L/4EQRNNPTLM^=OC; M[QB)\5^+$Y___<#[";SEK\I((3$B'(8L2_QOOTL)"R;PZ)N(YZ?%OW\OGWX_ MQ#N??O_W?/KY+/9Q1*^FY'3&Y'&4T,M_JIK[AFY$5(Y]SVL14ZS1>UF\4HS2 M_?[@L0+5O*+ZZR%D!3)SI$1/)D;+9$U&XG47DQ\>"?IH"1XTL3HPV_ 2&"GF MOLHE_5M\'4?T ,C0*EE]BWG9;(H\B:I=HX7K[J(4?:17(6L^8QM%4ZO.&_O M6SGM"O.QP^$2)-U3U6I+O'V%8^,7L--^SHB_HR>#V*^==VYAILNB5D=5-#-' M<>QH,&+(YWJ#BD!O5$U.BGMMP:4E]L)'#J%6']KL6ZL/G/2/\_I)$S%60CW: M:M$*TK\&F+Z%U:6_G_%8?V&6X\C;HJH*?E+S7J.J3(F>.;PS:L O,?FMKGM9 M(MK]U1ET;E#B$\Q-+^O-FT?P9I.4=U2_Y!>.H@GD"-:=6>P6$UU'CXA)T"C M"7JF?^4W@D*ZJ$"ZY\DA?V ;+=;IA.V?(PJHFE8T9+JCHC]HK9D6S!D^O?,P M8>5?$+-K,:&"FM$9A<*JA %S7FAQ?0[]*X_XH7=*KKSHM_8%4/(0Y"WP 5/R MT[/Q],)>M=HSU>011WB?[1_POKYIZ.' +)[^L.C^ MZHPXO7X_U*IGTEX6\3.0JR*I:U J+,*'SJR107NJXDC0 X(1&5JL_U_\GJS\ MM+C(LEZF(?)Y]&0<8O_4,W"8PX,U#;2ER,]BX?*S2XM8W(.8M:W16ZP\ZT3/ MH.Q*_9'VZ/T:D^LL2>,](AW1*7X&4G2^(+Q_STC"?RZN._2B7M_<)8^GOQ 9 MKY4"FW66LI<$]1V-AYKRE"8D"0"+ZQCB\9.?%]\G,;)_$S MD&CT_%@]'4(% 59K:-GCKK($1U1E?VLZ#500XXS,NQ,3C-D[FM/(G NT^@I2 M*0Z]W]U1B-Z\O4>\QRRO(M_92L)G(+=2BZ.N0ZJ81MLK'#P3[*\WZXRT>I4+ MF% W!)[]N'*\576(^KJ2&@:FPE2$I=U^''!.)98S7*D6LJ?-]2G):WN%@BW[2GE;^!$1-ZE:C77+56]X2/H"A[6@'X]X\W.OXW1-JRK_X0XZZ" .?QVX+[?:78JX%< M0K?7O$?CD7MX1/ MBJY'#)U-3/+L"G%LUADO 'LK>0X]UO&I4HE8ND[ M,'%*_TVY*J^VJ;+0&H%"T3R, LM$W=:N\C>P#GIBCUY" M!>TSB7]%?OJ:'0[A:;4E" E\@4:@('6V)Y32:6]PNDISMFU:1B0/'3I=OU-$ M>"H["HK"\05CEB@J )QA5*KWQ.&1&>PY/>[HZ<'T95ZRX-'[8/$A5S$A\8_< MID\?LX8&I0-CS%@HI-$S@+28S"V=XIYE'E7A4 T_L?D0*)30^QKC(PY^_LNS M%P5HCWW)B:V# GMN"XVX#_3_;&(-XX ::G$52R>>Y6F*A;=.^AP*8^JWJ*;Q M;BFGE$!0L#6*BZ;7%9^J3"D^4F&Z*M[8#)&6 (#CSH91FHO#54;O:(2=I;4\ MD4- 63,3#A7ELI:,*7KF$FY"!6!U]##_4M5O8*@*8?0&=^BT.D5>Q__>^ 6D M;D]UVXQBQ2L]T5?O1183B1XP:BAN$K2M,U#P .0^-&EY7Y^&>E!G.+/, MV5\%>=VA$LO^[V $BT&V1=D&ZBF.2F?*%?*80ET*D55P;%J)AHQP9FU?Z53* MVW#!M=QX3=_)4*TX6@\',=[AS<.[S'M"/VXC1+:G;BR1\"%(V5.G[7?4S][O M(*=?%]Y\9>Y9QINK*&",0U7*G*7X!8J%K4F*,YSU"K!*J7')B:Z%8,1 <)8# M\R*L5:G7\34[A.\ RQJ- 6\SDG#> )0N??.D2KYQK_:I/)S:&&@([) FJ8S4JC-0-%!@$#9P(M&5 M\NE4CJCTGMQXISJ>5/:XB2&F^O,6$=ORI'%E+O.<^%WY!26(Y(4@\K@.9E)A MY&GY",>.AG(Y,'&<-CO#=T_7_"CIG3P#!X$];-H!^/6J=W_N(D GPOG KHP5W*-_C[,D/!4^B-)C])K2NSD/A)/X MFLY\"=A#Y)6J0E1N/,4I2AX]I@P$]WF&$(M@*!6#6N$W@X;(!NT2#+_@=-?T MBI<8ZJ#<.5=([",4\(4ITXW6&_HGKY2:U/E5!H#NZ/ZY@ELY&&5>2 T4/.>4 M)(!9$]_L$+L6QPB;?,S,I\Q=RL.RHVQ#WTLE376@&H&"85F3/,%&O!\_9U!@ M7KU1/6!QFZJ!VJ_:>ZN]X2;E@ 7.:\*G_@[M/?^[_\'4$L#!!0 ( B" M;%EW."Q6-PD *8_ / 9G1C:2UE>#,Q7S$N:'1M[5M;4^.X$G[?7Z'# MUIP#57%(PF5F'':J,I Y2]46S$*HFGU4K':B@VQY)3F7_?7;+=M)"&%@&#B0 MG? V&Y)K=;WJ2^6CX8N41]^8D=#X +_LB,GG8(/W2_!7K/>/-HM+E%@MY0X MZFLQ9=9-%?RRE7 SD&G(>.[TOV22:>-XZMH9%T*F@Y"]RR9M)5,(AB '0Q>R M9GO+CR+DJ.KCKT"F B9AL-=.9%I)-NH',FUGVDHG=1H:4-S)$6#SHUUL[#O) MJBYBG;K RK\@;#8RURZT"IS.PD;;/XMY(M4T[,D$+#N#,;O0"4\KP;YV3BG0G0QE7SI6K CU@$;('FJ"YKO[AKW;"A$J M .:5F.&X>]$[_71ZW.F=GI^QSU<7EU>=LQ[KG504ZLF]?GT=#]%4MSL75 M;]U+UMSC07-_F^^PSMD):QZ(\NKJ[*1[P7J_=MEE]_CJXK1WBL+=+\>_=L[^ MVV6=XQX[_\2:[_?V:YNU?/F)=RY9Y^3\7BBPCAO7]@8)J'\;]KD%?S7[]8._MFY>R93GZ6!L1] WP MZ_ :($-%5+N:OTQ] .'-\)5I;WUHUBMS+P07Q3#-1N/-4HL?L4BMNV&D:U=LS5%$< M-(^&-NAZ3G2UU@!='W%!!*$GF;+K5(\5B '4"I"5T!(:>TJU8]2*RY3Q=,KR MU)D<4%?N/%H(&4D5RSF$=XR3"<8@SI=R-T22"$":[F9DDC"KP''7>C3 MXCV!RN"0BIP5C4$"D311GJ!8BLU1$P&&H7VB(;,Y_9JW'X.!LA.:0"*MPHP$ MTPPVEFZ($[091%Y!ZA?!+K7 :8ZPF6#]Z:(9-A1Z"0KMK3.%@,4R19 2WN>@ MK"%_4!P?FX7G,HUQ^^:4N.+_DB-6M86 MR&(K96YIN^'+2_!E?PWXTKL!KO_8D@ME%$R;LXYCB9?;=L=C[I1Q Q[=B%;9 M5T H9(!S[B-ZAM2"Q!+T3>2?Z!KG&2EMF!]M0:.$S4[HJ+B4E7VE!+^J?D==88%W! M+E MP0/%-P;"*YKF,A51@.+!\"GH53*"P%ZA\ =AW-N#UF'K\/!MJ]G<>]?8>R+V M;?.=UT^_$[!H;\2B#Y;N)TJ-XKB(Y_;A32B@Z@."OARI"-%T;K #Q-](6N^- M4 I2WP]EOG,_MN@+BR(NLJB,T>94J)5^DAY*]&FHB]5*"NZ\HGTKA>1&T@1D M$4EZ[YQ23[FEZ,[O.]:'@MYW:0NHD$-?28TR7%,9Y9A"H.I@_V-K?8^G _]6#2(M%'4A 7N=4I M)X>,2,X-Y6-$4&Y$11:DK^1]J:2;4ERY:EC:.CRO/&4*UM\07$5\)G= %(,;Q4R%Y] 1EL"B6#66K 3MPZ9H>O=\/,U\C-: M WYV1USEWM<0>"&.,?.2(X2=79%!89#[ *]97*Y.ISP1L2%Z/%LD;7V=N[O' M?HA?YS-IH(PTOK\(POI5KNOW%BAL@/JTJ?,-EUXAE\0:<.FD .MMT%.ELH1=KV(N-L(NRT,ZV;PG'R$CT-$MR MI9H1XLV71*E:FN8S778*38;P2"\\_:S+QWKE"EY#:JLCR[)U[[# M($_&UQ^$G$]7H3GX9U9H_#LJ4?&X-G<4Y+<6>37W&<2/;XAK;R6 J!?'],]I M8V=!I+^!G26)= Y@I2?N:PQ0Z8F0J)-OOHV\0U1;%AN,"&%F8.9@7?RE0.A9$ZN&BU(J"T&$W: M/$'$H7'\-$H'OO(%QR98?*T,6H?"2 =CPMC@1E]#/(-W3,@(_WJWI$ZM"+)D M.M)J!!1II7Q0OJ4VI2^#)%-Z"OAT/-2%]^(WB(E$^LZ@LWX'Q&?GFCQZZ" K MKD. :[K__DUU#':.:5S;9S@[M@JM]RW8O6>M[EBP?__^)/&3MS1 M]J#>.'C_N*9[CV^Z?U@_?/L@C?$?LVR;\F2UQUV?1]<#H_-4!"738_^SN/?X MWP'=6,W_VW:M ._A7&\T9=H>49R)256)U0*_,V:8\JRW%T7UG_.(Y2,W]3OS M7$1DR,YPPTCZN&&&/!&(D40L$Z M&<./MOC!P0M!95VVLP?;:[.WK3^=-\98:V-L]K9GLM=G U92;<37$X^'$F+6 MG4"4TZMN=EZ\@/C:KH=_J6KP4M^2/5?]:V4Y9:%LFO$!!*D64+79^G#'I].^ M]E>\!*'OI7'Q\B2]64&MH#;+'.@+ZUN?7*\L*D(J5GR+O5"&F"4EDYF<WZ[_/_!E!+ P04 " (@FQ9=SN;R3 ) "B/P #P &9T8VDM97@S M,5\R+FAT;>U;;5/;N!;^OK]"EYW>I3-QR O0UF$[DT*XR\P.[$(ZT_M1L8X3 M763+*\EYV5]_SY'M)(304@H+:<,'P/:1='3T/#HOEH]&+E'O?V)'(^ "_[(C M)YV"][U/0;M9;QWM%9BLZ/99=5"7B11N%,;2!1%*0DHZ]*8C.9". M%2M"/: 1LON:H/GV2\/>;84(%0#S0LS YC_'OG9<;=_=G'._OAX>?6Q M>]YG_8O*.B]!VZ]?J0>#]44MT^7'WWM7K-GF07-_E[]FW?,3UCP0Y=7'\Y/> M)>O_UF-7O>./EV?],Q3N?3K^K7O^GQ[K'O?9Q2EKOFOOU[9K^?P3[UZQ[LG% M'_W>R3++:.D\\]J-%BV77\WNY8?N>>\JN/CT>^^_U4*V&HV'[%BMA^]8"N(' M;]O?9JNS&COF;C1C'V"40EIC$1@GXQES(^["%2N0_XL4M_;7'=0F"92T+@ % M"= BHD89F)U*?R%MIO@LC!5,;]GI?[FE42I%O%!@'3>NXRT24/\V'' +Y(EO MV6XQG?WZ0?O-J^:OTQ]+.'-\)EI[[QOUBMS M+\49Q3#-1N/52H?/!!$EVM#4#7!UP00>A)9NPZU1,% M8@BU F0EM(3&GE+M&+7B,F4\G;$\=28'U)4[CQ;"'&<)7AG)%8MYA+<,TPF& MHTX7$^@,CBD(F]%8Y! )$V4)RB68G/41(!A M:)]HQ&Q.OQ;M)V"@[(0FD$BK,#G!C(--I!OA!&T&D5>0^D6P2RUPFF-L)MA@ MMFR&+86>@T+M3:80L%BF"%+"^P*4->0/BN-CL_1+EK7WO,G3%NP*,;T2H'"@B%#'#. T3/B%J06(*^B?P37>,\(Z5M MCNUH8*-5 ?/,Z @$WK9L%U$M &E20+Z#XQD!X1=-W/0.FP='KYI-9OMMXWV([%OE[]^^?0[ 8OV1BSZ8.G+1*E1'!?QW-Z_ M"054 T#0ER,5(9K.#7: ^!M+Z[T12D'J^Z',=^''EGUA4<]%%I4QVH(*M=)/ MTD.)/@UUL5I)P9U7=&"ED-Q(FH L(DGOG5/J*;<4W?E]Q_I0T/LN;0$5YA9;[^^G[DU:)/I8"N(BMSKEY) 1R;FA?(P(RHVHR(+TE7P@E70SBBO7 M#4M;A^>5ITS!^ANB2_F<]_O3F*O<^QH"+\0Q9EYRC+"S:S(H#'+O MX36+R_7IE"/,E4:J6IOE%)B-NY^$N^2C/ M8!#>>?O9EXYUQI2\!E761U?D:]]@D$?CZP]"SL>KT!Q\GQ4:_XY*5#RN+1P% M^:UE7BU\!O'C*^+:6PD@ZL4Q_7/:V'D0Z6]@9TDBG0-8ZXD'&@-4>B(DZN2; M[R+O$-66'"O^I?2SVB#@KURBRGY+R-/(5TQ?;ZLO+]'5;4+UI:LPH4&+2^0/ MU?.H,!A)0+27 >"\"C)!:U!$5R0X/J;SJ9E_K585[[^*0V7!HBBFKO$P7&!# M"W,'LX9O92J'PD@=7+1:$5!:C"9MGB#BT#A^&J4#7_N"8QLLOE0&;4)AI(LQ M86QPHZ\AGL$[)F2$?[U;4J=6!%DR'6LU!HJT4CXLWU*;TI=!DBD] WPZ&>G" M>_$;Q$0B?6/06;\#XO.#31X]=*85UR' -=U_]ZHZ$;O -*[M$QP>6X?6+RW8 M%P];W;%@__ZY>=CHK)QK)KW8_11$ M9P[+.@*S;( (5#RS$-JBEC2GL#^E6_3MSQ6C J8:G2I;Q;X65NU+(902-UFP M?U!'RM%X4[(**5=.%,T\]8>.G;BC[4&]+/%A%CX:,,KML=*ZWCK(4$5Z6\8JW=9:;,WL7N21YKMLN&?W M;IRU76?0[;:W 9S>&F/)&(D40L$F&<./MOS)P3-!95/VLWO;:[NY?0=\WAIC MHXVQW=R>:G,;28C9Z;RR*M#7U;<^MUY;1814K/D. M>ZGN,,]"IL^#S7]L@58K?J.Y[RUU+BNRONY:5*5N/D!3%K?]VA:^ELWY;_/_#U!+ P04 " (@FQ9!@D"K:8% !C(0 M#P &9T8VDM97@S,E\Q+FAT;>U:VV[;.!!][U=P4Z1(@4B1?,E%<@.XCH,- ML(C;V 7:1UH'9[A<$;N3$PF MCE^0S@0HPW?2,=P(..Y_])H-/^SLE5_18*^RZ(QSMB#:+ 2\VRTB!H(9? 7;O[&%G-TA1#Y'FTGB:?X4H# H3EZ@\DQ=1 M$+NVE&9<+*(1ST"3!>\6S"3?@Z8(F$!4*O)FB13G=K+R'<2Y8? ?;@W 0RXPS,XE2;KP$+4%: M#/WYA(^Y(>6*V!&0A.)[*0@/OS7M>A82! #J%Z&AU[\8G9V>];JCL\$Y>??A M8OBA>SXBH\'?YV1C6?Q2A(2'Y(,_]'L^&?9[CI2PV0YV27=(NB>#=Z/^R3-+ M6\'WN#C'_U/I-L;V99&$#36D>1NSNY3TD0M MO]UL;M^%=M/C&IM[G(!TXVWGQW@ZDP2_2$CLADMFW$R(F0!Y/Z4*%U,LR 78 M_9WD*3D=]<@P%U3MDC.9^&3'&KYZV6S%O3PKJ%RXSZ\)CG.:JXR$@?>>I+ER M WY9#EB XCDC@+0R,H3"0#8&19HHX4;0:.T2JDG*!38NT0PAF2H,"7A'5#+2 MGR<3*B^!X+P9U]HBQS]KR:@!,@$%B/<:7WD/)3P$3Q)0AJ>+75),E9YB["(F M)]=^]>IEN'\05VZ%:"C+$26[95W96'GA5 XD56,J07N#N8 %Z2:.-"NO76RG M)KJC,AL,$T&U?K.%2YMY@FOC@8 ,K#?@\B)16[=#KF=UXI1XL!TSK@M!%U$J M8'Y/AW].M;W#>J&=D:<-KD'L%.?9*74TIAILI+ZGS6NY5+,]DEA;_D&[L=_8 MWS]HA&'S,$ /G.6*>6,%]'/T&:! 4&+)!9?NW.$H>8""K>.=\'6]'#<.)>6< M81!LWQGQ<7QSA*JJW"^="G2=!/U,6"]8>H:"+U.NG&:TE9NN'#EL[E#T1$7" M]@Y[O93HM1\M?:C2:7B$SF&]:ZE2>]ZZ/G4]J_4QU=IX(FKE$O?[C#H)VA:* M:!A>=>JKI4RY"P,*M%7MKFU&5@AVP\A !6I:%RACO>MZI5Q2F=CK."!S>8$+ M F@U%:7H<]2>FU/70J\"DK]&S"L#O(>KUSK:KM.8:_4^&/4W/BVMTN6WEN:; M)XPU2V.#51#?B3^&C@6L\EB;UL5CU"THA\7F= C=FGLHLGR*ZN1S8/%2@#Y* ML.J 6A.TT!!I*"BNRM)976I5CNV2002@ZMFON,941W"SB.K^E1%:L=MZ;[5] M="X[W]RR8L%5-XHTSUVF:-B:OFT_:!]MUK6Y>=?6OK]_\%V(\8.ZRTV5&3O= MC6GR^5+E4\F\RJ=3]UKMTS>V'O??LQ=6\%H+WLG9#T+,P*_L 2FAHM)JJ=^E M9Z@J5W>F"/]G)A4;;M_K/.$$%1F1\_RJ/'2&C?+0><,U5B[D_XDB\N-D8,M_ M@8FWB^@?$T:U/=:H_4:[0(BYX(S4V%8RMN+N?LDWJ/?*)2DK<*H[99 MQ>?SKO<$7/J9C!MD9)PQ 4^)C'LEMD>2RE/9SKZ;K^>][>F[\S,93YJ,Y[WM M)_'U3H'FMC;B"BZ]"8>4].>03.TS63)(4YZ >FC7PW=;-?CI3YXVJ:5L6N9: M64NY41TMZ"5X,F=0]]DZ7O/U:;5/;.!#^?K]"1X<.G<'&3D@ M.V4F3<,<,S?0DG2F]U&QUEA7678EA23]];>2[?"64(ZV1^F184ABK:3UH^?1 M:M?I9287A[^17@:4X3OI&6X$' X_>NV6W^KM5%_18*>VZ$T*MB#:+ 2\WLBI M.N%YH87,E(@J.$7@-U[.]C9#5(V0Z2%-)[F7R *@]+$ ME5>>*!>\6SC!OP=$D3B$H%WDS1LIIN5MW#I! LON';G>Z@+S/.3!:E MW'@)6H*T/@SG&9]P0ZH5L2,@".5](0CWOS;M>A02= #43P+#8'@V/CXZ'O3' MQZ]$^&(^_TXY_#OTA_,+8MK2!8*R]W M$!&A:!JFQS+Q"=;UO#EB_9N/"CRDLJ%^_R*X#A'A034*2-%&X%K=UM0C5)N<#&I3$96,#.=)1N4Y$)PWYUI;S_'/6C)J@&2@ /V]]*^ZA\H]=)XDH Q/%]ND MG"H]Q=A%3$$N=?7R1=C=BVM9H3>4%>@ENV9=VUAZX53.2:HF5(+V3N<"%J2? M.- LO;:QG9KH!LML,$P$U?KU!BYM[@FNC0<"R2R M[OI[G5:WU>WNM<*PO1^@ F>%8MY$ ?T4?0(HT2FQQ()+=^YPD-P!P<;A5OBJ M68XKAY)JSC (-F^,^#C:'".K:OFE4X'225!GPJI@J0P%GZ=<.N9K8_)UM8382N7N-_G MU%'0ME#TAN%5Q[Z&RI2[,*! 6]9NVV9$A6 WC Q4(*=UB336VZY7RB65B;V. M S*7%[@@@%9349&^0.ZY.75#]#H@^6O(O#+ >[AZNP>;31ISR=X[H_Z#3TNK M>/FUI?GJ"6/-TMA@%<0WXH^A$P&K%&O3NGB"O 7E?+$Y';INS3TD63%%=O(Y ML'A)0!\I6'= K@E::H@TE!1792E6EUI58[MD$!U0S>P77&.J([A91$W_V@BM MV'6^[W9\%)>=;VY1L<[5-XHPSUVF:-B:OAT_Z!P\K&O[X5UWNWYW[UX>XP=U M$YLZ,W:\F]#DT[DJII)YM:93]UJMZ2M;C_OOV0LK<&T([^CL!R%FX!?V@)10 M47.UXN]2&:K.U9TINO\CDXH';M_KE/ 6&1F1D^*B.G2&K>K0>44:*Q?R_P01 M^78PL.570.+-(OINQ*BWQ\9KO]4IT<5"<$8:WU8BMN+N?LH@[MKG\-U6"N[]G/([/S7Y4=6ME264*T71 MDIZ#)PL&39^-PS6/NUUECW%556IMP6.:R^OUT89SOVEQ&'O_5VW&\J_@%02P,$% @ "()L69!Z_>;],@ 7#8 M !( !I;6UNF=84UT7-AA 1%"D1CI1>A'I15IL M=!$!(0A"! 2DB?06B(* A"8@\(A*Z!T"4J4D=*1WHO2.](0:2$B&Y_W*S(_Y M,3/7O"MGY<_9.6??U]YKW?=:V93?E 4 L[ZVGC: BHH*T'+Q 5"F 0\!--34 M_UX7=NGBHKU"2WOI$BT#'=WE*]<8KEV[RG#U*N-U5F;&ZRS7KUYEOL',PL8. M! *O,7%PWF#G9&4'LO_[$"J:B]]X>K%@!IF #45#0WU)9I_ M9WUQ-^3B/N 2"RWK+=G[E]F,;>D$/-GEWB=F71%\4-D*-!G!"871,]S@ MX.3B%A81%1.74%!44E:YJ_KPD9:VCJZ>ONDS,W.(Q7-+^U<.CDZOG5V\?7S] M_ ,"@\(_1$1&?8Q&)"5_3DE-^^=+>G9.;EY^06%1\8^JZIK:NOJ?#6WM'9U= MW;]Z>D?'QBW_[P"62[2W9"^SWC>FL_5D$Y![?X7]06)692N]H+P) M#FCG-<)P0TAA41C_+[3_(/M_!BSL_Q.R_PWL_\0U!;A&0W6Q>#0L ##@W#0; M(0;XCVCFQS. !HU[U1P1&!D#?'A@XQ700[A MNNV[ [=.C19M9 M=E"W+6C/VEPRB]8BC2IZ'1=5E=,98(7%;!\7)Z_1Q>C1; M4+J/2[SF(B_^L?@3*CIK2PB^&IF@>0<"]U(-L5IFBJ[1[IV-N35V@P11#EF2 M,C6].3MO<)GZ(XAE M'ZO:Y^WVIL8FX6?=<:IQN%]N"M;A+(-.:$C>83IP(]FDO?#%=(KLXU^0?#7( M"#V.IZT7HR!?>73PL7"50+>8/Y1:55"P1]\)/O+@XC.%,!VET4OQ6B>P_L"O M?U2@ (ZX2_$H7[IP:[]H_)95Q2N#WW9-[WQMVR_FP;/W9U)$3B._&$\!^"G= M@U_#,I61;N+OQ)92 X:F&G%(3^502I[__$,L3!I? M\@B[8N$D53 CVZ*7 /H>=,E4"%_2M?FW_=;G%6X">FG.P)E;?/EUK@W7BY>( M$Z9W-\ZJ)T\@$ YYI6^:NG:?5EA5E\> >ZMW)V!F9E%EC,$4P)>%M3]2UZ2D M2XTSOF-^':N*9:-G""W_>PO\E[T4SA908H3+^"J\>MB+P/BIDP:# 6)X2'0I M231G !XH,F&\C_)[TP+ITY3 :ZW'^#Z7]N#[*'KBZ?0!JG_:/Z\<#^6WV%(* MN6SZ>4@6J5 =-H/%8SOB=+KJ:)^G3[4:]5#S.LV6?!OUL9KUVG&O)D)^IC3> M7 @Q= \ M01%Q=70(FA?NW-\>6,!RPQB,H4:!$#;@N ?#@]K*B.>4AW=2;7O@>01$?GC M5\3PK3V;R@)G\_3'DL"\IK?:.9Q:U&4CT*S%MYPPWD!GG?5Q$A$8AXI-4W2& M[C.(93?3?!#+1@#^]58\W?M#*)O.#W+772-'&KH#8%[NAM*4")+Q>ZZ=BH!U M<7:YL457G$I?AJQ>>D.-,)!.U&%X5?-F0$6 A[ZF,:.OD&S9\8U0I9B M25Y^<9?%[T6G70 Q;T>2-;YUL[!*%;6J'ERH-DNT?82'^#T! I:"I&]UN/)W<-S69OKTK.4 MI3EJ/*GA]HB%C6S2R/356V!O"J#,9H W1L'EK[_DM7!HQ5LLJVU PI428[\D M0IHC;$Z-UI3&-"G8Q_YO-H)(,WB!^MU_S>,#DZ8X4K7IN:]5\;?EHD0(>\N7 MQQ1^5<<\UQ_R[8\P>K3+-%GO65^X\%>_NH'OG\<*E;XYVGQ&BH2=LFV;.VZG+-#-A-C;8&<)4*A4/&[RN)JM>S& M6L]O&29I12HE_I80N]T?!%!-]X5M$;UA/B!:3?I-1B>5!)M)JLI*KA5YIB\? M#Z?3Z^^/)R$VG4RR\^CNNL6OK1]G$HR=O*6:YM1'EM-%Q/XZKK!,Y_G:T!&^ M+T*CS4],"= 7U=A;-9Z\0Z^)8;)< .P"C;_C3'^WT$J2GB)1D4@'X_7X *;R MJ6FJ(2I5E=J13[ZM).[#EW,A.8BVATR7]DK4O_&KYDOD)$@E:;Z;.(J1HC.L M'U?D*=S>+AONN7V@-*'%IZ>X5D(T@PDZ_,*38W7._<"+4#EXZU--54:ZME30 M=86^=])')G>DVY+X5>AF6D]N8M?V(DC2PQ0%>)C73=XV?\A27RM4OCCN MQ(Z6P\]'D?E?4P!3:*&)LFIWM:#.XYB"J<:$^T>ETF&@J]NAUTG2P^J2+S%2 M<3]*?[ -3/+HU.-(R<[Y_^^5SMI7GE;IIVS+?O].]K TS6C#UU/ QX_6#.Q#N)( MM=\:(+[ZZ0:;]W85SNM(/2C2LU>SX#[U+-?[G>8)04"A0NM/H MWK[KT'% #KV;EKGY2T4&4#8HVMUN*W# 7 0-98[22$=-!#3]Q) MW^ +H)*Y#-\P\CZ)ZW 'F+@8X@5F?CULG=5C&\D?-U>S=79R-;H@-NN:EFA MCS7HZR!K@2C]FS"$6'DV-4(L\[_A5\K?L$[.Z>6JZ(Y7@6RA0H0^F[2.#!$T M.K%.\J[NN=+UE$.G3FOG:O"E^7[D%A^L0K.)^]3V&:E8-3EA$*.^%/OP9LRCBP@-%OUT\0T0E#$3 M^D;5@^KRF*Y:3B0,X7\<2THF*-\;KG)PJB#]8 [U$\3Z:85&A\X@>9,74*T: M>F6.?\I=EK>5],NBK%LB/\$;SUWQ"!U_::$/??*LVSH0.R^C\?03N2G5AM+3 MIFD65^.$_A/0;^Q"$P7 '7KW=:TAB[O@XT_0>=V>!KFB7W&8.=0?#*OKE/][ MF&1(\9P>,/5K_C07US\[C\QXF=ZTH=]0 &&!) 9H!/CRXN1>IAFV22NF"'F) MY;H\ZZ<@9OJ!P#T2.W&Y"+?^P4V3S]E?6-HW<1VZ?3.A*CPN[J]>:ZEKSQ*> MX:I]#B/P?5M#TBP2.<^#%H?"' @YJ( ?1]^N]D42U>],-_WSOBWS>!D<%^) M 5QJ(P I 'J.&$6FCV=YM5M2TN<@(]8")MF57P7G&3K+4#:"4[L_^@[^\I>L MC4(;XM-Z@]?W+BW^L\ 6WX;Q)=/!I"H)RCC, UQ9K 'KGQ:TITV<+%2Y:>@K&0GB("DA=I !&!=[GU,3RRO>VNRQC M+ZWC4.V&]A:-V!K7'.$Q MVJ3I/TNK\2;!>)&16/Z[XV7'+G.W0/52[3HN3 PZQ';% MX^\F(]5?0^CTJL;*!"W*RNPL[,T @&( J+<<^]X\IT19*<2003]"T=!'X&>= M52&_*)J+ *YJ"IT7H8$$'6=$9S2G'8<^>9&*[9P6I0"8+,L-N,?<;S>+-R4-A?<"5Q XF8QU)B_6<[S M)_U(DJ&1$]&#Q(QV9";=&[,H[%GL/K#42#%:M3U"0/O1![-B*/E)N#,X$@W" MD1/+-OEO_Z@9K?&1LYA![U05J@@'E$H3W##AX$--9\R%O"&8/%L[CN$I,_00 M"C8$+LWC_L OP__"QN 7&AN70^:17A@Z9TKW((/)[.<7+[$[/L1\"5FO'K&Y M#7<;"K_)"@O.7R;3D8&;-NQXQ^3E..HQJ^$]^W&?QIIYVO[G4UN;\J9B^F#6 M2L\B^D:M&6SVIXJG>BHT12A9/'9''M>]6-93AV>*]9FF[[8@#

'SF-H[- MRS7K%N]BV/?3T$2_=2<).,*@0%TR"T+PPA M&ESF R =2I:=C;+&*SV1ORB 5POD%*\\E2VA1ZZF7ZM???ECK 5,K##6@H0\ MF%22.)$IN9[UC>;>#;%BYU(+W0ZIG9^"HV87*:(Z_H>8P\O>(.!==L#FOYI( M0GPWLZ8U_?72D.$VW4&Q+"%9/]4_PO>JM\ 15.;IY>] 7F66%]1VB4*@;1E% M80"[\=.>P$MN9NMQG+[7%K@!Z8A7WCIRNW&36ALI=]G/ /]#KV8G;7):N25K MQ_WMI\JD?UVX7(]P._7*_8>\16/RE$H+R(Y].KT\D*YR<'Y,_4XXNP3N_(<" M&)H!G>#A70D[:N!38CB9+$T8IDT7K_R55+[BX'MDFOCD/^F>B?\\VX-;0_IQ MW;5[2>8SZ-\H 5P(8C-#8K3,VE]':),S& (G/ICY-7>S\EW=;JI4:\@6VT)> ML77 /O-68U_TMV"6.IV!+QW\I 7^8V6PP.?/89/Q1_MGT(9,*J-L MQ+F>I*3@ 7,V0OR=Z2O?.*X_8<6QJ>H #>>)90J@!HI0-UW$A >-$N2U&B9) M6B$L-761$\K :S+](3*Y9$7C!(4D :^5F#3[ ]%C'&%EGBM4V<;J>3_T 8ZH MF%*\GB#C*9CPU- ;64D!M-X-O0MS&_7Y*> X4GULM?- 2^4WPBL'_Y+6MFZ[ M$1]Q(D\"8X42XY^GR^B)_ES#/,780O_LH"^3!,.LS?NG PHL* #=\1M:/(L: M.4/Y,G#N,]6)K*BL'KJB?1^9(UF+--48PZ%@_.6Z? )'6UU#WJ*5M?3C6N?< M*17=$>]WFF&8JYHJ,.,F0A_>"(IW6-[E2$X$0!LJ4/3OIU<[0],O)OBPO E> M1E+]@;M@$.7"+=#4Z!MT0P5HT_[) Y C:M *]$=G:>=HM09%DCRW8T_7BOUE M!Q!(HGK3' 6.\%[%1RAL&F[ZK"45F>A_OO'QS(!,'WZ1"UF-..9).N-E)Q;. M5F4^^_.^:^IW!<\38R%SX&J/SBUH&/C*T1#;X-\[MA^[G=@H@+[GOV$E) I M H.37G1(:T5%G'%$N$UX.U%'KYH!^L1!\D@O> K,B@*@Y1Q%B\$L\/%?%Z'7 M"&KFXS#%O,P,JYB V#_P"_!C)+1G[SHFH]-&5&PE[@ ZW@^:+3C5)7#M7= MHI#B339UK+]7]7[/K3Z':'6DVS(.->Y!$(&W( D/0GEG",O/:O:/0@(Q;W\4 M# ;< Q(G2T"I'/^"@5@#XVVN0B=S W+^0^*?#PZ20L:LZLK+[4KB_K$-9<% M,(X*&MQC[0T:J6FVS&&]@\ PSFXM+4Z:_?+^4 %UQ&>P;IR(:3_4UMFP<71ZH/(-Z&(*>2*] MKY0CRI"8]'?H2QWLYU\=Q4/I,(^O3W$3L?U>EK+II^1-6;Z)-GNJ%[&06I)D M8BZN%/ M0@6D3WZ-:\BM.&V&2?M0 #2[]6'JA-?/MOT4XDX,I01#QJ 3.NO] M)+[S[,^@! QS,'(GL &9YT7FPX$^DNQYAS(#_(VQK&RUYA6USH]>':ML6!OM M7%"Z\,$2W7FD"#GE^(3$JI= $@P%\^X0W42GU22WBLU\Q+QS88JJ5UFB?5:V M8;(R4P +/RF ML0+:M>:FL=[D+3&:C,H@$4H^C,D[;P(O*I3 M=9Y@=/KG5!!_L-@=\P;C"'\_R4R FJ>>#79I_:PQ,)=[X)_!ZZ=XD$:2 //! MAU/*+Q[)AMT;$WN3"2K,/]4[[R25J 9^*.J:R4^1*QQ/4Y8E[6]:6L\E!$ME M9#DKQJWHL%K-B.L8%6I(K(4O2GET2LG]35<\KAA^YV E9FG*J7'5/B]H;Z>) MFCS!K];23F8EZP6K49_0!Z"M'E$)I=(5 M '=M3.">< G"!1DXXS.V6I!7M]5%XH7@;Y[DIU2)SZH\IR MA3+[O\Z+MFE=9C]160?('7=B4$!R=X9X\[ Z3D)FH +'UWZGOC;9.-9]R;O%50H?=/NDH2+$GEB;*3!E_!@J. 0]TNO=^<6J!, M!)#'YT0(.]DNEM*(TE?I)[IF+%O&62POI U+X6BU,RRVO_59<@MO^IHF+TP1 M=]*&9/@3$-QNZ6,9^MWE/757CGRS M@])":4)F%E=;>NSLGT40*UK6A3LU3RHU^NVQ^5-9J*9@U.=X3,3;&T$VE4LQ M^<$!;U"K]I$I7MHA XY/KI]&:<^TXWM0^60@(?G^3]QL2M[G"JO9TI>&3%1] MUW//UC)G3HG/<#;-.2]G-K#Z];/--$"0J36\=<"U Y(A45=9BTDIS;DTP#LO M)W$6#-(_DTT1B8UD^#N;<'/"2N-&MU%]:K"51=GJ9\ .-^V@YN=RVJG]O6@P MURW<>+)SNF7TD9;:*T>0$'3)M0K?_9$N4ET:7OCV5;S\:I%*'S\M+%DH>9/# M;=O2-7I>?;^_8YAVUKY#M>#C[J.TDV1K7:-?>?%T%>P3N-W2D6CMKT'VX"Z6 MRE/L,(8Q%/@[P,,H<[T*X[::X^^IBA;WW>S4@)(FH3J,( M\Z!!I&?11H44.H]USR'VI6ZFE^P6%+PQ]>%,,XMVY?:(T9O%^DV90/83FAV& M4]>EU8X^/)/9U=L(N29)9E7(: ;?!-9F>+OF$H]6Q_WC,Z<:V @^F*PO4G($ M7=6CV@)7S22(AJW?Z5_?\>CC/8,48--"A\#[0D,4 -0+KG_$S4G+;JQ[I;R< M=7#J^BH;4$%"5<>)IA >N$,!?+\9K\>4VIC0FY.)\B3L+"5LPZ_! MG1ZT[W!TVW*U7]K56;;1P VUPG'IA#AWAVNWLZT/&HX/07$FU'MM4 Z]Q3T. MJ](#V9J&\_ZOT[>\1THVW.IH;#UR-N=-5ER:;<.R=Q.42:VDQ"/KQ>C0\ZS'9+)K'&J,MN"1'&U^S>=?$-H+^J1 M$?"^DC/FZ"_\4(*9W\'5WC]T53>LO:@-',S\5Z?PN%QR&1NV7;KM?O15TJ?N$SA-.94Z\B*#M<)$ MQ_/&8"%Y5Y!V,WHK/;L%-8 0,RWV9^\/ZG8 G4U.;A](V>/,8.ZHA=M:36]' MK\>\:0<&'W^H>847_CZH\MK/"3_@0&)LN$%6??KDABZ7YQXT=6AVB"?M )2O M,_>K#+2JF9*-D#P2/)#YMS^$CX? M^MELR@Z$>E[4<0;+I5_-%!NY1-[<4*Q\4<7_#N+.*Z4_LA;?C?S8;=+>EV2% M_,%>LPZNVNF.\2"S_E6>4VZ,/^A0_A3S)5V%5%&\()<__Y0Q@&[GE&CI"J9V M/]2@::U[V[KD.OI&Q#F;5<(J'JP^R9PGD7SL.?.WR%*AB/C<+21:*U3S-;P. MV[W'ZFH9FEC@JL2VR3&6U\1R_A$VV V ;"F_=Z\)-KJR(;MU\N#D.5%5<:;W M*]6G=Q94VP$D27U"H.U.?__;WX5VJ%^URD62!]CCR?,&DBGN9.DM+J&];]H* MOMW9E>-Y^\'C?OAJAIH]X@#Y#E-+=Z%K8^=O*("N/GYQ&9I@L'PEL<5*SP-[?\^1ADMC4/RH)UX-??"S4DK[P_0V!2"04YJD^7:",('J/E?R6+?Y MB0N)"?!Z^N3>Y_"EOCVNY]:S2E_]>6_LN'O9 N18[W=;GIT.LO\5-[0&T3_YKE^?QOVF?W^( M\ 8\PA_00<]^I"EEC.L?RG:<*+,T(HH)B=@QSS^//R!^N4]H2)EQ/C'90)^]2B;/MRP'389T0HH& %%PVLOBL[80OS\N7\"!7 ?E7VA M5)+ ^_(D70H %0Q=J5KW^W(J%T_=EZ;U0]3X%,&4 MS(#$H;=>X*Y'+4MRUN4GW#58VQ6PC;@);W+]U:JGW62E,=-V/ M@H:.HFF)+WJN(,Z%8P(&U[G:$H+.T:CUZ59^J28<4VPUE'5C@6=68N-.%N-P M"G@16@^B"E4-"%[N?G=X'JS=%%UN(TRT3EU_)$ M@F3^B88$0K*?+!$ZDD%%4/1T<%\*\>,QZ/MY0V7'_M8*E\I,7P;'7-/KSIX_ M@G\=Q%IMGG3GFS!S,@=>+MEH2"FOM*7=B>OP-T_.3!+/=N_=#&)V&="SB0J' M/2*(PM(_3T5^B/'TD+_A^F(A:R_!9;^Q6?3IZ"MXM>6+J105Z9K/H;['?.5% M3L&>"LPO.A6&O_\0D!$VRBJ8LYC>9#Z%/-7Q!)V\>MKVO>74M1T#5-=:G(VA MW6BH,XZ(]$Y!6>+ W9)2H6L\?$] %7.Z#TK?K2G;_PYZ!F(E,_\=W8!8YD5; MRRT!Y915XJ+RU2#O.N5;;WMU> K(. B.<[\,820^D%0.=^^M!328A'0Q!B2$ M+4<:W7 6\+L*FF)>.5M'G(EV!=U&BQ%<1@*#]S1[DS(I #AD M7'Z2C_3UC6/&.%Q;<8>_RAK:G=!XH?G9S,Y0^[GOCN!_ULF/OE 6[M&&S8Y M-M9$=0K@5S+X/*3G7'+\]4OV#PNO<.*N<82R)0?<4/CNBGEGQW)/+,V@$1=( M_UZ L13>V3W0PQ=)XFE%C61-P*-T-'LG-:+'L!=3*!]X(*=N@7O7DGTU=D;7E. MY'_$ZY%9X0S=!*8EU#:2I2?_,:&N"9KLV0(!+;^@78]6=-=G8YS+"?1E@MXQ MORV1ES>>JOQTIKVCHCXQ-'/MG>8X*@/S&GG*HS!_=@@^ P9[?/ E-!DN$C4> M*#&M9<['#VKB2%L=_]E!V]82>1;77 M[4KY98F?@/0B:#\LW\C7@ MU)MM5T+#^7T9WG3I0ZB*A=MV=H!;EE?GMX-_RR<4#MH^5!XP.K=074H!C/B4I$!/7_<.[" .F #S<$="GU[*5[O 5NN$>XS!>UWN M4C5@ZKE S]/D1P_+Z03ID*-H^VL05_$5WC"-DOWM?6G&?[KJ#+G.WFA)EZZ. MY6"?A1261.ZP'%IYGZFI^E,42?/K5[B1N%])B&AMITOR9WS M=$9=T 1NJ>\=1B*)^2J8)A^0MVTOS;:%7=,=/:'$##WK_"\]3GYWG>S'D5ZN M1U5D^F[<(Y@R035#&%/W;+)).W2D.>UZZNDI,_FNXF%]].T[H"0U)"@BMO*? M\D#WGT>B'VNVF.@(?A0 9%S8RE#-Z'U^ZL.V;+&!4"#)CU 0B/^Z5(M9:JP] MO5/@4!YB9"C4,)H@/=?OA"L+,!V[21IS$E=PJ>.$.G#)\F M/-S&$$2<6C $0\V;LX03T]KYO-?A?56L=TR>_PY9W$5.HBF \URR[!2,D:!3 M'I#J&#NG0Q_?2W]=?>-KA/'>.!D(WM[!Q6,7$MJLF=J&M8O46>CO_%'5: =8 M8U1)%TP5E@;S]N"%/:[%W4'>57WRCF:FN-;$*G)%A@+P\7P1M"RKJ9.5#_UP M /^"/ZXKLPF(L4!/''%-+9&/S3,"O^WW/PE$C8$((J"6K$44[1SIT?A.VZ9E MZ[Y;71B_I.<)9B\G'(J7WW&I]%'H343TUAZBMN,FSU94%9X M)Q(;=A$.M;&=05"O3.TW@.?+0:D>Z+7&F MVS50)L/86_H??ZKXZY*_43$1^OP#;P(XW1CU51);Z>H$:J@,M#M4G:Y^%D3I@)OK9@Z?N;>6-W MTZ3 M?#X3JPS&:XR6 07/=XJV%&.6P?3.9#5<;4&F2^+M266< JLDP#,Q-O:$3V>T MMA!U2TTM9]99T3%4*'1T_@G 'SQ(U&A M$ZOHZ_A=S *?KHLF]^0;GY),;_34 W:DYS=0%R;TJ(S)"'_CJR:RZ$\[W$&5 M/95^6$XU(S,7C4\S%RI^]R2?Z[6+Y$"5G^%6\;C:+--++ >.S)B;)J M>9;X8KYCJO:0 YTH#G@67'"QA!*A_#J^;[$-#M)!5C2M;B!FNTV!:;9%:N9I684I,%; ME4E,>.4V.--NN;JUMY -9S.UM>CCQIZ,VT>A0>*<+:ARWYXWBR-[_&W2FGA[ MS6>!76O;$ON%9H!K5"W4J4W>^MD3<8^Z6I.+<'FK68^).D-\(9Z/KK-A4P"S_626.)?UJ!N'=<*PB2/AF: ^Y6$D3OQVOY MC+J;C>]>$^2ZY%]@N-#,L.24:BTQJ2>D]B5=1D^SFFIE'D#B3M/>LFJ*>)5P M_HQ>8 5D#NIMSB$*=)-A913 WN@%?#U[>X_\J;SF4O%+]&W=G"U #< S\J]* M"@ I"2<>8A:AJB0W7 ))$"VB7*%3VTM$GW3D-G^1D%\+I0%R_R5=JC"D@!=)=, MN:O?ROX](W1\YM D?ZNW0>1*B6I&>(&KE>:L$^/D4.-:N><]?H[_",3N8 K@ M1*_+L[*ZR3F5E9&3OQ^6>T:YJK_3M.2D+/ MI-] MP[M6ZU <*U6J:R$>)4M#O94$M#CYO]7EG:9RR( M4[:.*34"'(JN\)']F*M&15ZWA]I"XDA!N+?IDQI^4^"YSGVC:E^;CG/)%4+, M);P*W)6VU*AHD>32MA3RK385*9?0(GWCHR/RX<]D*@H@D,I^_,389A7*M6'Y MN4$[QSWXS:I#1'M8L^<,9%*3&:^%BJFV\"C[AZ_]^O>)QG"+MVLO2XS/FN:; M0;_F/U9HN-Y2JY%_/\8MTL<]^ M=M:92PQM!C.-Y"K>'MN%*EK3[9"":MO9$\=,2PB]8$K2:G:=SJ^5)05A-_ZX\]29'8)O#Y3\D9#=#.K>KL$Y>L0CN16,F/[Y4_TK MUZI9"UM\KR#Y= GC5B-YKM:"9J]O_.I>^R5OJCJ6@P'(XOV>P'":1J;?(JIB MVD"18-RGK1N+ZEI+@+IK/*F1O# $4Q:G$(2/ J!5)6RC@3C%@O99N57(LTD* M(#B _1-^.KR5;C92\O:C#&GF++[$VAM7:2)\'1K)B:=$_-92S7H7"G%V@MC- M=4*LV?-EVL;5;GIR+V.!AP4D-N4%*$EDGN4.*;C(:F_T$#0[=8.+R2O@9O@X M[5U4W&&(P%X'=W-\B54C(]27!87=X-\>;6 M>YM--]N\E)]V<\LJ)$D,C[%Q;I%.T=KJH8U 8XE&HM,%779:0<,H /JC/?89 MW5RJKE[/T,=&HMC)ORP;\C4IX*;118_9PSUM>=I KVDXS7/$$1 +R M+#L=8Q'5J"A5W[Z0-"-HS29#*8/^MJ:6YM:YZPKJ/05P=2]4CF0ZK"YNI])4 M;ZK>J&>137?;BN_CI5"%"H4)[B>E#9$.9DN2Q3(;I\A,,.XQ^+W4(I(.2GHP MX8YPX>[9=TM]!I)JH #ZM, [<'UB\8\FZ<5&$!W!_\F(SZ\;4VU=M&&X+.,=SN#:0 ?)(5=Z/Y*U7__2+UL(-#.H\8K$9ML0[4< B>S@I@- M)7BGNXGUIYMT08=01*@8MV/:,2=O2/9R>'QQ\T# RMOJ42'CN%'=Z6=!R= ! M?E&G/39SKCO >6C0+!'D^>GEN!W>5Q.ZYC]_Q0=>XY(\7]_[0 F@XSW7C*A0 MY\B4CCI4D<(39]YX[[J&8EXN;".)'&)Y#_1'@S#FL#F'Z+-)$;,;TS>S$9([ M0[?_U[G'_[]=HOD\5C7EV^189A+7LQ+Q74:+[,_9N>G!C$K?1_;A'4R7!Q:: M0ZWLE"UU_5M%B]?S+ FNRT4PCC)Q+\LVKQNOAHR.(T+HEA,N6P:,Z00_Q[KU MRE_+](J#WMZRU!B,*#*R]?OJ&(TX7(PJ/$;UR=_F>Y'#7JF@R7%N<0Z6ZC(9 MP*&N0I<,SIPP,$L"S\+0%(_6F#O)E+&3C'RSM'1E\5M78V4[KZ\Z]ML&'&>$ M##M[4N0$OQ[N-6;96R70X_/<0/S7KV[!J6R"$_[! -"0:P#W?'(?5-K@F M._V05U:@F]T%R*)-_4X&@&(EI!&Y20J$GTM]"2R$C+8S"N#9/[32Q[4,Q> ( M;17@K@*DC$O_.MY/O>>!(C"W/($&)[VMADM;G$>4JFOE_/46*;!;L@H4J;]3 MV)[S,KYF[[/QHP+QQIZ9IP4,+L/FFB'XJ&U)W-?N4+'QIONE&Y ZRXPL>2-U MI-M+9=#]>+H:'R@=!> BH+2^!*_N[8%O9ALB.@ .P4Z?NO9=U+AVK!IU8+4 M?'W1-,5<.&JR9@RYV,0_E/]SI+,3#XF^B9M,$^XHD(X5\+?7B8:9.2V6**4O MW<<0!.G6[#=L>):,V*P)Z;B!M[_C]/:7^-@AJTT.71:P*"8)=N$!&P.MZ8&, MX^>I1ER*XI+W@8K6)B&.9U9]!;."WY8K^%.F2=(X6%J=7O&LR$VC(_WV/9!E M&\XHW FOM=\H;L Y?6>=T!P1W/P]UT\)W\[Z(>XR 'B:0(4K@V&!YS5?\B=V M41,GAQHSRS(1#/!G[212=)#)B!;\*>C*O\?#_IL._!5 7)Q(B"NUD"OEZ 7[ MO\U)W XI0657E#W($+C^7]=G#Q M%: %@3'NAU]JX!7QC<(/WC*+ >[7B&6UE1>P1O*6QQ+^W_+A6Y30$P7P('ULKM%JZ_.$G!1 ="_X> M;#+XXV]) YXX:%0R&7S_O%M'RY.# KA1[:HD%FD0_B?G!6*EQB-F*F+PL.J] M>V3H'6OJFNOKE*4CWCD9]*"O_ZBQ67NJ2^.$+5=RXX ')^9G(ZN7S8GEI 5URSCRP)+=$>M9YHZ?]Y$INWGCOF4-%MZ,GYO M[*< MN-I0Y6_!B3_LS:P*(=XHC[U;Y4(.'/3U-*YWIPO :F;D7\Z?L?7(#)C MWS'](>EQ$.3A(A/U7$#2TETA[?$VNO*\+$3) ;4#Y+C=NCRVVM.H:'DU"^6_:QP]F/='LOHR&KSS,WZAP M5O*?KL+XO&S!%_0"SB=]4J+G*R,>V_I?5_VP7%7M[G M8J]^2J>("J#3Q]8I5%S)!^]/RH:_N%Z&"SN;#W[^XO9?S6TW38_!YG@$P6TZ M7 ZV^',R]S/2+$?CL9(3HFV#WOGWZ2 %T-90F];9&1M#WAL@E<@9!++MM6R1 M]Q.ANO.0+P'MYSZ8/<@!BNUM)).0^^*ZZ&9(*)UR"2(I=BE!I4O-+JP8_"'4 M3!%+@FEHD0R.4#W"=P^\#N0WD\R;H[I=Y2F DKI$S.P#5P]#W)VZ$@EU\]A$ M6>*N9T);(XJ& BBB -XA#GG 1[Y$* /N"8UJ-5X^[1>!Y.=KQ:3,X&G)[Y]) M D5J_-CT_O(-=.2)JS]4G-]HT,A/INYTI7X4,RQ64@TY?&/:_L71@/^%L! R MM)1 TI9#B\^5EE\$=HALQW\[=?SK<,J?_P-02P$"% ,4 " (@FQ9D>.7 MJUU5 @ A:"< $0 @ $ 9G1C:2TR,#(T,#DS,"YH=&U0 M2P$"% ,4 " (@FQ9PQ>L-T\V 0!061( $0 @ &,50( M9G1C:2TR,#(T,#DS,"YX#,Q7S$N:'1M4$L! A0#% @ M"()L67<[F\DP"0 HC\ \ ( !;I4# &9T8VDM97@S,5\R M+FAT;5!+ 0(4 Q0 ( B";%D&"0*MI@4 &,A / " M P!F=&-I+65X,S)?,2YH=&U02P$"% ,4 " (@FQ9YD0O%YL% !: M(0 #P @ &>I , 9G1C:2UE>#,R7S(N:'1M4$L! A0#% M @ "()L69!Z_>;],@ 7#8 !( ( !9JH# &EM9S$T-C(R @,SDP,U\P+FIP9U!+!08 !P ' +(! "3W0, ! end XML 80 ftci-20240930_htm.xml IDEA: XBRL DOCUMENT 0001828161 us-gaap:CommonStockMember 2024-03-31 0001828161 ftci:AssessmentMember 2024-01-01 2024-09-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0001828161 us-gaap:RetainedEarningsMember 2024-07-01 2024-09-30 0001828161 us-gaap:PreferredStockMember 2024-03-31 0001828161 us-gaap:CostOfSalesMember 2023-07-01 2023-09-30 0001828161 us-gaap:CommonStockMember 2023-06-30 0001828161 us-gaap:DevelopedTechnologyRightsMember 2023-12-31 0001828161 us-gaap:EmployeeStockOptionMember 2024-07-01 2024-09-30 0001828161 us-gaap:DevelopedTechnologyRightsMember 2024-09-30 0001828161 2024-03-31 0001828161 us-gaap:RetainedEarningsMember 2022-12-31 0001828161 2024-06-30 0001828161 us-gaap:RestrictedStockMember 2023-01-01 2023-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0001828161 2023-04-01 2023-06-30 0001828161 ftci:FernwehEngagedOperatorCompanyLlcMember us-gaap:RelatedPartyMember 2023-01-01 2023-09-30 0001828161 us-gaap:RetainedEarningsMember 2023-06-30 0001828161 ftci:TreasuryStock1Member 2024-06-30 0001828161 2023-03-31 0001828161 ftci:MajorCustomersMember 2024-04-03 0001828161 us-gaap:CostOfSalesMember 2024-07-01 2024-09-30 0001828161 us-gaap:EmployeeStockOptionMember 2024-01-01 2024-09-30 0001828161 us-gaap:PreferredStockMember 2022-12-31 0001828161 srt:MaximumMember 2024-01-01 2024-09-30 0001828161 srt:MaximumMember ftci:AlphaSteelMember 2024-01-01 2024-09-30 0001828161 ftci:AlphaSteelMember 2023-01-01 2023-09-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2024-06-30 0001828161 us-gaap:ServiceMember 2023-07-01 2023-09-30 0001828161 us-gaap:GeneralAndAdministrativeExpenseMember 2024-01-01 2024-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-09-30 0001828161 us-gaap:ToolsDiesAndMoldsMember 2024-09-30 0001828161 ftci:AlphaSteelMember 2023-07-01 2023-09-30 0001828161 ftci:AlphaSteelMember 2024-01-01 2024-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-30 0001828161 us-gaap:SellingAndMarketingExpenseMember 2023-01-01 2023-09-30 0001828161 srt:MaximumMember 2024-09-30 0001828161 ftci:CbpAssessmentsMember 2024-01-01 2024-09-30 0001828161 us-gaap:ServiceMember 2024-07-01 2024-09-30 0001828161 us-gaap:RetainedEarningsMember 2023-09-30 0001828161 us-gaap:RetainedEarningsMember 2024-06-30 0001828161 ftci:AlphaSteelMember 2023-07-28 2023-07-28 0001828161 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-04-01 2024-06-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0001828161 2023-06-30 0001828161 ftci:AlphaSteelMember 2023-12-31 0001828161 us-gaap:CommonStockMember 2024-06-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0001828161 us-gaap:GeneralAndAdministrativeExpenseMember 2023-07-01 2023-09-30 0001828161 us-gaap:RetainedEarningsMember 2023-07-01 2023-09-30 0001828161 us-gaap:SellingAndMarketingExpenseMember 2023-07-01 2023-09-30 0001828161 us-gaap:CommonStockMember 2024-04-01 2024-06-30 0001828161 us-gaap:CommonStockMember us-gaap:SubsequentEventMember 2024-11-08 0001828161 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-03-31 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001828161 us-gaap:RetainedEarningsMember 2024-04-01 2024-06-30 0001828161 us-gaap:ResearchAndDevelopmentExpenseMember 2024-07-01 2024-09-30 0001828161 us-gaap:PreferredStockMember 2023-12-31 0001828161 ftci:FernwehEngagedOperatorCompanyLlcMember 2023-09-13 2023-09-13 0001828161 us-gaap:CostOfSalesMember 2024-01-01 2024-09-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2024-09-30 0001828161 us-gaap:SubsequentEventMember 2024-11-08 2024-11-08 0001828161 srt:MinimumMember us-gaap:SubsequentEventMember 2024-11-08 0001828161 us-gaap:RestrictedStockMember 2024-07-01 2024-09-30 0001828161 us-gaap:RestrictedStockMember 2024-01-01 2024-09-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001828161 us-gaap:TechnologyEquipmentMember 2023-12-31 0001828161 us-gaap:RestrictedStockMember 2023-07-01 2023-09-30 0001828161 2023-12-22 2023-12-22 0001828161 us-gaap:PreferredStockMember 2023-06-30 0001828161 us-gaap:CostOfSalesMember 2023-01-01 2023-09-30 0001828161 us-gaap:ToolsDiesAndMoldsMember 2023-12-31 0001828161 ftci:AlphaSteelMember 2023-02-09 0001828161 us-gaap:GeneralAndAdministrativeExpenseMember 2024-07-01 2024-09-30 0001828161 2023-01-01 2023-09-30 0001828161 2024-01-01 2024-09-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2024-07-01 2024-09-30 0001828161 us-gaap:ResearchAndDevelopmentExpenseMember 2024-01-01 2024-09-30 0001828161 us-gaap:SellingAndMarketingExpenseMember 2024-01-01 2024-09-30 0001828161 ftci:AlphaSteelMember 2024-07-01 2024-09-30 0001828161 us-gaap:RetainedEarningsMember 2024-09-30 0001828161 ftci:AtmProgramMember 2022-09-14 0001828161 us-gaap:CommonStockMember 2023-09-30 0001828161 us-gaap:AdditionalPaidInCapitalMember 2024-04-01 2024-06-30 0001828161 us-gaap:GeneralAndAdministrativeExpenseMember 2023-01-01 2023-09-30 0001828161 us-gaap:ResearchAndDevelopmentExpenseMember 2023-01-01 2023-09-30 0001828161 ftci:AtmProgramMember 2024-07-01 2024-09-30 0001828161 us-gaap:SeniorNotesMember us-gaap:SubsequentEventMember 2024-11-18 0001828161 us-gaap:CommonStockMember 2024-09-30 0001828161 2023-01-01 2023-03-31 0001828161 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0001828161 2024-01-01 2024-03-31 0001828161 ftci:AtmProgramMember 2024-01-01 2024-09-30 0001828161 us-gaap:ProductMember 2024-01-01 2024-09-30 0001828161 us-gaap:CommonStockMember 2024-07-01 2024-09-30 0001828161 srt:MaximumMember us-gaap:SubsequentEventMember 2024-11-08 0001828161 ftci:TreasuryStock1Member 2022-12-31 0001828161 us-gaap:RetainedEarningsMember 2023-03-31 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-07-01 2024-09-30 0001828161 us-gaap:RetainedEarningsMember 2024-01-01 2024-03-31 0001828161 ftci:TaihuaNewEnergyMember 2023-02-09 0001828161 us-gaap:PreferredStockMember 2024-06-30 0001828161 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0001828161 ftci:TreasuryStock1Member 2023-06-30 0001828161 us-gaap:ServiceMember 2023-01-01 2023-09-30 0001828161 us-gaap:EquipmentMember 2024-09-30 0001828161 us-gaap:PreferredStockMember 2023-03-31 0001828161 us-gaap:LeaseholdImprovementsMember 2024-09-30 0001828161 ftci:AtmProgramMember 2024-09-30 0001828161 us-gaap:SubsequentEventMember 2024-11-08 0001828161 2024-09-30 0001828161 srt:MinimumMember us-gaap:DevelopedTechnologyRightsMember 2024-09-30 0001828161 us-gaap:ResearchAndDevelopmentExpenseMember 2023-07-01 2023-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0001828161 ftci:AtmProgramMember 2023-07-01 2023-09-30 0001828161 us-gaap:RetainedEarningsMember 2023-12-31 0001828161 2022-12-31 0001828161 ftci:TreasuryStock1Member 2023-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-01 2023-09-30 0001828161 2024-04-01 2024-06-30 0001828161 us-gaap:ProductMember 2023-07-01 2023-09-30 0001828161 us-gaap:ProductMember 2024-07-01 2024-09-30 0001828161 us-gaap:ProductMember 2023-01-01 2023-09-30 0001828161 us-gaap:RetainedEarningsMember 2024-03-31 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-09-30 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0001828161 us-gaap:CommonStockMember 2023-07-01 2023-09-30 0001828161 ftci:TreasuryStock1Member 2024-09-30 0001828161 us-gaap:CommonStockMember 2024-01-01 2024-03-31 0001828161 us-gaap:CommonStockMember 2023-03-31 0001828161 us-gaap:SoftwareDevelopmentMember 2023-12-31 0001828161 ftci:TreasuryStock1Member 2024-03-31 0001828161 us-gaap:PreferredStockMember 2023-09-30 0001828161 ftci:MajorCustomersMember 2024-04-03 2024-04-03 0001828161 2024-07-01 2024-09-30 0001828161 srt:MinimumMember 2024-01-01 2024-09-30 0001828161 ftci:FernwehEngagedOperatorCompanyLlcMember us-gaap:RelatedPartyMember 2023-07-01 2023-09-30 0001828161 srt:MinimumMember 2023-12-22 0001828161 ftci:FernwehEngagedOperatorCompanyLlcMember 2023-09-13 0001828161 ftci:AlphaSteelMember 2024-09-30 0001828161 us-gaap:TechnologyEquipmentMember 2024-09-30 0001828161 2023-07-01 2023-09-30 0001828161 srt:MaximumMember us-gaap:DevelopedTechnologyRightsMember 2024-09-30 0001828161 ftci:SouthLakeOneLlcMember 2022-02-01 2022-02-28 0001828161 us-gaap:SellingAndMarketingExpenseMember 2024-07-01 2024-09-30 0001828161 srt:MinimumMember 2024-09-30 0001828161 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-09-30 0001828161 2023-09-30 0001828161 us-gaap:EmployeeStockOptionMember 2023-07-01 2023-09-30 0001828161 ftci:TreasuryStock1Member 2023-12-31 0001828161 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0001828161 ftci:TreasuryStock1Member 2023-03-31 0001828161 us-gaap:EquipmentMember 2023-12-31 0001828161 ftci:DayvLlcMember 2023-02-09 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001828161 us-gaap:SoftwareDevelopmentMember 2024-09-30 0001828161 ftci:AtmProgramMember 2023-01-01 2023-09-30 0001828161 us-gaap:CommonStockMember 2023-12-31 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0001828161 us-gaap:ServiceMember 2024-01-01 2024-09-30 0001828161 2024-10-31 0001828161 us-gaap:CommonStockMember 2023-04-01 2023-06-30 0001828161 2023-12-31 0001828161 us-gaap:LeaseholdImprovementsMember 2023-12-31 0001828161 us-gaap:SeniorNotesMember us-gaap:SubsequentEventMember 2024-11-08 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0001828161 us-gaap:AdditionalPaidInCapitalMember 2023-07-01 2023-09-30 0001828161 us-gaap:PreferredStockMember 2024-09-30 0001828161 us-gaap:CommonStockMember 2022-12-31 0001828161 us-gaap:SeniorNotesMember us-gaap:SubsequentEventMember us-gaap:PrivatePlacementMember 2024-11-08 0001828161 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-03-31 ftci:Days pure shares iso4217:USD iso4217:USD shares Q3 --12-31 0001828161 false P5Y P1Y http://fasb.org/us-gaap/2024#OtherLiabilitiesCurrent 10-Q true 2024-09-30 2024 false 001-40350 FTC SOLAR, INC. DE 81-4816270 9020 N Capital of Texas Hwy Suite I-260 Austin TX 78759 737 787-7906 Common Stock, $0.0001 par value FTCI NASDAQ Yes Yes Accelerated Filer false true false false 127767183 8255000 25235000 37345000 65279000 15124000 3905000 15502000 14089000 76226000 108508000 1720000 1819000 2409000 1823000 137000 542000 7421000 7353000 1273000 240000 2507000 2785000 91693000 123070000 18742000 7979000 23965000 34848000 333000 88000 4444000 3612000 9862000 8138000 57346000 54665000 883000 1124000 3056000 4810000 61285000 60599000 0.0001 0.0001 10000000 10000000 0 0 0 0 0.0001 0.0001 850000000 850000000 127723582 127723582 125445325 125445325 13000 13000 10762566 10762566 0 0 366132000 361886000 -231000 -293000 -335506000 -299135000 30408000 62471000 91693000 123070000 7411000 27274000 27092000 80927000 2725000 3274000 7061000 22874000 10136000 30548000 34153000 103801000 11798000 22775000 34632000 73694000 2644000 4394000 8278000 22492000 14442000 27169000 42910000 96186000 -4306000 3379000 -8757000 7615000 1467000 1921000 4441000 5716000 2406000 6324000 6830000 9887000 6797000 11411000 19374000 31053000 10670000 19656000 30645000 46656000 -14976000 -16277000 -39402000 -39041000 24000 -108000 -111000 -194000 0 0 4085000 898000 93000 -50000 122000 -265000 -256000 -336000 -767000 -336000 -15115000 -16771000 -36073000 -38938000 244000 166000 298000 175000 -15359000 -16937000 -36371000 -39113000 207000 -38000 62000 -451000 -15152000 -16975000 -36309000 -39564000 -0.12 -0.12 -0.14 -0.14 -0.29 -0.29 -0.35 -0.35 127380292 127380292 119793821 119793821 126234997 126234997 112794562 112794562 0 0 125445325 13000 10762566 0 361886000 -293000 -299135000 62471000 506928 1639000 1639000 -8771000 -8771000 -181000 -181000 0 0 125952253 13000 10762566 0 363525000 -474000 -307906000 55158000 1009094 41233 3000 3000 1285000 1285000 -12241000 -12241000 36000 36000 0 0 127002580 13000 10762566 0 364813000 -438000 -320147000 44241000 718424 2578 1319000 1319000 -15359000 -15359000 207000 207000 0 0 127723582 13000 10762566 0 366132000 -231000 -335506000 30408000 0 0 105032588 11000 10762566 0 315345000 -61000 -248845000 66450000 1498987 2775000 2775000 265125 51000 51000 797396 2000000 2000000 2683000 6292000 6292000 32000 32000 2472000 2472000 -11762000 -11762000 -5000 -5000 0 0 110277096 11000 10762566 0 328903000 -66000 -260607000 68241000 1213037 2085000 2085000 39087 6589000 1000 17347000 17348000 127000 127000 2669000 2669000 -10414000 -10414000 -408000 -408000 0 0 118118220 12000 10762566 0 350877000 -474000 -271021000 79394000 595097 403749 170000 170000 6149885 10367000 10367000 74000 74000 -312500 1192000 1192000 -16937000 -16937000 -38000 -38000 0 0 124954451 12000 10762566 0 362532000 -512000 -287958000 74074000 -36371000 -39113000 4243000 9044000 1229000 1004000 0 2000 236000 532000 177000 1261000 -767000 -336000 4085000 898000 4735000 3938000 -388000 -45000 1330000 4302000 220000 221000 -861000 -748000 -26604000 26625000 11396000 -9033000 1403000 3122000 514000 -67000 10622000 -6160000 -13502000 5491000 832000 -138000 -2013000 -5740000 968000 607000 -18008000 -46383000 1355000 460000 1800000 900000 4085000 898000 930000 -462000 0 34007000 0 95000 3000 221000 3000 34133000 95000 -153000 -16980000 -12865000 25235000 44385000 8255000 31520000 225000 146000 0 2000000 500000 1417000 211000 436000 113000 331000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1. Description of business</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">FTC Solar, Inc. (the “Company”, “we”, “our”, or “us”) was founded in 2017 and is incorporated in the state of Delaware. In April 2021, we completed an initial public offering ("IPO"), and our common stock currently trades on the Nasdaq Capital Market under the symbol “FTCI”.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are a global provider of solar tracker systems, supported by proprietary software and value-added engineering services. Solar tracker systems move solar panels throughout the day to maintain an optimal orientation relative to the sun, thereby increasing the amount of solar energy produced at a solar installation. Our original two-panel in-portrait solar tracker system is currently marketed under the Voyager brand name (“Voyager”) and our one module-in-portrait ("1P") solar tracker system, which became certified in 2023, is marketed under the Pioneer brand name ("Pioneer"). We also have a mounting solution to support the installation and use of U.S.-manufactured thin-film modules by project owners. Our primary software offerings include SUNPATH which is intended to help customers optimize solar tracking for increased energy production, our SUNOPS real-time operations management platform and our web-based ATLAS portfolio management software. In addition, we have a team of renewable energy professionals available to assist our U.S. and worldwide clients in site layout, structural design, pile testing and other needs across the solar project development and construction cycle. The Company is headquartered in Austin, Texas, and has international subsidiaries in Australia, China, India, South Africa and Spain.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are an emerging growth company, as defined in the Jumpstart Our Business Startups (JOBS) Act. Under the JOBS Act, we elected to use the allowed extended transition period to delay adopting new or revised accounting standards until such time as those standards apply to private companies.</span></p> <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2. Summary of significant accounting policies</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basis of presentation and principles of consolidation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying unaudited condensed consolidated financial statements include the results of the Company and its wholly owned subsidiaries and have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial statements and pursuant to Form 10-Q and Article 10 of Regulation S-X. In the opinion of management, all adjustments of a normal recurring nature have been made that are considered necessary for a fair statement of our financial position as of September 30, 2024, and December 31, 2023, our results of operations for the three and nine months ended September 30, 2024 and 2023, and our cash flows for the nine months ended September 30, 2024 and 2023. The condensed consolidated balance sheet as of December 31, 2023 has been derived from the Company’s audited consolidated financial statements but does not include all disclosures required by accounting principles generally accepted in the United States of America. Operating results for the three and nine months ended September 30, 2024 are not necessarily indicative of the results that may be expected for the year ending December 31, 2024. Intercompany balances and transactions have been eliminated in consolidation.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain information and disclosures normally included in the notes to annual financial statements prepared in accordance with U.S. GAAP have been omitted from these interim financial statements pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Therefore, these unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 (our "2023 Annual Report").</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We currently operate in one business segment, the manufacturing and servicing of solar tracker systems.</span></p></div><div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Liquidity</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have incurred cumulative losses since inception and have a history of cash outflows from operations. As of September 30, 2024, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of cash on hand, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">18.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of working capital and approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">64.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of remaining capacity available for future sales of our common stock under our ATM program as defined and described further in Note 4, "ATM program" below. There can be no assurance that we will be able to sell any additional shares of our common stock under the ATM program and no assurance regarding</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the price at which we will be able to sell such shares, and any sales of our common stock under the ATM program may be at prices that result in additional dilution to our existing stockholders.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On December 22, 2023, we received notification from The Nasdaq Stock Market LLC (“Nasdaq”) that we were not in compliance with the requirement to maintain a minimum closing bid price of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.00</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share, as set forth in Nasdaq Listing Rule 5450(a)(1), because the closing bid price of the Company’s common stock was below $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.00</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share for </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">30</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> consecutive business days. In accordance with Nasdaq Listing Rule 5810(c)(3)(A), we were initially given a period of 180 calendar days from the date of notification, or until June 19, 2024, to regain compliance with the minimum bid price requirement, which was not achieved. Effective May 31, 2024, trading in our common stock transferred from the Nasdaq Global Market to the Nasdaq Capital Market. On June 21, 2024, we received notification from Nasdaq that we were approved for an additional 180-day period, or until December 17, 2024, to cure the bid price deficiency in accordance with Nasdaq Listing Rule 5810(c)(3)(A). In order to achieve compliance with the Nasdaq requirements for continued listing, on November 8, 2024, our stockholders approved an amendment to our Amended and Restated Certificate of Incorporation to effect a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">reverse stock split at a ratio ranging from 1-for-5 to 1-for 25,</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> with the exact ratio to be determined by our Board of Directors. At this time, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, Nasdaq will provide written notification that we have achieved compliance with this minimum bid price requirement. If we fail to regain compliance with the minimum bid price requirement during this second 180-day period, then Nasdaq will notify us that our common stock is subject to delisting.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effective April 30, 2024, our Senior Secured Revolving Credit Facility ("Credit Facility) expired unused and has not been replaced as of September 30, 2024. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As described further in Note 18, "Subsequent events" below, we signed a binding term sheet on November 8, 2024, with an institutional investor, for the issuance of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in long-term senior secured promissory notes, along with warrants to purchase </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">17.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million shares of our common stock at an exercise price of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.01</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share. Closing on the transaction is expected on or before November 30, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2024, we had a contractual obligation that could require us to make additional capital contributions of up to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to Alpha Steel, as well as make a minimum level of purchases from Alpha Steel, as described further in Note 3, "Equity method investment" below. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the event we were to fail to meet our minimum required purchase commitments during a specified period, including the current period from January 1, 2024 to June 30, 2025, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in the aggregate.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, we have made efforts during 2024 to enhance and strengthen our management leadership team. In August 2024, we hired Yann Brandt as our new Chief Executive Officer and, prior to that, we named Tamara Mullings, a former member of our Board of Directors, as our Senior Vice President, North America Sales and Alberto Echeverria, a former Chief Executive Officer and Executive Member of the Board of STI Norland, as our Senior Vice President, International Sales.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In accordance with Accounting Standards Codification ("ASC") 205-40, Going Concern, we have evaluated whether there are conditions and events, considered in the aggregate, which raise substantial doubt about our ability to continue as a going concern within one year after the date our condensed consolidated financial statements are issued.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Management plans to address the liquidity needs of the Company by (i) executing the aforementioned $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million issuance of long-term senior secured notes, (ii) utilizing receipt of additional contingent earnout payments from our investment in Dimension Energy LLC that we sold in 2021, (iii) implementing additional cost savings steps, which could impact the level of services currently provided by third parties and our existing headcount, and (iv) utilizing capacity available for future sales of our common stock under the ATM program. We believe execution of these plans will allow us to fund our operations for at least one year from the date of issuance of our condensed consolidated financial statements.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The successful execution of these plans is subject to various risks and uncertainties. These include, but are not limited to, market conditions, the Company's ability to achieve projected cost savings and revenue targets and access to financing on favorable terms. There can be no assurance that these plans will be realized as anticipated and actual results may differ materially from those projected.</span></p></div><div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Use of estimates</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Preparation </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of condensed consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements, and the reported revenue and expenses during the period. Estimates are used for calculating the measure of progress</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">our solar tracker projects and deriving the standalone selling prices of the individual performance obligations when determining amounts to recognize for revenue, estimating allowances for credit losses and slow-moving and obsolete inventory, determining useful lives of long-lived assets and the estimated fair value of those assets for impairment assessments, and estimating the fair value of investments, stock compensation awards, warranty liabilities and federal and state taxes, including tax valuation allowances, as well as other contingencies. We base our estimates on historical experience and anticipated results, trends, and various other assumptions that we believe are reasonable under the circumstances, including assumptions as to future events. Actual results could differ from those estimates due to risks and uncertainties.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:1pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Concentration of credit risk</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial instruments that potentially subject the Company to concentrations of credit risk are primarily cash and accounts receivable.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We regularly maintain cash balances with various financial institutions that exceed federally insured amounts, but we have experienced no losses associated with these amounts to date. We also took action in early 2023 to reallocate cash balances between different financial institutions based on our assessment as to the financial health of certain institutions.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We extend credit to customers in the normal course of business, often without requiring collateral. We also perform credit analyses and monitor the financial health of our customers to reduce credit risk.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company’s accounts receivables are derived from revenue earned from customers primarily located in the United States and Australia. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the periods included in this Quarterly Report, no company locations other than those in the United States accounted for more than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of our consolidated revenue.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Most of our customers are project developers, solar asset owners and engineering, procurement and construction (“EPC”) contractors that design and build solar energy projects. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We typically rely on a small number of customers that account for a large portion of our revenue each period and our outstanding receivables at each period end.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider all highly liquid investments purchased with an original maturity of three months or less to be cash equivalents. Certain of our cash equivalents include deposits in money market funds that invest primarily in short-term securities issued or guaranteed by the U.S. government or its agencies or instrumentalities and contain no restrictions on immediate redemption. These deposits totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at September 30, 2024 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Interest earned on cash equivalents is included in interest income, which is reported net of interest expense in our condensed consolidated statements of comprehensive loss.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p id="accounts_receivable_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable, net</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trade receivables are recorded at invoiced amounts, net of allowances for credit losses, and do not bear interest. We generally do not require collateral from our customers; however, in certain circumstances, we may require letters of credit, other collateral, additional guarantees or advance payments.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The allowance for credit losses is based on the lifetime expected credit loss of our customer accounts. To assess the lifetime expected credit loss, we utilize a loss rate method that takes into consideration historical experience and certain other factors, as appropriate, such as credit quality and current economic or other conditions that may affect a customer's ability to pay. Provisions for credit losses are included as a component of our selling and marketing expenses.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Receivables arising from revenue recognized in excess of billings represents our unconditional right to consideration before customers are invoiced due to the level of progress obtained as of period end on our contracts to procure and deliver tracker systems and related equipment. Further information may be found below in our </span><a href="#revenue_policy"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">revenue recognition policy</span></a><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories are stated at the lower of cost or net realizable value, with costs computed on a first-in, first-out basis. The Company periodically reviews its inventories for excess and obsolete items and adjusts carrying costs to estimated net realizable values when they are determined to be less than cost.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p id="impairment_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Impairment</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We review our long-lived assets that are held for use for impairment whenever events or changes in circumstances indicate that the carrying amount of the asset may not be recoverable or that its useful life may be shorter than previously expected. If such impairment indicators are present or other factors exist that indicate the carrying amount of the asset may not be recoverable, we determine whether an impairment has occurred through the use of an undiscounted cash flow analysis of the asset at the lowest level for which identifiable cash flows exist. If an impairment has occurred, we recognize a loss for the difference between the carrying amount and the fair value of the asset, which in most cases is estimated based upon Level 3 unobservable inputs. If the asset is determined to have a remaining useful life shorter than previously expected, an adjustment for the shorter remaining life will be made for purposes of recognizing future depreciation expense. Assets are classified as held for sale when we have a plan, approved by the appropriate levels of management, for disposal of such assets, as well as other considerations, and those assets are stated at the lower of carrying value or estimated fair value less estimated costs to sell.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets are recorded at fair value when acquired in connection with a business combination and consist of developed technology in the form of software tools, licenses, and intellectual property, which are amortized over the period of their estimated useful lives, generally </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2.5</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> - </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.0</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> years, using the straight-line method. Costs incurred to renew or extend the term of a recognized intangible asset, if any, are expensed as incurred. We evaluate intangible assets for impairment using the method described above under "Impairment".</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p id="goodwill_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We recognize goodwill as the excess of the purchase price over the estimated fair value of the identified assets and liabilities acquired in a business combination accounted for using the acquisition method. Goodwill is not amortized but is subject to a periodic assessment for impairment at least annually, or whenever events and circumstances indicate an impairment may exist. Our assessments may include qualitative factors such as current or expected industry and market conditions, our overall financial performance, share price trends, market capitalization and other company-specific events.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We operate in one segment, being the consolidated entity, which we have also determined is the reporting unit for goodwill impairment.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">No</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> impairment</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of goodwill was recognized as of September 30, 2024 or 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Equity method investment</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We use the equity method of accounting for investments in which we have the ability to exercise significant influence, but not control, over operating and financial policies of the investee. Our proportionate share of the net income or loss of these investees is included in our condensed consolidated statements of comprehensive loss. Judgment regarding the level of influence over each equity method investment includes considering key factors such as our ownership interest, legal form of the investee, representation on the board of directors or managers, participation in policy-making decisions and material intra-entity transactions.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We account for distributions received from equity method investees under the “nature of the distribution” approach based on the nature of the activity or activities of the investee that generated the distribution as either a return on investment (classified as cash inflows from operating activities) or a return of investment (classified as cash inflows from investing activities).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We evaluate equity method investments for impairment whenever events or changes in circumstances indicate that the carrying amount of the investment might not be recoverable. Factors considered by the Company when reviewing an equity method investment for impairment include the length of time and the extent to which the fair value of the equity method investment has been less than its cost, the investee’s financial condition and near-term prospects and the intent and ability to hold the investment for a period of time sufficient to allow for anticipated recovery. An impairment that is other-than temporary is recognized in the period identified.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We made an accounting policy election that, upon the sale of our equity method investments, we will recognize contractual contingent gains arising from earnout provisions and project escrow releases when such amounts are realizable in periods subsequent to the disposal date.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p id="warranty_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Warranty</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Typically, the sale of solar tracker projects includes parts warranties to customers as part of the overall price of the product. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We provide standard assurance type warranties for our products for periods generally ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_11427b14-2901-4973-9b99-f28ca15c7524;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">five</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ten years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We also accrue for costs relating to remediation efforts involving product issues we believe require correction. We record a provision for estimated warranty and remediation expenses in cost of sales, net of amounts recoverable from manufacturers under their warranty obligations to us. When historical claims information relating to our equipment is not sufficient, we will base our estimates on industry studies involving the nature and frequency of product failure rates for similar parts used by our competitors, as well as other related businesses. We do not maintain general or unspecified reserves; all warranty reserves are related to specific projects. All actual or estimated material costs incurred for warranty or remediation services in subsequent periods are charged to those established reserves.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">While we periodically monitor our warranty activities and claims, if actual costs incurred were to be different from our estimates, we would recognize adjustments to our warranty reserves in the period in which those differences arise or are identified.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p id="stock_based_compensation_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We recognize compensation expense for all share-based payment awards made, including stock options and restricted stock units ("RSUs"), based on the estimated fair value of the award on the grant date. We calculate the fair value of stock options using the Black-Scholes option pricing model for awards with service-based vesting or through use of a lattice model or a Monte Carlo simulation for stock option and RSU awards with market conditions. The fair value of RSUs with service or performance-based vesting is based on the estimated fair value of the Company's common stock on the date of grant. We consider the closing price of our stock, as reported on the Nasdaq Capital Market, to be the fair value of our stock on the grant date.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeitures are accounted for as they occur. For service-based awards, stock-based compensation is recognized using the straight-line attribution approach over the requisite service period. For performance-based awards, stock-based compensation is recognized based on graded vesting over the requisite service period when the performance condition is probable of being achieved. Stock compensation expense for market-based awards is recognized over the derived service period determined in the valuation model, inclusive of any vesting conditions.</span></p></div><div><p id="revenue_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognition</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Product revenue is derived from the sale of solar tracker systems and customized components for those systems, individual part sales for certain specific transactions and the sale of term-based software licenses. Term-based licensed software is deployed on the customers’ own servers and has significant standalone functionality.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Service revenue includes revenue from shipping and handling services, engineering consulting and pile testing services, our subscription-based enterprise licensing model and maintenance and support services in connection with the term-based software licenses.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Our subscription-based enterprise licensing model typically has contract terms ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_6cf0345b-0558-4fcb-ac65-468932d7619e;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">one</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">two years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and consists of subscription fees from the licensing of subscription services. Our hosted on-demand service arrangements do not provide customers with the right to take possession of the software supporting the hosted services. Support services include ongoing security updates, upgrades, bug fixes, and maintenance.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration to which we expect to be entitled to in exchange for those goods or services by following a five-step process: (1) identify the contract with a customer, (2) identify the performance obligations in the contract, (3) determine the transaction price, (4) allocate the transaction price to the performance obligations in the contract, and (5) recognize revenue when or as the Company satisfies a performance obligation, as further described below.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Identify the contract with a customer:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> A contract with a customer exists when (i) the Company enters into an enforceable contract with a customer that defines each party’s rights regarding the products and services to be transferred and identifies the payment terms related to these products and services, (ii) the contract has commercial substance, and (iii) the Company determines that collection of substantially all consideration for products and services that are transferred is probable based on the customer’s intent and ability to pay the promised consideration. In assessing the recognition of revenue, we also evaluate whether two or more contracts should be combined and accounted for as one contract and if the combined or single contract should be accounted for as multiple performance obligations which could change the amount of revenue and profit (loss) recorded in a period. Change orders may include changes in specifications or design, manner of</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">performance, equipment, materials, scope of work, and/or the period of completion of the project. We analyze change orders to determine if they should be accounted for as a modification to an existing contract or a new stand-alone contract.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contracts we enter into with our customers for sale of solar tracker systems are generally under two different types of arrangements: (1) purchase agreements and equipment supply contracts (“Purchase Agreements”), and (2) sale of individual parts for those systems.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Change orders from our customers are generally modifications to existing contracts and are included in the total estimated contract revenue when it is probable that the change order will result in additional value that can be reliably estimated and realized.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Identify the performance obligations in the contract: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We enter into contracts that can include various combinations of products and services, which are either capable of being distinct and accounted for as separate performance obligations or as one performance obligation since the majority of tasks and services are part of a single project or capability. However, determining whether products or services are considered distinct performance obligations that should be accounted for separately versus together may sometimes require significant judgment.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Purchase Agreements typically include two performance obligations: 1) our solar tracker systems or customized components of those systems, and 2) shipping and handling services. The deliverables included as part of our solar tracker systems are predominantly accounted for as one performance obligation, as these deliverables are part of a combined promise to deliver a project.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The revenue for shipping and handling services will be recognized over time based on progress in meeting shipping terms of the arrangements, as this faithfully depicts the Company’s performance in transferring control. Revenue for stand-alone engineering consulting and pile testing services is recognized at a point in time upon completion of the services performed.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Sales of individual parts of our solar tracker systems for certain specific transactions include multiple performance obligations consisting of individual parts of those systems. Revenue is recognized for parts sales at a point in time when the obligations under the terms of the contract with our customer are satisfied. Generally, this occurs with the transfer of control of the asset, which is in line with shipping terms.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Determine the transaction price: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The transaction price is determined based on the consideration to which we will be entitled in exchange for transferring services to the customer. Such amounts are typically stated in the customer contract, and to the extent that we identify variable consideration, we will estimate the variable consideration at the onset of the arrangement as long as it is probable that a significant reversal in the amount of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is subsequently resolved. The majority of our contracts do not contain variable consideration provisions as a continuation of the original contract. None of our contracts contain a significant financing component. Taxes collected from customers and remitted to governmental authorities are not included in revenue</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Allocate the transaction price to performance obligations in the contract: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Once we have determined the transaction price, we allocate the total transaction price to each performance obligation in a manner depicting the amount of consideration to which we expect to be entitled in exchange for transferring the good(s) or service(s) to the customer. We allocate the transaction price to each performance obligation identified in the contract on a relative standalone selling price basis.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We use the expected cost-plus margin approach based on hardware, labor, and related overhead cost to estimate the standalone selling price of our solar tracker systems, customized components of those systems, and individual parts for certain specific transactions. We also use the expected cost-plus margin approach based on expected third-party shipping and transportation costs to estimate the standalone selling price of our shipping, handling and logistics performance obligations. We use the adjusted market assessment approach for all other performance obligations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Recognize revenue when or as the Company satisfies a performance obligation: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For each performance obligation identified, we determine at contract inception whether we satisfy the performance obligation over time or at a point in time. The performance obligations in the contracts for our solar tracker systems and customized components of those systems are satisfied over time as work progresses, utilizing an input measure of progress determined by cost-to-cost measures on these projects as this faithfully depicts our performance in transferring control. Additionally, our performance does not create an asset with an alternative use, due to the highly customized nature of the product, and we have an enforceable right to payment for performance completed to date. Our performance obligations for individual part sales for certain specific transactions are recognized at a point in time as and when control transfers based on the terms for the contract. Our performance obligations for engineering consulting and pile testing services are recognized at a point in time upon completion of the</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">services. Our performance obligations for term-based software licenses are recognized at a point in time as and when control transfers, either upon delivery to the customer or the software license start date, whichever is later. Our performance obligations for shipping and handling services are satisfied over time as the services are delivered over the term of the contract. We recognize revenue for subscription and other services on a straight-line basis over the contract period. With regard to support revenue, a time-elapsed method is used to measure progress because we transfer control evenly over the contractual period. Accordingly, the fixed consideration related to support revenue is generally recognized on a straight-line basis over the contract term.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contract assets and liabilities: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of revenue recognition, billing, and cash collection results in the recognition of accounts receivable, unbilled receivables for revenue recognized in excess of billings, and deferred revenue in the condensed consolidated balance sheets. We have elected to use the practical expedient of expensing incremental costs of obtaining a contract for our contracts of less than one year in duration. We may receive advances or deposits from our customers before revenue is recognized, resulting in contract liabilities, which are reflected as “deferred revenue” in our condensed consolidated balance sheets. Customer deposits are short term as the related performance obligations are typically fulfilled within 12 months. Changes in deferred revenue relate to fluctuations in the timing of customer deposits and completion of performance obligations. Revenue recognized during the three and nine months ended September 30, 2024, from amounts included in deferred revenue at December 31, 2023, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. Revenue recognized during the three and nine months ended September 30, 2023, from amounts included in deferred revenue at December 31, 2022, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cost of revenue consists primarily of costs related to raw materials, equipment manufacturing activities, freight and delivery, product warranty, remediation and personnel costs (salaries, bonuses, benefits, and stock-based compensation). Personnel costs in cost of revenue include both direct labor costs, as well as costs attributable to any individuals whose activities relate to the procurement, installment and delivery of the finished product and services.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Cost of revenue owed but not yet paid is recorded as accrued cost of revenue in the accompanying condensed consolidated balance sheets. Deferred cost of revenue, a component of our prepaid and other current assets, results from the timing differences between the costs incurred in advance of the satisfaction of all revenue recognition criteria consistent with our revenue recognition policy.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Recent accounting and regulatory pronouncements not yet adopted</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In November 2023, the Financial Accounting Standards Board ("FASB") issued ASU No. 2023-07 - Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures ("ASU 2023-07"), which will become effective for us for our year end 2024 financial reporting and our interim reporting beginning January 1, 2025. ASU 2023-07 requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis and will require interim disclosures about a reportable segment's profit or loss and assets that are currently required annually. As noted above, we operate in one segment. We are currently evaluating the impact of ASU 2023-07 on our existing disclosures. ASU 2023-07 will be applied retrospectively to all periods when presented in our consolidated financial statements for the year ending December 31, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In December 2023, the FASB issued ASU No. 2023-09 - Income Taxes (Topic 740): Improvements to Income Tax Disclosures ("ASU 2023-09"). ASU 2023-09 requires companies to disclose (i) additional categories of information about federal, state and foreign income taxes above a quantitative threshold in their rate reconciliation table and (ii) income taxes paid, net of refunds, disaggregated by federal, state and foreign taxes for annual periods, as well as other disclosure changes. As an emerging growth company, we are not required to adopt ASU 2023-09 prior to 2026, although earlier adoption is permitted. We are currently evaluating the impact of ASU 2023-09 on our existing income tax disclosures.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In March 2024, the U.S. Securities and Exchange Commission ("SEC") adopted the final rule under SEC Release No. 33-11275, The Enhancement and Standardization of Climate-Related Disclosures for Investors. This rule would require registrants to disclose certain climate-related information in registration statements and annual reports. In April 2024, the SEC issued a stay of the final rules pending a judicial review of the validity of the rules by the Eighth Circuit Court of Appeals. We are currently evaluating the final rule to determine its impact on our disclosures.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other standards or regulatory requirements that have been issued but not yet adopted as of September 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, are either not applicable to us or are not expected to have any material impact upon adoption.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reclassifications</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain prior year amounts have been reclassified to conform to the current year presentation. There was no impact on our financial condition or results of operations as a result of the reclassification.</span></p></div> <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basis of presentation and principles of consolidation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying unaudited condensed consolidated financial statements include the results of the Company and its wholly owned subsidiaries and have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial statements and pursuant to Form 10-Q and Article 10 of Regulation S-X. In the opinion of management, all adjustments of a normal recurring nature have been made that are considered necessary for a fair statement of our financial position as of September 30, 2024, and December 31, 2023, our results of operations for the three and nine months ended September 30, 2024 and 2023, and our cash flows for the nine months ended September 30, 2024 and 2023. The condensed consolidated balance sheet as of December 31, 2023 has been derived from the Company’s audited consolidated financial statements but does not include all disclosures required by accounting principles generally accepted in the United States of America. Operating results for the three and nine months ended September 30, 2024 are not necessarily indicative of the results that may be expected for the year ending December 31, 2024. Intercompany balances and transactions have been eliminated in consolidation.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain information and disclosures normally included in the notes to annual financial statements prepared in accordance with U.S. GAAP have been omitted from these interim financial statements pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Therefore, these unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 (our "2023 Annual Report").</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We currently operate in one business segment, the manufacturing and servicing of solar tracker systems.</span></p> <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Liquidity</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have incurred cumulative losses since inception and have a history of cash outflows from operations. As of September 30, 2024, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of cash on hand, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">18.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of working capital and approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">64.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of remaining capacity available for future sales of our common stock under our ATM program as defined and described further in Note 4, "ATM program" below. There can be no assurance that we will be able to sell any additional shares of our common stock under the ATM program and no assurance regarding</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the price at which we will be able to sell such shares, and any sales of our common stock under the ATM program may be at prices that result in additional dilution to our existing stockholders.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On December 22, 2023, we received notification from The Nasdaq Stock Market LLC (“Nasdaq”) that we were not in compliance with the requirement to maintain a minimum closing bid price of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.00</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share, as set forth in Nasdaq Listing Rule 5450(a)(1), because the closing bid price of the Company’s common stock was below $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.00</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share for </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">30</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> consecutive business days. In accordance with Nasdaq Listing Rule 5810(c)(3)(A), we were initially given a period of 180 calendar days from the date of notification, or until June 19, 2024, to regain compliance with the minimum bid price requirement, which was not achieved. Effective May 31, 2024, trading in our common stock transferred from the Nasdaq Global Market to the Nasdaq Capital Market. On June 21, 2024, we received notification from Nasdaq that we were approved for an additional 180-day period, or until December 17, 2024, to cure the bid price deficiency in accordance with Nasdaq Listing Rule 5810(c)(3)(A). In order to achieve compliance with the Nasdaq requirements for continued listing, on November 8, 2024, our stockholders approved an amendment to our Amended and Restated Certificate of Incorporation to effect a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">reverse stock split at a ratio ranging from 1-for-5 to 1-for 25,</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> with the exact ratio to be determined by our Board of Directors. At this time, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, Nasdaq will provide written notification that we have achieved compliance with this minimum bid price requirement. If we fail to regain compliance with the minimum bid price requirement during this second 180-day period, then Nasdaq will notify us that our common stock is subject to delisting.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effective April 30, 2024, our Senior Secured Revolving Credit Facility ("Credit Facility) expired unused and has not been replaced as of September 30, 2024. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As described further in Note 18, "Subsequent events" below, we signed a binding term sheet on November 8, 2024, with an institutional investor, for the issuance of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in long-term senior secured promissory notes, along with warrants to purchase </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">17.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million shares of our common stock at an exercise price of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.01</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share. Closing on the transaction is expected on or before November 30, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2024, we had a contractual obligation that could require us to make additional capital contributions of up to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to Alpha Steel, as well as make a minimum level of purchases from Alpha Steel, as described further in Note 3, "Equity method investment" below. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the event we were to fail to meet our minimum required purchase commitments during a specified period, including the current period from January 1, 2024 to June 30, 2025, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in the aggregate.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, we have made efforts during 2024 to enhance and strengthen our management leadership team. In August 2024, we hired Yann Brandt as our new Chief Executive Officer and, prior to that, we named Tamara Mullings, a former member of our Board of Directors, as our Senior Vice President, North America Sales and Alberto Echeverria, a former Chief Executive Officer and Executive Member of the Board of STI Norland, as our Senior Vice President, International Sales.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In accordance with Accounting Standards Codification ("ASC") 205-40, Going Concern, we have evaluated whether there are conditions and events, considered in the aggregate, which raise substantial doubt about our ability to continue as a going concern within one year after the date our condensed consolidated financial statements are issued.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Management plans to address the liquidity needs of the Company by (i) executing the aforementioned $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million issuance of long-term senior secured notes, (ii) utilizing receipt of additional contingent earnout payments from our investment in Dimension Energy LLC that we sold in 2021, (iii) implementing additional cost savings steps, which could impact the level of services currently provided by third parties and our existing headcount, and (iv) utilizing capacity available for future sales of our common stock under the ATM program. We believe execution of these plans will allow us to fund our operations for at least one year from the date of issuance of our condensed consolidated financial statements.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The successful execution of these plans is subject to various risks and uncertainties. These include, but are not limited to, market conditions, the Company's ability to achieve projected cost savings and revenue targets and access to financing on favorable terms. There can be no assurance that these plans will be realized as anticipated and actual results may differ materially from those projected.</span></p> 8300000 18900000 64900000 1 1 30 reverse stock split at a ratio ranging from 1-for-5 to 1-for 25, our common stock continues to trade on the Nasdaq Capital Market under the symbol "FTCI". If at any time before December 17, 2024, the bid price of our common stock closes at or above $1.00 per share for a minimum of ten consecutive business days 15000000 17500000 0.01 800000 4000000 15000000 <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Use of estimates</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Preparation </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of condensed consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the financial statements, and the reported revenue and expenses during the period. Estimates are used for calculating the measure of progress</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">our solar tracker projects and deriving the standalone selling prices of the individual performance obligations when determining amounts to recognize for revenue, estimating allowances for credit losses and slow-moving and obsolete inventory, determining useful lives of long-lived assets and the estimated fair value of those assets for impairment assessments, and estimating the fair value of investments, stock compensation awards, warranty liabilities and federal and state taxes, including tax valuation allowances, as well as other contingencies. We base our estimates on historical experience and anticipated results, trends, and various other assumptions that we believe are reasonable under the circumstances, including assumptions as to future events. Actual results could differ from those estimates due to risks and uncertainties.</span></p> <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:1pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Concentration of credit risk</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial instruments that potentially subject the Company to concentrations of credit risk are primarily cash and accounts receivable.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We regularly maintain cash balances with various financial institutions that exceed federally insured amounts, but we have experienced no losses associated with these amounts to date. We also took action in early 2023 to reallocate cash balances between different financial institutions based on our assessment as to the financial health of certain institutions.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We extend credit to customers in the normal course of business, often without requiring collateral. We also perform credit analyses and monitor the financial health of our customers to reduce credit risk.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company’s accounts receivables are derived from revenue earned from customers primarily located in the United States and Australia. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the periods included in this Quarterly Report, no company locations other than those in the United States accounted for more than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of our consolidated revenue.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Most of our customers are project developers, solar asset owners and engineering, procurement and construction (“EPC”) contractors that design and build solar energy projects. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We typically rely on a small number of customers that account for a large portion of our revenue each period and our outstanding receivables at each period end.</span></p> 0.10 <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider all highly liquid investments purchased with an original maturity of three months or less to be cash equivalents. Certain of our cash equivalents include deposits in money market funds that invest primarily in short-term securities issued or guaranteed by the U.S. government or its agencies or instrumentalities and contain no restrictions on immediate redemption. These deposits totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at September 30, 2024 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Interest earned on cash equivalents is included in interest income, which is reported net of interest expense in our condensed consolidated statements of comprehensive loss.</span></p> 1800000 13900000 <p id="accounts_receivable_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable, net</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trade receivables are recorded at invoiced amounts, net of allowances for credit losses, and do not bear interest. We generally do not require collateral from our customers; however, in certain circumstances, we may require letters of credit, other collateral, additional guarantees or advance payments.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The allowance for credit losses is based on the lifetime expected credit loss of our customer accounts. To assess the lifetime expected credit loss, we utilize a loss rate method that takes into consideration historical experience and certain other factors, as appropriate, such as credit quality and current economic or other conditions that may affect a customer's ability to pay. Provisions for credit losses are included as a component of our selling and marketing expenses.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Receivables arising from revenue recognized in excess of billings represents our unconditional right to consideration before customers are invoiced due to the level of progress obtained as of period end on our contracts to procure and deliver tracker systems and related equipment. Further information may be found below in our </span><a href="#revenue_policy"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">revenue recognition policy</span></a><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p> <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories are stated at the lower of cost or net realizable value, with costs computed on a first-in, first-out basis. The Company periodically reviews its inventories for excess and obsolete items and adjusts carrying costs to estimated net realizable values when they are determined to be less than cost.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <p id="impairment_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Impairment</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We review our long-lived assets that are held for use for impairment whenever events or changes in circumstances indicate that the carrying amount of the asset may not be recoverable or that its useful life may be shorter than previously expected. If such impairment indicators are present or other factors exist that indicate the carrying amount of the asset may not be recoverable, we determine whether an impairment has occurred through the use of an undiscounted cash flow analysis of the asset at the lowest level for which identifiable cash flows exist. If an impairment has occurred, we recognize a loss for the difference between the carrying amount and the fair value of the asset, which in most cases is estimated based upon Level 3 unobservable inputs. If the asset is determined to have a remaining useful life shorter than previously expected, an adjustment for the shorter remaining life will be made for purposes of recognizing future depreciation expense. Assets are classified as held for sale when we have a plan, approved by the appropriate levels of management, for disposal of such assets, as well as other considerations, and those assets are stated at the lower of carrying value or estimated fair value less estimated costs to sell.</span></p> <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets are recorded at fair value when acquired in connection with a business combination and consist of developed technology in the form of software tools, licenses, and intellectual property, which are amortized over the period of their estimated useful lives, generally </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2.5</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> - </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.0</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> years, using the straight-line method. Costs incurred to renew or extend the term of a recognized intangible asset, if any, are expensed as incurred. We evaluate intangible assets for impairment using the method described above under "Impairment".</span></p> P2Y6M P3Y <p id="goodwill_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We recognize goodwill as the excess of the purchase price over the estimated fair value of the identified assets and liabilities acquired in a business combination accounted for using the acquisition method. Goodwill is not amortized but is subject to a periodic assessment for impairment at least annually, or whenever events and circumstances indicate an impairment may exist. Our assessments may include qualitative factors such as current or expected industry and market conditions, our overall financial performance, share price trends, market capitalization and other company-specific events.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We operate in one segment, being the consolidated entity, which we have also determined is the reporting unit for goodwill impairment.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">No</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> impairment</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of goodwill was recognized as of September 30, 2024 or 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p> 0 0 <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Equity method investment</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We use the equity method of accounting for investments in which we have the ability to exercise significant influence, but not control, over operating and financial policies of the investee. Our proportionate share of the net income or loss of these investees is included in our condensed consolidated statements of comprehensive loss. Judgment regarding the level of influence over each equity method investment includes considering key factors such as our ownership interest, legal form of the investee, representation on the board of directors or managers, participation in policy-making decisions and material intra-entity transactions.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We account for distributions received from equity method investees under the “nature of the distribution” approach based on the nature of the activity or activities of the investee that generated the distribution as either a return on investment (classified as cash inflows from operating activities) or a return of investment (classified as cash inflows from investing activities).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We evaluate equity method investments for impairment whenever events or changes in circumstances indicate that the carrying amount of the investment might not be recoverable. Factors considered by the Company when reviewing an equity method investment for impairment include the length of time and the extent to which the fair value of the equity method investment has been less than its cost, the investee’s financial condition and near-term prospects and the intent and ability to hold the investment for a period of time sufficient to allow for anticipated recovery. An impairment that is other-than temporary is recognized in the period identified.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We made an accounting policy election that, upon the sale of our equity method investments, we will recognize contractual contingent gains arising from earnout provisions and project escrow releases when such amounts are realizable in periods subsequent to the disposal date.</span></p> <p id="warranty_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Warranty</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Typically, the sale of solar tracker projects includes parts warranties to customers as part of the overall price of the product. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We provide standard assurance type warranties for our products for periods generally ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_11427b14-2901-4973-9b99-f28ca15c7524;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">five</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ten years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We also accrue for costs relating to remediation efforts involving product issues we believe require correction. We record a provision for estimated warranty and remediation expenses in cost of sales, net of amounts recoverable from manufacturers under their warranty obligations to us. When historical claims information relating to our equipment is not sufficient, we will base our estimates on industry studies involving the nature and frequency of product failure rates for similar parts used by our competitors, as well as other related businesses. We do not maintain general or unspecified reserves; all warranty reserves are related to specific projects. All actual or estimated material costs incurred for warranty or remediation services in subsequent periods are charged to those established reserves.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">While we periodically monitor our warranty activities and claims, if actual costs incurred were to be different from our estimates, we would recognize adjustments to our warranty reserves in the period in which those differences arise or are identified.</span></p> We provide standard assurance type warranties for our products for periods generally ranging from five to ten years. P10Y <p id="stock_based_compensation_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We recognize compensation expense for all share-based payment awards made, including stock options and restricted stock units ("RSUs"), based on the estimated fair value of the award on the grant date. We calculate the fair value of stock options using the Black-Scholes option pricing model for awards with service-based vesting or through use of a lattice model or a Monte Carlo simulation for stock option and RSU awards with market conditions. The fair value of RSUs with service or performance-based vesting is based on the estimated fair value of the Company's common stock on the date of grant. We consider the closing price of our stock, as reported on the Nasdaq Capital Market, to be the fair value of our stock on the grant date.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeitures are accounted for as they occur. For service-based awards, stock-based compensation is recognized using the straight-line attribution approach over the requisite service period. For performance-based awards, stock-based compensation is recognized based on graded vesting over the requisite service period when the performance condition is probable of being achieved. Stock compensation expense for market-based awards is recognized over the derived service period determined in the valuation model, inclusive of any vesting conditions.</span></p> <p id="revenue_policy" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognition</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Product revenue is derived from the sale of solar tracker systems and customized components for those systems, individual part sales for certain specific transactions and the sale of term-based software licenses. Term-based licensed software is deployed on the customers’ own servers and has significant standalone functionality.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Service revenue includes revenue from shipping and handling services, engineering consulting and pile testing services, our subscription-based enterprise licensing model and maintenance and support services in connection with the term-based software licenses.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Our subscription-based enterprise licensing model typically has contract terms ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_6cf0345b-0558-4fcb-ac65-468932d7619e;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">one</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">two years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and consists of subscription fees from the licensing of subscription services. Our hosted on-demand service arrangements do not provide customers with the right to take possession of the software supporting the hosted services. Support services include ongoing security updates, upgrades, bug fixes, and maintenance.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration to which we expect to be entitled to in exchange for those goods or services by following a five-step process: (1) identify the contract with a customer, (2) identify the performance obligations in the contract, (3) determine the transaction price, (4) allocate the transaction price to the performance obligations in the contract, and (5) recognize revenue when or as the Company satisfies a performance obligation, as further described below.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Identify the contract with a customer:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> A contract with a customer exists when (i) the Company enters into an enforceable contract with a customer that defines each party’s rights regarding the products and services to be transferred and identifies the payment terms related to these products and services, (ii) the contract has commercial substance, and (iii) the Company determines that collection of substantially all consideration for products and services that are transferred is probable based on the customer’s intent and ability to pay the promised consideration. In assessing the recognition of revenue, we also evaluate whether two or more contracts should be combined and accounted for as one contract and if the combined or single contract should be accounted for as multiple performance obligations which could change the amount of revenue and profit (loss) recorded in a period. Change orders may include changes in specifications or design, manner of</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">performance, equipment, materials, scope of work, and/or the period of completion of the project. We analyze change orders to determine if they should be accounted for as a modification to an existing contract or a new stand-alone contract.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contracts we enter into with our customers for sale of solar tracker systems are generally under two different types of arrangements: (1) purchase agreements and equipment supply contracts (“Purchase Agreements”), and (2) sale of individual parts for those systems.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Change orders from our customers are generally modifications to existing contracts and are included in the total estimated contract revenue when it is probable that the change order will result in additional value that can be reliably estimated and realized.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Identify the performance obligations in the contract: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We enter into contracts that can include various combinations of products and services, which are either capable of being distinct and accounted for as separate performance obligations or as one performance obligation since the majority of tasks and services are part of a single project or capability. However, determining whether products or services are considered distinct performance obligations that should be accounted for separately versus together may sometimes require significant judgment.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Purchase Agreements typically include two performance obligations: 1) our solar tracker systems or customized components of those systems, and 2) shipping and handling services. The deliverables included as part of our solar tracker systems are predominantly accounted for as one performance obligation, as these deliverables are part of a combined promise to deliver a project.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The revenue for shipping and handling services will be recognized over time based on progress in meeting shipping terms of the arrangements, as this faithfully depicts the Company’s performance in transferring control. Revenue for stand-alone engineering consulting and pile testing services is recognized at a point in time upon completion of the services performed.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Sales of individual parts of our solar tracker systems for certain specific transactions include multiple performance obligations consisting of individual parts of those systems. Revenue is recognized for parts sales at a point in time when the obligations under the terms of the contract with our customer are satisfied. Generally, this occurs with the transfer of control of the asset, which is in line with shipping terms.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Determine the transaction price: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The transaction price is determined based on the consideration to which we will be entitled in exchange for transferring services to the customer. Such amounts are typically stated in the customer contract, and to the extent that we identify variable consideration, we will estimate the variable consideration at the onset of the arrangement as long as it is probable that a significant reversal in the amount of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is subsequently resolved. The majority of our contracts do not contain variable consideration provisions as a continuation of the original contract. None of our contracts contain a significant financing component. Taxes collected from customers and remitted to governmental authorities are not included in revenue</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Allocate the transaction price to performance obligations in the contract: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Once we have determined the transaction price, we allocate the total transaction price to each performance obligation in a manner depicting the amount of consideration to which we expect to be entitled in exchange for transferring the good(s) or service(s) to the customer. We allocate the transaction price to each performance obligation identified in the contract on a relative standalone selling price basis.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We use the expected cost-plus margin approach based on hardware, labor, and related overhead cost to estimate the standalone selling price of our solar tracker systems, customized components of those systems, and individual parts for certain specific transactions. We also use the expected cost-plus margin approach based on expected third-party shipping and transportation costs to estimate the standalone selling price of our shipping, handling and logistics performance obligations. We use the adjusted market assessment approach for all other performance obligations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Recognize revenue when or as the Company satisfies a performance obligation: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For each performance obligation identified, we determine at contract inception whether we satisfy the performance obligation over time or at a point in time. The performance obligations in the contracts for our solar tracker systems and customized components of those systems are satisfied over time as work progresses, utilizing an input measure of progress determined by cost-to-cost measures on these projects as this faithfully depicts our performance in transferring control. Additionally, our performance does not create an asset with an alternative use, due to the highly customized nature of the product, and we have an enforceable right to payment for performance completed to date. Our performance obligations for individual part sales for certain specific transactions are recognized at a point in time as and when control transfers based on the terms for the contract. Our performance obligations for engineering consulting and pile testing services are recognized at a point in time upon completion of the</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">services. Our performance obligations for term-based software licenses are recognized at a point in time as and when control transfers, either upon delivery to the customer or the software license start date, whichever is later. Our performance obligations for shipping and handling services are satisfied over time as the services are delivered over the term of the contract. We recognize revenue for subscription and other services on a straight-line basis over the contract period. With regard to support revenue, a time-elapsed method is used to measure progress because we transfer control evenly over the contractual period. Accordingly, the fixed consideration related to support revenue is generally recognized on a straight-line basis over the contract term.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contract assets and liabilities: </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of revenue recognition, billing, and cash collection results in the recognition of accounts receivable, unbilled receivables for revenue recognized in excess of billings, and deferred revenue in the condensed consolidated balance sheets. We have elected to use the practical expedient of expensing incremental costs of obtaining a contract for our contracts of less than one year in duration. We may receive advances or deposits from our customers before revenue is recognized, resulting in contract liabilities, which are reflected as “deferred revenue” in our condensed consolidated balance sheets. Customer deposits are short term as the related performance obligations are typically fulfilled within 12 months. Changes in deferred revenue relate to fluctuations in the timing of customer deposits and completion of performance obligations. Revenue recognized during the three and nine months ended September 30, 2024, from amounts included in deferred revenue at December 31, 2023, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. Revenue recognized during the three and nine months ended September 30, 2023, from amounts included in deferred revenue at December 31, 2022, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cost of revenue consists primarily of costs related to raw materials, equipment manufacturing activities, freight and delivery, product warranty, remediation and personnel costs (salaries, bonuses, benefits, and stock-based compensation). Personnel costs in cost of revenue include both direct labor costs, as well as costs attributable to any individuals whose activities relate to the procurement, installment and delivery of the finished product and services.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Cost of revenue owed but not yet paid is recorded as accrued cost of revenue in the accompanying condensed consolidated balance sheets. Deferred cost of revenue, a component of our prepaid and other current assets, results from the timing differences between the costs incurred in advance of the satisfaction of all revenue recognition criteria consistent with our revenue recognition policy.</span></p> P2Y 1100000 3600000 1600000 10900000 <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Recent accounting and regulatory pronouncements not yet adopted</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In November 2023, the Financial Accounting Standards Board ("FASB") issued ASU No. 2023-07 - Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures ("ASU 2023-07"), which will become effective for us for our year end 2024 financial reporting and our interim reporting beginning January 1, 2025. ASU 2023-07 requires public companies to disclose significant segment expenses and other segment items on an annual and interim basis and will require interim disclosures about a reportable segment's profit or loss and assets that are currently required annually. As noted above, we operate in one segment. We are currently evaluating the impact of ASU 2023-07 on our existing disclosures. ASU 2023-07 will be applied retrospectively to all periods when presented in our consolidated financial statements for the year ending December 31, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In December 2023, the FASB issued ASU No. 2023-09 - Income Taxes (Topic 740): Improvements to Income Tax Disclosures ("ASU 2023-09"). ASU 2023-09 requires companies to disclose (i) additional categories of information about federal, state and foreign income taxes above a quantitative threshold in their rate reconciliation table and (ii) income taxes paid, net of refunds, disaggregated by federal, state and foreign taxes for annual periods, as well as other disclosure changes. As an emerging growth company, we are not required to adopt ASU 2023-09 prior to 2026, although earlier adoption is permitted. We are currently evaluating the impact of ASU 2023-09 on our existing income tax disclosures.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In March 2024, the U.S. Securities and Exchange Commission ("SEC") adopted the final rule under SEC Release No. 33-11275, The Enhancement and Standardization of Climate-Related Disclosures for Investors. This rule would require registrants to disclose certain climate-related information in registration statements and annual reports. In April 2024, the SEC issued a stay of the final rules pending a judicial review of the validity of the rules by the Eighth Circuit Court of Appeals. We are currently evaluating the final rule to determine its impact on our disclosures.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other standards or regulatory requirements that have been issued but not yet adopted as of September 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, are either not applicable to us or are not expected to have any material impact upon adoption.</span></p> <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reclassifications</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain prior year amounts have been reclassified to conform to the current year presentation. There was no impact on our financial condition or results of operations as a result of the reclassification.</span></p> <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3. Equity method investment</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On February 9, 2023, we entered into a limited liability company agreement (the "LLC Agreement") with Taihua New Energy (Thailand) Co., LTD ("Taihua"), a steel fabricator and an existing vendor, and DAYV LLC, for the creation of Alpha Steel LLC ("Alpha Steel"), a Delaware limited liability company dedicated to producing steel components, including torque tubes, for utility-scale solar projects. The Alpha Steel facility, which is located outside of Houston in Sealy, Texas, began commercial production late in the fourth quarter of 2023.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We entered into amendment no. 1 to the Alpha Steel LLC Agreement with Taihua and DAYV LLC on July 28, 2023, to allow for members at their option, and with the approval of the Board of Managers, to make payments in respect of Alpha Steel’s contractual obligations in the event that Alpha Steel does not or is not able to make such payments from its own resources (“Credit Support Payments”). Any such Credit Support Payments will be treated as capital contributions by the members to Alpha Steel, with any member funding more than its ratable share of Credit Support Payments being deemed to have loaned such excess to each underfunding member at the U.S. prime rate plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Alpha Steel is intended to enhance our domestic supply chain, our ability to support our customers and the growth of the U.S. solar market, with domestic manufacturing utilizing U.S. steel. We have a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">45</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% interest in Alpha Steel, which is accounted for under the equity method of accounting. Taihua has a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">51</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% interest in Alpha Steel and DAYV LLC, an entity owned by members of the Board of Managers of Alpha Steel and a related party with the parent company of Taihua, has a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% interest in Alpha Steel. The Chief Executive Officer of Taihua is the General Manager of Alpha Steel. We have equal voting representation with Taihua and DAYV LLC, combined, on Alpha Steel's Board of Managers which is responsible, through majority vote, for making certain "major decisions" involving Alpha Steel, as specified in the LLC Agreement, including, among other things, approval of an annual business plan.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2023, we made a required initial capital contribution of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million to Alpha Steel. For the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2024, we also made required additional capital contributions totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Pursuant to the LLC Agreement, we could be required to make up to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in future additional capital contributions as Alpha Steel continues to expand production. For the three and nine months ended September 30, 2024, we recognized losses of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, which represent our share of the net operating losses incurred by Alpha Steel during each period. Our share of Alpha Steel losses recognized during the three and nine months ended September 30, 2023 totaled </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in each period.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the creation of Alpha Steel, we also entered into a three-year equipment supply agreement (the "Supply Agreement") with Alpha Steel, the terms of which will apply to our equipment purchase orders. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pursuant to the Supply Agreement, we have committed to placing a minimum level of purchase orders for torque tubes with Alpha Steel during the period from January 1, 2024 to June 30, 2025, with such volume commitments increasing in each of the next two annual periods.</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> In the event we fail to meet our minimum required purchase commitments in any period, we may be required to make a cash payment for the net profit attributable to any unfilled requirements, calculated as specified in the agreement, in an amount not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in the aggregate. As of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2024, we had met approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">11</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of our required purchase commitments for the period ending June 30, 2025. The Supply Agreement may be terminated early in accordance with its provisions or may be extended beyond the initial term if mutually agreed to by the parties.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2024, in addition to our requirement to meet the remaining minimum purchase obligations for the remainder of the year, as described above, we were contingently liable for unpaid vendor obligations, including issued but unsatisfied purchase orders, of Alpha Steel totaling approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. We expect Alpha Steel will be able to satisfy these obligations with financial resources available to them in the normal course of operations.</span></p> 0.02 0.45 0.51 0.04 900000 1800000 800000 300000 800000 300000 300000 Pursuant to the Supply Agreement, we have committed to placing a minimum level of purchase orders for torque tubes with Alpha Steel during the period from January 1, 2024 to June 30, 2025, with such volume commitments increasing in each of the next two annual periods. 4000000 0.11 1000000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4. ATM program</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On September 14, 2022, we filed a prospectus supplement and entered into an equity distribution agreement (as amended, the "EDA") under which we may from time to time, in one or more transactions, offer and sell newly issued shares of our common stock having an aggregate offering price of up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in "at the money" offerings (the "ATM program"). We have and may continue to use the net proceeds from this offering for general corporate purposes, including working capital and operating expenses. We may also use a portion of such proceeds to acquire or invest in businesses, products, services or technologies.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Barclays Capital Inc. ("Barclays") is our sales agent under the EDA. The offering of our common stock under the EDA will terminate upon the earlier of (1) the sale of all common stock subject to the EDA or (2) the termination of the EDA by us or by Barclays as permitted therein. The EDA contains customary representations, covenants and indemnification provisions.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We sold </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of newly issued common stock under the ATM program during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three and nine months ended September 30, 2024, however, during the three and nine months ended September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, we sold </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6,149,885</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15,421,885</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of newly issued common stock valued at </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">35.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, for proceeds, net of commissions and fees, of approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">34.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. As of September 30, 2024, approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">64.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of capacity remained for future sales of our common stock under the ATM program.</span></p> 100000000 0 0 6149885 15421885 10700000 35100000 10400000 34000000 64900000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5. Accounts receivable, net</span></p><div style="font-size:11pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Trade receivables</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">20,482</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">46,152</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Related party receivables</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,075</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">868</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue recognized in excess of billings</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,757</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,813</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other receivables</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">38,320</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">73,836</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Allowance for credit losses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">975</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,557</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts receivable, net</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">37,345</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">65,279</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On April 3, 2024, we entered into a First Amendment ("the Amendment") to Master Project Supply Agreements dated October 11, 2021 with a customer and major solar project developer that owed us approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">30.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for project equipment we had previously completed and made available to the customer pursuant to the Master Project Supply Agreements. The Amendment was executed in consideration of and concurrent with the sale of the uncompleted projects by our customer, including the amended Master Project Supply Agreements, to a new third-party developer (the "Purchaser") who assumed certain obligations to us under the amended Master Project Supply Agreements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pursuant to the Amendment, we received a cash payment of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">9.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> from the Purchaser to acquire completed foundation piles, which are being stored at the request of the Purchaser for final delivery to the project sites, currently expected during the fourth quarter of 2024. The remaining completed project equipment, with an estimated fair value of approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, was retained by us and returned to our inventory in exchange for forgiveness of the associated outstanding receivable balance owed by our customer. The fully reserved remaining unpaid receivable balance totaling approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> was written off against our allowance for credit losses.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information about our related party receivables at September 30, 2024, may be found below in Note 16, "Related party transactions".</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> receivables for amounts billed under retainage provisi</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ons at September 30, 2024 (</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at December 31, 2023).</span></p><div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity in the allowance for credit losses during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three and nine months ended September 30, 2024 and 2023 was as follows:</span></p></div><div style="font-size:11pt;font-family:'Calibri',sans-serif;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:48.539%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">232</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,387</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,557</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,184</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Impact of adoption of ASU 2016-13, effective January 1, 2023</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">N/A</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">N/A</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">N/A</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Amounts charged (credited) to earnings during the period</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">743</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,099</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,330</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,302</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Write-offs of accounts</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,912</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">975</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,486</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">975</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,486</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Trade receivables</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">20,482</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">46,152</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Related party receivables</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,075</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">868</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue recognized in excess of billings</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,757</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,813</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other receivables</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">38,320</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">73,836</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Allowance for credit losses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">975</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,557</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts receivable, net</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">37,345</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">65,279</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 20482000 46152000 3075000 868000 14757000 26813000 6000 3000 38320000 73836000 975000 8557000 37345000 65279000 30800000 9000000 13200000 8900000 0 900000 <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity in the allowance for credit losses during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three and nine months ended September 30, 2024 and 2023 was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:48.539%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.261%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.604000000000001%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">232</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,387</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,557</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,184</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Impact of adoption of ASU 2016-13, effective January 1, 2023</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">N/A</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">N/A</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">N/A</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Amounts charged (credited) to earnings during the period</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">743</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,099</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,330</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,302</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Write-offs of accounts</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,912</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">975</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,486</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">975</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,486</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="text-indent:10pt;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> </table> 232000 1387000 8557000 1184000 0 743000 4099000 1330000 4302000 0 0 8912000 0 975000 5486000 975000 5486000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6. Inventories</span></p><div style="font-size:11pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Finished goods</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,639</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,246</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Allowance for slow-moving and obsolete inventory</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">515</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">341</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,124</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,905</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The increase in our finished goods inventory is primarily related to completed project equipment retained by us pursuant to the agreement reached with a major customer described further in Note 5, "Accounts receivable, net</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">" above.</span></p> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Finished goods</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,639</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,246</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Allowance for slow-moving and obsolete inventory</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">515</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">341</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,124</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,905</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 15639000 4246000 515000 341000 15124000 3905000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7. Prepaid and other current assets</span></p><div style="font-size:11pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prepaid and other current assets consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vendor deposits</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,462</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,667</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vendor deposits with related party</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,528</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">520</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid expenses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">862</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,251</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid taxes</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">555</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">447</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,934</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">666</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Surety collateral</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other current assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,128</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,538</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:11pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:7pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:7pt;text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,502</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,089</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2024, other current assets included </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for a non-interest-bearing customer advance related to pre-project construction financing activities. This advance is secured by certain customer assets.</span></p> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prepaid and other current assets consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vendor deposits</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,462</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,667</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vendor deposits with related party</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,528</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">520</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid expenses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">862</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,251</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid taxes</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">555</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">447</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,934</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">666</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Surety collateral</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other current assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,128</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,538</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:11pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:7pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:7pt;text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,502</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,089</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 6462000 5667000 1528000 520000 862000 1251000 555000 447000 1934000 666000 33000 0 4128000 5538000 15502000 14089000 2000000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8. Leases</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We lease office and warehouse space in various locations, including our corporate headquarters in Austin, Texas. Additionally, we lease space for an applications laboratory in Austin, Texas and a research and development facility in Seguin, Texas. All of our manufacturing is outsourced to contract manufacturing partners, and we currently do not own or lease any manufacturing facilities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our expense for our operating leases consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:53.671%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">252</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">251</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">861</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">748</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">132</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">304</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">334</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">352</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">383</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,165</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,082</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Reported in:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">186</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">245</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">681</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">710</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Research and development</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">71</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Selling and marketing</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">101</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">62</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">109</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">312</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">270</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">352</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">383</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,165</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,082</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future remaining operating lease payment obligations were as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:84.6%;box-sizing:content-box;"></td> <td style="width:1.52%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.88%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30,<br/>2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Remainder of 2024</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">233</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">884</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">313</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">291</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2028</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">124</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2029</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease payments</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,878</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Less: imputed interest</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">123</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of operating lease liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,755</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="text-indent:5pt;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current portion of operating lease liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">872</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating lease liability, net of current portion</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">883</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of operating lease liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,755</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our expense for our operating leases consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:53.671%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">252</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">251</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">861</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">748</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">132</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">304</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">334</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">352</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">383</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,165</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,082</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Reported in:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">186</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">245</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">681</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">710</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Research and development</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">71</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Selling and marketing</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">101</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">62</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">109</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">312</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">270</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">352</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">383</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,165</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,082</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 252000 251000 861000 748000 100000 132000 304000 334000 352000 383000 1165000 1082000 186000 245000 681000 710000 43000 14000 71000 40000 14000 24000 101000 62000 109000 100000 312000 270000 352000 383000 1165000 1082000 <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future remaining operating lease payment obligations were as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:84.6%;box-sizing:content-box;"></td> <td style="width:1.52%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.88%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30,<br/>2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Remainder of 2024</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">233</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">884</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">313</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">291</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2028</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">124</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2029</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease payments</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,878</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Less: imputed interest</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">123</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of operating lease liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,755</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="text-indent:5pt;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current portion of operating lease liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">872</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating lease liability, net of current portion</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">883</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of operating lease liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,755</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 233000 884000 313000 291000 124000 33000 1878000 123000 1755000 872000 883000 1755000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9. Property and equipment, net</span></p><div style="font-size:11pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property and equipment consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Leasehold improvements</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">338</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">157</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Field equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,108</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,062</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Information technology equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">609</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">466</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Tooling</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,824</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,014</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capitalized software</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">968</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">734</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,847</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,433</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated depreciation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,438</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,610</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment, net</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,409</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,823</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation expense for the three months ended September 30, 2024 and 2023, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, and for the nine months ended September 30, 2024 and 2023, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span></p> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property and equipment consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Leasehold improvements</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">338</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">157</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Field equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,108</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,062</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Information technology equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">609</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">466</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Tooling</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,824</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,014</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capitalized software</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">968</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">734</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,847</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,433</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated depreciation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,438</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,610</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment, net</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,409</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,823</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 338000 157000 1108000 1062000 609000 466000 1824000 1014000 968000 734000 4847000 3433000 2438000 1610000 2409000 1823000 300000 200000 800000 600000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10. Intangible assets, net and goodwill</span></p><div style="font-size:11pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:48.499%;box-sizing:content-box;"></td> <td style="width:1.461%;box-sizing:content-box;"></td> <td style="width:20.268%;box-sizing:content-box;"></td> <td style="width:1.461%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.425%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.461%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.425%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Estimated Useful Lives (Years)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Developed technology</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2.5 </span></span><span style="color:#000000;white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;">–</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span><span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3.0</span></span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,568</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,555</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,568</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,555</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated amortization</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,431</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,013</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets, net</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">542</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization expense for the three months ended September 30, 2024 and 2023, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, and for the nine months ended September 30, 2024 and 2023, totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2024 and 2023, activity in our goodwill balance was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:55.331%;box-sizing:content-box;"></td> <td style="width:1.46%;box-sizing:content-box;"></td> <td style="width:13.443%;box-sizing:content-box;"></td> <td style="width:1.46%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.422%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.46%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.422%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,353</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,538</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Translation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">68</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">395</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,421</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,143</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:48.499%;box-sizing:content-box;"></td> <td style="width:1.461%;box-sizing:content-box;"></td> <td style="width:20.268%;box-sizing:content-box;"></td> <td style="width:1.461%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.425%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.461%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.425%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Estimated Useful Lives (Years)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Developed technology</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2.5 </span></span><span style="color:#000000;white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;">–</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span><span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3.0</span></span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,568</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,555</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,568</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,555</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated amortization</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,431</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,013</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets, net</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">542</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> P2Y6M P3Y 2568000 2555000 2568000 2555000 2431000 2013000 137000 542000 100000 100000 400000 400000 <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2024 and 2023, activity in our goodwill balance was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:55.331%;box-sizing:content-box;"></td> <td style="width:1.46%;box-sizing:content-box;"></td> <td style="width:13.443%;box-sizing:content-box;"></td> <td style="width:1.46%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.422%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.46%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.422%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,353</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,538</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Translation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">68</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">395</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,421</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,143</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 7353000 7538000 68000 -395000 7421000 7143000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11. Debt</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Credit Facility, entered into in 2021 with various lenders, including Barclays Bank PLC, as issuing lender, the swingline lender and as administrative agent, expired unused on April 30, 2024. The Credit Facility has not currently been replaced.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest expense for the three months ended September 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">t significant and for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three months ended September 30, 2023 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. For the nine months ended September 30, 2024 and 2023, interest expense totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. Our interest expense primarily consisted of commitment and letter of credit fees, as well as amortization of costs relating to the initial establishment of the Credit Facility.</span></p> 0 400000 400000 1000000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12. Accrued expenses and other current liabilities</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued expenses and other current liabilities consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,523</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,773</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Related party accrued cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,215</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,451</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued compensation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,695</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,858</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other accrued expenses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,532</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,766</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total accrued expenses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23,965</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,848</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Warranty reserves</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,279</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current portion of operating lease </span><span><span style="-sec-ix-hidden:F_374b83f6-2bbc-43a8-aca0-f715c50b10ff;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">liability</span></span></span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">872</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">740</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Non-federal tax obligations</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">119</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total other current liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,862</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,138</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information relating to our related party accrued cost of revenue at September 30, 2024 and December 31, 2023 may be found below in Note 16, "Related party transactions".</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other accrued expenses primarily include amounts due for (i) legal costs associated with outstanding corporate or legal matters and (ii) other professional services.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity by period in the Company's warranty accruals was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:53.671%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,415</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,081</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,002</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,426</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Warranties issued and remediation added during the period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,096</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,086</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,735</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,938</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Settlements made during the period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">839</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">847</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,131</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,184</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Changes in liability for pre-existing warranties</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">934</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">363</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,868</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,223</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Warranty accruals are reported in:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other current liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other non-current liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,789</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,219</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,789</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,219</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued expenses and other current liabilities consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.48%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:11.6%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">September 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,523</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,773</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Related party accrued cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,215</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,451</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued compensation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,695</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,858</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other accrued expenses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,532</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,766</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total accrued expenses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23,965</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,848</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Warranty reserves</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,279</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current portion of operating lease </span><span><span style="-sec-ix-hidden:F_374b83f6-2bbc-43a8-aca0-f715c50b10ff;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">liability</span></span></span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">872</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">740</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Non-federal tax obligations</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">119</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total other current liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,862</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="border-top:0.5pt solid #000000;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="border-top:0.5pt solid #000000;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,138</span></p></td> <td style="border-top:0.5pt solid #ffffff03;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 15523000 26773000 1215000 1451000 3695000 3858000 3532000 2766000 23965000 34848000 8949000 7279000 872000 740000 41000 119000 9862000 8138000 <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity by period in the Company's warranty accruals was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:53.671%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,415</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,081</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,002</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,426</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Warranties issued and remediation added during the period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,096</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,086</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,735</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,938</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Settlements made during the period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">839</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">847</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,131</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,184</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Changes in liability for pre-existing warranties</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">934</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">363</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,868</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,223</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Warranty accruals are reported in:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other current liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other non-current liabilities</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,789</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,219</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,789</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,219</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,738</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,957</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> </table> 10415000 12081000 11002000 12426000 3096000 1086000 4735000 3938000 839000 847000 2131000 3184000 -934000 -363000 -1868000 -1223000 11738000 11957000 11738000 11957000 8949000 7738000 8949000 7738000 2789000 4219000 2789000 4219000 11738000 11957000 11738000 11957000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13. </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three months ended September 30, 2024 and 2023, we recorded income tax expense of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.24</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.17</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> respectively, and for the nine months ended September 30, 2024 and 2023, we recorded income tax expense of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.30</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.18</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. These amounts for each period were lower than the statutory rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">21</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%, primarily due to a valuation allowance established against the U.S. deferred tax assets.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> material change in our unrecognized tax benefits since </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023. We recognize accrued interest and penalties related to unrecognized tax benefits as a component of income tax expense. As of September 30, 2024 and December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> accrued interest or penalties related to unrecognized tax benefits.</span></p> 240000 170000 300000 180000 0.21 0 0 0 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14. </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Commitments and contingencies</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may become involved in various claims, lawsuits, investigations, and other proceedings, arising in the normal course of business. We accrue a liability when information available prior to the issuance of our financial statements indicates it is probable a loss has been incurred as of the date of the financial statements and the amount of loss can be reasonably estimated. If the reasonable estimate of the probable loss is a range, we record an accrual for the most likely estimate of the loss, or the low end of the range if there is no one best estimate. We adjust our accruals to reflect the impact of negotiation, settlements, rulings, advice of legal counsel and other information and events pertaining to a particular case. Legal costs are expensed as incurred.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In March of 2023, CBP issued notices of tariff assessment that indicated an action taken at the Import Specialist (i.e., the port) level with respect to merchandise imported from Thailand under entry number 004-1058562-5 (the “625 Assessment”) and entry number 004-1063793-9 (the “Original 939 Assessment”, and collectively with the 625 Assessment, the “Original CBP Assessments”). The Original CBP Assessments related to certain torque beams that are used in our Voyager+ product that were imported in 2022. In the Original CBP Assessments, CBP asserted that Section 301 China tariffs, Section 232 steel and aluminum tariffs, and antidumping and countervailing duties applied to the merchandise. Based on correspondence received to date from CBP and our calculations based on applicable duty and tariff rates, the 625 Assessment is currently for approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.84</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. In September of 2023, CBP informed us (the "Revised 939 Assessment", and together with the 625 Assessment, the "Revised CBP Assessments") that the amount owed under the Original 939 Assessment was being revised downward to approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.01</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In particular, CBP accepted our position that the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, previously assessed under the Original 939 Assessment are not applicable as they are only applicable to articles that originate in China</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and that, in this case, the finished goods are products of Thailand.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Upon review of the facts involved, and in consultation with outside legal counsel, we believe that the remaining amounts claimed in the Revised CBP Assessments are incorrect. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In particular, the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, are not applicable under the 625 Assessment for the same reason stated above with respect to the Revised 939 Assessment, which has been accepted by CBP</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Moreover, with respect to both Revised</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CBP </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assessments, we believe that the goods in question were properly classified as parts of structures at the time of importation and that when properly classified, the beams and other materials are not subject to Section 232 duties applicable to more basic steel products.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CBP has legally finalized both Revised CBP Assessments. We filed a formal protest for the 625 Assessment in September of 2023 and for the Revised 939 Assessment in March of 2024. Based on the above, and under the relevant accounting guidance related to loss contingencies, we have made no accrual for the amounts claimed by CBP as of September 30, 2024, as we do not consider these amounts to be a probable obligation, as such term is defined and interpreted under the relevant accounting guidance, for us at this time. However, because matters of this nature are subject to inherent uncertainties, and unfavorable rulings or developments, including future assessments of additional duties or tariffs owed in respect of other shipments or other materials beyond what is presently included in the Revised CBP Assessments, could occur despite our belief that the tariffs and duties asserted are incorrect, there can be no certainty that the Company may not ultimately incur charges that are not currently recorded as liabilities. Since the outcome of these matters cannot be predicted with certainty, the costs associated with them could have a material adverse effect on our consolidated results of operations, financial position, or liquidity.</span></p> 2840000 2010000.00 In particular, CBP accepted our position that the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, previously assessed under the Original 939 Assessment are not applicable as they are only applicable to articles that originate in China In particular, the Section 301 tariffs of 25% or 7.5% of the value of the merchandise, depending on tariff classification, as well as the antidumping and countervailing duties, are not applicable under the 625 Assessment for the same reason stated above with respect to the Revised 939 Assessment, which has been accepted by CBP <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15. Stock-based compensation</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation expense for each period was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:53.671%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">243</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">181</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">699</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,313</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Research and development</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">93</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">85</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">267</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">449</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Selling and marketing</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">108</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">166</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">266</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">821</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">875</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">760</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,011</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,461</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total stock compensation expense</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,319</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,192</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,243</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,044</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation expense for each period was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:53.671%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.14%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:8.442%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cost of revenue</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">243</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">181</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">699</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,313</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Research and development</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">93</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">85</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">267</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">449</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Selling and marketing</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">108</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">166</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">266</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">821</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">875</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">760</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,011</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,461</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total stock compensation expense</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,319</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,192</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,243</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,044</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 243000 181000 699000 1313000 93000 85000 267000 449000 108000 166000 266000 821000 875000 760000 3011000 6461000 1319000 1192000 4243000 9044000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16. Related party transactions</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Transaction with Ayna.AI LLC</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In February 2022, we engaged Ayna.AI LLC (as successor in interest to Fernweh Engaged Operator Company LLC) (“Ayna”) to support us with improvements to our processes and performance in various areas including design, sourcing, logistics, pricing, software and standard configuration. The foregoing engagement constituted a related party transaction as South Lake One LLC, an entity affiliated with Isidoro Quiroga Cortés, a member of our board of directors at the time of the engagement, and a holder at that time of more than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of our outstanding capital stock, was an investor in Ayna. In addition, Discrimen LLC was an investor in Ayna, and Isidoro Quiroga Cortés was affiliated with that entity. Isidoro Quiroga Cortés was also on the board of directors of Ayna at the time of the engagement. On Septemb</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">er 13, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023, we executed a termination of the master services agreement and statement of work (collectively, the "Service Agreement") with Ayna and Fernweh Group LLC, the parent company of Fernweh Engaged Operator Company LLC, which resulted in the forfeiture of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> unvested stock options and a corresponding reversal of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of stock-based compensation expense previously recognized at the date of termination. We also had an unamortized prepaid balance associated with this engagement, totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, that was fully amortized as a charge to general and administrative expense during the three months ended September 30, 2023.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2023, we incurred </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, of general and administrative expense, including expense, net of forfeitures, relating to stock-based compensation awards, and made cash payments of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, associated with our engagement of Ayna.</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Related party receivables and payables</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have related party receivables at September 30, 2024 and December 31, 2023, totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, for future material cost discounts contractually owed to us by Alpha Steel in connection with the expected receipt of manufacturing incentives available to Alpha Steel under the Inflation Reduction Act, as costs are incurred by Alpha Steel to purchase raw materials and manufacture torque tubes and other products that will be used to fulfill purchase orders we issue to Alpha Steel.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We also have related party liabilities to Alpha Steel at September 30, 2024 and December 31, 2023, totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, for the accrued cost of revenue recognized on certain of our customer projects associated with the cost of products that are being manufactured for us by Alpha Steel.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the three and nine months ended September 30, 2024, we made vendor deposits of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, to Alpha Steel and received invoices from Alpha Steel for purchases totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. Our balances of remaining vendor deposits with Alpha Steel as of September 30, 2024 and December 31, 2023 are shown in Note 7, "Prepaids and other current assets" above as "Vendor deposits with related party". After payments and application of vendor deposits to invoices received, we owe </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to Alpha Steel, which is included in our accounts payable balance at September 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> (</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ne at </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">) in our condensed consolidated balance sheets.</span></p> 0.05 2000000 1100000 3200000 2100000 3500000 800000 2500000 3100000 900000 1200000 1500000 100000 2800000 700000 6200000 1000000 0 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17. Net loss per share</span></p><div style="font-size:10pt;font-family:Times New Roman;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:48.96%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss (in thousands)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,359</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,937</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,371</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">39,113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Weighted average shares outstanding for calculating basic and diluted loss per share</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">127,380,292</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">119,793,821</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">126,234,997</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">112,794,562</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic and diluted loss per share</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.14</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.29</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.35</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> </table></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For purposes of computing diluted loss per share, weighted average common shares outstanding do not include potentially dilutive securities that are anti-dilutive, as shown below.</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.02%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:12.06%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.02%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:12.06%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">For the three and nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Anti-dilutive securities excluded from calculating dilutive loss per share:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shares of common stock issuable under stock option plans outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,278,938</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,048,139</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shares of common stock issuable upon vesting of RSUs</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,888,874</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,982,821</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Potential common shares excluded from diluted net loss per share calculation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,167,812</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,030,960</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:48.96%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.18%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:9.58%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss (in thousands)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,359</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,937</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,371</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">39,113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Weighted average shares outstanding for calculating basic and diluted loss per share</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">127,380,292</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">119,793,821</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">126,234,997</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">112,794,562</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic and diluted loss per share</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.14</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.29</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.35</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> </table> -15359000 -16937000 -36371000 -39113000 127380292 127380292 119793821 119793821 126234997 126234997 112794562 112794562 -0.12 -0.12 -0.14 -0.14 -0.29 -0.29 -0.35 -0.35 <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For purposes of computing diluted loss per share, weighted average common shares outstanding do not include potentially dilutive securities that are anti-dilutive, as shown below.</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:69.84%;box-sizing:content-box;"></td> <td style="width:1.02%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:12.06%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:1.02%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> <td style="width:12.06%;box-sizing:content-box;"></td> <td style="width:1%;box-sizing:content-box;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">For the three and nine months ended September 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Anti-dilutive securities excluded from calculating dilutive loss per share:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shares of common stock issuable under stock option plans outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,278,938</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,048,139</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shares of common stock issuable upon vesting of RSUs</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,888,874</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,982,821</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Potential common shares excluded from diluted net loss per share calculation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,167,812</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,030,960</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 2278938 2278938 3048139 3048139 16888874 16888874 7982821 7982821 19167812 19167812 11030960 11030960 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18. Subsequent events</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On November 8, 2024, we entered into a binding term sheet with an institutional investor (the “Investor”) to issue to the Investor, in a private placement, senior secured promissory notes (the “Notes”) in an aggregate principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and common stock purchase warrants (the “Warrants”) to purchase </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">17,500,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of our common stock.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Notes will bear interest at a rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">11</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum if payable in cash or, at our options, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum if paid-in-kind and will mature five (</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">) years from the date of issuance. The Notes will be secured by a first priority lien on substantially all of our assets and will be guaranteed by all of our direct and indirect subsidiaries. The Notes will contain customary covenants for a transaction of this nature, including financial covenants and restrictive covenants. If we prepay the Notes in full within a specified period of time after issuance, we will be required to pay a make-whole payment to the Investor representing a portion of the undiscounted interest payments that otherwise would have been payable to the Investor, the calculation for which will be specified in the definitive documents.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Warrants are immediately exercisable at an exercise price of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.01</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share, subject to certain customary adjustments to be set forth in the definitive documentation, and will expire ten (</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">) years from the date of issuance. At the option of the Investor, the Warrants will also be exercisable on a cashless basis using a customary cashless exercise formula.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have also agreed that the Investor shall be entitled to nominate one (1) person for election to our board of directors at our annual stockholder meeting. We have also agreed to reimburse the Investor for expenses incurred in connection with the transaction in an amount equal to three percent (</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%) of the principal amount of the Notes.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The issuance of the Notes and Warrants will be subject to customary closing conditions and the preparation and negotiation of definitive documents. We currently expect that the issuance of the Notes and Warrants will occur on or prior to November 30, 2024.</span></p> 15000000 17500000 0.11 0.13 P5Y 0.01 P10Y 0.03 false false false false

GGN8 M/!V-/*9N]W'C^O]/RS__G F<%GL\WCS->S-;M>686,XN9]>W,ROGR]>5Y MMSE\0Z?%^HR65\1:O&Y?=T;SU>P-;9XY7ZS8_V.>,<_VP+-"=99G[! RG9A. MNY1%+];7ON#J1N.2_[5YAC9M2YA9ARE/R>T>U/R)\I0[.AE\Q4E][>[TM?+D M4S?T+WB.\TP3W/31^9[R=>L,N6F=H?CDRL^-^+-G\#W$>/HT/O@P2KK 0CL3NNUQ)$HT)V1GBA MM@^:W*2D7UZN5VN<=XWA/CIG\JKLZ^8!D\]?_/CQ"9.;5B[P&RT7'=A!2?7D M<*=+LF6?3#_6D\'W^.?ICD3"$'40A1+$% 08;1!"30H$!BPYH2ABZYSQG21L M3V?ELI*QDC&^+& ?!*P(:V/PJKE?U'PP6PTDCPED^[=(P19)YK: >7)94"Y@ MBVC.FW41 J4*WEBML(14G-F[#[9URK<4=BJTFMIPP*.^V<19PM@9.Q$M4!!",K[X2 JEJ7N1,DZ,L9*Q MDK&2'$KJBB0$83P9CD(3BO M036%$S90#DD>+:K4TDZUL2QG+&>G@^]8Y>R;#NB[AN 3-^>[]S?GJ'+9PE>= MHLU VC:YM.0@9._!9:%T*5G)XF[+I0NE%BDCN.0S&%DMI.@2)"N\B19C=&Z? M:MQ=@FKL9H[0!-T&"T4! H:A#5>B1OR*D'T$YEPC0,S><\OH!R56]? M4!V>6AY::"8QKT7,L M3=PL:8W"2I1!'2UP=FYJK!B6ACUT9]+MK1^;"^Y.YYZO'WCG+Z_='"DWPW[@L7]QQR[-.K\8[MOS5/;CQ83F&X3X9N)G.P\:7Z3PJN)G. M7-AVK\163JX4:T!)7\!XJI"JMR"RU3Y+1P7+[5 P(1J,-H+&U#YC!$(*PH#T MP25EE#2YWAD*/M\XT=]O?.B?-N[SE7?]\P?'>?.VIYW;_-?E8K6Z?_7;U,0P MC<&//59DE6-\^XLO.RVC@IOI/&Q\FW5>*<$9 MJ1484=L?5Q,$L@C158O!R63#UNIRT#5:JPL4'2H8[=MG9,WMTZGZXHO""FTN,!@3F M2"(.18:T=@Z,%1%,50J2+P84N5A,O:'#H9N=<\=J^IS/P36_T16V<>?UZ,;\N9[V\: _I+2WS;+5Y M]>KIQ45GBESF.G3RL?_(<)\,W$SG8>/+=!X5W$QGCA#OU2K(H8KH#12?/9B, M%3#:"L)&RM:E(!(=O,QU\^++*V_YAVLWNMR[Q%4Y.Y5J]*$AZQOCVU]\V5T9 M%=Q,YV'CRW0>%=Q,YV'CRW0>%=Q,9TXFW">9D%+%7*H%)XT#@U) $%F"#5(D M[4E%$PY=X/KE7,+N2\UV8.TU>V?_K&^,+[LK##?3F?%E.G-E*W.70XV[0PVC M*AFM5+<&*<"$2!!,2F"2PQA"HFSDH2M;.=3H54DK-W&];Q/7KF7K.;W"\\F* MUNMS>MW>Q//,P'G&/B+#?3)P,YV'C2_3>51P,YTY"KQ71Q57,9%I4:!0 4S, M J)S!@HJFV2J)-/6_L9OJ5ZMZSR[/GK\*@;\<;'\6^<@__+!/[YWF:J/?JHC M'T+.0L;X]A9?]DM&!3?3>=CX,IU'!3?3>=CX,IU'!3?3F;,&]\D:%*.L09O! M6)W 4! 0HS>0BM?9D%)5;)]9_ UEJE^1-7CZ>KVW]D?MKG#R@/6,\>TKONR> MC INIO.P\64Z!*U525(4$H0F*15B]M2!%,JY6*L2/;P#5/;_=F\M+I_D]2I"YKC/%8UQK?/ M^+*3,BJXF<[#QI?I/"JXF<[#QI?I/"JXF::U*$SBYU!AOMDX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#QM? MIO.HX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#WJI]"O8O'7G/W&'OGM_SYM/SC_X2S M\GS^#"]F:SR_L5S;_<5YIF?=XM:>5FCUP)9G/[:%3\'^)]94UM33PI==I%'! MS70>-KY,9ZX$9>YR>/,0X8V/.B>A$F1G6H!2HP,T*8/'4D5[*AF]U0YGETI3 M#F_Z%-YP4]1CE:%"PA651J#7%S1?86=U/*.=%,UZ-Z.Q-\IP9;-IU_]G;\I/$#6W+M'6-8$1E?=G 8;J8SX\MTYD)2YBX' M)Y\H]*S""*L*&*5T"TYBAD!&@*AHLK'H*.#1"CTY..D%8[@;Z1'*0%_0>G*^ M6'$'TJ&SB7U'AOMDX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#QM? MIO.HX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#QM?IO.HX&8Z#[KNZ>0;Z FL:!$U MA%HD*&B7ZA+8HI?=1=LKR>#QYY.ZA1R@;?;D^H^6F;^B2SFB^FKTA M+B.]'\U2,S=:?KC4;IR3U>)\5B;O$1KTC/;EX?W95"R_TL(VF M)R;!LL&RP;)Q.D;3$Y-@V6#98-DX':/IB4FP;+!LL&RF 3+Q@!D@XN./EMT%-!(%8N$ MG*( $TR$*&, *9&TMU(XF6\7':6,UF7OP&KEP/CJ(19*4$/56'2VJ>#MHJ-- MC<:SFR4:O]<@O:#UR_HKOMUW+9(]7!E27R7Z^)6SB#44_N"\P:T2_ M-8+]N<\7D:M$RI4,3C@/QE@-T317310MI),FA[SES^U21,[^7-_]N4-W+-ZE MU/P$BLG_@N;5FS/(\Q<_?CQSU-E;*O ;+1@7#'DE&.&[+ I5U(&4HH$/GF9HRG.>[L7Y5HO\C_/%N?-EUS]\*_+ MV?K=;F=PL("Q@#&^+&"_M\X@77*U AP5 N.B \P"(34MLPK;-^MP6\",$[EF MD\%&G\!4;.Y:TA$D)8LY9Q7DUC+-O5VO.S:$BZGR?BJB8PEC"6-\QRIAP19; MB@K0@L4*)J""%'P&4;WJ5IN%IZWV%CM)V)Y\L#N4C 6,!8SQ':N D;@CJ"#R:Z MICQ3Z]@%8P5C?$>K8(F*(>\(%#6?RA27(5E1( LA70@J:;&5!MM)P3@-=J(& MS@(V;'Q/7,"4=5':[+KR9 -&:=?$R!CPU;N4A/=:EML"UI7#H'("K)/-;6LJ M C'6IF(BR"S:)[+T1XLAM0K3*#2K&*L8X]M3%3OY&D";9;*F!:I66]TI7H24 MF^Q)+%;4DDR)6S6 1=B(P@9 5[&YAAX!47L(4EHE;?%QORKY=15_0PM8>7L& M2R9+9@\E4TA5"6(KR.CN(,F@PTD= M;2JHX(12U1N5Y>U0T.OVO(X*BL+2PD=JT43('DJ,22IAK=);;0 VH>#SC1/] M_<:'_FGC/E]YUS]_<)PW;WO:N?UZ,;\N9[V\: _I+2WS;+5Y]>KIQ45GBESF.G3RL?_(<)\,W$SG M8>/+=!X5W$QGCA#OM2;EC$!T";0U%DS)!!BR:N&5R-:64IS;:HN]]S+7S8LO MK[SE'Z[=Z'+O$E<=6V3(]:TL;XQO;_%E;V54<#.=AXTOTWE4<#.=AXTOTWE4 M<#.=AXTOTWE4<#.=AXTOTWE4<#.=AXTOTYGK.)F[S-U1P,T=.H]0K_@+GE]5 M(VX63UE"!\XIEE"&^V3@_O_9>]?G-FYL7_3S^2]8OGO7<:H([T8#W0"2.K=* M<9(YGIO$/G9FS[V?4GA*/4.Q-=VD;,U??[& [F93E/R02(D/?)B,S%<#6*_? M6EB/),['3=\DSB=%[B3.*0WQ,6F(19$+5TJ*B&8.4<49$IFCB&+_;\=Y7A8; MA6I;3T/TYQ/>>GQWS7):<#'U9Y.R#Y-62_0]5:U&R])X)<21858C*@N.1*XE MLB51W"G-F=JE5@OEMW7VY[\<)FDTA)]]Y>^R>\Z*7(G<3YN^B9Q/BER M)W%.#L=C' Z><2M%)E&F98DHIA)QXDKDB*0$*R%*QG;=873K#@>;$IK*.)-> M2_3=6_HFF')2Y$[B?-ST3>*<4E&3["87XRX7PQ&:,9%9Q&7NW05JO;L@7(%< M4:B"484IVV@8L^V6HCMQ,?BINQBIA^A3Y.3&SJ#.6>!I+R?M(F7F'KMD)328 MR'TPY$[B?-ST3>)\4N1.XGS<]$WB?%+D3N)\W/1-XGQ2Y$[B?-ST3>)\4N1. MXGS<]$WB?%+D3N)\U'>E7R'-&R=_SPF][ _G2>]BN1'*%H5">99K1 732)3, M(IQ9C)T2I>1N&^F>9^8?RW9QZ9?2_E&?&5/!&N3LG:S,F_EK>54MY&QT7]O/ MR7L-EUO;NJ+-CRP%=)T9[J/[=TFI)J5Z6/1-&.FDR)W$^;CIF\0YY8(FV4W^ MS7/X-\X:8PGEB&:\0+10&1+4$D2HI49);2B1V\@U3?[-7ODWJ3GL4R6B(B5; M:V"8_96=MQ*X+IFT@Q*SO3-I"8XF3(G<2Y^.F M;Q+GDR)W$N?CIF\2YY,B=Q+GXZ9O$N>3(G<2YZ.^K-WY92IA!3(G<2Y^.F;Q+GDR)W$N?C MIF\2YY,B=Q+GXZ9O$N>3(G<2Y^.F;Q+GDR)W$N?CIF\2YY,B=Q+GH\Y[.O@. M>H91Q4IG$%;4(EHPB3@O!2(9(8Y:5^ARHX->)G)G*<4H=Y@@FE.-N,#P1:&+ M@A6%(_1V7M7O=O%FKNM+^VO=?D-+O-:?O/_K2[WQLBG%]+C2H9Z^_7=*RTGJ M,:G'=?6HI2NU("5RI5.(.EDBR4R)3,:XI-):8K:2=IK4X].IQ]0]] G21M\N M+FP3^H8V]L+.V^K:IC32QXF9\NQFFV&IL,])6\\J,^DI=-06[L$12&TEM)+5Q.$RS)RR1U$92&TEM' [3[ E+)+61U$92 M&X?#-'O"$DEM)+61U,;A,,V>L$12&TEM)+5Q.$RS)RR1U$92&TEM' [3[ E+ M)+5Q!&HC)1U]-NDHP\21LB2(,<$0Q=P@Y0J-.";Y5%E18H8< MRTI$#<\19U8B5M@2"RULR8K;24@>DD:>$-W^([I==RU^2+KY 224_RAG(-$2">$8*DIEF"U<68@-XQ+:WK=OEXMV(>>FFI^O69(VO#LV M(6]^_V7==+CJDS7HW[:I1]#]F(J2]HZSC]B]3_0]?,W%F9!*8X:RTI0>XK(" M25.4R!8YSAR3A)/M:*Y%K?]Y4<\\E&Q__M>R6MP\; Q'4F!)@27Z)@6V4F!% MP;'6#F'F"/)./D&*$>S77^#"<JPE11V)QI@\I,>@RF-4%26HE(S@AA MN>)"Z*VHL"UAL$U-EB<%EA18HN^I*C!;4BJ=]QIU)A6B2I=($LV0H5(PKXG\ MWQMCZS%WI616(.O5G\=MWI/D>881Y410(Z@0Q48'LQU@L&S*RGQ:E&728$F# M)?J>J@;#(A.6$H&(\&K,JRUHI:BH=RHMLT5!,"GY5C18"H,=*(,G!7;<]#UP M!>9L6>8E%J@4BB":B0R),C21M=KA,L]<1FXK,,V)++')D8;^L123 DF-2\2( MI!E3+!.&/YD/28ILRAE+6BQIL43?/=5B!Y\$Z)CD-BL$8CP3B!9:(R5*@G*K M!<99Z0JK-B)M3F>9)AX+YH1YYY9H)(66**/&6I65I2O%-K7D5Z;\L=1--NG, M0R1TTIF'I3,EIEHHXQ5>47)$&:.("ZH0DZ5CRF64YW0C<;KD+,]MY@\QRQ$E MS"))I4:Y4KR0Q!F7XZ?7F3G#TRS'26^F!-U]I^J)*#6E4Y*[TCC,ME68;[G&9&2VM0Y91#_Q*6R!5 O"SA M'%#>6/9E[S,24 MB".#?-_.Y&ENP!.4><1;MDG5MDMK)F;95//SR>+"3JYL4]4&^'1R;=N%?]-_ M;M%4&OYL@?,G\J-L3)HP<.QR>-@>UQZ5.R=R)P<[T3>)^!NX(\ MEX7 BB&>05&_+37BEF9(LT+SLE#"VHUD-6(MRQ51J) B1U1E%$G,,E1*QC+_ M8TZ5=[N";P*(_BE@Z'#KE+_K?@3O7T*>Z=A-=7U[6\RXY M<7GE_[2?;*.K-KP;7ZZOX((T)2T>N_ E79O(?3#D3N)\W/1-XGQ2Y$[BG)(6 M'U6$RR0MB2V0S7.#J&(,2>A>D"G-L!7:E&ZC?FWK28OAS;<1+?_ M50'IBMSR/$.EP011X@A2I;!(Y=X/QUCB3&[,&V$ZP\ID&2H*:?QWR@(IIP4J M"\M*9UU98/.5P83_EK.E_7(LX1'C2%@:J)047*+OWM(WX963(G<2Y^.F;Q+G ME,*99#?Y&G?Y&H2)TA)9HK*D%%%)!.*&"E1HS)3*2IIE&_.E"UJ6BCB+C&$Y MHADE2#BE$!96.RD8+K!-OL;>"$!JROD$2:T?/&^&E-5PPYZ,RI'+5 *$B=P' M0^XDSL=-WR3.)T7N),[)Y7N,RY.E(*+8F/( MUM9S5?WYA+<>WU"SG&(JIIP7I^[G):V6Z+N_]$T@Y:3(G<3YN.F;Q/FDR)W$ M^;CIF\3YI,B=Q#F%$!X30F!%*02G!!FE84:'XXAS8A$W!='A=MXN4 ME7KLDI708"+WP9 [B?-QTS>)\TF1.XGS<=,WB?-)D3N)\W'3-XGS29$[B?-Q MTS>)\TF1.XGS<=,WB?-)D3N)\U'?E7Z%-&^<_#TG]+(_G">]BQ6.9\S*#*G" M,41%+I"TF4"..\5R4G)BZ#;2/<_,/Y;MXM(OI?VC/C.F@C7(V3M9F3?SU_*J M6LC9Z+ZV'R3X&BZWMG1%R^AQ7<^N\\)]9/\NZ=2D4P^+O@DBG12YDS@?-WV3 M.*=4T"2[R;UY#O>&R,*5G.<(YS9#M! $R9)0E!EC,T4T,W2C([-/ M[DUJB_H4::C0T&G2V*MEHR]D:R=R;OP_%U5C00Z283LH:=L[PY9 :2)W\C$3 M?9,X)W(G<=XW^B:W\[-N)W5":4,*Y%Q9(FI+CCAQ+D3ITXGR(%$JY?D8*;UXFN+Z_LO)5P%YJ4Z9%+5U*F MB=P'0^XDSL=-WR3.)T7N),['3=\DSB=%[B3.QTW?),XG1>XDSL=-WR3.)T7N M),['3=\DSB=%[B3.1UTWN/.Z/N($+KG1*%>4(YH9AT2><:099[*PTI;6/5FW M3"CA"W=/KT=73^_MOY95ZS?ZP3;7E;:Q O"]U?7Y//Q*F'ZXK:&'4RSRXRH$ MW#N)21HQT3F= MDX(Z)@J!N7VR7I?).=D+B4F=,)\@#?1WNYC,ZC8-83]V:4K8,9'[8,B=Q/FX MZ9O$^:3(G<3YN.F;Q/FDR)W$^;CIF\3YI,B=Q/FXZ9O$^:3(G<3YN.F;Q/FD MR)W$^;CIF\3YI,B=Q/FXZ9O$^:3(G<3YJ/.>#GZ8DRQ543!9()6+ E%*#1)Y MH1&V)2EHP8BP&\.,4PB7FG%*F2;F15_6[7;R9Z_K2 M_EJWWS 4^.NF-N%R*@@[KG2HIQ_:E-)RDGI,ZO&6>E2,*\.XUXR:(BJL0THS MAPAC(K<*TY)FVT@[3>KQZ=1CZA[Z!&FC;Q<7M@E]0QM[8>=M=6U3&NGCQ$QY M=K/-L%38YZ2M9Y69]!0Z:HOVY>WOBL$12&TEM)+5Q.$RS)RR1U$92&TEM' [3[ E+ M)+61U$92&X?#-'O"$DEM)+61U,;A,,V>L$12&T>@-E+2T6>3C@3&BG)JD"D5 M0[3(&)*JD"B36>%RXTRN-G(R25%BG9<9HE24B.(\0Z*4#E&=TU**'&-6W$XZ M"CD:K\L>B/U!@X MZ8C]UA$)T'T6T.64L"*S)1**>G!&,X(DR052DIG119X W=X#NEWW M+'Y(LOD!I)/_*&=RKNU$MI/:33[8JX6]5+:9D&PZR;.<)".X)2'+7^4@9:9> MJID]13-X]P'LAR'?(Z1X#=PB576582O5GN1#G/"<$Y M$E)@1 F6WLQE K'"")M399AAMPU5Z*#?OETNVH6Y$85JGE<@P\O!> M(>I<@61IA=>?1>%5:*&(W@C5/DAA+FK]SXMZYL^]_?E?RVIQ\[!!(DEO)KV9 M]&;"E\^E+DEIF5$280PC9IET2)+,ZS^'M;(%YXZ6M]6ETYG(-.8($^/5908? MQ[I$_E7"N&0YS_C6\>5F#7U.IZ*@4UK@I#"3PCQ%A9F YC-JSLSJTF2,HMQ2 M@6B.BPXTEMSKP,Q9R3="R _2G%L"FGEU(RHE,8@: >#4?U%:(@JLB1!./@'0 MS*:LS*=%629]F?3E*>K+A#.?$V<2Q@K!!,H+9Q'5 B.IC46B+$N*2\$H$5M1 MG"F@F?1FTIM);QZ)WG0.%YA0B[*<,T0%5T@):5%9%(807AJ9;=R<$VVU@>:B M#N[8*>->UPJGD50E&=2GDEY'E?^;2GS(N<*HXP2 MC:CD%'&29TAQX1B6CM""WE;.TF!G"NKQK*,0-Y 9\CJ9^G\2CGFFE69;!;5? MEVU;G&88-550)56=5/4IJ&K)2BJ9A+N/].62)+ M96F$)$5>ZB>+03 ZS1@]18WY[6KCKD*R;QQ=29"0;YA=$CX__H&G M&UZR _5\G+;'LPJ\\[]>>&#UV8T>KT^4]GND^TV\G?9[K/M-O)WV>ZS[3;R= M]GNL^TV\G?9[K/M-O)WV>ZS[3;R=]GNL^TV\G?9[K/M-O)WVFRYJCIFPQ[7? M_F;7_[]4,QO^W&6RPE>S[:UG?_9Q7[MKV)RIKB=Z)MOV?[VXDN<6S6MC^^_X M=<';W;+^':Z1/WV/R ]N9C\A4S4VY A\[V5C>3G_P53MU4S>? _O_G E#93D MCOK'5G%E7<-5[/_YCV6[J-Q-_[CP163GYH>KNJW"+S=V)A?5M?U!U9]@]_X7 MOQ\2"3[M.I-DQ<_WI]GLBEA_7-B)U+J^]$^^\=N>S.N%_Z)L_,OS2>4_=M[( MV>1*-@OHRKJXL*V=O*[AHK^U!OX*S7KEPO_CEVHNY[KR'_^P\"]<^B>TK\;< M?[06;Z7RT7]P_H;7N3BRT$# MQ"05Z?S>OI>SC_*F_>'%?PVZHOOE7KS# 0;9'JF'D9AGKZA_;T_D^7E9<:#/ M_O+DQT@T5<_,^ SP \_@ES]>3S[4,]E,)V_F^M4MR_,4QQ"2\_1(%_[9#AKP MS]K]J65[\:>;U1_;_3BQ>Q3X7=G@S[3"E04!L_/:G]_D%SB_W1*W[#/9]I#+ M7R[GY7] M9_\%O\V9O&KM]ZWUUM]3HS^K@(OC;[^XG9UX7;65JF;5XN;[_OMW9!O&QY7B M%:?_.5;1W6:CCOZO>[Z&7]&'?.L!7\&ORB=ZTJ%OZ3,3#_B=$P^^/6=UT[X^ M)B# =VH'GSG:<3B;&Z(=Y1>B'0^=XK/;HWB();COI'[W"'ERZ?]YT4X\4/;6 M>&T"QL/XX^'#50Z"AYY [7RMFGEN!GW@+):O9L^7U=P[__6RE7/3?K&J:U^Y M<6^BM]\TEJM?]4'KMSS+Z>[89A].ZSE"X4>QV20UGY.:+\Z]2E+S>2@@OGWF MVJ.@P-VG* [$T(=02PA535Q37T[J*^N=?[@9@$K-ZVI1V7:;SLHNSV6O+V:W MM?'#N)9-N]W+W2:N/OK=?K-E_*R3O.UII,]L%N^-QMC%9%:W7[1TCVY?F]E.T)=F/EB/?E @@'MX,2NRBG4DN#*495D@881#UH!QQ8152 MS!2DI+F2CF^,/,DU9LYDJ*1"(TI%X3^N);(66^4R:R6CM]N9>'E>C^GCL MJ69(E)E#Q+',8&VYH1MM3G>K,,448Y(4YMY$K@X. MGY\92.J-^4&+>M)8_Y:N9G8R[X [O I95Y,E9#E5\SOC6-^G0-:).,&GY?*? MX&X35Q_];G<=R-KH@?B0R-8X_?*SC1'WU+"&OI](2;":4!5BYZT$<)8"80># M1?=NU,E3M=S=B<-%-;:V*#FR0BA$)15(8:91QC7UCA.A.=D<9_Z "%68,ODC MR-WKD=AMJ>DNG>;TJ/RMO>/Q0S"@B;8GJ+^8H9B[TB&"FY#XD8+13_26F&=UAS_!#X/'MAHD2^KWS^'^R_B.Z"JP[D7,SD9>U MW_"_$P0^=O%*)N0S=PX%+K4B&?+6@"'J!$:J5!(19I0N"R/9YKR>AT#@L?2= MS8:D5V*9+3B1 M?,./?P@.?@HEEF4)#*=0\*[!\%]D-8\U *WG4FC#<-7 +>KB)D!C^Z]E=04W ML D7'[&D)9-ROTG)1)8Q3@S*7$81+0N"I!4Y(AGVK^C,X^.MA(9!$"$-Y^W\ M@Q?$M^Y=)X;O9G*^^+D7PX=9E]#_ _W;-C5P <]Q_L-IFY:$CQ-M]U*9'73: M8L:9(IP77C>6V"/IS -OIQAR-A-,4(HQW\CS?@CZWJ6JW)S^>TR:1( A8W5BTF5=LNK1>;=I$JE0Y'U$[,<.W8M!CL!"Y+AQ05$E'LL34W M4J!<$"J] =$.)L,_'H6/!?"MZWK=SL]?@_!MRZ"0\IA,RM[Q>0+?QTO;@]9A M&ENAA2R1S;1!M!0,*:,=*G)>LE)DV&BQ#7C\!#JL($<%BU-L>B_1L/?KH-6L M%R#/C)-:M?7,+FR(2[>S^B.Z]&_/SR?5_-I_OFYN$CH^8HE+EN5^RR)LB3.5 M*Z2Q@7I11Y&@-$-84LOS7 E!-BS+MZ!CM]#5]X,T_E(W;WJ1>QN$LO5'J^VV M;CX9.VW;DO!QHNTI:K&2>-$OK0?$AC'OXW.&)&>YUPS^!<%I7K)')3$_K1:; MYN51=0M)R*K]X080+R,7-;W9Q41NP,%T'B]_MXJW[ MJ;JNO&8Q[=OFIZI=-)5:PGJWWGN%E0E#)PR=:'MR*L]RR?+<>#QLF$-4.H2?RD7XNVP:.>_J)QM[:4W7:N2JOWI*:=R'(VTG M9L=V79^?T9SAHD!EE@M$2YDCE0F"J!3.E'E1FBS;!E1_U]1FJ1>]*/[\"7I5 M;>MJETX9.2I OG<\GG#X\=+VH/47X99)2G*$"V,0-1Q2N+E#/'.%=IE_(=NX M47P(4MZI_B)308X*$:=8^7X#81CUVIO1BC62 B-':>FR(K')VUW,MB^7XD@7-C^-A+ K5_$ M\A,W+@D<)]J>HD*34I4EE07BFBM$B3)(./\?@BDNL,+,G ,NO&VNJ;JI9"A2?A%PE6W*_+>%:N%)8B:BT):*ES9&D!46<265M;BQ7 M6PD4OW7N1SF3HI(K"H]ZC8>\&&=>85DBD? @&14&9SS+<2\:Q3]DW6V:<(L8*A/F"SD)YM ]#&+5;(O]]L7IPS+&:8H5]J#:%MB)(S! M".?48.&TTW2CH/YA(UVBU,6BH#_DI\Z(_&CGUJ]S6WWS\@23$TQ.M#TY-49S MKJ71!&E6AOH.@J3*,#*%8Z7*"FZVDY[\5&HLM05)X>2=MP6QLK43&QDX9"+7 MBXN4;''4@I5LR&=J!)UPDI8:\<+FB#ICD>*8>SQ,"7$<>U.RE?[1;T'*?J_G M6K87T8Y\<^[>UUU*\E/O+I70<*+M*6HRQP01F!)4EH5'M@K2QG)%D224,>TR M;7.WE:#Q4VDR1D\\7VR[D>$[66P3)7\!_^X]P'USZ3^WF'BQ :-:<7Z0L[/ M_7JJ^00& LD%=(>6;6L7;8# L^ZZH[+M]U_BL'UAIVV:"G_<\,[_>N'=Y<]N M\UB-9-KM$>XVQ,3M;]3E8N M'!>&E=Y-@CGR1E.D-"^1%+(H<6[\6V1+G6,;B-3^9./_OYGW4OA^$,)M^UMY M.2U/?;1\"AXEVNZE7COH/E(YUD)G)D?2:.XU8,F0E$I"N)T6N:6:9X\:X+ ; MK?E%99D?5?W/4[:/2BF,#PAL=4-)JI2X>$!2E$G%4C<]3=]BD+H]-7>ZZCHAEI2H+@;A' MTEXY>32M)"E0KC!C6'%C=+$;W/T@A?9U80HQS0@Y)L66PMY[B;??-?9*5F:5 M(SG1RZ;Q[W4WQPF$'[&$';15.6@0+A4EE&&)F&4"4<8UDD8Q9')L158R#[C- M;D!X)_!]MG^7U70V-R'CZ2P(_=9J^VEV5#8L@?.D1I,:W2,U:K*,8>>AOQ;4 M(HJQ14I8CDI+K<.&>[6XT2=E.]#_"=4HF>+\J+H'I!C\?OL$@843_C\TL4J& MZW ,5UX:DSM>(((A"(]U@01W F&>*6N4$81N%/5N!_\'X7[;YX=OU5 5^*CR M:A+:3TKSV)3FCM4:+XJ22N=U4N$(HIHJ)*G73 M/_6I\BD@_Y1YZ%?R)B6A'[E$)5ORF4K?K"Q4F&N\7O"Q<=+VQ1,N%=34LHQY])K2DX<--+E M2%B/H LF>_#=+#V3WI$.,^J>D"#Y MP0A<,F.'8\8<,XH+0A!3C"*:048GPP05F;&"D4(SM:.@>=*JQZ95=YV_+K#,(%2NE(:69IE @FB"K,ZH8%([ MD6T4Y&PQ:+Y=O??Y"\(I%2?>MS'%T)\ Q@]S,!I[;>?+%$,_9HE*IN4S:>;. M%8I[NV"PD8@:XQ"WCB#L$3:WWE3DYE%#EN\W+;T(OH\2N"4#PLE1@>6]8_:$ MD8^7MBGR<'\V'A%>SWD=5PH"D0>1(\XAJUPI9;7C!2<[ZMSR8#7YM?&%HVHN MG,+G^XV[8^*X9S:4HN;)=B7;]12VRV!+C90:E9GRMDL5'$E).,H9TYH5*J?C.'CPV&4Y9B5%A6%)=ZP689X7I:H MR JIF748ZR1%'12T/NH MH!T1CA))O.?A&**NX$@0GB,G*!.VD%Q)^11EMEM7T&6VPQ+;HU/03WJG46S# MB2D.SXGQS!UG+"Y;:T:S%>MYNM%(%C)9R/VTD*PHKOW,W?RZ!>'PN_)O=;]POPQ'HBJ9^;>TWT=QL//ZH]M'!)?S:]M M&R?##]R>IL%_;IO'"@#2;H]PMXFKCWZW*9/Y":)^[Y:-OI"M?WKM)E<-Q/P6 M-R&#P?YK65U!0D.*_AU,HE#*Q#L<9Q!3@RW&!ID""T1Q*9!018X(US@K<\L( MVYCF]I#(W;LN+>F/^DQ[D6[LNT[*W\WD?'$V-S_W@KZU:3BD2*.44RSNL(B< M5.?AJ,[,2,9DKE%N2H.HR1U24,LH!<\SG1/%LJUTWWYRU4E3%\"4M_QTX!_8 MUZ/]2[NXJ$T7,0-NAMO_L]G5A9Q\6%@[2P[ P4AYD@I5B"606]7G&'M-B:D/0CW/['J MY.+DZAKVO)'XR1?_774YXQ-U,WG950)^=VP49-3EB#C-$%7%(42)0)IVC2A$IRHV.4%NLT'N47O[:"KT=3I;8 M3P6]-_<2J3QO*,]SU5S.=2K/2X5,:;='N-O$U4>_VY2A^P1Q.8A"PP6]KB\O M:_C!6O\S!=X.)B-F[T(#!QTTDR97),\+5$J10Z\KAH0Q#*G2Y4;E19F[K=^@ MOVG;I0>J]JU['43P TC@PV)EKOID#?JW;6I@ )[C_(=CRO[:.UX_!".::'N* M>LRR0BAKD2H$1Y1IA4266U240C*+&2[U5MI [4B/;824")UFN^QG>PC\GA)8 MGP(- ]-Z..QL Y$C7;>+=G(E*Y,@\1&+5C(EG[E'=HI@SDN4D\P O'6(8V90 MGN5.>)M!399MLX;LK0LRV%N3UR"!"0T? ILG-'R\M$T7NO-R<822)%KXQ[%!F-6/,*5;J MC7:9CZX!VZ&ZS'.<%.9>1=53[=>H]NNN_,P$]Y/]2O;K@?;+6)P9*A12>28] MW'<:28%+Y+ K"LZIPWJC9^D6*[Y^Z>5YZQ5?"?I%-,DO)\]CSSAT#^OO /EAT$OX Z:]7'LNGB\2S$_F*IFK!Q<0YP4I M"<.(<&L0Y3E#RF8%8LHJK+3TP'\K.>I1P-^ZGSOQ?N^E^^T<+!C\[^>5-+^W M[:*I],(:>.-L;M9?&'WR *ZIC\6F)8<@:=BCU; 'G2]4,"F)-!3ES'IW0T*- MD2MR9!QAF69,JFPKUPS/JK^_KE,$+D[..]F;3A$GXJ;\9+7?M$GA$(7Z 9E),&)::^*<]SVVDG_T*)OVSC85=%Z-:J)7 M%_[?LZ6IYN=CZQDMZM:-8#D5/$UI2&[+81$Y*>+#4<26N9*6 OO#@$' VNM@ MZ:1"0O!<,!*^)\RLM4 9'N1!XL?:_O*TAUOE&[WZ;HZDS1#FL&(9ND4XB+7WDH10[S?(%6^X5TP2HDMN474 M<(PHM_X[V!'DG91"%U+JG&5;-6K;2N4MICE)MQ[/#3&/UGU(^C3I4YK3PECB M5:G(!8R\YX@7&J.B<%P9K1D7&_HTU]*_7FBDG?9*M:0""4-*5%A"9%9@B7F^ MC_J4TBE)(\6>OSKB]+P ZU]/^'^[\I6_RD' 3+U4,_N,%NOKW.W_V)GINOL< M3L)X"9X;KG.%,HIAVHWC2#)6(EMZ^X25(YIL="G*RP)GJK2HR A'-/-FC!,M M$<96.I(+)> B?O^,%Y_FQ9/9KEL\=5#6*WD#2;LF[;J-%D>"DD)AA[3FI=>N M"B.52:]L"2>$6B/$YBRQ0FC,9.D05THAR@BX$Z77R%261DA2Y*7>1^U*\+3( MGVS"V"&KU^U>$3QL3-('F,]L\5M.;=GN$NTUI6>X3^(WOEHV^D&TTFE=-?>6W>Q-NF>""Z0J,J[>@D"MI#=2Z MV+F)K;6T/_DPP^)&0H@!ON%?;)9RELI>CBV3]Z+YU[SJY/9N;GWNI?=,)[9OY6935 M=U%2M]8$\J@RFM,E4-)Q2<=]DX[+G2I8J7+DL!*(D@(CP;E A2J$*8542FRT M!?R6XH_GUW&8EJ>MX])HN"= X'$T7-6V2X^P/3]&&.W_GMES.9NT=K&(0:X$ MJP]&U)+)V4V^0"ER4BJ*3&&L-Q]<>5C-*6(*,VUIB4NST>+DFV'U, 7)FE_J MYBP*XZ\@BQ\&44R#XQ*&3@HM*;1'UYIQJX6D&EG#3TK?M;:\] 2,_FWNYX\?NUE]#W*P'UILF?57A[6RFW MQ:G;HH2O#X6V2H!D5[H.3P ME&)VVFHNA:F?JOKX2E9F8I8-I( L+FQ7;ARP=04ZQ+8I2GTXDI:,SFX:7BAI ME,XD,C#EDV+GD"APCDJ!A2ER0ZPK'XVLP\0?+XT_!6'\X\+&-G?>P/QQ437F MG6P6-V\ZD=Q6< ?O<.[G(=B9!*4VR[-1DE*]$A!Z^=&T OYR;;3R=R&Z6>-=?Z\4Z#Z<,0N&9V= M&!V.K2-".R2MX][H2(ZXPAFRA1:Y8CSGV:,"U7V3B#=S75_:/T (P?QL*SR# M=SB*YA!,2P+-AT+;I+]VHK\DUL1BE2-J%4&4@R:C.?,J @N6$>*,>U2.QV[U M%R$G[O3WT-C_/Z26AS]WR:)?C:-N/?NSC_O:7NZXDN<6S6MC M^^_X=<';W;+^'<#WI^\1^<'-["=DJL8&#OG>"]'R^D:O8 OD\KYP*+R\]$^^ 0=B7B_\%V4#Y9 MR)EW,9K@07CWHK63US4X2*TU\%?H%2L7_A_=='#_\0\+_P+D@+6OQOQ_M#Q^ MM.Q1KJDO+Z?=?T&H+P:WOEM\-9]5<[^*A6>6[^5R4?^P_H87N?ART '1N9?. M[^U[.?LH;]H?7OS7H"VZ7^X%/!Q@D.Z1@A@).O;O[(DT/R\C#M397XX/UY$,]D\UTXN'*JUN6YRF.(8"RH#?_7-1_ZI%*_-/U*O'/=G&Y M:/?CQ":_!QV_J">O[QKP]$RK^GJ;LEL2X[P/ ^XAL[]9[^Z 6'>? MP^>>,S@8OR\O;5/I?@A7EA<*4X.LPAH&D%"D:,%0[BC3AD/_YP?9[7^YXN)_ZB\@OAOL[1C M53Z.W"+ZBE'QGP,^#/%=^JH@Y#]OJ]T1EP3*/VU<]W,\\E"C@%_]C]%Y FI3 MW3'?B5C&Y[;3(^I@^/, F5M68O(2 N50,)5G/[R.Z#?\"_\P[5_^:&^_4B^; MX:6ZZ5]=MMV+WTT^RM:[OLMYU]@DSS +2>15"PU/ZN:J;H)6\^_!\UM0:4"@ MGSQB^>@Q]RN_N,G955/-_'=S/)U\M!/ YC,+WPJ W$,S6@$IFOJZ M@A/S=&R!P^"0]3_]"^U-ZRU6.YVTRRM/>2"AN@D-<9K*>I!\XS_O%A^CKV4F MUW*VM,AK+/\Y._=[MY&VK6VN*VW;5Y&!;__\Y+*^MMV3_6'8F;?L%TV]/+^H MEXM 1B-OP-A?2N_.^?\!']5>-USZQ==^)9V*G?2P&3X;J+^<3^&/QOI55W'6 M87_%)"^A-'ZU93NWS7G8FUEJ8-6%/Z#X5C7W;#Z;A6>\FKSUO.D?ZG?GG[[X M6*.P9/\A!"?4R&IQYR&"!*VX^#(PJG_,BE7_N[[Q3D4S40T<)5B9R6W]V9CFS:/SXER_PNQ??W;D*+X\7E;Z8**OA 1H"4*[J93TG4UCF M'8M[Y[=N;RWN1??BB^]>38"E9FT]N9#7P%CA; /EZ]DRD,93I..A\'OC(PW; M@9(53XN_O?KP"GG>73JI%\O&KV%QX;?FJMEEM].VX\!_6.VI]]%3K8TT\2QY MN<:1O6II^U9-DP]_^_W=V1__NSN#H-*\2 "W^N5=V-F5IY#7-QY'M)&_O)B- MCQ%V%+/ZXKA,L\XUL)EI((Q_T-MW'SP_RAGR/^/74/ M .*, T$_6H54^.&S/WX]^S"!\W(>2=;C;_4;#*H6X$%\KE>TW>DOK+R,EZ5S M^S'TH5HMTWDCZC_NB361U[*:A;?][J5_N5V$10 -PHH^ULW,> 7B^60&0@;G M-?$>JIW,Y(T73:\6/(0!.D&G20MS/Z>3JPI^T+:!_&%?(( 3SRC&/U(W==M& MV8SBWA'2V&L[JV-CK3#,Q9]4^&W@#WVC9WZW$.CI#!W0[L)*\Z^E=]1M$_GW M#'2J7X%'6K*-=N1"1AHW\W#XT#A@J=K*5-)KC;;_DE]^):>3UY[3)!A7 __Z MX#=X,3ES'E+*\%L?KKSF268#=*_G0UCB^>2\J3_Z4^J";_[,6T])[S&N ,)? MEY=7(9P29+1'R^ *-8OE53MY^=>W/W[X;G*F%Z\F?QO4#;P(KP6NMC,+#>B! M2T%+!.4]F]4?0?P^]?+K]5*,G?2Y _[3QIN#&R\A(,H0%_0[],+;V.L*)*QK MUA:TU,(36#:>0>$%8!*O'H+<2F#6NK6CC\BKJUFP1E[A7 /ZB;OW_+3&'/^U MYI7<%=98YQKZ.9YYL(-_#\,\=>C\;A^-EM1Q73)$\M(AJ@N-A#/^GR6EI2#$ M&.JVX:-]\"?AK9R6\\790/1W7JUJ3[3[_++PW&J^M.9L\;6+_1,G=^X.KLA? M_8\/R\M@G %NK:@QEL&KCAYC&=IJ1*#D69E1BQ$SEB-JRPRIHH"1I((5N<&, MFJUP6^?[W^*TF_C?KX@"'#T[A .*C357X9%@8KU&G>OJ:M8UJQZB:/[]$[:[ M&Q=<0P0-CJ@+.8YCMI,A9AO]\\L.NT40#/;3'_QRMFB[^[ !505'W[_\\:*> M>1L'Z-JL(Z8(JCS*5-;.@8!7LD-?L,+&^,?:R@Y(5,*/^_?M MU2B2\+=YV%&(D8:%G07AE8,3%&#I7\[.W@UNT%!@4UW>O>7 4\NF78*N\1;[ M%\#:.$/_)[QS!I?O'JSB#![WWIXO.W_D _I_ [:&9=57U;R+0:T@^!0 B <6 MP!;Q2?YM.9E#RL ,ZNN]GQ<0AP0?9G1@ES(0 'S+Q@::@=_MMSVWWCUN04.& M7E<3)ZMFM1/X>4#FJTWV-T4 4/R;'^ H+Y5'3R2;@B-'(_[]R?]L?!E/._\. M?F=$_I%C$K(M+V!]C8W^_+P*#N9\<=%.(L[:?%#X8/SI(7+3=YE?_>8W_5*$ M^O?PMI*SP&3MA87^!FT,/MW:9@#^X<3]\5;7(!)-?3GF]=!IB/W@>60E2E\0 M(+6$T4&>.>?UT/TW,,*XR7X##8*;&"?9E@AX_S92R?]03[J'$LNS'2R_YS>O MA_S3C7](B)MT^J!_2.#42X^AE4?AGZXB#.^??&-#U"0T/KY- KRXP6S4UH] MT:)$!JP>DV;:D6S8F?>WYWUP<4WYG[+7]=HV(>0U&M@03G',=%'Q!%*N>E(' ML>NOR>1\OO3Q/:R"J&+M<#WAY]?]^8@:(W&^E.RTVY9#S.4[46] MG!G@^<;*GAG_L9S'8$0XED743U_XH;C%6?A I,1M^MQ61F>13.]M")3YI_46 MZ__9$#M[AW:?O 3U^R+\N?93+[X[91'ZNQU%7J/! Y8-X=/^8FG2VO-HVN&0 M5Q'(/HH50]CPK_N"Y%_V_N_WA+/,EJHL2F1Q#IF-5B&IBQP)7A!_&D5!J7IT M<>19++S_HW[=>;9G[=E?:K\E_V]MF_D7'."O6>.Z [R7K+1E9^;7RMM[KV-N M3EN^@G7PV@W$S.O8Y>6RNXGQ)@K&*'@AT^$#]FJP8%VT^J)J%W4,#03@6"\7 M'78$^[+"IZ\F9_=BW1#[-I/'Y((\[@C^XZY'?\/O;K^''C&95)8B9C7D5[,, M"8:A&;6@6).2Y/E&_L-#1S3?FU1=KB55%U^:M/SJ_J*0IZ?HQ']Z-@H\/,,* M!HF8>^Z>FVGB[Q5_6ZDQ9IE$6F"+J&;>^BEO![/<22HEXUSJQ_!WL)A_KQNX M\^NR"[;$YIB_$HG/;_'YQWC2GM]C(D<8G'-UU=2?_*$MK,=MB?=7K32PD00[ M@1A5%%%")9*.P?J"A_<0Q?H,6EE%T#? MR***^1SP\MD?O\'=^WDC+\>7MB&P$#+O%#BURR;RX;B$<](YV^[ 3>>S'\7"5&^& +C%)US&-WRE)US(%6 MQ_2QI"Y*(\?XX.M2%1Z4X9"_>-RU_!W+/9+ TN,H';J>>'M@(?$TYB?>9S=# M=E*TEO'.#0SIEXS^;>/9W>KXAX6G=G<]\>(G7 2L#+.I5CF<\.OV4]5V:5/^ M]R_JF8$=Y?M'X$0*)MN'VYKXNU=N((,%\=K2=,>QLZKR^7E M!"Z.@("J,AW3><;9.SP?%NSDV1THPBS*,B7=RN%-Z8UPD-3S+ MC,X1P:##5,X1]Q]'(I>X4*43!<_6W9QX%#]6YAT M3/XE9__59[IM/P,\O8+["MA.R-6$"0%^^9YO .)';ORU$^[W2Z]R"EID+^5W M+_%WTY RWN=?WLE =UUHK6FBC^%2'J;/[QVOV4)YWB@PXC0GWO8)B@0QGN$* M3;ATW@)M]G!+O/:5O!:=*E)52(FJI0=Q@C!A1F)58R8QO-L&& M.*/(!7(>DR":>7#$,Z40Y=3E3@LB'+X51)FW5B\!K Z%@AX(KU$^OK B<_:E MWB-[162]VN'J+M7X+<7JA%OI!'?J&(ZSE_J[E^2[EV??30<#U]6)S6XFY_ZW MP7IUB=U>TV">34! (",[/&R5WF.Z>K2QQ0VE;C&S^Z_+N9U@T=\;>?,(08-[ M#&EO+E=:;F1:^TH:4&I@C*6^J*RW]:\F/SL'WK@_D-\\R.HS8J:A<@UV#3?/ MMT%:R(EQ-MR>#7OI3NLOL4JK PA=$L6=A6^O)AZ*A"WF>'0U]AD8TOW,&K0( M<=?K?NSB&A3T!X^@%BN28G2N _[!;'2V&L)1L-K5"4*D25=VKF_N2C?Y(G\$ MK@JN7LAJB6=^)_&ZGQI1+"9-#4[/9!:?,H7[E=_]AL/Z>;]\(-$8X*Z.!8[$ M_Y[I 5:(IUW&E R X^]MR $QD]>QNDIW+/EFJ)_LP+0-C.(Y^Y&Z\9Z$9YIG MCEBMO0_NO(:#H;2*<:_PK!2DR'GN\HV.R\84*LN80T5IO(:SW'H?4-AP@>A_ M3'*O-3?2ZT>G!$-HH;?_M?_;AC<^>,HLG@66-W$5G82UL(Y8U1J&'^QA+F%U"\_,+K M/Q>8V+O\H4!)A82W._7OFMZ]*S( *![R[!:@QZ6"(MS_ !!Y"[FM_$8 ^79^ MO\W?.XF9]J<; BE=G?/D8P,)C/-U<]B;P)B5TAGS.RP+U,=^#A<$"OG?<=*; MQ4?@BU4[W H<-4A@W#"__D?F:SL,.[J9++MPS@;%X:>6*E1_")U'*KW\L6M5[Z#C.F0 M";Z<+]L.&EQT8#'DT3;V:B9#J?D]>4VOGO'2^ZS]S$4@]BCIQ8>E:CV[ JMZ M4?'PJKL/#) 3BKQ@9YZW8X8X6*>]D,"4JD%CS+E=Q(XV3".Y1:ELB[H;DW M?;E#BCN"6$Z44D(Q3,4&X@I<^6L]/__#'VOHA?25%^_EEV((Q3XYE]VU._#= MK(9;HL!$423;3B2]4H?$<,@@##G64)OC/QL9ZJ-L/,Q;!*-[M6ST!4S"W#>N MD9G"HBB$!TR:(ZJ)09Q[_L&EX'E6%'G&\&VNR0J,L>,$Y806B&8D0TIH@@1G MN31E3@N<;:3JP=WR6_?W>"9OFS"AR]MH+X=OW2KO_K5WNJWY\:;[7-M]<)W# MXO7#0S.@V*N]9+//9" $R.4UNFUTU=H]#IH+6WKO3G)$!!'>;<,.'#C/6Y8R M6RKBRHSMC)E^[LXGA#>'-P<.PMN.>&:OLOO[\#YGQ//5I/-)>I _JGD"$#84 M4T%E8=.#^,$J#@#@A'&9=U4_D^DM PL#R:'(I59^O2,8KT,!3P>F QJ&:[!_ MVG$HJ\\T#+]3J>50A;2\@H^G=,-!I1AIC+[ MI"V>/ZG0\_G9[.I"3CXLK)V%*\&/(3.O[<1E<%%GT)\GU.QW**H+N=_^^OT^ M _$N0XP.3B[MXJ(V';@'7W?()'R^L^C*O8,G,T3"_?GT;OQE\%P\+.A/9"CT M'7 E (:JJP?OG'J<]U@#V;Q; MBY=/X9)%+V,!(UP7#WOIRA?E>6.[RY#8E*UKJ@8N+L2W/VGK/[QW"DT(C0O* M(:= *D1Q62!A\P(Y;K%R,$&EW B,"Z6L-J1 3.8Y1#4UXA1K)(5ETI5Y/@J, M!X7VNUV\"^=]-CKN+2DR^FJO[@!';EKDBG,(>BWL*<.7.UNSA?8/UD'*Q: B M>@FW\XL0UPC%I@NO$\Y#="^HG%7OMYF5<,UR45V%+F^QV^;RW.]TA(^"/OC_ MY'P^^1':]<4N"1J_^-BP-F')8VH<_WL!3 M9V'#GU_=.\"RG MDU!P/.DJCE>28:%U:+ S'R]LP VA;6??)B4*4F2-&&R3ALKJ[H0&FD)/SL$X=UQDVVQ6,A_K[D-4\ MRC<(X8*O[S NX) IC6OGE%MGS K_[;6@W,>6V08T]BN.>6LK^KN^E;>ZI.D M;B8O*PCP!UW3-Y0%'QY^$KJB[B'J<5@J92Q%ILC EY,R)CSERA2J5$*4N4S! MZ0>@GM&-Q+U1ZBXT_;+R;.-99A:*%F)BSE5H[S2.3 1%=!XN5F0S!U75H?F^ M)G[9C)PGT'X_^47/0W.4GV.G5T@C[F\TO3+J^_OBL 2_A@HZ<@=F!2]E_&R/ M)%IY'=KFM@M[U?:Z-,94_/<@\R#(2.\2]MV=1TTVNIO6D(NP@/FT8?Q.W]1E M+8DEREVZVD]]"FV'N:(6>H$][8VBNVBXFJ(%RDA@:C M7>0()H[&=LOKO;)D@&/0-+^$8C<*:AGU??#PMZ3\4>L].N_?4( M=DS'RO]_MF/0T&>@=7V, V%'$A0[ 'G XF'%PA^V[;H"R;"WP%R1]#%2[.1U MW42WW.N0]HN5E1ML&WL6>=F)#CN 'EU=1?\]/#:$2_OV7A!"\%#- 8Z7T, I MI%MV3%RWHUUM]+89E_%\L;N-9&5FE?+V1N3,^\YPP85SB7*!K2#>BY8EW4;G MS;^U]JW[N5V$DO'V"^ULOF91!U!UM.5V-G^+;=AM?X@GK(3>A;9HT8MY/I@1 M^Z!^0Y-/^!"@*%!0MUJX=;&]M1;T?=APH'A4%%[/7%Y%4Q?;5<94U5A>U$V" MB,&^V/NR;7O5-JNB>JQLIS=7C>JZIJX]N+G[2Q.Y6#.A\/==6XUP86U!O:8- M7N*G*SBS=G.J^*O)SZN]ANNA+M6Y#W;V'[_TQKU;=0 0H_$SS^RMW5]8?H=> M3J7EJ;3\.3B6I]+R$RTMSQ]66DZV7UI^)"#OT1#B&?$+E-&LM]P8TS-F;@3D.A>]5 1_&V_(0*PK.]9#^ :W+0]/G6 P1 M@AL=2@FIV+H^G\-,'Q?G@ !:F/;0)WP8W/[8J3@@@IC2V_4P##5O1'4Q4^TE6CEY? F7I]I^-?DUV<* 2EXOW$*QA?,W:V8_RL M<[='/O9JKV89KN/O"U]\I0N^O4(>KR/+(LL$HHRQK.2*E\1N MY/T\Q&T/ET&0S 4[>>]W'S/IX:\GF)(!^"7,4N^8F@5##F($0^.BUOUOCEJZXI&.7+D6ILVRA@WX; M+FPZV!"CQ,,M]6!_0N>Y'A>T;>U_/EQ>=Z5=K1WC#@AEK$8D+NKZGY/^9FX. M5SS^L:%E>X H8#-#Q?#ZCI1=? SS+((!"9E==V\KC@^L8^;("B!T-FH]FG+A MG^87#!(P3!E8_=0IWT#\W7:SY7K=$*K9^]F0PW2%,._%*X8FADW[8LBI_P<4 M& ([P/5=#+S%A (8>@F\MF*(#LKV3Y)S.;OI\>9E/:\670K?770+ETK#N@(# MP?C2L48[93*.1D:N!KYL:O(8"%P;%=/'$N$&MG]M== K Q&%]9X1+B&3J1\P M^9S9K;]T+!0CH+?G4%3MY/_$09I^0W%@Q!3T6S^])>PQVLHN-4?.._1Z][;C M"7=AUV&]HS(;VT>K84,QAB^"!YX-W X^MJK =>0.5E#HL?=\VO[?FX_OQN&U0SE M*W73(9$X/S=\62TK[RK>'DL=@B;/J42\O5K<7($C[M5$ SVYP<6?M#!Z:#)? M]MF6(W,4;HZB,N@Z"XU^J)/A!]&7"\7(2PTI,OT"GNQ M]G%OJ;]N_LKVW&/NR\P@53"&1)%A:YFB9#NWVC!AX6QNX/^@ M?N(:^AXMVF<>)[EG;G+OI07,;%>G=,+0Y^^K^8)A2-V%/W' *R&S<1P+' I8 MS%"$/XRWOX0!AG"3' *1,&FN&S#GA7G69; HNW'LKR;]U+)>R=[ZP# ^S]AP M]1(@M?]I>]-GWT#25:=!XEI'F NFD%]X%=)GV@T3PV).+2SNW.,9;W5MGX)F MXS7X>7UMFWDR"T"&?P_!!#F*>L*1PE;F *[]!ZIN>&GH,F60P-X-C'MJ*.]*ZXJ2,L0*(CV4 M5P7BF2D1RY7./Y=]"&*6KG6K?#UY-Q/3/!N7#8?31 ML3]7SM:?5W%=>P'USS:C=U/@PA-&^H&K-J*9D.S0A):D 4'7E1[?:G1R^[E\ MAWB%;NJN89EL!BD/H>O5&.ON(WV[C56(>U6M,L0$?IAW#KCZ*);!.1NZ3 []:D:?OQU &P+KW@.JNYNG+_]*H':L]X'>!>&'PWS>KDE$ MK'.0_X35S>/E;?!IXXWX_;DA/6M%3G%R58T<^OAZ9S+4B899&O[%;D7_6LI0 MV1%^H>O, *T7ZTMO*_QQ#9DK?4'J,"%=]KU\^^-8KQ/QW/=J\@ZJHMJA?NA6 M=E%C5\8WE*""7?3@;3Z$*ONDJ' Q%! =_*O/=#YEQGZ_IORJ=NCKVX<6A]2O M &S@UCM5*Y M/H]\4BO@SJ'WXRJ*V=_<]O'AV+HN1I>[C#E(']N8/KTV;!P4YU5L1OK+T(9E M-3Z^:QWB:BALBP,9.KS6LY"<7#0 <_ZO[OR^" &(&_86%SJ(@GP6L/W$\)50712E4Z@HN8>B@I5(A :"3(@"\ANLV BG M/ 2^ONES'%/P>:TM0CR5ZJ2KI4:G$-1@UP*_*^;Q*J:[' HW;TW G[%2,>1; MAAS5K@DL?"0,CKE:=AWRY,1530N'..W^@J0*CU2J6"(Y)'=%-3K<4%U7]F,[ MB='EU>K ]'8&8#V#=U"CTL!1^C5T@9)N2="D94C2O6L#7?:QW_!-EU P]&2/ MKMEZS-='F,(0CA#;&>VB6UD]I'H% M?W\5UNF"1+$U39]Z,&SF0?L(T:T!!@Z]S6#.P6I=,!2BUB'Q_D@ MRYA5[#_MW>:J[9,JP[6- Z\]I@I7[?I21IB[772Q!R!H=WL##%^Y*ASS\%/= MKN-XF7M7UT\3ZZKHNG!=WV*T3TW7=LA6O^O8^H*WVV5NW?*'6R9("/'KU[*+ M3*ZP=XQ1+J^\'?DU[([X _(XWC8A!.2_ZEV'-NQE=2I5>PN/QT$O?CM00[!6 MJ^>^S.!@-1'NMS6K_O=6OAI_KF[.$!I#PV:ME#)0$,EA(C@PT4Y.9].AD*[5Q;^8+&%/F MN3H2_Q<8BV@#$'CFV\+],/'#\0R<>=IW@1L'LG$7.!*HH"BD[AI(Q]8Q\^B? M=ZF J_%>NKY4U;PKZ^T2G*N81=WG2GN!M_IB[O=Y?M,7!H3"%E >M5M\E*&E M=CWS5/*L&RXMHJ* B\79S,:"6=!+MEG<](8 ON5-1[,(T?OZVHY+&3K348U5 MQKCF>CJZI]S1N#M)F2(%1CG..:+.2J1RQOQ?'D]P7FJKL]N:H.!.>WEGJ#1" M@"LAD-)&>5>&Z:SPRL/F&YI@)/FWE,+?PGY_]79F+4D'M59_;Y8-=*9[%E[, M8>'SP8$FI7O&QO :7CEL&Q7O2<:":8)08"HNWQ^ M-7D=,$8U[\$YI !#%^T00@[E@6&XBXU*3JY?,ZYKXNFD FCMU1HHM [3!?36 M_WQ(J^@;(6]\?Z/YPVKMW57Y:O9"G.48FQB\6+G!+Y[\8JJT!#M=(F@]BJ@L MOQG#SH+5ZDH+/&T:3#^@)BMG7FZ;*X=)L7"Q^N\],W^E6SN=+P%)A M\O?MJ%" A7?'@M9#"A KZ<(-;]>*U&-+TKXV)";CA #Z$)L9\G6ZY)R@B+NL M(O\TJ+6]&>7'K#5Q#>5DUP$,CFJI1XV$IMW0VTC;OI%,_TMQ+%'U[Q4&[CW? M?PH:E.U MHX:/(63CP5!@UD%J5VRV+]>K>T/[YZQVD+GT/HTC_H$Y3$;-"9)2&N0->HZQ MR EFCQH*?AL)K$#/KW5[?_]YLE;D0#:!\WQY^=&[SJV=W[LSHSGE%".I2N_! M25(B46*,")&68DD+L=DER5K"9.F!D%;".PNYROQW,N\[.)89K"TW5#[ESGZO M[ZC=V)]BCFKC(N<9%N&-^:!D/LIV#/7OF]\,UNF9RSZ>&/!#QEGNN1Y)+AFB M2G&D)/<>K6-E227VC+\5P!\'R?T6\,Z;52EK"HF^^+_OF[&WER;IR> (7*4% MG+YV.N"SKR88!= [JHOVT&4=C@2\O?4%4*,PJ"8TENQY=T5]'E_*?L#BPJ^TPCJJ?G K:KS6"D!V/.^W34#T MN:1^W'O$5.UHSF^LENH;.]W%G" TJS:@70>7N5PL5Y(W_LFNL4N\5P6&7RND M6?\>\,5UZ*K0]'_?(?@Q R%>7X31)+>>"#)AJYA/X/?C'Q 8?"1:+]=OB<-E M/\@F7/?'TJR5+AJ6\5U8U?"#[IM^,'[VU@\F_G^V%G9],/D^[;L15-Y)IL^( M@RY#)5,9DIFL_[C;?G:%R[P,A2T9!QLLJQ;L*6>Q@H<92/;2A6UG^(485%C.W MLHF-3;PB@9C2J$=T%6@;<]17..0"YGO=.N?8;6ET1PI[;934Y6XO9Q72H+ML#Q0YP]M)C$AA47+6W"JQ&%[2KZ&?2 \^E!T+: MD9R/P6Z$-!,[Z^[[X\37D%,5KL,@D:@K.[Q7>81TL. 0K\+G?=W:,WAG.F,AD;L\E3M4/J?IA[ZL?<);*'TZT_($^K/RAV';Y0PE-NR2VT!E% M(YH9B91D!!4%L5SQO#!\*SU2^CG2[YK:+/7B[]TPBGVXO^\'8^S5_7U_0">, MO\L&B#QZ=U/6 M+209&\V#C!E,2T1-EB&1R1))ZIBRQA4B)SL4N9]"/E%H:OA #JS94=$P\$*Z20!O(#NHAZ./)-OXF7*NAZA.ZJ(P7N.]_ M^1-CFC.%*(XHSC3C%.N1Q2E?F M.99LO;_WNM#%[2?/X0E7+(L M&[!W0ZR[:E9/&T]6\[M>PIPN\,-'?9>\*UQ=MFO]9<8'U0<0KF(@+B:DK0)1 MJQ#"W<._AIRN=K$TH<7O<,BCN'JX26N"QZ]ONCX[@0!.5C/X0!-^+U1(59X9 M/"R(QC_,?E4W_?SX*[NHACY1Z_5-?6N=/CFO&UG6]3X;QM!TA@;BILMYEQ$6 MIY/9YMJV/X16S,/Q]B]WH8SX!*AHZE/)5FW?SV Q,:RRQAC#]9->3U4.!7\# M&9LUGH&'5C&".PZ5],8RU)==0*-V$\,GW9@RSSE5>S':S4FGN%U44&IGUWN. M].-:@)]6(KNZX@DIDD%@8CIX'R=;(]U'&^ID($(^FO;3M](;Q".*3I@J-RK) M'$H2VU[Z-KGM5H!V/H2\@="K*LX8KPNWRJ&QU68@]XFR2BSEHM D0[S$ E$K M)>*%N M23B:,,3QSW#3^.=XE.->.:@?8)$H7H>.%WG*RL.N1U\&RF],9@OKC@91QHF?=CZ0,."&VJP])'? FY JVDYFVSONS-;7M,I:_W'FG7+T05_4T+$OOA]<:_C M96VZBO5NIZ$6L3-:W5GTU\RA[#I6S/?5\A._E@4XZ?%WPD78;W#TD]>RF=6 M ,*4]PYCC9<83LT?SMJ#-S+)8\^I]8W"B:ZM? M_S/4 UR"^8XKCM\$,H3<1"!*I$<_]2' M3]BMCFYY'//I1:XB;!"@L4BB?_V[F54%% !"X@*0$)&>Z6Z20&U9=\][SUEC M>%YMD0\S^=K$-2 AJ1TG@"?+V17<_&_;M,9]D]KH\MHC;=SX\@8[-KB-V^M/ M(S3WN:([+@:G-V@Y4U4!^\BLHP&Q&DFPHA>((J= M#H)AX^)>JH*_-NB:OZ[ -;\,.K2Y37&;^WQ4[O6R?K<%-'W,".G7;1S3$[:> M;4%M"=U;@%MZS(R[2_Q]*-RFD%]4>HFCW$'5Y#2G_>[9&J=\KO>7XDE3]6DA MI)?9>+^I<]F3T]U*-@NM85F"'70H!Q QK#YM_]C[6GG"J]'D>N6(E_L0;;]0 M[GPMIJACG\L-1_V^XZ9"/LJS5FDQ]@UP\7!^?M_FM)YJM W[;2EPVUK/CV\3Y-#G239P^ M(-"L@0I;K>T@Y4[ZI>=>Z?SF]SH[UPR\@)-N\E(4XF4QAZTQ+]7,#^V 2EM^ M[[:)5[OW2^NXA.[/'!*#J\*U,&NY1XO[[DQF:VZ[7*J]_NJF?MLVQTU3\63\ M8=+8?]]P)2ZN0E.?75R5[*>0R(/A&G[N\(YZIOZ4_?-:&:SSR27_@Q=Z. M(H]F^[RT+$]C&I6VCV[D?$7?L.SU_M11 MD[2%CC+#,VK.W;!%E!;X7O2X?5ON&C[.'=4E-ACD#78$$G15N!M Y%X/7I)7 M70W]NKN;QL&U6%O=8YP-7M*-K_9SX?Z>7)N"=F>"(]FK'MYD"0]606M3!8(O M\5>E^WN);+GUG:YM]M;7S5+]4KS:]3Z798]E,W].SF>I[(GLN$HI4*66OF*% M;5/X*DY!:YJOYC._+L 3?C?HVVVDZO43^H MGSSMD;>8?6R 2W>=K^723GF3MF6(AJSN>CEV4?S!;&-R<=DSU',T';=MW]84 MK+IN&ZR1YZXHWP:IJSW<9@#SQC.#!@[;1UT^1Q/Q7E[FD5)(1;-GG#>8)$6U MAL.-M5DJ>0OAF[FPVLR@=:SSW!A5HNF\D;!N^DIOU,T/W>$!]Y^[7W1;JUMW MR[YZM MTUWF%/%JM-M\-F['EQ.TOJ7LLBRGICKCV0Y$@#H-7N;9VUL@.KWIK:Z.T=[$9-IRSF>(&T@K,Q3KD4SHU)F,.I-Q_#,9I,YDG.A, MAKC?3(9\\:A1P^#\K"7O8;BMNPW/%NVQ^6=2S^Y*I7Z3Y/I M/TM8]=MZ#*&L#A^LO10RCIK3??7H*^<^N5]U5Z4I?;;'_3890,H$U MLMD5)/[NK:)IG\FV[8&%6'+5>)?G#$I1JU]X:K+Y)1BD_3"-;44J1VRK?M=< M5(+SKB+2ERV0Q"_=H6^6A[8($J_:B)^^6M[ZQA;5#=M8)RT/:]JX33F\\8[[ MRM=PNFVJ7DL"U^=C;>L=\TGNBNE3$+3*NE;L&,[7$J85.D+O1KNQZ;R;5$+Y M%7UQTUW3)'5VW. D9+#0S#ZQO'+3WI5GGS?:,9_IR[]G,>26]:O7-VYD/!Y, MQ\J(K61P*0!=)O?13C,)21\5=M;K==\L,:S \UN0&&^OUKMF0I'[-N/=':J=O;/C9I#P5QM9^ULEVAW. "3 M]LY+,>%\\'\[^O#.Y^8GZ:H RZ78+!CW0$663[WKNV[G!^?7V?I=@+>"&=[RC MUP/POF67_4:G/IGN:/\H,=U:]T>6P^QIO]@#T#1\ML3+#N"D)=QW4O>BQ?:,0)"0+MCDM MLMB'" HP7]LD6595^X*175=7FEU&+9/1^>#7_L/U4F.U4:7F"]G9/(S+9V7Q4^LANBMZ_:"J^WGC6V<>O5IG;'?EVK_VF MVUC/(982M"X 9:^@'-&TQMT@$,N>W?[E5^!Y:XJPOG/3C]0;BK!V7S##V'UWZE!D[@7+;B92:ZH9^F);CKTUQ3T%&3T]M'S]U_>.W[*0/G] MC1O5Z[1^ZYM3.W?[.^.^W.C?VN7O6]C^AF!_TROWA&S 4:VBF);J;KB^3[:Q M8]Z>L,.>RX'GI[C:^<\1?[?;N7J2U@W?;GCVH._Q?D-OBA[HDP* M6GAH;LA;[5H F_WG=%:P3CI[=! ID-0Z!;BK!3D!C]G7[MUR>Y:Z^O88O\5A]P&IW#O]G-!P2W[ MN%VS6W2=;O;D-J6SF]Q^[5-=N?/BFD>/F,D/1KG8' MNPFBE]PX*_-TQ\:O+_J#,N@VF827#59NZQ[R;UL.XN^;CWCGAUMQ!VV\Z.SE M[*#;SNOW_V<^U-7,'[C$X4D$.;=!?^^H@O+$/;H:+7*O1+[K&V";+^PTY,;0 ML\'(NLGTK#7 37]/MKT7T38G*N^P[XIWOHLO1?YG=ZI9W+@E\,6\H17&V>1> MJ['\+D3BTX!*3]5Z"EVNE3MD&\%=LO/>;67:,YZM,O+"E37YD!,9/]ME!CAB:];(M<+>:#RVAG+;+^LA;7SP>O&^,VGZ!B MJ=NOS]H4<;;<9IA]J2178.5N4X)[L]S%*Q1Y&X>%26S@C_PTMJ1X#35]T\,* MOXW@QL>-/P=C=C8(BV4G]L7PPT7>25ZMZCJG0+OUT7B')7_:>M/L74VO23 :@(=WBYWFL25,N>?XY#1^IZ MI]MP.F<#N,U1*2R5W#03E_4FYIH^S&6:NS%]UO;J=*1Q.96"7'2U>%N#P,;/C:L867LK 1--S;KNI@FT]C7 MY-5"GK4OJKG[U?WUI+#?]]B.?C=-6FW?]>9Z=[1]7Z;$W%SVMYW+63Y)<0(7 MV085>VX[HO+&1.WR+NM;QFDQ2HU,Y8( W!&A&5!V?C'K!OR*A&Z)3'.5_.[3 M:)$-Z5K-9J47?ONNQV$C5]U97_UU6ZSA77?;(?.+:6RF%EUWG[< MYD4^:UY\MW'>WZC<>CB(%;X'$6J.)^5X=M9L%<&WGL[D_,<#H4_VSK#.F;,T M)8(BY@SQX"C*J+D(RQ@LX3@&'S9!4[BUCAEN48@9W29BA9QCX.HEE59%Y8/> M@H7[OGU#2WBX/DHLR6=3T=E:0-0*AYB0=''O3 M6STIP."KS?.,"93;(GI<,:NTOMW?]XNF7I,QBV<0?HPN.ZBE94F\K2.GX;AA MZND6KC]N^91=39N"-/F4JRN+AA'^.LX'5W88NJ+/M)VO:XBXP@WOH&GW\K[I M_ND@UF]1P.ELZN8YSYI)NJ9;I6M*@Q4HM[6JMA>BGG%7"3U;U@^7*)=MT:7/ MI>/B_%.,775OC?"GS']_;&HN[2A5V4^P2SPO6X;%M\J: S\=%O7J-#+?U'*N MYJ8#&MCS+?CYFYH"]DKA$Y)C%$>)*),&<0$_:249PCPYG)B)+I)]9&MP(V^6 M).>_3"?C29XQ*%-W#7K]ES'LCWTW;^_ \[Z(\8H6OFER_9!G.29@3Z[65G"I MI39,(*4*)^P1?QH/?IY\;++"MB0):OMC,]=A1X.5$ XZ=M79X,^3O,7V\L6/ M;W[[\XM7#3M@&+SY[6]PKO-R&H35 $'"6L;$(>7M$&E?OI]<@2Y1C5^]'OQT MF4=4XI+DJ_E:\2O=D=\/9YGYI;2ZO7R1K]">/;/^M+WOS0P46+N8&0R;,*>4 M^A>K]KY2UH]Y1AI3WHVMV%'+&],)3/YF!OZ#8*#WB8OPYLI6PG^#N[<@34WV M+,X'O1OJ!N4AEE@X4,U!8\Q;.M[0/,?Z&/VL?<@E]6%_&[3Y:-C,@3=HL.-Q MWEMLNJ:;FVPV_--4:G\)PO.I+AEGIY\V*F3%;>^ U>=+E MPR0'WLW,\8H4M%&D%//^_>BL$8J&N'.28_Z"HR@$J-V_%AG%=-[T MQ.8BW^P"?%\;^@VGA=BS!#@@:J,V'VBTM(5-?;5^WAS(+9E1IS$MQIG4")[& M?OB06R#F3=/P%VZS.4^9'V@,2ZL3-W"&KK2M@^$L*I^[<&[V=&S)8962WIFD4YDB[7TS,9?[53\.C-UFI^BW\[_^T<8H&"1]_1CO[0 MS;.]G5Q>#AL,_):UL'),R)9JO4 MC1;?I+$GJ#;OFH!Q&9R7UIUEXM,*7NLYB7+3H%LL7M;7<\ M/&41LP4WZ09(KE<,TZT8E2;,SKW<@LBN#A?4 MX8)C&BY@=;C@1(<+'CHEL$U,SG0RC$N46)2(BY20)CH@CY7B-&CG^=86X/VH M.(N57.&6GGS9=M&P$T^6.HJ75O+*F*9+A>L)4R:E/AX-4'1;&>4 MH]NJ3MO%"R$^Q :?;"Y4;<21JP*/7[+SEB"JV0O)FR=7;:]^BZ33PMUV\>_& M6WQ8*'&_UWYOB[CCG3^:4=SP*7O8H+$*Q#0YE(3)[:.>(9TL0Z M#U/V \35\^N_EAF2)O$K,?8J)[S%UDS_%2-^KKCY_3+DRZ[JL.I^DS-\(D/( MSG_7K.=R*&>YHB=L$M^-!S]&-RU;#J9K^.NPXDMQ(%?4!J/AY7 >5S,LUUT5 M;@7G/GB9#=6+O_SE[0JJ]L6K9H?UO1U>+&RYG1_&O#R_84=CB"?? 7Y M^_G9X"_OOQ^\?-%\+^^[Y-I!C*-!LFZ:;5XI(88U]/^/$$]V6#/?O_G?_QG MI<]6@^T9-Z MJKP975W8P6_EA/G^7K[H_:6YVO<0,[:#<+N>-,20[Z3Q"DVS M0)EM*Z==P3:TG.8-7]9D^J\,2[!PI5\C[Q?-RTE1Z3IJ$2$Z6(4&5J)_L\GZ M\O4>.F,#D)3WD>9YOBL_WO^=Y&&%4KSY+=H\!@9VP98FC@]VW&?*:EL<\K*, MVHV34@_)%92+7#^>SAN(R"P'IUSP^/NF!H TAR+EX\GY@'3!P*9@+05_3>S[ M IH#@O]>C*X'5*_F,PKNU:E%C)KH0B'\#*N6ESC<0_KKT#S?+1+",]F MLQ1^^:L=0VZ5IT#SJ&%A\6S@*V9-::_L4FVHQ!(YMS]=> .@2>Z0:($7^\^] M1.J8E#G14C9I"R;E!F:+PBO7WD7I^LAUMLS1G;$(%]/<\-%1/;R%%1_.E_RA MO[2'=70/YX,W&;@FGW''-Y>;<_."&U*J3. 8A_,.?S"W%96G:HN)W8+#[?:> MZJS#&;ENOY")PD/#OCR-S2A7?@H(V9IMS@O;P(OLNJT613Y+QZIB-)K8#+Q2 MGJ<=>NL@SDHY>7G-YA9:>,I2L,[-9+'9T2E@5,?6\*EC8 PSAJ*C!G$3,7)Y M+)QYK25ARE#"-D,D9SC'QF@(JW2F)4X*6>\-$LYH;5T@Q/@U6N(5A,Q/15EG M\U]A0=[D[;!?\OJL-7M>0;RT[/9$M-_N2;_2[4F/J-7S]Z=LEOMV9]@2*(9& MH6*SM])4[2>7&8S&+REE(-88-QA#/:+%;A!Z@P!EW&SMM)N-K8$M.M=XZP8H MK340RRNM=VFNP)>: _,-KP90[=%I:PPT,DD2XHI 0F.<1%8D4$2LG(_1^9#$ M5GNV=80%$Q#QG".>'$$.M!2I!/D/]2%J)V^7T+S[!#%A!@[X!<*4G$Y_V)OF MZ[FVZ\&Z=ZV %"Q[74I?5H#7(V'D79UR4PL&QR1:U+A)B M+;):!L0+-[UR&FFI"!;@)03?FK4D4IK 54(Z!$B6;;)(\X01L1'R:,PC9>') M94L1*?R:H\0N M9X)#&^$\.U+IQ":P%)1$2BJP?!YK9()02&BO)(Z2&[75:RLERU,K$ADJ,9A, M3R&VX1%1R4-@*D@BU)-+)_\6A+/)>-]>#&,:_/ Y^D5I77J7TM W>6AKV88- M1$!+_I53F(^34B:8QGZ5=F=B=K9DA3G+.5KOO'^8W: 32X.= M(/N5#IN6]+T"_*5\K[G#6;%,/QQ\GH8_[. MFF?([%(-*. *UG@MU>S5&\YR.3OC%Y0-[ R+4* S>LGBJL73+6:9$'L&Z8,= MGW),^7T3LBTK7YE&!N$L$&9Y_93HQ9Z@(A*^E7F^;U7C;3ZGW M-%MWG*-U&P6"\\&/;:'QZ6[M=O A'0U\D>M57W6_#?6F\D@9VLZ*4:=85YI% M;'"8*F1T,GGCG".MM$961B.QQE3HK:EMAZ6E+CJD=0+-"A+"7Y^WW9/2)%K* MO,$[BAH'U#%RKH]0QY[N#LXSS]XL]T]WI=T-'_LI#Z*U+(?]9N-2XEQM-CI!Q$%H8[+;J"3S&B"U$XCB0B#B1<#3W%A&. MC;*,672;X'<,T_+C*X\T$]4M66M3N .#251?^Z'X'XM9\\=H"E+9OP M59E'7NY*K;SJ74&R/JV!G>0)HV:JHBKE"@3(0:8J3$)$&XZXQ!P91CQ2-IGD M%/,A;(^5:HLE-@Y%GW$;(.%%EAF*6(2P$#Y2(>C-5+<9G/D+O((?IY/+'3T, M/\?YN_1]'NB&=SI[-_T^]YSO76U95=L*2K)3(;S7VF$>D"NH6 K<#B1*X("4 M2MY:2;S9\E)W">>.4"&J']L-6M)5X9<%HY9EQZZ((\HL7-.H!YE1ZV66T 3N M>GUCO"DL="0F!:SW7?^,_2^WY]H'8-<7\;:>4M\@#I161&2SP5O>@@>#88?#8TB@X1E"&'%,";$^2,0K'I-TJ.1_- M,MSLAZL=6HNG^V;BA*NQ/Q6HXG&+-;W<5MK1S;>J;FWT*Q:+B9K)^2624ML- ML-FQ^%OSYZVFQ;7KK%$S]T A;#D6KEEF?I>7NEI,_44> BUC)[/SA]KB'8W( M.%*LM*8(1P'-"(W>?;(YD;'7]I'>E>>Z$F$8[-& ML_GFSI9D3KGG<M4\0&:^'(Z'EXO+P2B"PR\0SNOOJ>D>[35M;DE"WRTW MVMJTM*W#=O!\V?]>@*]NG;)H^T5*J]?'/(77W6/7G)%+S>V.I9+A(WSYZ%(<8ZGW*0]=I0CIBN00P1B//&4=Y&C!O/QH$T7"()G@9^%9F0*4@V,F(!&8:\9Q(:);KQ9"&)T:- M@T!ZW8]U#FS9VKS_K@MR5#U!3Z@H+1S@ETU]9[%;1]J"0JSYS:9#9-/1=RZA M 6XH1CMCN5P7VUSX<$HO:'&YPP*]N:2I+ZT8Y6 0I2:%=O%ZTG9]=IO]A9AB MF :7BWF!GVKL?W$];=]X[GL:GC8JQ)OYC:7X@M#8SCBV@7'/U2XC@F:L\;)E M4.EB@U5 MLF9M?QZ:#I_.FBLTB(38B9Z$5;M1$TGFW6;5&24ZM1B)BA[@) MN=-3&A2P"LDYX7C8VDB_R_Y@5P+Y2S?$]>-D^K?RQM^.[/!R]F;<_5#HK[-< M_M Y$$LL[ M)6R/A^,NN_ALG%]0WG2$Q#&N3UE_?8+ZA">E*\Y,Q9EY5)P9OJ:-%6?FF\*9 MV5\]DW./(7?CR#@*.5TFD]60_"$2F'11^T3LUH[LG_>O/]KPU9J+T\XV7DW[B4[A'?<1KG..1P5L,.K%@1X,6MV&E8XC^N; M$^-NF"OT]MKZNQ)Y4.:RI*;-OL.+'[Y_\^)5.PS6[CTT5=$&0S]/ N? !_Y[ MUF$AYS2W3"IG2MDF^BR)2F:7;0@.(.H:QT\Y9VZRG+(M/>L2]YRF%_S'B?]G M+JDW\-6K@E=SJOS7*U#?$ELU79!'EVLD'S 7@2+&%>0-F?;,&JV0M,&KP#AE M<;L$:KVWT6'$"L"+]P1!CF(0U5@(@[6F;KVV]+8LUV]YM?['CA;QS6)^,9GF M??Q;9A/RJX0SQYA-9&E[T8ZEP_/'ZQ=+N9BUNVL]ZY'1DIL$OA/DVDS==.V)A;P M\V7_1H>)ON1?+3N)^2XRX_:TVV]L RZ^\D:[!N@U0QX4';2\S)T\S3Y!MJ& M1OAI136=6;_]Q1A>SX<3+QO]V4XAO[B>#=J.W8RT?3YX^:+[>T'[;WIO;$9] MM;EZTQN%!6O85 67 G&3S5K[?I-D+JN%#2QGV:QJ$:#A#"_)JY9.9!0[&I&U M,\X6+L.T=)N/^;3P5E_25\O-X7SR5FBZ;[CK%C84?E@^N.W!3.=O3N.P@0\K MA^25LD/(=YNA=%L05OLS;'FW:O(QCFT'RYM%YG*\! ?KE3M/6<[^7O!UCJ\- M"OO$F0L$89S (06ND9'"(4F5"8I0J[>!$#&/DL6\>Q>-1=RRO$$"#LD89I4R MRB1E-HM?Q1O]5)Q[,^/V2RFS_U;\/#Q?^6B]QZ>) ?J.":_Y)32+/OLFL*L! MQ'&GRQ6)$8$U^,MH<[<213H^Y=6D5M:\'<#E/8<\;]1H:GN_^[MOE?3#[%CW%Z=O_N MR*?L-OUTI!;)L$")=@X29YG#79>0==JBI" #]TG$@+? >BC$QU:*/"Z/4YXF MH)F=T2/)A+82_E_0+3;2O>CK3S__^)5869X1;LZT/B;LCYV]]T_YWIE*0@6: MD$X.['0T&<@@*!25)CX*)PG9VH:1D7@ON$>1*P)VF@EP0EP@HJ@4)@I-U58G MZB.]=R+.."7']N)O8Z$S/4&N(V2,OW:)5*'G^S<#Z(-U8=DW ^^:Y@G4G:&#'GC(.PQ@S>8#(00T#60RQL M) LD"2DA1#Z@23Z(T#-Q?DQM44\O])MS1[F@U168EH1;?DD]U"3Y*<:FU:1V ME>S0'>5"P@%22!.81)PKD6>%+/*,FLA(X)*:?3B,7]I7E<=JLJ+D7K-WJ5<" MWI^S."84IZ?7F^HL-O(V)Q*DQ089Y\#P*TXA;Q,!A>2I-%$1HK:@]>[C+!Y+ MX-EQ=GL?BZ/HFLQO*HQ4I["K%JDHYHE9I(CFB%NJ,_QD@&S7>DF3<]AOM110 M2H3._ Z4,= 1JQTR7H-[X) 64YFPM#NW_]I-C2:W_37F#: 8?IQ,&Y"23GM* MG+4GK9'\* &SGK;YW%LX;=YD;WJ&6SS5%K2DV5?Z\JY1KU1ZQU;!Y];KTV>3 MVNK844$0*E5 6N.F[O!R/VZ MP1PDPPI>"Y(!+#!72B)-#(B-3!%B%:D(WPO-SF_^(H;%"$*:[A%_GLSC["\3 M.\[RUA+5CS]\7> >:8]5PK>/99?U!JDHW.;#66$I:;E?)YG@(O='KMN5_+__ M;!D4UEH\BVZ5'LZVH3+?>#X>]"-_'8WL]60QAWOY',-WS7T1C,_Q[[L#X.E' M]FH67\_BEE'._Z.X!;F+99)IWSINA@=?=.7I?A&^&I04NEY7F M7//?]WM V\5IFD#_^(5#R3G7]SSRGH>1<_FX%WQF3_B??YQ/;Q*:MCU8@Q(Y MZ__Y80HZ$5"K@:G\[[N\I=QT([]N>I+S'V[6RYOE[6.68+&:0_,]>K85B\["?=6I> M$&9/L%)WRG!N:,/>7 )8^?QIF51]H-C<<.<'7)R'C1_<1I!V,TT?1IB.8?WV M+5Y?7)2J/<]8>[Z'\*Y1'K+>2%.5YQ;2]96XH43?VX&#AZ5(?D?@L",FO>F> M[Z*N!ZU9/*"Z]W[:X)=W2<;L-O)WW*MQ(./N2_%4% M9&?MFJW5KMG7F/7P&=>[Z?6^53'?KQ)7RW4$CUPMUSXYX;3S)!&/@LZM?(Z8S"3Q)!*5'AAK:<*/Z+EXO*,B&JY M'A+>?K$N=F+A[:]K='HUS#U%+:H^8@TFFT:7%%:(ITQ,RR1!N:4)42Q,LDE& MC]V#HUMP"\/8*%IN;FJU\)<&VVU/GH*=8;5[(J&*>+5:1_+(U6KM@5.$@;(G M"$NQEB*W9+(\5&>0HC0*+C@F1#XXLGT,JZ7E;JZ0TQ+P6KM]>'#[,6:,CQZ[ M248Y_^PS_^PD#5SN&!Q_J+'NZ2A5]1IK]1 9*?SC$",%]TPX9((QR&A%A) B M0O2[AUBW:.&O2R7\:?Q#4<%WZ<^M N[)=Q!^IL3N.<Q9^9HD2$HA(0P1+N(T![W8$<2,VF.== N4;QHV* J^V#S-CXMO,]SG>311P-XN M&>1JL?9@L3!$ML%* M%"R%@-;E/?'.[EC:44YA[S RWD&P+11% MVH$O4I1'EI)72C]HY.^&TLX-\$=+:_'C9/JVV(J_@*G8DV'_/'@YFG%8.?,9D15R$"DRE10D%-1LL9,\)/U8^;C] ME_S5&>./FFEL2,JWMZ^\7WM)JKVL]O*9VTO&E0\J!,0(!GM))>0'-!FD!<7<(V&81L^:.CH M_S&9YL33%C:NB'_\5W\$-"LM;5U1E/BOQ?"JZ"EH\H4-\$'\.)PL M9J ??G)Y-8I9#QLU"W%@/]KAJ.#^@Q)GO5YJXM5BFBERYMT'7]/P\\'[OED8 M?+*S0?P<_6+>3)D7+@+P*K9(::;/&V>P&*_NN7W" MVP=G]:!$Z&FI[V5!.?^V&SP;%O(UA?><7PVE #>33RM*\S&=[ M\#3!1PQFX'+@%L'SVGAN28.S'AYJ%D^(1BE%7?-;6_E_ F% MI^\T3\S[_;(AXDOA+6ZP*5YE91EX.[L87-GK(M@@FM71K!Q-M$*I3 :CN$;< M*H.L4A%I[0B$R)XRNX6SP@V+BJI<>O!PC'$" G%KD0Q4&TX"UE2OTWK!^O_2 M+/^^N%!-9;C;<"+@KHL6+ U>L8\>_,DT]EQ'RE7RQHA?#4>9"A5NR4,0!]]R M,1MA,,O3AD0[GVX*'BG.YIU%7YV]\( -QW8$KVT$BC:][O2P\V4S>%0X?^LA MP&+&SYF##\X="E5N2VFSF(+G^-<"K#><%2Z3 ]G&&S6<8_F;6VYDY2C/VB!T M/(#;+*$D/*0=3ALR\$KT^B62Y$S6)2E!R2B(& /UR&JCD=)*FZ@Q(<$_6/E_ MA'=1:/K>I5_CO'#(_="]NWT1O++SW0BBIV@-SDKX-FV7.T=8U*I\5HE'$Y&S['GH8OQE=V&&XZV3R/A>2O5#W>H^ITLCG302>=$!6NIP(1F&]#SSXK4;SN+M3S$\X7?AHW(I85QSHP866QIKL0@W,$=!-%\*6] MADBI":3@!UCJ;#PSU>& R+/!BW4(XOG4CF>-P,Y>U$3Q25[\WYM2RK&9;2&P M(ID]/,HUET]>2<1)S ;H4>J;= M N74(J_0T]UPKD'=:'0&]VW#>X[1CK?4!A]!8QR.B-MDD(N*(^Y)1HW57I(M M0.M[X&3M56V^%M[@&MZLWP&HP193VJNUX&4GE;84#CLO#*(E&N91(6M20@D' M:U0P-&T/TCZ$2OMK$?#[NU!KW^;F=U-K/V^"Y/GP8V:B+SRF\4M!;K^^]'0R M/+^8QEBR;DAPX^ 2/KB8#9H=A1M,?/YBEO(2V=M9R_4\>[VV*W[CIO>-?VW9 MY@=^!&G[_WEQ!:8,C2< >JPCW(PG:#P^,_V^-(/1%K ML(:">0%\ON[?;NA^,1Z :: MS2%7:KC$US\ @6G^7.2W:>&V"1[NM1U]LM>SEE.Z+\J=<)85+)+9$^X-(3T2 M6;QUZ]U!)+%O+HI';5V2[<5<*@A"I0I(ZYQVD.21P9*BQ+W,1625>..6>B]B MHT>Q?[-_> L/[J;#/YS-(#N&+&(Z3&V\=\/%;^L3NQ:ATB%T4S=^D:3VM>:5 MS6\97D3^.@+C-EF F1I^CN&[ELD0Y\T:?YP$OZ=5GIUS]6NPS[@8XRL5%W:N7H_?[FL455I?]!+3Q$*W!??X9#:O4_Q?5D*B9,%I*!A M=BL\D&]GG0YF!6FU@ANKEXNWU=3M-6JH&G7J&L6J1E6-JAI5?=31:M1S?."J M0=4G/5)"^[ALS[!43X\3P&Q(&.>*1R,$ 9S91F**J,C!,6120(LAC-:")PLQ5N-T]KKD##G2#$I M$2?.(4.X0M((S;&+2A\57"1ENR?:OE4=>!RTK&K3JDW[!FV:=B0DK@K[,P?[ M1#/]#R%(6@LFJHSIBTV;YB4.WL8$=A L&9=1(">]13@R;1)S.D1U1#:-G#%= MV>P?)/S5L%7#]HT9-N4"\3@D%$@$PZ:L0D9(BHQC$3.P:\YN89U6;.\CT((3 MI,BJMJ[:N@?Q&& BO0.[93%WB!NED,9:(N6MY\1PSNW6:"*%SY06'OGDP>!) M;I )3"(1&;-8$$LR%(L+-!3"G/K7V,@_^VXX6=7@_:V=';".@S6N5'V!DZ M)6O_\Q_?/$L'>*!XIRI25:2J2'M.')Y_9:CJ1M6-6EQX3L6%$WS+^V=9%]ZK ME!E/?.8#L"PB)[1"R=$0@@Q,ZBV0UAB9LI(G!(=DOI1,="MQ0BPI'(B/.G"[ M!G?4I%;OTILVL;I?L: ,SZ-_Q^DDOV)-"?VN5@H>4"EX+!+#XPR]'\)@V *] M^0NX9 R#EPT\4 R%["3::6ZG6H,)NGU?U3-:X>J1JD>Z#]RP)1P[@I%SE"#N MHD?:!8]!9_C? *9G:TIRJWXJQZKFKZJNFKIF_-]%&K L;>(:I4@L#:,@C+HT%. MZ\# :$1/MYH9!)?2L111"!F^"G.&3'(.$1-]LD810>(1F3Y^ALV!^0F?N_ _ M@UI\=Q.'O<5&A(1HPA+,E0839Y) #*P7IS(&[=F#ZZ=/';(Q7,>% M'E)IK3U9]]2YOT_SER#;THT580B11P$TBQ)9'BB M* @;B PX2$$>4D===@OW7-'WDX6;I\5HVV$537X'BESW_FH%M1J]:O0.8_2, M\SPD7NR=S7.N&ED"\;7442?C8B1\:T3B+A74:O2^9:&OE=-G]TJ_>3MV7^Z] M.VZJ2\E]T@9!(*<0A]@/6;!NB#HJ)6&$)D[WPEKV&';QA@E90YY?A>)VLY.W M@A;^YA2JFLUJ-N\3_DF.L94!@CZ(YWC4&!F1K1[1*AH?#?9;&^AWJ<;6\.\H MA+ZB_^T+_2^.0\7]^_(3M^B:+>'?%A3IK;5K':63GM-\K@#&8Q2_ I-\!%'& MK1 :[K!27W%/MUFK9^K"&+.<)!J1LDHCKC1'AF$!O_IV2KR7([7YT<7FZ;\8?5@-=#70UT(\%I1B2$-@9,+&:(7JU MTM5*5RM]#RN=! XT&H6HI GQ%#ARDF"4E(]8>F\$W@*\K6%TM='?;"VUFNUJ MMI^!V;8IF@C1M%.8(VZY11G\LA5R$_HD?L)%?R<<^(_E90UGV X7M@V9PW#CSO_ M#H>OUJ#OQ?FY8.SWAW#E_UC,YL-T?7N'L+K\%Z]XVS7,CPR/ON/%?^D2RWK( MSXM+<$>^0^>,1F!/,?*)9"PTGY"FN2,[2>9UM(;@K>GR^[1M_S3^"(\TF5Y_ M/YSYT62VF,;W<,8_CR;^GR\&<>;M57Z)TT7L"W;_I2)^KKCY_7=7-H3A^$,3 MP'WU31/ZM:7?>U-MX#"NC2??+ WD?M)@6#18.X8H<3(C MXQED=.+(&T&D\-I'LM4:=!]I^,U?Q+ 8Q7=I*1=O%],I_/0^6X([2L:^A4!V M2<$7=?ZVDO"P%]][ZWG=9\/9/):&R@SZF2:YC C*\'K=1#0N):_D34F/7>F2O9O'U+%[9J9W';NV* MPVC._>*F2MG'X6SHAJ/A_/IU=XY=+;'ELM*<:YXO^SFO8+['=E'@+7W^[L4? MOW H.>?ZGD?>\S!R+A_W@L_L";_2;JWOCGEQATKKG2GOO[B9M"^"^WTYGYU3 M8<,QV)#) A+4,+O5B,^=U^DK9?Y#KM23Y29?%YL;[OR B[/*%@XE2+_%JWF\ M='$Z8+AP5?'#"M,QK-\1%+BJ]CP+[?D^^E9Y[D#T5I7G=G'#XXYI'#B#9&SP83()M\*].NZE.,&QWLJ N\_A*&D\]<8BQB5'7!"-#,W0*^%]9__8%&2O.)*L8V-5V'?TKK;9KGWA\GC,M#$.*6((X M%1;9A"WRW"BLHY,J;D%3* MJESWK9L>H?K=\Z7?J8CQ;?J?1X(4P];K*!)2WGO$37#(:9)#1^W>C>]Q,OS>8^./H MYW^ 'KZ?S.VH^L#]JN-SG/^M [ZW<6!>JF2CPLAQH1"7DB%+/'@D+JB6+ E( M)O::-?P]P6.[=MQ^F,;9? MM'D<8O!I.+\8V,&E_<=D.O"P-A-X/Z >,S\=.O@\+:9PX#3?[,^3>1R(L\&+ M#F4$3M)!BYP-QG%^SU+!'M;UQ<"ZR<=XOB:1-PG9B+9>XZ A=(L4<>\P MLE0+Y*T,PC)K3392#^0"_F4:K^PPM#R8&=WE77XI[?3*F]DLSF=UL.GVXJ+. M?]"C,;@U832R 7+D8]1"*-5E&8K4[C/ MM-/W,45XH/!V,IO/WMJK(>3[<-^A??!.AAKAN?=\W'.>@OJ:B-31J!,=''K^ M3UA'H^IHU%'7(>IP1QV-JJ-157OJ:-11*4\=C7IH^?1_XCA,<@'F:C(;SNML MU+?8=UWG"_:X<^ X,X([B3S3&G%-';(N!&2PXYIM5?57AVKO<*2\ZBX1\I)@S@3#AG" E@A"U;',L7Y M%E?K778Z#V>OQ)F4JMJK!P2R=0AJ9R#;;#1VNYA7=CJO8T^GHT[51?1=A"!> M*RXP\CB[")4P,C@9))0+VF)-#'W0B-$-+N+OH'V_-LKW2]:]??4.G@FJJ\NH M9JN^TN=OMAAC6&.%(3:%))SGI@5CB$+$.$49-SS&L.?(]D!F2U!W(,NA9LJ[FJK_04S)6P,9AH&!B_)N1[EJQW5?:QA[0II3_4+?+QA-=. FP@WZ@+C M!KG,UVR3<\)9K0G9XB9Z0!C[/BO;OLH:XL!SBL]=I*N5>G:O])E:*1V2MSH) M1"/CB'L/<2R1'B45DP@81ZKV,D]] "O%>6TRJ,77_2A'-^0(DCZ;YRF\:?P8 MQXM8_<+)*%'U"VM5#8A0!4X*)2AJ&'1B,Z+F+=K56S^Z5/E-K)86FDA.'HI<0D3(&ED<&@@3WAAMJ I9; MUNK.'06'M%925M: 6G[=CXK\MIC&^?6@@#& AE=TSA/2GNH6UHH;E/!H+45. M@3/@QHW2VW;%UHVP^[%2!3X*_3M.)_D5@WFEWU4K54NP>U&. M=U\!SZL^H7*K5&Z5._@5CIV1(E=! J:($\R1C3@B:[QB,DH7W8-*N-W67@_^ M<;]=:?R,''HH[$A94&JD7*UBM8H'LHK!IN0U$MPQQ+G+,# V(# U*?)(#9-[ MH9D]F%449X)5J[B_R)SLJZ#B09APZG7@//J]T,BNCY>LH[KO>=@$/!@^\'C<,R-"J3Q1 MU6Q6LWDWM$=CI',4XS,?;,.[G]W,3C(<^]$BQ#!X.EJF_[CITG7/D_%/V33'V?S/T4Z'XP]O6X*M M-^&C'?O=76ARS<2(KY@8>KX;SN;Q7_H OCV"6WC".X#5&M@!+ =8A&;]D6M> MP(KBS#:OH$^LEN^AHU3+W#[SZ:(1GC0\V"F[7#45-PZ#.K6'_DMFJ]O)+U:N-QPO8G@SO^U-_C_R8H?I/FE:,GW^ MNV:M^V)R8A[N[W$P*NR(DY2&H%>9?.N3G<;,C!,'Y7J9B_ C:#/\90 ":;.* MSLY:?Y>5-+,J^LGT:I+YL 87T89_+>P4#$%VBH,W^?'&9P,0: M:_ 8$+9_! MCD;79X-/W>6;*Q5#,A[8JZO1L+W08&1=/G%A:-PX6[E;"R9E!M;&7Y1?0_P8 M1Y.&G3%97QBW\H&_Q0^+_FV,1GE^*=\Z+,\"OCE?%(,%AF6RF,_@ ]_1/X[G MVO7^=.EU5E5T(?-K79%9_BUU8[NU'<@__K,]CF02N2::Q4DO!?)BN3W1WOUP/!J.X3;F MH)4-"=_Z!R PS9^+_#9[%#;!P[VVHT_V>M:2L?5%N1/.LH)%,GO"O2&D1R*+ MMZXT'402MP*J-E*QO83@UM'*7DEC&=,T"A&1(A32$&8C@C#,H&1POB"S:1L M^'Z!')CZ//?R/N?0NR*X$Z3V? =NM@5L+#X^N]U)%^\V'O+$Z#T%.Y?JWNR7 MY+[,H/<[3)]S3A^9X+,^8GW$HWO$(^1I?6:,=B=%!RDK'>1F5\S%-,;!)?Q^ M,1M T [!P%H!OK)#5EVJNG0[7?H9$M^J2ON1M2-T_)6@_=M=IX-9P4HPO;EZ ME9!][U'#L4+.L8BBI-*JJ'S06WT4ZZVPN:%B3\,A5%2^N6<@V-6.53OV MH&%A)96E/J,?IX!XYH*W*3DD-&?8:\F#)9MV3' I'4L1A:# ]F'.D$G.(6*B M3]8H(DA\1#M6:>B>@6!7.U;MV(,@,96-D+&!$=)199MDD3.,(@C$)#5&,.[W M,J!T,#NF9;5C-8D\^E=:C=8>C9;25%OK#0J&@@%*Q"/K(2%,0FF13.*1;1FM M&)FRDB?DG<&0>#J,C,0)L:1P(#[JP.VC&2W%#XPK]LT8K:,BH?CVBHQEU:>B5IXL:J7D).H,&R%ITN G0D"64HZX,EQ123Q/6ZB5]RE0+B$G M]NU;"-X-+5$Q*Y]58%7-Y%/+P'[EA]9ECFM=91C64U ME@\TEMHH"N8.#!^)%HQE,,@Z%Y'!"2OM*4]FBQ#^/O7AO1M+?6 V^&HLJ[&L MQK(:R[5A@FA9Q$DC9UP"PV<=<@GB1<()CII'A1G_\A5R.LCU]CD M5%[OLWOD1P-CZ3?5BSUTZHMOL%$_[S5FFMII_!C'BU@[!KY!S*.*ZK7/G7[" M:922(("\RW( 6,3IX)C)%E5B'.B$6.<8&D#IH+.*-R M[N [_5I6,*]O7YZK^:KFZR'FRWD1'0D1K! GB)O@D8U>((:- 0,&)DSJ3?.E ME7 \:HP2U@9Q(1.RTE@DDA4B"$:Y\8^2DQC1X3I@DA[95BAP8FO.;L55/ @IRJI7&7^,LVJF_&-AQ M '']&$>3JTOXJ#J2D]&WZC_6*HW"BAB)1('F?)U+BEQR$.MJ96G@S F\'>LJ M1U6"8R 69I"J.X>,\P0%")N3<4Q8&P[M/_B!9].K.-=,O;[E(S5:Q'L>RSRC M,!9Q&26R3@L$YD%>=JM.I;/E*CE7=@N;04:<$$9-T\(>=]1,ISER*ARB6VA6PA*8_::D2# MR,?#(*3)1>N0= M2409;X3>XCD48DE7<[,M[-UK!<>:#B!!:N9@-4$1&0J1%P'Y9"+4PRYV& MFW5$IX5E%!$9->+$<61R'1$'H;E2)$+$=?!("]="8DT&ZRL] 1,5%3%1VX02 MQ20W4#-DE8D(LR!2Y@YGR6R:*,>TBS%2Y+ )B%MID!60&SKKI0G&6*\/WT!] M8)3:;T:<:T_B(Q82_RN.X]2.2B'1!OC6<#:?VOGP8QV$KMR:E5OSWKM9VM"0 MM$8Z486X<@I9)PS"5%#*'%%&;>UF1<\E%@0"X\AE'ER,R#D*WLM&99(-FH?# MSU!C4RDU3R/PJM;QJ>7@9*VCCY#W1QL1*R$ZP1@90TT>'K)&TIBTW^*2\%IS M28E#03F->*9Q-Q@G1(+5ECO,5![K/K1U//!F?[6.U3I6ZWCBUE$39I@1 6&6 MF\4E]LCYX!%8'T(8EHIO\]M:):W)H!=,QQP[TH@T]7 *'$60C#+F\<$I&\FC M\NRVFI%F07B%/ M#)A"!Y931X@;HUL3HLC$X)O(KU&)$H!KL<9I+T+R&I%E,U8F,1MNBMNK6.& M6W >^9B(%7*.110EE59%Y8,^.'\P$Y4ALU8VJK&LQO(1C:7!4CI,$W(IY ;\ MI)&60B IE39&"$.PW&K:YW ,2Q&%D/,!S!DRR3E$3/3)&D4$B0$D*.6!8XVHN:]9=;>,)VT9F-2.,),13M(A3"@DW MCA@Q+CF)2M!(MK!-8F20D/.$?$%RH@XC(W%"+"DHJEB+5GZ^HZ4=-FV$Y EL(M M 4_*=4#!$:TB!@>LMEK*[^=]9[,8WUW%W($[_E $[B]#ZX:CX?SZKW:^F,)_ MW^?'?@\7^O-HXO_Y8A!!^*YR<7NZB/TWV2]+\W/!V.^_4)LF]"LKL_Y^95?V M;M[P/Q:S^3!=WT/3[_!N=HG,CPM8ESB8QDL['&=,A$FW?FV-^\I>9Y35P<3! MS=JL9+/!IPB'V!DHZ&@T^33K\]YV\E7$ZZ:BOUW,)YUFY<>!*V6!SU]'(WL] M6\\A['D;.M3[@ M%;^ROZ3OOKUTHRS?BA[Z@7O:^FFWE,K5/C7+YB:CL%,I7P['@_G%9#&SXS![ M=7]JO_OO:ICCM=?1!P>XXM0&XR3^1MY>^X5^.ID_XYL5L7XU8\0,]8A;9I#5X*R45DZD&)U*6P0LA_13>YN%TDK?RSOMDIAE-^_S4YBC M9EI]ANXKZ\+KP?#R:C&/83#,QB16V*P*[%B!'6\A-R^[)3NH6Q0Z>!6414QS M<'$R:*2CH AK:XE5/"F\-:&Y=[?XMW$8SCS87# 3/WSV\-4WE_FWO=7Z'A5X MYFA )6_7M[]SR.Q)DKU;HTM^Q5U^DP"3OX![S .W'^UH$?/(S.9$[JC5F&&L M:6"%P:@P&'MQ@5)&RXD.B-'<82VI14Y)C8+FUBGC) Y;?,+W<8$[G-_>$D$E M*F#0/K+!PXVT;Z:%WT@&>"!#_6P=T:VGTI_!LS[CYZL-5 _UMV\7TVF.9Z\F MT^)OOQ#17M=X]AO<1:R3X?O<2<>6>:4E"B1BQ)-BF4LY(8QY%($JQ\@65.4> MX]!66?L8/Z(9^GHS]?CW1X\+.'TWU_\B3GEKTKT7_ M)W=LM>A_LD5_QT30P:#@/4&#CL)H;U_[BY6Z[5OGA]HH SHS'DH&*R4!!9[RAR GF$$N)&^IU MP'2K[?(^"."_3+/;G%__,K+C^9MQ^.%?B^%5[K7\?CCSH\EL,;TK]#?BYXJ; MWW]W94, _6TBC'WC@1\$6W@/@F'.?]>MZ,".PR!VRUE2[KYRW2PMY'[20@,8 M42H/A>7'K3^\^+/QO.>'!2_-N>;W!8/GAX1FOQ$,_KZX]?4);Y'Z5K3[^WNDBG9?T>X?#^W^ MUDCC%>G^UHM2M><9:\_WT;?*0XKRL*H\QU@R/^[*[H/FQ.PL7H"$YEFQZ>1C MK(/.WVJ/1.T(VF.1&C/MB',6$:,BXD8+9 V/* CG@F=&)!.VBM0D,JVB0XH( MA[@4"FF"*<+>,,IUI%QN,7WO+(?\UW0RVQL,A)9Y"-6DHJ ME/?"/(D!(T)5 _: B+>V-/:X5X=QU*NJ5T]Q,KI3'43?01@I=8Q>(,$T0YPJ MBTR":-5CDP2+7N,;V&VP(4$%AZ(GV:EXER$+-&*:JLA,,(Z%IW$09P37&+=: MKOI*3\!R>6N$= $CQ6)"G*B$X#>.+&6,8_<483O7AND:[)ZA,U6>L M8>HG!Q%N,(AR(Q%W&379.8D8]99AX:G;YOX5E N(:"G2DD*T2\%=."4I8HI3 M+Z0)4MHG\1D2F^HQJMVJK_3YVRW%(Z8,C([&(2,D)8? (AFD?60$?HA6; U+ M1*I)XI"E6X?A&.8Q,MA:)+'7@5H&H>[3[$-Q*:O=JF7&S3T;#\8?J&$Y& M9ZICZ#N&A*VAE@LDC=9@Y*E&EN2 UJID"?/6F*TBB$U,!6T$ D=@P)EHAJP* M!*6@M99!!.N?:'_O3%=2J&JYZBL]!HNV*"H"7X[P328PXA@+I"T8,N%CC(8D#8GY4Y5O2;5S6%9)VG^R4YC]1,54:DB*MUWJQ"3F"+WN>P+?H/P@$SN@B..28.)%"YNE4^D MH4PF31"AX'!X% QIF1A*\)/RR5.MGZ;)P<@#MS@\*SBE:A^K?:SV\2OV,7IF M/58)28$5Q-5>(F>40YAA%HEG'+LMC!"NB'9,@R45@8-]]/!3(A8I046B/ ?Q M[DGLHV('CL2?E7VLC&Q/0"A:G=7)9,.UZ+.VCTF9EIPG)!R)B MFD36"(\-] M$!P^343N _3M@*62S.">? :V> @W-52(8LI01 #)V:Q MELEM30(KSEF4&@Q=;CGF.CJD26)()2J\L-93A9]F$OB,LP-C,G\S8E[+U0]5 MF#?>+RX7(YLAZ4*$K_NAK20 M2132S*WDIO'H1FV2E(M'4/:ZM+%C)$SN7J# M2121>!+X-I+%/2+OGC'XOF<+X.=1S#^ 2WMSF4E"_EW^OM/=[NV31 M:(P]C]N3_7O=)?@Y[C'_./24YC/CA]FON2357%9S^E2SRFS>7=Z#3>A0"G;7'?%+ZG'YF M.XB?K^)XEKERIH4S9WXQC7%P"5^^F TB+$48;#,8E" _H[&?#>:Y;0>^=,\R MP!X>YS]NNO0=SKO_IFH1K'8B=PDR"1&7(LA2I5"BA%',*/%XJZ+,K77,< L: M+P7B$2OD(*I#45)I550^Z"VJJ/Y[W&EFY)J9$5\Q,_A\MY%Y_#<[@&^/>OME M3W '6="K:"]%6]@8N9+@3)5@X!V900:\*$H$!^R(!C%56S Q7$K'4D0A* KJ MP!DRR3E$3/3)&D4$V8);.(AH[X81.T71/AM,X^PJPD)\C*/KLR+IG1,8#\?5 M!SS,!W@52/*@(PZ3'$L*Y*2G2("V**.,=V&K8'T?NL"#*,KN?<%35)3J S:R M*N:TE$PA:R$OX@HLNZ,.(Q),,!1+%XG=FD^.3%G)$_(NSYGEKQN)$V))X4!\ MU(%O084=1+1W ^R!)B=\R+-9[9?Y<%^?P:L>_2*'Y&83B-1?BUWIX,7RPW-]NZ'XQ&$;&@VM].69';] Q"8 MYL]%?IM=39O@X5[;T2=[/6O)1ONBW EG6<$BF3WAWA#2(Y'%)^4G7[V=O;*4 MIT2%O+D19<(^UU("QP(IXS@_F6 M8)P6>3G7Y]R8>W-[RWNR=%-\3N5]B<'O?]G[@K6]@U&IQ/=J MJZKV/&/M^3[Z5GE(41Y6E:>.4C_B>,'W\6,<3:X@+%C1-M6Y@KV"4GQ!T0Y4 M4;^Y<$6]QHKQW'RIX%^*9>)-%5 ,2L24/V)IJ\E=I5RWHH@%PS-FLLV-\7"T M3=(K&A+=QJ3<7:YJ(L^_##,-2&\_$7MS;=[K\Q MV+Z;/[R%A7?3X1_.(!N;P1-,A^D+$J8I(=_=\[([MSG[Y[OYE1/#".5)(\8< M1=SH#%^=&"(4_W_VWK2YC2-+%_[<_Z)""QRZ)$="1J9>-:,6M#"G?$0Q!L&Q34:X:^A>NP9+(2I8 MUC+'>^K(^.XRQT]IO>Y(SM4EJOK/\ZC%64O.GCM<0YT*.&B48N[3B"E&FF*' MI+4.5!!EC-HZ@7"3,AA/Q[Y[ZH1>L>O);>D3Q2[BP78BC(+IA &[$I7(!":0 M,U99*^ /V>JX=9.:%$_'W'HTA%ZCO+=EF\(1)XDC8X1!F%-G+1/:4G?'=M:&1-@LO+O#(NCD63J+:Q'T M"L<5CA\7',M<2\8R@K!*&$S'"%:CX!0EX0P5PD:L[MITO&LXQN1>BQP^%3BN MY<[OVU*]_&3W=8-6CW\)[R&R5Q>I*EZU"/0N=;!G500:6Q.HE@%%813BBAO0 M@)Q&C(H@7&)!B;LV8G=8!IK=<5_=)U8$NM;,KW!9X?):Z: ,@QF9RP:17+@T M,HP /!-*.%%NA+(\FCLV,G<'EV =5[BL-?-W4+!IT]M1:^;OOJ@L-4G1( GR MV'/$.IF;^YC^_31>3969G9JX,*][_7#U]FME90 MOD#LDO,L28'$LHRR8 MX 3T46[S,4TL\M%.FI"2(BE'.+-DJZ733:I:WA/K\,HZ54Y<+2>X-,X$T&U$ MSK^0R2*'#>@[G.&$C0H>TUU4VJ_$_N!RXESM_>^K WQI:8\KB@&K2'#4WB$V MG(@/!-E$,&C;-# ;=%!IQ\6 5_6D:]'?]8[_LIBUD\]%$7@XLKNF"I(9];B= MGS;MI.D6LW79ZL;9L9WXV)S8OH'_AVK%_1.L52S$ 6.WJ*=[PSO9 >?LWM]Z MBR*^]-XK%3^M.>YAH>)]"8-\4^K=;TG+N@!U 9[2 JS+GLI:]O3"ZKW[NK94 MBZ#N[GA_*]ATK\#[9.>U:'OR[ HU^ 6O[[ZB*UM5Q^Y:C*4;OEJ%I# MOU97N,\S*S\O7;9VWK@([YQD;W27FBD8D%VH)P[JI.ND][8DS<,D0C_1).?( MA8M6"A2I#8@3(Y&..<1.DZ<>AV#"5F#])DG.JR#HCM*9U8B).SX?^VA2E2M8 M[?&65K#:93<#287D7B-KF$'<)XP,HQ%I19P64AE!MIJC4&^]TL(CGSP@EN0F M5YF32$3&+!;$$DWO'*P$JU4M;V.[W.!\_GXCX6W*9L_LI!_78G!UTG72M?I0 MK3[T'9GRP5 38\CM.1CB7"9D73X_(I4- 50";+:*9-\DY7.E-OS6S4":3=XL M9K,X\:<;@/T?MIW\OKN2L[474H7*"I45*F\"E?=4J T'2K5(2 1-$0\V(.L- M1RPY3H7%-OBM0THW.;=Q%]#;PX/@IV]@,#//L\?2@]1IJS&L2V-8<1)J]*I. MND[Z=MA:2_T\UU(_'&-"/&@;299#@0HC,!#!^#/>@,ZBG?/;CN4;5$;;N6.9 MTWLMVOWHR_I4:*S06*'Q>E70M):4*I2+EBD/=8RT:"]95L56HPG M8,(E!,#I$%> CUI(B2*W,AC+!)7^SJ&1\'LMH/WHH?$:%<\N_11NW0^0W,'1 M\*V5RI.[O!;!MUYQ51D"JSB-3" 60D \.F"1D$RN@X2C]];X&'?AD_XENODO M;>_'7;^8Q6N6($#\0''SPZNI#:&=?![.JM]I9;M='0/: 0T01'\"GXSS M8_@&I]7HZ:\?K^@T' MS2=XYH4Y-(?PO$DW;WQQ$\['IXV+<=+,XG0,2Q@.GO&6ORV[V\]O5MGQ :O8 MY.H;^U:UB,28O"(*D:@ L"G7R/A=]9KTB>TZ50'WW6I[)/M8^3%W^=='M4K6A>W/)M G5L,C]74>X!Q_0=K,&N M)-!G6M%+$Y.T(3*GY)&LS!!D-?,L"W>N$GEQUOR1JWE=;T1'#2_ MW:S"8WM1\-22C]O)^D0IGA30O[ TRX:$+%1=E%IP(=0NC(;*,_<[@EKL M\1R9Y\;?2CF,O&<*8%Z#VI1KG.H85621!*&WR/PF20-W3.;D % )?/MZW&A+>P^;-A@R@^>^M+14.V]A_VPM6AM).X&FOY]\[_G^2 MZCR[S'E&#_ZRW)D5:_>%<[N\.2O'2S,^VYYO5WV]H:=5RA!BS-%9FB4#HT!1 MFAND.!>!!..UY?='A9^R7[U6@ET3RO6(Y+Q0R" ]5%O-Q22?7KU5:0XTOW%1 M4'W?14'ON0KI$YMAK0GW%&O"?2,,7"L8/8D*1E<'0FH]HSNL/5NYYTEPSR_1 M+YF'#*&2RCRU&-@]'J18F2#9193-BED\CI-%K"FDC[ H12VWLLO#>X)[*CE% M O.$N"06&:,D$BD1Z26U"F^E?EXG*W[3<_(&F.]]^F-@O5V=CR9B)&@M$U5Q M:^^WM.+6+D_S\*2"\PH9YC#BFA!D7. H"1FC8X:F[=22Z]2TNW/H.!.[6Q^VMBJ[CX9L7&OFL 3E1;*$V(P"4AJZQ 7"J2% MD $9&IVAH,\ZO56BXMI:[I(%/V0.+)(#!,&NE-P1)7=<@N*I4W8%JR>WI4\4 MK(CSA D:4* 6=%4#"JO1AB"*/1/:>Z+%5BFS:ZNV=PI67-SQB?5'0]G5<[L[ MS^U1SAZI-5&?%P-5T; I&KP2QD4% H%9!3!O-;(J2!0%EMC%Z"*_O;>V9+6M M71]G7+2V](D"%A,Q*B4"(HI3T&4=S0Y;@1RA1$I0 M2QV^5>N1^P$L+6II_^JHW0V?%&)=.VA7*=%50-2"QK6@\0V%#*:<4&4",B)B MQ#TFR";C$&<6DPBZ,29A%Y7]-N7,QG&/Y0&0G4D;P>BSK#9<5>B*D!4A[P0A M#=9!)^U ^99R.&VM$^,(&VN44D%11G;1 ?!>$)*.E)05(??/![UYGA%6['+" M_38<;Q[B$ZMCC,O'XKLX8+WKYEVYJ$G5\&NUVEJM]FY\2@3$DF$!*??W:"I85+"M87JL$GV$,8%(A MC5D&2VMR:6^# "B-E)8&D;:Z'MQ$\[]SMP@?:7ZOK? >/5A>I???=XF!IX.^ M3W9^WWUR^0G,M<[O<<^OTNJ3F%_-C+RMPO1CU M5.A.BR<;3JWVB*?$P=KQ CG/-7*2,&,2=A%OQ3ENXAKZ,.O"PL]7'+A,H'\S MMGW?IC:&W=H^>F2XJ0E(%T7=-B&$"G:_HX_T^5?$\= *K VQ1XCE#%3-*(>@_"R]"$M,I%J90WP0FON7([2>-< M(<3O&2!6$8O3'>OLZHZ3.)\ZD5?<>G);^D1Q*P82G#06X4!P/J^/D=7$(V&X M4$YQ8KG>27+E?>"6XE1%X=U+=EEW?=!*48@&K'S=Q^:3H';RDG\ZJK M^OGP4146F\)">*>Q]!(Q(0WB4@1DK*"(>S ZDQ56QYTD+_X24P2Y$(8&5^MF M-7>6G\-KQ9>*8'5+GP&"8>4BL4;F!J6@NCK,D#%4(&-@X,?5?7O"II-B:]S-S#5]%1&M,^.?:Z)]!>(* MQ!6([P^(%8O4&XH12%C.*&OE;=SOIPGS][1QOY\6S&\G RUF)IKETL\Y06;>-=UB-OS^K=81 MC9TWVRTP2R?GK=Y^S9$];5SNVPSF(?PP[DZ:=M*\Z^:Q(7+4O#C?K&(^LY-^ M(/_^Q<%FOL[]KE&S25;/C#XNKTK73&> 53-X$.R?'R\"D,$1;.J\;\(B[^^L M^;']J1G'SV"_9H+I&]OWG6_+[IZT\T,@L'D_!RK)].:[V;3+S;0;N'&X"4@2 MQ-+0$?S'%IXU6,'369=BWP-%P#7Y<$/K8W]PCNTOXVI@_=)7WN?DQ7]_,;6? M(YIT(:XF^N)-M-=H M5+D#FMK&ZON?V_UP#]'G2+,(F#5!'J[]9\O1MY-Q.X%AS ']AD[RY[\ @AD^ M+O0[.-%L@LF]M.,3>]HO.XIODO**.)!B?$<@I;U&,)+J$ M8[2*7U1N/_K#&!;C^#Y=2 !?)Y9\ROK3)WC+S^/.__FBB:#F3K-$!!GQXIXD MI%RY<_= 1KX&X7 ,Z]*XTV8*.]:%IC27CTTN.FPGI_^[;TY69_+LLJ<&?)*% M(LC*,:A!_[#9] -Q[KV^L4ZQ3W,,I?B/&IZ\?XKMU MG9!+E(/'W+3]I@?X=S7!>ZW%(+]1B^%:E5_5X\X&9C$=>-P=5#WY?D^V,Q$[M%;R>A_^E.J/7!UNG!JCL]/Q3, 9<*=3O5&I[BA"L'?8V# M6.6@RD&5@ZH,JAQ4.:C*H$= 4'MU#AN6ZN$S4*^UN#_;L9WXDK_E(KQSDC-Q MNK2,8-:4YD=XJJN6V=MA,K'TF'.F#2(Q8<15<#G? Z,8@R-,.V'(5KZ%]CHD MN VITDZ-.+B'<(6D$9IC%Y7>3B;^F+/@["Q<7FYO5V<8\8B3VES]"=!YA;4* M:[?J^Q(29YQP%)(7B$=&D9:6(HI!+[(D>)KL15CS$@=O8T)1 9AQ&05RTEN$ M(^!C8DZ'J!X&UN@(ZUI@HJIF>[^E%<-V62LG&9D4YL@ZFOMZ\X3@:1Q)(94- M(B:B=G+.ZWXPC(PPKC4A*X;M_996#-MET0#&K&8DU_MB#A5#TPF,D<"$Q.B4 MX5FGNE TP%NOM/#()P] )KE!)C")1(2'84$LT?2A]#!.[[CU]J/!L+VJWO[X M_))+"FWA]6W?YU.'^0S@+![%T ZG<&S(F5YA,2MG50]C=5D^-Q:KHF13E"3! M)<;"(AN#ROHM10;'W/>:X,A9"$9L-3?BUCIFN 4,E]D-@!5RCD44)9561>6# MWCX9]E51 -E7<'L.N[Q[?R63V'IBD5.1@L[K&<7@0WP$/I6(HH! 7W8,Z02I]PIAART"X-+(2J(!SIR1-A&?Y)9.%B-35O*$O#,8<>HP,A(GQ)+" M@?BH [=[@61L9&Y8?N_ID7U-L;P5]WR,\_DX'L5<%^W(AEA]EE6$/#L1\N,- M"S=>,UN3:)]4- C[",HUM1)IPPVB01L6I')4;#5%WKT/](,]+=R^JTJP[.EU MGOB^(/)W'89^=%Q4L;)BY1Y@)7'<1@M820F3B%LJD5,Z(F6BCSA&GNA67\K= MNU1WC95<5:RL2N2CV=L*C/L'C( A@6K,D58R(4ZB14X W!EJ'.:>6;:=D[5[ M#^V.@9&."'MZ*?(5&BLT5FB\/VCTAA"C0.LC0C+$%4[(6>$1(933X'7"Q-V] MRW?'T,A&1/,*C35]=8?L^.;03C[GW-7)NE7C:6F(D>^,7]J^=%@Y6<)WRP;<(%D9DGN23#Q896\Y <"<4QT$[? ^>[/O#:R99Q>OJ[JG@7,%Y[\%9 M&1R8LQ&0M9QP9@EI:3ABWCC);)*"[Z9AV;Z ,QEI><>9@Q6>*SQ7>*[PO(LB M.C@0;(E#5F. 9T(ETCXEI*(,VALC&;T/C_Y]PC.E57N^MXC #;+ RS26#4/+ M4V\2(EBN36F461ZR^53\E0ZD^Q)!V"C,&R>AEN2]*_:D!S3S9^@6NA%Z>6BSW"N>>+96Z]-KH%ID4XLU^JUBA*C611IJ_:2% 0[&9' M3"..A4>:@65"2+2)40,"43Q4_3AUUP>6ODHK#RG9GF&J2 71"J+[ *(Q1J.< M%XAX3 %$"R#B@)3@W- J*C%EN_=> (&1$+:Y2/P@%M("RE1Y%8&8YF@TC\4 MB!IQQPGD%42KVED1\SDC)I7.><=13I=$/+M0K, 184X< Q3%A)BJ=E;$K(A9 M$;,B9D9,ZTWRC&'$#]PBZW/1=DE-E%)@?Y_>R MO<]PRI6BG_3V/KDIWUOUG\VL?+'_Q"#/]W\\/XZSQB]D,?E^7"ZI%@780 M"'UP4[BV1[Y=Y%\FI[5V2"B%$1?1(BM,0(;BB(/B/N*M[-*;Y$I='O%_,[9] MWZ8VAC<#<^ZJ2/'(\*=7TKTFX5=XJ_!V+7@3Q!.GC$/64(%X\!Y9Q@/BS!B5 ME)=!;7>UO$%BT_W"F[K[E-"G#F]55:M8]LBP+#DGF%,!26H8XLXKI",UR(?D M131*^.VBB555JUA6L:QBV=YA6?(,>TZ0 > ";PQ8=F#%#-YW@Y.(#I4G9RU&EBM!K8[0>4IE8PPADA,%G'* )<$YPC$5J3" M2H>EO3NE^UTW\3N54'2D]!UKVWM:FZLZ3RML5MB\-_T^\J2XH"A:1Q W22%- M(D-1V&BLP%R%>'?Z_271XD2[96Q*X5L6NAK5IHZR[D&?9">!(%4CHFQ'62R%B34"(8 M/O#2F[#5^;Z6)GPZA;:J/[F": 716X)H$#$$)S'21D3$&<< HEHCCY7!E"0; MQ5;#LUJM\-F#:%4[*V(^4\3D(7'G-$&<>XZX,0IIKQFR7$3/G$Y:;AV#J&IG M1'$SRBNE][15K M;\!R%9?. "4QUB9R9)+6B 2%13U0*&$EN?'8@".24 MMRA&$EW",5K%+SH#WDY\=Q0_V2^_M+T?=_UB%C_!$W\>=_[/%TT$VW^:#6U(;23ST,N$C\0C/WPE?PC0K^U]#M/02IO.QG2N%PW M#KL@!,(._K(B@ST8SK";S=Q^.7\&]]*-N],]^J]%/V_3Z4VWZ7;+\%LW:^:' ML Z'LQB;(_C\L,_I93$T'^-T'H]57>BGO?Y<;N'H,0WC $61VJ&1^YI4/E'D:%$H@7'/ZG$4FB R M%NC<20&$O'VLD$OI6(HH!$41QYR!&'<.$1-]LD810>)]DSFYVAG_+,E\%OMI MA'4XCN/342'ZM)0:DW92A<8=<1-CCE'@"J1P @&@B48N@@!(7%AG26!<;<6X M;J76WA$W,5RYJ0J-JW4CS5W 7"#L%>A&A"MDB HH.1\I#LHI(2^2>8Q,6U1MYC,^R(_ MHO6'RQ,L(!AFL1EW\ ^(%1AJEBW]W,X7\VYVVLSL_$KA\)"D&[R3))\4T"PZ MQ+V,H+L8BZ1V,0K" W4[0>A?4QH6>%QOY^\/$ 9I_B; ;?9%W$]GV<]P?/ MV"/PC]@=WG;ZZP@[:&^9 2^F0_F9Q'&X+$#GDB@6%3TD@K;K+[BWM/G/$8 M[R(=^@HF7\O-#ROJ>#T!GA_(YO5 1KMA^2NT"H/!NHL2)2(-3%\39)FV2&A" M!9/$.>(O3E]QSJ+4@(LAIY%K4$X[_#?Y:$\*I2./$3$& $ZE@*,02\DDBY$ MC:WV7F^Q_DWD^YONZ*B='\$0,W6_*1'8SQ&TZ=A_.[C7+".V,;R>?^^@_TEJ M3/"RF"#?JYC@!ED4:>TW">-YFP1']A1PK6@[[>2X&Q\79 1C"S3B1=_XL6V/ M^E$SMB?] J!OE*\"T&P_%U.L']S&72F$/)UU/L9,[/GC60NJX^?\K.)0SO(" MM$Y0-@>'L%O U['OBSHW0#(H8:OZR:?-R6$$P3D9Y$PQ^HYM.\XY%]DVS&[J MKCRX[?M%,07AF5F33>T$?LT:;O8SQ&'/82-;#[_!3W.X(X_4E4?!&[N^!VVI MAT4H+RR59T)6">&!^05AZ:3(/U_Z\+P ^>LOX_K+U:O60RP/:[.&.LL:^X:S'=Z\:BZ^=MP?=7VN0OUG MW'C?ZI'Y2:-F>2%8T*MJ(V4D@S50?IGE584=:T =ABG U=/&C8K9)HMB[UN M;0Z;,8MI'/U@?K='0*IE*2;Q)GC?WWY?/Z^=!\ M?:G*E]U=[?1S]@B\G31_LS-_F-=^".2\^?E#X2A8HPGLFX\#&P SIU1<*'V? MMR\[\^9KKEH28MF>N?T3V,@.9/#V*#>[;SY.8^:9%HCFQ_8@'HP& H>O?H(M M/X:M/FGGARN_8MY+4!VR?1K:OM 27 DO2;/NJ/ETF%$ :& !FS,#"I[/3AM0 M/K/IA3%'! LM)$6B^3&_Y%__15.*7TDJP'Q;C;Y\2%[]--#2]A,D4X8A<^X) M[V.T6%*^0'GWSW,_>)#\[*?7=.O!EB\J\U55VVJ MJGY@!?AQ]M^+S+3VJ!\V*=/]HA] /;/L?W:G]G.<_7\98/+1I^&JXJ==KS1< M"N1 :8&\+YJ! .]9+(HMY4G?8P#(3!,FC>'<->2>N#BU5>44:#SN&1Q.UX M?2Z.SJXKGX* #HNC:6;N86T765W/,B!_%!9%6;?3Z;@=5J" WQG9'#0_VSQK M>!U 92:M+G.S+]@9V^/AIH+MA:[*1#+@+#)XC#.*%/G6N-5CRKM\@61X^^D M^P-C9#]V/[IDMS..+DN9 4EDC(:GS+HO!4SAD[T+VEB,M8Z4(3!,*>+1<^2T M-@@[*JBF7N"X5>/!B219<"S7AC]_ MG\Y6:4>A&GJ@]S&-I7#1F=?H/-06P0;T!9I609L7?\3C-A/<>9AY,3#%O/L< MBT#\*KBLGW&!6U_\-'#HIJYR$E=(>H[/S[^].2GJ4>:[V?+1H3N9G-A98:(] M)VDL@Q5,.F25!Y+F-B+-,4946$*\CX[PK5J&FBA%L%8H^ "6GT\8V2@5LCC MT[ .S)'[(6F\3W&9,Y*^Y29?D?"+-8[$R8 $Y19Q''.>D8D(6^ZDLL8E>ZLH M0-FJ7\#FG[73O)3OTZ=!YJPZ$_D"^@^EBYWIKTO!"M0YS8(U"Z5IU[>#AK7B MX4U)NY2=!5W$#UG'5P?YWT&YSY&SM16P(21'0(N@$6>+K2FZ6Y%F_MQBC+*R M?!+'X_QO@8[ODSM2OM]SD;+WT&3*W((KER9Y=87(W]P7PRRLLV*WZ1?C.>#W5A$9K>8 M]VV(YPW-8E&["(KD<3SCKED\6MJ6J]R&X@H9M.-\P152MNQ9#A^!UN?G=X64 M'O/DF<:(&1H0=YHB:R1(-A!8G8JS2.7U!H9P,/O83Y+(XFKX IIF-[^C)_NPYEG%6Y;H>AK@I# MPZ]+V;!Z7;D1 4>]6BDP+XO; BSP5Z[[DI<#GOAR7<;DRUT?$CP[BO@@4;(' MF-O]4&8NL+Y!FL,IR!5!'JX+N2Q'WTX &F$8 +#SEW8Q[UZ=_P((9OBXT.]0 MV<4FF-Q+.SZQI_VK%_]V\;SABCC+"A;*W"#N"T2Z)[3XH,64W/6=;*5-AUON*O9,] MT-GF+NDLF^K,11.F1/E2.\Z;/_BGRFK.]'-?XN(\=Z#H(;;ONB66===[#GSE1EP.QX;+.SP!=-.^O8GQ=ML(-W?QT3&:*PFY'^96;< M<8YZATQB6^'3B[;>H"(OH\';J7]+4Z )7:'7;'"VRV%N),5G[3&'FMX<[+69JPOC;3!=.\G!8'C38K(,,"TMF;(?R1YWLS*? M92@W&UDAQ_.ZZ1)ZP X>+XHQE1;#"S8,97AW%MEY&6 'EDR=]V%EN9T,QO9* M"<\!_@(4_6$[73YBMH4=+IYV,+R3$J#,D7[8B1)]&<;R3?M]E,VW,5"@]XL\ MG7[:Y@@Z_%Q -)UAZ&J<>356D+0*A9US HR60?5E1L!D':Z;GYX][4UW!/!P M6O(Q,BTMQO.52[V$JG/"[NQSW(CJ%8I;!Y?6Y^\RNY]UH3YH/I8$WOR*;C$O M>1Z#V;M!!3"P_#"7!4 ,K<\S*/;/>IP#8B\CZ7W?^=:N+X)OCI:+5GC+GB49 MVP!4!R^*Y:!#YNH27P,VR:UQRB-@?V"JA1JRG%AEE9QE6JQTM9*Y,&[_&RB] MG9]NI>!]J]K<K"VYVCR9DDE7;9T<0XXD(+Y'))#BFD@E^H,V$K>G*3Q+VS M[+SW*;-"G/1E*_\8\#S'5_J/P &QR( PG;E9MUE7$\G$DIA']-,K]CBGY0 MC?8J^EV?-=\Z@6C+^8[4Y3-C_@/R3+)S - ^ M7X[&]A3$*0SN2PROAH$2C _P#ZL;$WO/-FM^D#SNF] MOK%.L4YQ#Z?XC1:+^OH=%F]>\WJ[7M]*:;G#,MC7\,/?;_W)QU3G>UU^4GZC M_.2U.MD^V.[?1.&\:O4^?:/NV[#:E9>JKRT&UYZ]_5J4)65=M=; M^2$$_TT;O=\E=^^2?'\L'M]NT=M)Z'^Z$VI]L'5ZL(+6SP\%<\"G0MU=E0A_ M,A.N'/0U#F*5@RH'50ZJ,JAR4.6@*H,> 4%]PV MD;QMB]7#4B1_A<5Z13CK M.SJD7MV>\1[[P%YK<7, -R>WS'+1BD6LK8)OV_'TP;?_OMH [T?_I-TW$\") M6TTD8CH9Q+VPR$7M$5=.I^ 3D7:KQ(#1R3.!,;+,*L09@7L8%TCJH+G !.YU M%Y,PEED5,5R>=+&L%KVC5K^4L[OM\_MH.O@^:F*OV%:Q[3;89I2WAB:+:#[P MPD-*2 NED9.!6)$BA;^V:DTHX7C4&"6L 0^%3,A*8Y%(5H@@&.5FJWWYO6(; MT5?7H'BL5%^QK6);Q;9K85OPDK%(?>[EE'(E9H$TC;D;(^%,)4>"WLH$#T9[ MS@Q'H-B!WF9#!%TO:"18BC;PI)5_6&R3QE1LJP;HOF]I!;)=&J#:68*-0%&P M :H B!+*B$9 :N<]S[ZK6YV43B6**%(*9H5.ZJ02=R#8JAN/Y5=S;)Z3Q_*/V,=R)K<<;#P[SUDEQ[/AH"HPS@D,YFD,'H/ \ #^ MVC"D)==(^<09B 5OMYL7!.6H2D2B&#T#J]XY9)PG*##JDG%,6!L>5&"8*BV> M *U71'L.N[S[%K1<"T8<6.-.<,0C&/3:@"@F<9R60P*=$'130M*J(]?EJOB/8<=OD.(B\LJ< 8(EZ"ON7 LC=4 M:##OP;;W/!*>]:T+1_LEY5%;C6@HA>N50MIH,.JC%S+EBE\[Z(U))8ZESZ4*"7$6+;)4&<28,<8:(CC=*NB,,2A>\"TB-+EL MEQ)DHH"[(V$^:0^/>]BL&,YK=.4V+LF:1+FJ^A+'XU5U;7CKGS$7O:NRXMFP M3Y45YSK:!&()Z*Y(YW)LW!B,0$!0Y&FTCGBM@]S*H!2*J!R+1UIBN$<3AYS M%GD2?!*:,6KLPP:PL*ZRXO$3>X6TY[#+.X>TB&T,3A*4N,, 3XDCPTA$P5I- MO56"DBWSW4?4(<*DL99'F\@#)TY*62'M\1-[A;3GL,N[ MAS2 '\\,15)FZ]PX@YR2%D7'B$L"C'NVW:)).BTLHXC(J!$G#F P>R1Q$)HK M12)H:P_LD:R05JW,NJ7/ +^$H-C%))"VGB N&%B,%F/ +QX,"5(QNY4FZ9AV M,4:*'#8!<2L-L@*,3F>]-,$8Z_7#XI>F]2S+;3R2-4ERN;C_$2=Q9I<=S,-1 M;MLYGY564E5@W):';EIG;0^Y[(:;?JVR'$])Z-A !%8*;'I)$^()U&<;2"(9\2@"8GG!D M!&B=$A"1<@9:9-PJVV&5M(;D+K$E"*1B)TPB,>DLGU.D*4:;&V>*#7*1;^=IIJ29D%ZA3PQ@)0N M>*0CZ)S1*QTHT8GM/Y/R]M>%C%V6YYDQ[0S)RA6^2ND \HT!ZFYLOW M+,83E6U<$*VP<@@["P)..@JR300$-H!Q5L!W;BL'C5OKF.$6A(D$RR%BA9QC M$45)I551^:"WNL/>>UV8.SZ$\562>7S2K3I1*I96++WM<5RP$71,"3&>HW>< M1F1$) @+H8P*P6FYA:6"2^E8BB@$17.5089,<@X1$WVR1A%!X@-C*3&T8FG% MTHJE%4OOT>=".>,\)N0]**?<"H.,R9YF%ZUDV ?!R);/A7JB4L!(N'U M7WWC]ZY?GG)9D'/KL?*312Q#8@KIR /BDGMD+7.(RD@$L*X,>*L0_$WTD3_B M.#/5!SN;GWZ:6>"F0NO]+VWOQUV_F,5/\(*?@??^?-%$8*9IWI_98LG3[601 MP^OY]X[XGV23H#>W&?$#Q0@E?'/O"?W69IS;?KD*3=PJB%#> MM]D%;P?$0>3!7Y9;T4SS7C3SC7TZ ML0>OWS:___[FTD6Y%G(\X#K=;EG>3IK?HILM[.RTH9C247,2FSCY;#\#^6PL M4?.C[9M^X7WL^V[6M""SL^(1^WDS[^ 1L\E)/&Q^7=[X?AIG=@[79;EJ)Z?Y M"3\U/_[KOVA*\:O\V/(C>?53OKM?3*?=;-XL^F%GVJ/IK#N.N89UG[_O%K,& M/LFOACGE$QSP^")T)S[FH1S;6=O!W2#-893MQ(\7F?-!3/>PP*.FAR=X^ MC+O/+:RV[T?PQ';XK._2_ 1N+4_NY_"WG>66G)/4?E[,BDIPT'PZC%G.Q\]= M?O"P0'F ^3IXX'R1VP6,+O?[9^Q>3^)>4U&\$YX&-Q_VMB4 MVG%;[BZK\+9O0S?KFO^[:&?=9PM+.9O_Z[]0QE[!X&US%(]'\6IBEN6]?OE_,"QW 5K^QTW9NQQ]S//?_Q'$XIQ5.0::M MU4)$-_5"^@VU\.H3!O>/ 3^LJ*@[FW?CAXD/D6Q !9LY#WCK&%A^ (""#@T M2):S>0JC)HOZ&;QU4B#CBGL&VOL*>0\W7F"'0I\#JQQ\^^9Q#[ Q*41_"6O M+WD@7V>1 V#2YF.LS2G^>Q0$@EZ@Z'WZ#RT^ZV9_-CS#Z,6Q'>QS'IZ/RB!N,.-(*VP1"XGSP,!^UG2[K1/Q M204%5K$DB&NFD(,)Y3D\JL7M?F">&_['I3R7Q8S0(0/8%)T@\G<7VXX M_S8L7#P/DGVY8Q,;\;>*%HQ@K?*?/<)(F%%&L1B6J3W=M*C32S'JNQG,<=H- MT)E;!\]ZP$X@'SL%S>4+S&L.=-[\KWVC)BD3YL8 9> D$5<)O#JL9%0 BI8>P:]!\T_XB#I#FW(@G8! M:PZ"L-P&#YO:-C3.CHN6;$%M]^?$:=N?TP?G.6\M4^_>T6@0U*D(*I^GN6Z4 M2 XYDCBB24JLI1(I;,53>'3!<0/82'0^7$4#_"0C2L$8SFD27H=S-/KWL[7[ M,"S=S\/*[8@NV<'5D>B'H\O1H%9EE2DMQD!X9P24M:C& W9_CMD&^WSE^?DU M_88B)@:-ZA D.%@1D_EAIK( SUMJ4J C,#S*IB8[>,9F-XC*C87*BSII)]]< ML:*'@7F[ &D3'E GW#N( 'DDC?(TY[6#4F2]1%8[CTAT HS%F+CP6Q#A"A#H\1I90170,P48>GNA'V3R=GAG*H )^6Q2/-GR@ZX\F ML5C?9]9M/QK82,_4Z;TFO"0 MF$&&$I5CV*""QN@0!8M*)I%HTEL%4:XCB8JR^@8VX,-R_7?$=_C@ZG+.SY'O MJK"Y0-8\06KL2!1$!?J9#CWB+"L5&644[3>?3] S S#COVVZP[VDCG:>.NX)A5 MF[:J&5\[T\D9(=0+9%AN6FIR6T#%0(-(H$E(GEP,6]$M+ZDTQ >41"Z?Y1)! MAN=?F4[,&2H"X?=.Z/C@ZE.# M^(\8%L/+7ON<2=.7D9?THS/O[(5!PF.GBYD_!/.ZF=F3]:3[I5F]&E<>P.R_ M%_#/PBU5C [>7A*@\EO[I<<>]K-Q$59C6)6T&*?\T?H=)26X+_[B',.],*US M^MR52;3P;^/'H"'^^XLI*(1HTH6XVE)@X/SUDH;^IV@Y7UXB]BJ-XQ5&U&$6=9P4*9&\1]@4CWA!:_^TS/G5#B.;BXO@HQ: ++!'"[J0K<*@G\29M; MRZ#_ELTU;JUKQVU68R[*L6J"W58SEN;8&='*%Y[/P/59U<**=G+!(1J>>T+?8.5I;T%HTMYZS+=TC?U='[+8,KFS$V+WL)\?7%),K)BI-%W$PY YKP<3:W[625 M&.Y!X'5'@Q7R7S%;(=OY9'']R/.F2K:*7,S29,/*"64\6[;<\2Q" '7ZD0]#F$^\^R!;\L=X#LS)M4W:95>'^M MEP SV N+N&<> 3VSG/_FD'2*:ZFP$VHK_\UA"2IK=$CK7$0[2(.,E[F)B](D M6LJ\P?= VK0F'GQ5;E^TXR9+A^9Q.;!RW)73-FG6'9V[+$O7E2^PK_;<9?HN M$<8K1I"SP"@\$(E,X!HE$V3D+*A+*IY=QYY;%YOP@SO[PQ H?I.]PY/YZTEX MUPVNXLE\9T)"54ZJ0N+J&G^!49=<1(9F#X8!8G$ZUAX M]T_QLOHTOB([#IKW^63X<(RE'VR](S#JLB"X:"D,QRPWY4RYX7M=AL7(ZP^[ MDWS:MWG7S6.C1LV+Y4F:S3#6D@"R_1ASDI=UW7$^G=2\^,_+AG3.O_GBH'F= MG?=GN:%CAXP!G]N&^,@VDN'"X4LL2"B$P@)XW@$@FLK7(!& EO*9*[$ZO? MR3CR'..@/OK,/+F50Q\G+_XZZ?:(;2:%Z![N_5O2[>&&\M.*/>&CD(]QE+HT MI1%)$8LK)NT/(TC3K:R.S:CJLR^.=N/8]%9!-8L%BYA'4)\U1US9A*QF&&'/ MJ/7$P\=F%P75?K6SK*SU'^*L%%RXJGQ:K8-V:1TT=?"7=W'>C+N^SP6CFE*( M8I-%=DH4W$7EC3)(*)+['SN'C%$8"9>8")Q;KK;$P$V(XJ,_C&$QCN_31?+X MV?:M!S/KEW:7M2(;:MA>T8KL4H%R.69\LWO!2GQ=DJVG[S]Q]/8EN*]3 M8GQ7$[R/"N- %_G;8N5\=:K7:OSX8+M_$PWIRCJGWRB]B/NPFI67 M*B_MAI?>?3W[IK+2[IJ0/H3@OW_>W25Q-A6T)J7.;@6MBP5;>46FG0KYISCA MRD%?+7E<.:AR4.6@*H,J!U4.JC+H$1#4-^S+$M;;-C ]+$7R5QB85P2>]KJ7 MXRW26];!TA]+(X1NT=M)Z'^J_2UK?\O:W_)ZK'1IDMKN#[11993'&$5A$N+$ M$V2\X@CG0HTX^.2%W$K9M-8QPRT*40K$(U;(.191E%3F/#8?]%;* 0##VXGO MCN+O@ [?WQ8S]]Z"G[Z5LBE&3%Q=*^EI-\C\/A;<-03O!WM55*ZH_!116081 M#/8:>8$#XL(0I&F"7Y.BEB0M1>"W::ES/Z@L1X9=?9RLHO+N4;DJQA6"*P3O MIDFH!%V6N8!L) 9Q+10R2C&4.-.$)T)-V%*,;Y*+>Z<0S.2(J:O+/E0(KA!< M(;A"\)Y"L(Z*^L XPI$QQ*E*R!KLD&<^&FR$MV:KL62,3%G)$_+.8+C'860D M3H@EA0/Q40=N[Q>"S8@05B'X)A!\,W_\5Q.^GID__A]EI7(K1IB-_1R' TS] MN2[=N./U6!^80$YFY7H,K)*_L@,2FPDRR? MZ^.(1ZF1Y80BYJPUAH+)D'L:W=[GOF+^UP/OOUODI./W:7FV;^C"_?X,"&[9 MM298#CK><*:%JQ#0> M47-9Z9AG*>CO%3KV Q:J$'EX2GC&0H18+BS!-M=:3HCGQDXF$HR(,(%$&>'/ M5JV=FX0(]D&(<"LE,98B2EE G#@+ L%0)(0@7"5F6+S+N=Z-$"%FI P;:7J9 M?ZX*D;N&CFIV5(GQO"0&9I9(356V,S3BW(/$\,0C:R3@*@@3(LDN(AK[(#%H MB$Q$PI SMM3I5LAZL+,D6!0B$8M-W J@[W"N=V1VR!%E?&3,94'U*C&JQ*@2 MHTJ,74J,9!+%R7ND;7;$,!-S&VZ*%)68*&P395MZ]TT",/L@,1+73'F*D74Z MY'B_0YIJAQ+F7G-)I19;SH,BBRX9[8(* M.PD0[8>,2A(,3 D")N&@P2Q/#%D9(_(\6!N2"CYLE8G>Q6SO7$;Q*J-JZGH5 M2%4@/7J!!!J_MH)[)+15B'N1D)8@D 3V*@?;C&);?=)VT=[A8012% P+ICC2 MRL!L8>9@ ''XE1I+C=&,8'L7L[UK@40OJRE0!5(52%4@58'TN 12LE:PQ#'2 M1 /<4BN1P9$AZ24/*5%LQ4[.4MTO1%\^5^:BBAID29(TY]>GW(%0,80]%K , M@ANYY;'9SCE2M%/>GN?W)0WK1/X.?=+7=MYRXZQ?QU:,>^V_ZR@ M6MK$.8K&,,2%IKM=[:=XK6[&=]RX^(HFU??3YONW;M9,%[-IU^?R M'@EV*:];KN=Q><+EJ#FY6!L$;CGJ)I>5" E=,^GF33LI^]),N_S2UH['I\UJ M]YI^O7W-_-#.&WA(8^$JM+IBU-@>'MZ=3!H7Q]W)9JOQ)])*6)H#S6_:I!73 M^^T*2P_P3=L>URENX?1#]Z.[VJ'TF'JRW4"->TS3JWTRORJ_YH<1_N3>L_F@ MP*1VSGR2G3,K4CV"Z=6V2K4Q66U,5CFH-B;;!X*Z@T*HCRYT?8N4F->;;HA- M1T5<.IJ:-.N.SA5!75]]WFORLCJAJQ.Z3ODI3[D2^3.:\KT5=M@,0X#"1<**)FF-\VI?/1%%UYU">M=W_$->EDB'$H"LL1-QPCXX1 @6BE,(M> MNZU^1-K*(#0CR%'B$4_:(LME1$Y+S+A+PL>MI.9;1F1?'P%0SK]1M^CMN]]N M5@>6J"0"]XB*"&O@6"ZTX"TBB@HBN(C>;YVJ,H8%AZU%U.0^3MPD9# SB&A. M- V*Q.W$[OU8 SJB2H\,T_><\UT!XI$I,767]W:7=RX&A 3$LCP"!*J$N%4, MV4 -"L$*KR3G"M.ML_^.<88=0PI[A;BD(!!((B@DQ2T\C'--]A,"KSAH3A3BD7D4H!UBTQC31F J7@+%;24A?] M?JX!&V&N1X3=]UG41P,0]]8EJMIPWV'#3>&SX]@7)RI<]6@Z>+;RAE&A>3(*2;5//TB1:MJFUB M[D=ET-KI4N(P";"R>'9'6P8J@W?>8S"U*/%L%S73]T-<7A&:9-Y++$'\,TYR M>%:#X0DJD&%*"^>I,6&KYM1-CL[NQQH0,R)2C72M*E^-U"IUJM1Y"*G#.2-. M2Y^; F>G8';P29GS/"SW7(+\V$U3X/U W"LBH4XF9YA E%A8 VO!C*!,H9C@ MBR@-X7';,7J#2H?[L0:$C###(QAME3J[LE6_45[DTD_AUOTP<790-F-KI?+D MRM0O+9"B7*0*=#N %^ =4/A0[H"40RP^P*^>R:TDO!L52%FX/O[W H;XZS'\ MU5]5YZ2\JITL8G@]_][Q_9-<51X%\0/%S0^OIC;D5-O!/7#'-5-NZ!?8.FJV M U(@^N O9PO?Q++RFSST[&K*O)\T[[KCX<2]'C7YX&LN&],4+2*&IIW,N\8V MKAVJQ,"'1TU_&..\.6GGAPT,MYW \.>+#,EV#+_ES(!NUOR83_K_Z[]H2O&K MM\L/RZ_DU4\-/#.G$\3\0[YN=<$([H>W36?ML9W'G!KNXQ$,9=3T<=+"4\O! M+AC6%.01/*&;G>:J-3#3S=>]RY^LWY6?"/]__CR+G\M#9^W$MU,8JRTR*Z